Closed
Description
Describe the problem
A data race is detected
2025/01/10 14:53:20 stderr: ==================
2025/01/10 14:53:20 stderr: WARNING: DATA RACE
2025/01/10 14:53:20 stderr: Read at 0x00c000447988 by goroutine 80:
2025/01/10 14:53:20 stderr: main.(*serport).reader()
2025/01/10 14:53:20 stderr: /home/dido/code/arduino/arduino-create-agent/serialport.go:88 +0x167
2025/01/10 14:53:20 stderr: main.spHandlerOpen()
2025/01/10 14:53:20 stderr: /home/dido/code/arduino/arduino-create-agent/serialport.go:345 +0x1467
2025/01/10 14:53:20 stderr: main.checkCmd.gowrap4()
2025/01/10 14:53:20 stderr: /home/dido/code/arduino/arduino-create-agent/hub.go:157 +0x6b
2025/01/10 14:53:20 stderr:
2025/01/10 14:53:20 stderr: Previous write at 0x00c000447988 by goroutine 86:
2025/01/10 14:53:20 stderr: main.(*serport).Close()
2025/01/10 14:53:20 stderr: /home/dido/code/arduino/arduino-create-agent/serialport.go:351 +0x37
2025/01/10 14:53:20 stderr: main.spClose()
2025/01/10 14:53:20 stderr: /home/dido/code/arduino/arduino-create-agent/serial.go:267 +0xee
2025/01/10 14:53:20 stderr: main.checkCmd.gowrap5()
2025/01/10 14:53:20 stderr: /home/dido/code/arduino/arduino-create-agent/hub.go:163 +0x44
2025/01/10 14:53:20 stderr:
2025/01/10 14:53:20 stderr: Goroutine 80 (running) created at:
2025/01/10 14:53:20 stderr: main.checkCmd()
2025/01/10 14:53:20 stderr: /home/dido/code/arduino/arduino-create-agent/hub.go:157 +0x366
2025/01/10 14:53:20 stderr: main.(*hub).run()
2025/01/10 14:53:20 stderr: /home/dido/code/arduino/arduino-create-agent/hub.go:111 +0x244
2025/01/10 14:53:20 stderr: main.loop.gowrap2()
2025/01/10 14:53:20 stderr: /home/dido/code/arduino/arduino-create-agent/main.go:412 +0x33
2025/01/10 14:53:20 stderr:
2025/01/10 14:53:20 stderr: Goroutine 86 (running) created at:
2025/01/10 14:53:20 stderr: main.checkCmd()
2025/01/10 14:53:20 stderr: /home/dido/code/arduino/arduino-create-agent/hub.go:163 +0x584
2025/01/10 14:53:20 stderr: main.(*hub).run()
2025/01/10 14:53:20 stderr: /home/dido/code/arduino/arduino-create-agent/hub.go:111 +0x244
2025/01/10 14:53:20 stderr: main.loop.gowrap2()
2025/01/10 14:53:20 stderr: /home/dido/code/arduino/arduino-create-agent/main.go:412 +0x33
2025/01/10 14:53:20 stderr: ==================
To reproduce
- launch the service
task run
- open the
http://127.0.0.1:8991/
console - attach a board via USB
- type the command
open /dev/ttyACM0 115200
- type the command
close /dev/ttyACM0
- the console where the service is running shows the data-race warning.
Expected behavior
do not have the race condition
Arduino Create Agent version
1,6,1
Operating system
Linux
Operating system version
20.04
Browser
Chroome
Browser version
Chroome
Additional context
No response
Issue checklist
- I searched for previous reports in the issue tracker
- I verified the problem still occurs when using the latest version
- My report contains all necessary details