From: Finn Thain <fthain@telegraphics.com.au>
To: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>,
"Martin K. Petersen" <martin.petersen@oracle.com>,
Michael Schmitz <schmitzmic@gmail.com>,
linux-m68k@vger.kernel.org, linux-scsi@vger.kernel.org,
linux-kernel@vger.kernel.org
Cc: Ondrej Zary <linux@rainbow-software.org>, Sam Creasey <sammy@sammy.net>
Subject: [PATCH v4 23/23] ncr5380: Call complete_cmd() for disconnected commands on bus reset
Date: Wed, 23 Mar 2016 21:10:32 +1100 [thread overview]
Message-ID: <20160323101015.181778613@telegraphics.com.au> (raw)
In-Reply-To: 20160323101009.341929635@telegraphics.com.au
[-- Attachment #1: ncr5380-disconnected-autosense-fix --]
[-- Type: text/plain, Size: 1228 bytes --]
I'm told that some targets are liable to disconnect a REQUEST SENSE
command. Theoretically this would cause a command undergoing autosense to
be moved onto the disconnected list. The bus reset handler must call
complete_cmd() for these commands, otherwise the hostdata->sensing pointer
will not get cleared. That would cause autosense processing to stall and
a timeout or an incorrect scsi_eh_restore_cmnd() would eventually follow.
Signed-off-by: Finn Thain <fthain@telegraphics.com.au>
Reported-by: Michael Schmitz <schmitzmic@gmail.com>
Tested-by: Ondrej Zary <linux@rainbow-software.org>
Reviewed-by: Hannes Reinecke <hare@suse.com>
---
drivers/scsi/NCR5380.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: linux/drivers/scsi/NCR5380.c
===================================================================
--- linux.orig/drivers/scsi/NCR5380.c 2016-03-23 21:10:00.000000000 +1100
+++ linux/drivers/scsi/NCR5380.c 2016-03-23 21:10:07.000000000 +1100
@@ -2437,7 +2437,7 @@ static int NCR5380_bus_reset(struct scsi
struct scsi_cmnd *cmd = NCR5380_to_scmd(ncmd);
set_host_byte(cmd, DID_RESET);
- cmd->scsi_done(cmd);
+ complete_cmd(instance, cmd);
}
INIT_LIST_HEAD(&hostdata->disconnected);
WARNING: multiple messages have this Message-ID (diff)
From: Finn Thain <fthain@telegraphics.com.au>
To: "James E.J. Bottomley" <James.Bottomley@HansenPartnership.com>,
"Martin K. Petersen" <martin.petersen@oracle.com>,
Michael Schmitz <schmitzmic@gmail.com>,
<linux-m68k@vger.kernel.org>, <linux-scsi@vger.kernel.org>,
<linux-kernel@vger.kernel.org>
Cc: Ondrej Zary <linux@rainbow-software.org>, Sam Creasey <sammy@sammy.net>
Subject: [PATCH v4 23/23] ncr5380: Call complete_cmd() for disconnected commands on bus reset
Date: Wed, 23 Mar 2016 21:10:32 +1100 [thread overview]
Message-ID: <20160323101015.181778613@telegraphics.com.au> (raw)
In-Reply-To: 20160323101009.341929635@telegraphics.com.au
[-- Attachment #1: ncr5380-disconnected-autosense-fix --]
[-- Type: text/plain, Size: 1226 bytes --]
I'm told that some targets are liable to disconnect a REQUEST SENSE
command. Theoretically this would cause a command undergoing autosense to
be moved onto the disconnected list. The bus reset handler must call
complete_cmd() for these commands, otherwise the hostdata->sensing pointer
will not get cleared. That would cause autosense processing to stall and
a timeout or an incorrect scsi_eh_restore_cmnd() would eventually follow.
Signed-off-by: Finn Thain <fthain@telegraphics.com.au>
Reported-by: Michael Schmitz <schmitzmic@gmail.com>
Tested-by: Ondrej Zary <linux@rainbow-software.org>
Reviewed-by: Hannes Reinecke <hare@suse.com>
---
drivers/scsi/NCR5380.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: linux/drivers/scsi/NCR5380.c
===================================================================
--- linux.orig/drivers/scsi/NCR5380.c 2016-03-23 21:10:00.000000000 +1100
+++ linux/drivers/scsi/NCR5380.c 2016-03-23 21:10:07.000000000 +1100
@@ -2437,7 +2437,7 @@ static int NCR5380_bus_reset(struct scsi
struct scsi_cmnd *cmd = NCR5380_to_scmd(ncmd);
set_host_byte(cmd, DID_RESET);
- cmd->scsi_done(cmd);
+ complete_cmd(instance, cmd);
}
INIT_LIST_HEAD(&hostdata->disconnected);
next prev parent reply other threads:[~2016-03-23 10:10 UTC|newest]
Thread overview: 60+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-23 10:10 [PATCH v4 00/23] ncr5380: Eliminate macros, reduce code duplication, fix bugs etc Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 01/23] g_ncr5380: Remove CONFIG_SCSI_GENERIC_NCR53C400 Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 02/23] ncr5380: Remove FLAG_NO_PSEUDO_DMA where possible Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 03/23] ncr5380: Remove REAL_DMA and REAL_DMA_POLL macros Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 04/23] atari_NCR5380: Remove DMA_MIN_SIZE macro Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 05/23] ncr5380: Disable the DMA errata workaround flag by default Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 06/23] ncr5380: Remove PSEUDO_DMA macro Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 07/23] ncr5380: Remove BOARD_REQUIRES_NO_DELAY macro Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 08/23] ncr5380: Use DMA hooks for PDMA Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 09/23] ncr5380: Adopt uniform DMA setup convention Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 10/23] ncr5380: Merge DMA implementation from atari_NCR5380 core driver Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 11/23] atari_scsi: Adopt NCR5380.c " Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 12/23] sun3_scsi: " Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 13/23] ncr5380: Remove disused atari_NCR5380.c " Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 14/23] ncr5380: Reduce max_lun limit Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 15/23] dmx3191d: Drop max_sectors limit Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 16/23] ncr5380: Fix register decoding for debugging Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 17/23] ncr5380: Remove remaining register storage qualifiers Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 18/23] ncr5380: Remove DONT_USE_INTR and AUTOPROBE_IRQ macros Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 19/23] ncr5380: Update usage documentation Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 20/23] atari_scsi: Set a reasonable default for cmd_per_lun Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 21/23] atari_scsi: Allow can_queue to be increased for Falcon Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-03-23 10:10 ` [PATCH v4 22/23] mac_scsi: Fix pseudo DMA implementation Finn Thain
2016-03-23 10:10 ` Finn Thain
2016-05-19 9:00 ` Geert Uytterhoeven
2016-05-19 9:00 ` Geert Uytterhoeven
2016-05-19 12:02 ` Finn Thain
2016-05-19 12:55 ` Geert Uytterhoeven
2016-03-23 10:10 ` Finn Thain [this message]
2016-03-23 10:10 ` [PATCH v4 23/23] ncr5380: Call complete_cmd() for disconnected commands on bus reset Finn Thain
2016-03-23 20:54 ` [PATCH v4 00/23] ncr5380: Eliminate macros, reduce code duplication, fix bugs etc Martin K. Petersen
2016-03-23 20:54 ` Martin K. Petersen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160323101015.181778613@telegraphics.com.au \
--to=fthain@telegraphics.com.au \
--cc=James.Bottomley@HansenPartnership.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-m68k@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=linux@rainbow-software.org \
--cc=martin.petersen@oracle.com \
--cc=sammy@sammy.net \
--cc=schmitzmic@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.