Details
-
Bug
-
Resolution: Cannot Reproduce
-
Major
-
None
-
NVIDIA MCP61 chipset computer
Version 0.3.15-LT2013 (r59060)
Description
When booting my NVIDIA chipset PC with a USB mouse (or keyboard or presenter), ROS permanently sends out some port reset/abort commands to the controller and gets caught in an endless loop. Everything "works", but this really slows down the system and spams the debug log usb-nvidia-boot-fail.log.
When booting without the mouse, then attaching it later, everything is great usb-nvidia-boot-success.log.
One of the looping logs parts reads:
(C:/ROS/reactos-lt/drivers/usb/usbohci/usb_queue.cpp:665) URB failed with status 0xc0000004
(C:/ROS/reactos-lt/drivers/usb/usbohci/usb_request.cpp:1835) OHCI_TD_CONDITION_NO_RESPONSE detected in TransferDescriptor TransferDescriptor F7873400
(C:/ROS/reactos-lt/lib/drivers/libusb/hub_controller.cpp:2096) [USBOHCI] URB_FUNCTION_CLEAR_STALL Status c0000001
(C:/ROS/reactos-lt/lib/drivers/libusb/hub_controller.cpp:1970) [USBOHCI] URB_FUNCTION_SYNC_RESET_PIPE_AND_CLEAR_STALL Status c0000001
(C:/ROS/reactos-lt/drivers/hid/hidusb/hidusb.c:385) [HIDUSB] ResetWorkerRoutine ResetPipe c0000001
c0000004 is USBD_STATUS_STALL_PID, meaning the device received a request it considers invalid. Attempting a CLEAR_STALL is the expected response to this, however that either seems to fail or we keep sending invalid requests