CVE-2025-39801
Gravedad:
Pendiente de análisis
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
15/09/2025
Última modificación:
15/09/2025
Descripción
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
usb: dwc3: Remove WARN_ON for device endpoint command timeouts<br />
<br />
This commit addresses a rarely observed endpoint command timeout<br />
which causes kernel panic due to warn when &#39;panic_on_warn&#39; is enabled<br />
and unnecessary call trace prints when &#39;panic_on_warn&#39; is disabled.<br />
It is seen during fast software-controlled connect/disconnect testcases.<br />
The following is one such endpoint command timeout that we observed:<br />
<br />
1. Connect<br />
=======<br />
->dwc3_thread_interrupt<br />
->dwc3_ep0_interrupt<br />
->configfs_composite_setup<br />
->composite_setup<br />
->usb_ep_queue<br />
->dwc3_gadget_ep0_queue<br />
->__dwc3_gadget_ep0_queue<br />
->__dwc3_ep0_do_control_data<br />
->dwc3_send_gadget_ep_cmd<br />
<br />
2. Disconnect<br />
==========<br />
->dwc3_thread_interrupt<br />
->dwc3_gadget_disconnect_interrupt<br />
->dwc3_ep0_reset_state<br />
->dwc3_ep0_end_control_data<br />
->dwc3_send_gadget_ep_cmd<br />
<br />
In the issue scenario, in Exynos platforms, we observed that control<br />
transfers for the previous connect have not yet been completed and end<br />
transfer command sent as a part of the disconnect sequence and<br />
processing of USB_ENDPOINT_HALT feature request from the host timeout.<br />
This maybe an expected scenario since the controller is processing EP<br />
commands sent as a part of the previous connect. It maybe better to<br />
remove WARN_ON in all places where device endpoint commands are sent to<br />
avoid unnecessary kernel panic due to warn.
Impacto
Referencias a soluciones, herramientas e información
- https://git.kernel.org/stable/c/45eae113dccaf8e502090ecf5b3d9e9b805add6f
- https://git.kernel.org/stable/c/5a1a847d841505dba2bd85602daf5c218e1d85b8
- https://git.kernel.org/stable/c/84c95dbf5bece56086cdb65a64162af35158bdd9
- https://git.kernel.org/stable/c/db27482b9db340402e05d4e9b75352bbaca51af2
- https://git.kernel.org/stable/c/dfe40159eec6ca63b40133bfa783eee2e3ed829f
- https://git.kernel.org/stable/c/f49697dfba2915a9ff36f94604eb76fa61413929