From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754194AbcCWH3n (ORCPT ); Wed, 23 Mar 2016 03:29:43 -0400 Received: from mx2.suse.de ([195.135.220.15]:35227 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752518AbcCWH3e (ORCPT ); Wed, 23 Mar 2016 03:29:34 -0400 Subject: Re: [PATCH v3 23/23] ncr5380: Call complete_cmd() for disconnected commands on bus reset To: Finn Thain , "James E.J. Bottomley" , "Martin K. Petersen" , Michael Schmitz , linux-m68k@vger.kernel.org, linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org References: <20160321023149.604138431@telegraphics.com.au> <20160321023155.603958101@telegraphics.com.au> Cc: Ondrej Zary , Sam Creasey From: Hannes Reinecke Message-ID: <56F245DC.90801@suse.de> Date: Wed, 23 Mar 2016 08:29:32 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 In-Reply-To: <20160321023155.603958101@telegraphics.com.au> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 03/21/2016 03:32 AM, Finn Thain wrote: > 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 > > --- > 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-21 13:31:40.000000000 +1100 > +++ linux/drivers/scsi/NCR5380.c 2016-03-21 13:31:47.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); > > > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke Teamlead Storage & Networking hare@suse.de +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton HRB 21284 (AG Nürnberg)