[<prev] [next>] [day] [month] [year] [list]
Message-Id: <1347616297-3339-1-git-send-email-navinp@cdac.in>
Date: Fri, 14 Sep 2012 15:21:37 +0530
From: navin patidar <navinp@...c.in>
To: gregkh@...uxfoundation.org, mfm@...eddisk.com
Cc: linux-usb@...r.kernel.org, devel@...verdev.osuosl.org,
linux-kernel@...r.kernel.org, navin patidar <navinp@...c.in>
Subject: [PATCH] staging: usbip: vhci_hcd: Fixed oops during removal of vhci_hcd
In response to "usbip detach -p [port_number]" user command,vhci_shoutdown_connection gets
executed which kills tcp_tx,tcp_rx kernel threads and then vhci_device_reset resets
all usb_device struct variables except kernel thread pointers.
so, at the time of vhci_hcd removal vhci_shoutdown_connection tries to kill kernel threads
which are already killed.
Signed-off-by: navin patidar <navinp@...c.in>
---
drivers/staging/usbip/vhci_hcd.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/staging/usbip/vhci_hcd.c b/drivers/staging/usbip/vhci_hcd.c
index 6076f42..b1f427c 100644
--- a/drivers/staging/usbip/vhci_hcd.c
+++ b/drivers/staging/usbip/vhci_hcd.c
@@ -858,6 +858,9 @@ static void vhci_device_reset(struct usbip_device *ud)
if (vdev->udev)
usb_put_dev(vdev->udev);
vdev->udev = NULL;
+ /* Reset kernel thread pointers */
+ ud->tcp_rx = NULL;
+ ud->tcp_tx = NULL;
ud->tcp_socket = NULL;
ud->status = VDEV_ST_NULL;
--
1.7.9.5
-------------------------------------------------------------------------------------------------------------------------------
This e-mail is for the sole use of the intended recipient(s) and may
contain confidential and privileged information. If you are not the
intended recipient, please contact the sender by reply e-mail and destroy
all copies and the original message. Any unauthorized review, use,
disclosure, dissemination, forwarding, printing or copying of this email
is strictly prohibited and appropriate legal action will be taken.
-------------------------------------------------------------------------------------------------------------------------------
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists