[PATCH] staging: usbip: stub_dev: Fixed oops during removal of usbip_host
Sergei Shtylyov
sshtylyov at mvista.com
Fri Sep 14 11:42:42 UTC 2012
Hello.
On 14-09-2012 13:53, navin patidar wrote:
> stub_device_reset should set kernel thread pointers to NULL.
> so that at the time of usbip_host removal stub_shoutdown_connection
> doesn't try to kill kernel threads which are already killed.
> Signed-off-by: navin patidar <navinp at cdac.in>
> ---
> drivers/staging/usbip/stub_dev.c | 14 +++++++++-----
> 1 file changed, 9 insertions(+), 5 deletions(-)
> diff --git a/drivers/staging/usbip/stub_dev.c b/drivers/staging/usbip/stub_dev.c
> index 92ced35..f584af8 100644
> --- a/drivers/staging/usbip/stub_dev.c
> +++ b/drivers/staging/usbip/stub_dev.c
> @@ -192,16 +192,13 @@ static void stub_shutdown_connection(struct usbip_device *ud)
> if (ud->tcp_tx)
> kthread_stop_put(ud->tcp_tx);
>
> - /*
> - * 2. close the socket
> + /* 2. close the socket
It's the preferred comment style -- why modify it?
> *
> * tcp_socket is freed after threads are killed so that usbip_xmit does
> * not touch NULL socket.
> */
> - if (ud->tcp_socket) {
> + if (ud->tcp_socket)
> sock_release(ud->tcp_socket);
> - ud->tcp_socket = NULL;
> - }
>
> /* 3. free used data */
> stub_device_cleanup_urbs(sdev);
> @@ -233,6 +230,13 @@ static void stub_device_reset(struct usbip_device *ud)
>
> dev_dbg(&udev->dev, "device reset");
>
> + /*reset tcp socket*/
Add spaces after /* and before */, please.
> + ud->tcp_socket = NULL;
> +
> + /*reset kernel thread pointers */
Here too.
WBR, Sergei
More information about the devel
mailing list