On Fri, 23 Jun 2017, Hannes Reinecke wrote:

> The bus reset handler really is a host reset, so move it to
> eh_bus_reset_handler.
> 
> Signed-off-by: Hannes Reinecke <[email protected]>
> ---
>  drivers/scsi/NCR5380.c      | 13 ++++++++-----
>  drivers/scsi/arm/cumana_1.c |  2 +-
>  drivers/scsi/arm/oak.c      |  2 +-
>  drivers/scsi/atari_scsi.c   |  6 +++---
>  drivers/scsi/dmx3191d.c     |  2 +-
>  drivers/scsi/g_NCR5380.c    |  4 ++--
>  drivers/scsi/mac_scsi.c     |  4 ++--
>  drivers/scsi/sun3_scsi.c    |  4 ++--
>  8 files changed, 20 insertions(+), 17 deletions(-)
> 
> diff --git a/drivers/scsi/NCR5380.c b/drivers/scsi/NCR5380.c
> index acc3344..e877fb9 100644
> --- a/drivers/scsi/NCR5380.c
> +++ b/drivers/scsi/NCR5380.c
> @@ -2296,24 +2296,24 @@ static int NCR5380_abort(struct scsi_cmnd *cmd)
>  
>  
>  /**
> - * NCR5380_bus_reset - reset the SCSI bus
> + * NCR5380_host_reset - reset the SCSI host
>   * @cmd: SCSI command undergoing EH
>   *
>   * Returns SUCCESS
>   */
>  
> -static int NCR5380_bus_reset(struct scsi_cmnd *cmd)
> +static int NCR5380_host_reset(struct scsi_cmnd *cmd)
>  {
>       struct Scsi_Host *instance = cmd->device->host;
>       struct NCR5380_hostdata *hostdata = shost_priv(instance);
>       int i;
>       unsigned long flags;
> -     struct NCR5380_cmd *ncmd;
> +     struct NCR5380_cmd *ncmd, *tmp;
>  

Do you need to introduce another temporary command pointer for this?

>       spin_lock_irqsave(&hostdata->lock, flags);
>  
>  #if (NDEBUG & NDEBUG_ANY)
> -     scmd_printk(KERN_INFO, cmd, __func__);
> +     shost_printk(KERN_INFO, instance, __func__);
>  #endif
>       NCR5380_dprint(NDEBUG_ANY, instance);
>       NCR5380_dprint_phase(NDEBUG_ANY, instance);
> @@ -2331,7 +2331,10 @@ static int NCR5380_bus_reset(struct scsi_cmnd *cmd)
>        * commands!
>        */
>  
> -     if (list_del_cmd(&hostdata->unissued, cmd)) {
> +     list_for_each_entry_safe(ncmd, tmp, &hostdata->unissued, list) {
> +             struct scsi_cmnd *cmd = NCR5380_to_scmd(ncmd);
> +
> +             list_del_init(&ncmd->list);
>               cmd->result = DID_RESET << 16;
>               cmd->scsi_done(cmd);
>       }

For the sake of consistency, why didn't you use the same style that is 
used later in this routine? I.e.

        list_for_each_entry(ncmd, &hostdata->unissued, list) {
                struct scsi_cmnd *cmd = NCR5380_to_scmd(ncmd);

                cmd->result = DID_RESET << 16;
                cmd->scsi_done(cmd);
        }
        INIT_LIST_HEAD(&hostdata->unissued);

Either way,

Acked-by: Finn Thain <[email protected]>

Thanks.

-- 

> diff --git a/drivers/scsi/arm/cumana_1.c b/drivers/scsi/arm/cumana_1.c
> index a87b99c..ae1d809 100644
> --- a/drivers/scsi/arm/cumana_1.c
> +++ b/drivers/scsi/arm/cumana_1.c
> @@ -216,7 +216,7 @@ static void cumanascsi_write(struct NCR5380_hostdata 
> *hostdata,
>       .info                   = cumanascsi_info,
>       .queuecommand           = cumanascsi_queue_command,
>       .eh_abort_handler       = NCR5380_abort,
> -     .eh_bus_reset_handler   = NCR5380_bus_reset,
> +     .eh_host_reset_handler  = NCR5380_host_reset,
>       .can_queue              = 16,
>       .this_id                = 7,
>       .sg_tablesize           = SG_ALL,
> diff --git a/drivers/scsi/arm/oak.c b/drivers/scsi/arm/oak.c
> index 6be6666..05b7f75 100644
> --- a/drivers/scsi/arm/oak.c
> +++ b/drivers/scsi/arm/oak.c
> @@ -105,7 +105,7 @@ static inline int oakscsi_pread(struct NCR5380_hostdata 
> *hostdata,
>       .info                   = oakscsi_info,
>       .queuecommand           = oakscsi_queue_command,
>       .eh_abort_handler       = NCR5380_abort,
> -     .eh_bus_reset_handler   = NCR5380_bus_reset,
> +     .eh_host_reset_handler  = NCR5380_host_reset,
>       .can_queue              = 16,
>       .this_id                = 7,
>       .sg_tablesize           = SG_ALL,
> diff --git a/drivers/scsi/atari_scsi.c b/drivers/scsi/atari_scsi.c
> index a75feeb..89f5154 100644
> --- a/drivers/scsi/atari_scsi.c
> +++ b/drivers/scsi/atari_scsi.c
> @@ -671,7 +671,7 @@ static void atari_scsi_falcon_reg_write(unsigned int reg, 
> u8 value)
>  
>  #include "NCR5380.c"
>  
> -static int atari_scsi_bus_reset(struct scsi_cmnd *cmd)
> +static int atari_scsi_host_reset(struct scsi_cmnd *cmd)
>  {
>       int rv;
>       unsigned long flags;
> @@ -688,7 +688,7 @@ static int atari_scsi_bus_reset(struct scsi_cmnd *cmd)
>               atari_dma_orig_addr = NULL;
>       }
>  
> -     rv = NCR5380_bus_reset(cmd);
> +     rv = NCR5380_host_reset(cmd);
>  
>       /* The 5380 raises its IRQ line while _RST is active but the ST DMA
>        * "lock" has been released so this interrupt may end up handled by
> @@ -711,7 +711,7 @@ static int atari_scsi_bus_reset(struct scsi_cmnd *cmd)
>       .info                   = atari_scsi_info,
>       .queuecommand           = atari_scsi_queue_command,
>       .eh_abort_handler       = atari_scsi_abort,
> -     .eh_bus_reset_handler   = atari_scsi_bus_reset,
> +     .eh_host_reset_handler  = atari_scsi_host_reset,
>       .this_id                = 7,
>       .cmd_per_lun            = 2,
>       .use_clustering         = DISABLE_CLUSTERING,
> diff --git a/drivers/scsi/dmx3191d.c b/drivers/scsi/dmx3191d.c
> index 6af3394..003c3d7 100644
> --- a/drivers/scsi/dmx3191d.c
> +++ b/drivers/scsi/dmx3191d.c
> @@ -58,7 +58,7 @@
>       .info                   = NCR5380_info,
>       .queuecommand           = NCR5380_queue_command,
>       .eh_abort_handler       = NCR5380_abort,
> -     .eh_bus_reset_handler   = NCR5380_bus_reset,
> +     .eh_host_reset_handler  = NCR5380_host_reset,
>       .can_queue              = 32,
>       .this_id                = 7,
>       .sg_tablesize           = SG_ALL,
> diff --git a/drivers/scsi/g_NCR5380.c b/drivers/scsi/g_NCR5380.c
> index c34fc91..4965a46 100644
> --- a/drivers/scsi/g_NCR5380.c
> +++ b/drivers/scsi/g_NCR5380.c
> @@ -54,7 +54,7 @@
>  #define NCR5380_intr                    generic_NCR5380_intr
>  #define NCR5380_queue_command           generic_NCR5380_queue_command
>  #define NCR5380_abort                   generic_NCR5380_abort
> -#define NCR5380_bus_reset               generic_NCR5380_bus_reset
> +#define NCR5380_host_reset              generic_NCR5380_host_reset
>  #define NCR5380_info                    generic_NCR5380_info
>  
>  #define NCR5380_io_delay(x)             udelay(x)
> @@ -661,7 +661,7 @@ static int generic_NCR5380_dma_xfer_len(struct 
> NCR5380_hostdata *hostdata,
>       .info                   = generic_NCR5380_info,
>       .queuecommand           = generic_NCR5380_queue_command,
>       .eh_abort_handler       = generic_NCR5380_abort,
> -     .eh_bus_reset_handler   = generic_NCR5380_bus_reset,
> +     .eh_host_reset_handler  = generic_NCR5380_host_reset,
>       .can_queue              = 16,
>       .this_id                = 7,
>       .sg_tablesize           = SG_ALL,
> diff --git a/drivers/scsi/mac_scsi.c b/drivers/scsi/mac_scsi.c
> index 196acc7..dd60573 100644
> --- a/drivers/scsi/mac_scsi.c
> +++ b/drivers/scsi/mac_scsi.c
> @@ -41,7 +41,7 @@
>  #define NCR5380_intr                    macscsi_intr
>  #define NCR5380_queue_command           macscsi_queue_command
>  #define NCR5380_abort                   macscsi_abort
> -#define NCR5380_bus_reset               macscsi_bus_reset
> +#define NCR5380_host_reset              macscsi_host_reset
>  #define NCR5380_info                    macscsi_info
>  
>  #include "NCR5380.h"
> @@ -328,7 +328,7 @@ static int macscsi_dma_residual(struct NCR5380_hostdata 
> *hostdata)
>       .info                   = macscsi_info,
>       .queuecommand           = macscsi_queue_command,
>       .eh_abort_handler       = macscsi_abort,
> -     .eh_bus_reset_handler   = macscsi_bus_reset,
> +     .eh_host_reset_handler  = macscsi_host_reset,
>       .can_queue              = 16,
>       .this_id                = 7,
>       .sg_tablesize           = 1,
> diff --git a/drivers/scsi/sun3_scsi.c b/drivers/scsi/sun3_scsi.c
> index e64b0c5..9492638 100644
> --- a/drivers/scsi/sun3_scsi.c
> +++ b/drivers/scsi/sun3_scsi.c
> @@ -46,7 +46,7 @@
>  #define NCR5380_write(reg, value)       out_8(hostdata->io + (reg), value)
>  
>  #define NCR5380_queue_command           sun3scsi_queue_command
> -#define NCR5380_bus_reset               sun3scsi_bus_reset
> +#define NCR5380_host_reset              sun3scsi_host_reset
>  #define NCR5380_abort                   sun3scsi_abort
>  #define NCR5380_info                    sun3scsi_info
>  
> @@ -495,7 +495,7 @@ static int sun3scsi_dma_finish(int write_flag)
>       .info                   = sun3scsi_info,
>       .queuecommand           = sun3scsi_queue_command,
>       .eh_abort_handler       = sun3scsi_abort,
> -     .eh_bus_reset_handler   = sun3scsi_bus_reset,
> +     .eh_host_reset_handler  = sun3scsi_host_reset,
>       .can_queue              = 16,
>       .this_id                = 7,
>       .sg_tablesize           = SG_NONE,
> 

Reply via email to