Skip to content
CVE PROGRAM SOURCE RECORDUnscored

CVE-2025-39801

usb: dwc3: Remove WARN_ON for device endpoint command timeouts

Description

In the Linux kernel, the following vulnerability has been resolved: usb: dwc3: Remove WARN_ON for device endpoint command timeouts This commit addresses a rarely observed endpoint command timeout which causes kernel panic due to warn when 'panic_on_warn' is enabled and unnecessary call trace prints when 'panic_on_warn' is disabled. It is seen during fast software-controlled connect/disconnect testcases. The following is one such endpoint command timeout that we observed: 1. Connect ======= ->dwc3_thread_interrupt ->dwc3_ep0_interrupt ->configfs_composite_setup ->composite_setup ->usb_ep_queue ->dwc3_gadget_ep0_queue ->__dwc3_gadget_ep0_queue ->__dwc3_ep0_do_control_data ->dwc3_send_gadget_ep_cmd 2. Disconnect ========== ->dwc3_thread_interrupt ->dwc3_gadget_disconnect_interrupt ->dwc3_ep0_reset_state ->dwc3_ep0_end_control_data ->dwc3_send_gadget_ep_cmd In the issue scenario, in Exynos platforms, we observed that control transfers for the previous connect have not yet been completed and end transfer command sent as a part of the disconnect sequence and processing of USB_ENDPOINT_HALT feature request from the host timeout. This maybe an expected scenario since the controller is processing EP commands sent as a part of the previous connect. It maybe better to remove WARN_ON in all places where device endpoint commands are sent to avoid unnecessary kernel panic due to warn.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • 72246da40f3719af3bfd104a2365b32537c27d83 to < dfe40159eec6ca63b40133bfa783eee2e3ed829faffected
  • 72246da40f3719af3bfd104a2365b32537c27d83 to < 5a1a847d841505dba2bd85602daf5c218e1d85b8affected
  • 72246da40f3719af3bfd104a2365b32537c27d83 to < 84c95dbf5bece56086cdb65a64162af35158bdd9affected
  • 72246da40f3719af3bfd104a2365b32537c27d83 to < f49697dfba2915a9ff36f94604eb76fa61413929affected
  • 72246da40f3719af3bfd104a2365b32537c27d83 to < db27482b9db340402e05d4e9b75352bbaca51af2affected
  • 72246da40f3719af3bfd104a2365b32537c27d83 to < 45eae113dccaf8e502090ecf5b3d9e9b805add6faffected

Linux Linux

Default version status: affected

  • 3.2affected
  • 0 to < 3.2unaffected
  • 5.15.190 to ≤ 5.15.*unaffected
  • 6.1.149 to ≤ 6.1.*unaffected
  • 6.6.103 to ≤ 6.6.*unaffected
  • 6.12.44 to ≤ 6.12.*unaffected
  • 6.16.4 to ≤ 6.16.*unaffected
  • 6.17 to ≤ *unaffected

References