From 6eaaa52128e96e50e287d915baf1e067e0c6ced3 Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Mon, 29 Jan 2024 22:06:34 -0500 Subject: [PATCH] usb_disk: Cancel queued transfers on the interrupt endpoint in removed(). May help with some KDLs. --- src/add-ons/kernel/drivers/disk/usb/usb_disk/usb_disk.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/add-ons/kernel/drivers/disk/usb/usb_disk/usb_disk.cpp b/src/add-ons/kernel/drivers/disk/usb/usb_disk/usb_disk.cpp index 3965f7f424..6d4247bcd9 100644 --- a/src/add-ons/kernel/drivers/disk/usb/usb_disk/usb_disk.cpp +++ b/src/add-ons/kernel/drivers/disk/usb/usb_disk/usb_disk.cpp @@ -1244,6 +1244,8 @@ usb_disk_device_removed(void *cookie) device->removed = true; gUSBModule->cancel_queued_transfers(device->bulk_in); gUSBModule->cancel_queued_transfers(device->bulk_out); + if (device->is_ufi) + gUSBModule->cancel_queued_transfers(device->interrupt); // At this point, open_count should always be 0 anyway. if (device->open_count == 0)