diff mbox

[21/28] aha152x: drop bus reset

Message ID 1498638316-44420-22-git-send-email-hare@suse.de (mailing list archive)
State Changes Requested, archived
Headers show

Commit Message

Hannes Reinecke June 28, 2017, 8:25 a.m. UTC
From: Hannes Reinecke <hare@suse.com>

The bus reset function is a subset of host reset, but will always
return SUCCESS. But as the host reset also invokes a reset for
all ports there is a possibility that the bus reset will not be
able to fully reset the HBA, leading to a blocked system.
So drop bus reset completely.

Signed-off-by: Hannes Reinecke <hare@suse.com>
---
 drivers/scsi/aha152x.c | 10 ----------
 1 file changed, 10 deletions(-)

Comments

Johannes Thumshirn June 28, 2017, 9 a.m. UTC | #1
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Christoph Hellwig June 28, 2017, 2:02 p.m. UTC | #2
On Wed, Jun 28, 2017 at 10:25:09AM +0200, Hannes Reinecke wrote:
> From: Hannes Reinecke <hare@suse.com>
> 
> The bus reset function is a subset of host reset, but will always
> return SUCCESS. But as the host reset also invokes a reset for
> all ports there is a possibility that the bus reset will not be
> able to fully reset the HBA, leading to a blocked system.
> So drop bus reset completely.

Wouldn't the more conservative option be to remove the host_reset
handler?  This driver is old and little used, and the existing
code will never have used the host_reset handler due to the fact
that the bus_reset handler always returns SUCCESS?
diff mbox

Patch

diff --git a/drivers/scsi/aha152x.c b/drivers/scsi/aha152x.c
index ce5dc73..21e9d7c 100644
--- a/drivers/scsi/aha152x.c
+++ b/drivers/scsi/aha152x.c
@@ -1165,15 +1165,6 @@  static int aha152x_bus_reset_host(struct Scsi_Host *shpnt)
 }
 
 /*
- * Reset the bus
- *
- */
-static int aha152x_bus_reset(Scsi_Cmnd *SCpnt)
-{
-	return aha152x_bus_reset_host(SCpnt->device->host);
-}
-
-/*
  *  Restore default values to the AIC-6260 registers and reset the fifos
  *
  */
@@ -2916,7 +2907,6 @@  static int aha152x_adjust_queue(struct scsi_device *device)
 	.queuecommand			= aha152x_queue,
 	.eh_abort_handler		= aha152x_abort,
 	.eh_device_reset_handler	= aha152x_device_reset,
-	.eh_bus_reset_handler		= aha152x_bus_reset,
 	.eh_host_reset_handler		= aha152x_host_reset,
 	.bios_param			= aha152x_biosparam,
 	.can_queue			= 1,