-
Notifications
You must be signed in to change notification settings - Fork 256
Open
Labels
bugApparent bug in liquidctlApparent bug in liquidctl
Description
I've noticed this twice now; after a while (don't think it's X time but rather X read requests) my H100i PRO XT stops responding. The reason for me thinking it's X reads is that both times this has happend I've had a while 1; do sleep; liquidctl status; done loop running.
I've tried rm-ing usbhid module and loading it again.
I can write, but the process hangs after this:
root@pve:~# liquidctl initialize -g
[DEBUG] liquidctl.cli: running liquidctl v1.4.2
[DEBUG] liquidctl.driver.usb: searching HidapiBus (api=hidraw, drivers=[CorsairHidPsu, HydroPlatinum, Kraken2, KrakenX3, KrakenZ3, NzxtEPsu, RgbFusion2, SmartDevice, SmartDevice2, _CommonSmartDeviceDriver])
[DEBUG] liquidctl.driver.usb: probing drivers for device 1b1c:0c20
[DEBUG] liquidctl.driver.usb: instanced driver for Corsair H100i PRO XT (experimental)
[DEBUG] liquidctl.driver.usb: searching PyUsbBus (drivers=[Hydro690Lc, Legacy690Lc, Modern690Lc, _CommonAsetekDriver])
[DEBUG] liquidctl.driver.usb: probing drivers for device 1b1c:0c20
[DEBUG] liquidctl.driver.usb: probing drivers for device 8087:0024
[DEBUG] liquidctl.driver.usb: probing drivers for device 1d6b:0002
[DEBUG] liquidctl.driver.usb: probing drivers for device 8087:0024
[DEBUG] liquidctl.driver.usb: probing drivers for device 1d6b:0002
[DEBUG] liquidctl.cli: device: Corsair H100i PRO XT (experimental)
[DEBUG] liquidctl.keyval: data in /run/user/0/liquidctl/vid1b1c_pid0c20/loc0
[DEBUG] liquidctl.keyval: stored leds_enabled=0 (in /run/user/0/liquidctl/vid1b1c_pid0c20/loc0/leds_enabled)
[DEBUG] liquidctl.keyval: stored pump_mode=1 (in /run/user/0/liquidctl/vid1b1c_pid0c20/loc0/pump_mode)
[DEBUG] liquidctl.keyval: no data (file) found for fan1_mode
[DEBUG] liquidctl.driver.hydro_platinum: falling back to FIXED_DUTY for _FanMode(None)
[DEBUG] liquidctl.keyval: no data (file) found for fan1_duty
[INFO] liquidctl.driver.hydro_platinum: setting fan1 to 100% duty cycle
[DEBUG] liquidctl.keyval: no data (file) found for fan2_mode
[DEBUG] liquidctl.driver.hydro_platinum: falling back to FIXED_DUTY for _FanMode(None)
[DEBUG] liquidctl.keyval: no data (file) found for fan2_duty
[INFO] liquidctl.driver.hydro_platinum: setting fan2 to 100% duty cycle
[INFO] liquidctl.driver.hydro_platinum: setting pump mode to balanced
[DEBUG] liquidctl.keyval: loaded sequence=25 (from /run/user/0/liquidctl/vid1b1c_pid0c20/loc0/sequence)
[DEBUG] liquidctl.keyval: stored sequence=26 (in /run/user/0/liquidctl/vid1b1c_pid0c20/loc0/sequence)
[DEBUG] liquidctl.driver.usb: discarded 0 previously enqueued reports
[DEBUG] liquidctl.driver.usb: writting report 0x00 with 64 bytes: 3f:d0:14:00:ff:05:ff:ff:ff:ff:ff:02:00:00:00:00:ff:02:00:00:00:00:ff:01:00:00:00:00:00:07:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:fe
^CTraceback (most recent call last):
File "/usr/local/lib/python3.7/dist-packages/liquidctl/cli.py", line 300, in main
_print_dev_status(dev, dev.initialize(**opts))
File "/usr/local/lib/python3.7/dist-packages/liquidctl/driver/hydro_platinum.py", line 171, in initialize
res = self._send_set_cooling()
File "/usr/local/lib/python3.7/dist-packages/liquidctl/driver/hydro_platinum.py", line 360, in _send_set_cooling
return self._send_command(_FEATURE_COOLING, _CMD_SET_COOLING, data=data)
File "/usr/local/lib/python3.7/dist-packages/liquidctl/driver/hydro_platinum.py", line 331, in _send_command
buf = bytes(self.device.read(_REPORT_LENGTH))
File "/usr/local/lib/python3.7/dist-packages/liquidctl/driver/usb.py", line 399, in read
data = self.hiddev.read(length)
File "hidraw.pyx", line 124, in hidraw.device.read
OSError: read error
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/bin/liquidctl", line 10, in <module>
sys.exit(main())
File "/usr/local/lib/python3.7/dist-packages/liquidctl/cli.py", line 300, in main
_print_dev_status(dev, dev.initialize(**opts))
KeyboardInterrupt
root@pve:~# /usr/local/bin/liquidctl set fan speed 20 10 30 50 50 95 -g
[DEBUG] liquidctl.cli: running liquidctl v1.4.2
[DEBUG] liquidctl.driver.usb: searching HidapiBus (api=hidraw, drivers=[CorsairHidPsu, HydroPlatinum, Kraken2, KrakenX3, KrakenZ3, NzxtEPsu, RgbFusion2, SmartDevice, SmartDevice2, _CommonSmartDeviceDriver])
[DEBUG] liquidctl.driver.usb: probing drivers for device 1b1c:0c20
[DEBUG] liquidctl.driver.usb: instanced driver for Corsair H100i PRO XT (experimental)
[DEBUG] liquidctl.driver.usb: searching PyUsbBus (drivers=[Hydro690Lc, Legacy690Lc, Modern690Lc, _CommonAsetekDriver])
[DEBUG] liquidctl.driver.usb: probing drivers for device 1b1c:0c20
[DEBUG] liquidctl.driver.usb: probing drivers for device 8087:0024
[DEBUG] liquidctl.driver.usb: probing drivers for device 1d6b:0002
[DEBUG] liquidctl.driver.usb: probing drivers for device 8087:0024
[DEBUG] liquidctl.driver.usb: probing drivers for device 1d6b:0002
[DEBUG] liquidctl.cli: device: Corsair H100i PRO XT (experimental)
[DEBUG] liquidctl.keyval: data in /run/user/0/liquidctl/vid1b1c_pid0c20/loc0
[DEBUG] liquidctl.keyval: stored fan1_mode=0 (in /run/user/0/liquidctl/vid1b1c_pid0c20/loc0/fan1_mode)
[DEBUG] liquidctl.keyval: stored fan1_profile=[(20, 10), (30, 50), (50, 95)] (in /run/user/0/liquidctl/vid1b1c_pid0c20/loc0/fan1_profile)
[DEBUG] liquidctl.keyval: stored fan2_mode=0 (in /run/user/0/liquidctl/vid1b1c_pid0c20/loc0/fan2_mode)
[DEBUG] liquidctl.keyval: stored fan2_profile=[(20, 10), (30, 50), (50, 95)] (in /run/user/0/liquidctl/vid1b1c_pid0c20/loc0/fan2_profile)
[INFO] liquidctl.driver.hydro_platinum: setting fan1 to follow profile [(20, 10), (30, 50), (50, 95), (60, 100), (60, 100), (60, 100), (60, 100)]
[INFO] liquidctl.driver.hydro_platinum: setting fan2 to follow profile [(20, 10), (30, 50), (50, 95), (60, 100), (60, 100), (60, 100), (60, 100)]
[DEBUG] liquidctl.keyval: loaded pump_mode=0 (from /run/user/0/liquidctl/vid1b1c_pid0c20/loc0/pump_mode)
[INFO] liquidctl.driver.hydro_platinum: setting pump mode to quiet
[DEBUG] liquidctl.keyval: loaded sequence=28 (from /run/user/0/liquidctl/vid1b1c_pid0c20/loc0/sequence)
[DEBUG] liquidctl.keyval: stored sequence=29 (in /run/user/0/liquidctl/vid1b1c_pid0c20/loc0/sequence)
[DEBUG] liquidctl.driver.usb: discarded 0 previously enqueued reports
[DEBUG] liquidctl.driver.usb: writting report 0x00 with 64 bytes: 3f:e8:14:00:ff:05:ff:ff:ff:ff:ff:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:07:14:1a:1e:80:32:f2:3c:ff:3c:ff:3c:ff:3c:ff:14:1a:1e:80:32:f2:3c:ff:3c:ff:3c:ff:3c:ff:00:00:00:00:00:c1
^CTraceback (most recent call last):
File "/usr/local/lib/python3.7/dist-packages/liquidctl/cli.py", line 304, in main
_device_set_speed(dev, args, **opts)
File "/usr/local/lib/python3.7/dist-packages/liquidctl/cli.py", line 214, in _device_set_speed
dev.set_speed_profile(args['<channel>'], profile, **opts)
File "/usr/local/lib/python3.7/dist-packages/liquidctl/driver/hydro_platinum.py", line 223, in set_speed_profile
self._send_set_cooling()
File "/usr/local/lib/python3.7/dist-packages/liquidctl/driver/hydro_platinum.py", line 360, in _send_set_cooling
return self._send_command(_FEATURE_COOLING, _CMD_SET_COOLING, data=data)
File "/usr/local/lib/python3.7/dist-packages/liquidctl/driver/hydro_platinum.py", line 331, in _send_command
buf = bytes(self.device.read(_REPORT_LENGTH))
File "/usr/local/lib/python3.7/dist-packages/liquidctl/driver/usb.py", line 399, in read
data = self.hiddev.read(length)
File "hidraw.pyx", line 124, in hidraw.device.read
OSError: read error
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/bin/liquidctl", line 10, in <module>
sys.exit(main())
File "/usr/local/lib/python3.7/dist-packages/liquidctl/cli.py", line 304, in main
_device_set_speed(dev, args, **opts)
KeyboardInterrupt
Update from @jonasmalacofilho:
This is now being tracked by issue #298 ("Synchronized access to devices"), where several problems with obvious solutions have already been pointed out. New comments should be directed there.
Metadata
Metadata
Assignees
Labels
bugApparent bug in liquidctlApparent bug in liquidctl