CyberRota Analysis
AI-GeneratedThe vulnerability affects the Bluetooth subsystem in the Linux kernel, specifically related to the handling of the HCI_UART_SENDING state during the cancellation of pending write operations. If not addressed, this issue can lead to blocked future writes when a Bluetooth device is reopened, potentially disrupting communication. Organizations utilizing Linux-based systems with Bluetooth capabilities should prioritize this fix to ensure reliable device operation and prevent communication failures.
Original NVD Description
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: hci_uart: clear HCI_UART_SENDING when write_work is canceled HCI_UART_SENDING bit in tx_state means write_work is pending and blocks queueing it again. Currently this bit is not cleared when canceling the work in hci_uart_close(), which blocks future writes when device is reopened later if write_work was pending. Fix by clearing HCI_UART_SENDING when canceling the work. Also make clearing of tx_skb safe by using disable_work_sync + enable_work instead of just cancel_work_sync. hci_uart_flush() purges the proto tx queue so we can cancel the pending write_work there, instead of doing it just in hci_uart_close(). Re-enable and possibly requeue the work after queue flush.