* [PATCH] cxgb4i: Remove the scsi host device when removing device
@ 2013-01-11 19:12 Thadeu Lima de Souza Cascardo
2013-01-17 5:17 ` Mike Christie
0 siblings, 1 reply; 2+ messages in thread
From: Thadeu Lima de Souza Cascardo @ 2013-01-11 19:12 UTC (permalink / raw)
To: linux-scsi
Cc: michaelc, JBottomley, linux-kernel, kxie,
Thadeu Lima de Souza Cascardo, Divy La Rey
When doing a hotplug remove of a cxgb4 device, there are still dandling
symlinks at /sys/class/scsi_host/hostX to the removed PCI device. The
upper layer device may also try to send data, which may crash the
system.
The DETACH message from the lower level driver is sent to the ULD when
the device is removed, when the scsi host should be removed from the
system, avoiding any problems.
After this patch, there are no more dangling symlinks and many attempts
to crash the system while there is SCSI activity and removing the device
have failed. Adding the device back again works as expected, with the
scsi hosts showing up again.
Based on a patch by Karen Xie.
Cc: Karen Xie <kxie@chelsio.com>
Cc: Divy La Rey <divy@chelsio.com>
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@linux.vnet.ibm.com>
---
drivers/scsi/cxgbi/cxgb4i/cxgb4i.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c b/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
index f924b3c..3fecf35 100644
--- a/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
+++ b/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
@@ -1564,6 +1564,7 @@ static int t4_uld_state_change(void *handle, enum cxgb4_state state)
break;
case CXGB4_STATE_DETACH:
pr_info("cdev 0x%p, DETACH.\n", cdev);
+ cxgbi_device_unregister(cdev);
break;
default:
pr_info("cdev 0x%p, unknown state %d.\n", cdev, state);
--
1.7.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] cxgb4i: Remove the scsi host device when removing device
2013-01-11 19:12 [PATCH] cxgb4i: Remove the scsi host device when removing device Thadeu Lima de Souza Cascardo
@ 2013-01-17 5:17 ` Mike Christie
0 siblings, 0 replies; 2+ messages in thread
From: Mike Christie @ 2013-01-17 5:17 UTC (permalink / raw)
To: Thadeu Lima de Souza Cascardo
Cc: linux-scsi, JBottomley, linux-kernel, kxie, Divy La Rey
On 01/11/2013 01:12 PM, Thadeu Lima de Souza Cascardo wrote:
> When doing a hotplug remove of a cxgb4 device, there are still dandling
> symlinks at /sys/class/scsi_host/hostX to the removed PCI device. The
> upper layer device may also try to send data, which may crash the
> system.
>
> The DETACH message from the lower level driver is sent to the ULD when
> the device is removed, when the scsi host should be removed from the
> system, avoiding any problems.
>
> After this patch, there are no more dangling symlinks and many attempts
> to crash the system while there is SCSI activity and removing the device
> have failed. Adding the device back again works as expected, with the
> scsi hosts showing up again.
>
> Based on a patch by Karen Xie.
>
> Cc: Karen Xie <kxie@chelsio.com>
> Cc: Divy La Rey <divy@chelsio.com>
> Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@linux.vnet.ibm.com>
> ---
> drivers/scsi/cxgbi/cxgb4i/cxgb4i.c | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c b/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
> index f924b3c..3fecf35 100644
> --- a/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
> +++ b/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
> @@ -1564,6 +1564,7 @@ static int t4_uld_state_change(void *handle, enum cxgb4_state state)
> break;
> case CXGB4_STATE_DETACH:
> pr_info("cdev 0x%p, DETACH.\n", cdev);
> + cxgbi_device_unregister(cdev);
> break;
> default:
> pr_info("cdev 0x%p, unknown state %d.\n", cdev, state);
>
Patch looks ok to me.
Reviewed-by: Mike Christie <michaelc@cs.wisc.edu>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2013-01-17 5:33 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-01-11 19:12 [PATCH] cxgb4i: Remove the scsi host device when removing device Thadeu Lima de Souza Cascardo
2013-01-17 5:17 ` Mike Christie
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).