public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jens Axboe <axboe@suse.de>
To: James Bottomley <James.Bottomley@SteelEye.com>
Cc: "Vladimir B. Savkin" <master@sectorb.msk.ru>,
	Linux Kernel <linux-kernel@vger.kernel.org>
Subject: Re: Linux 2.6.10-rc2 OOPS on boot with 3ware + reiserfs
Date: Fri, 19 Nov 2004 09:40:04 +0100	[thread overview]
Message-ID: <20041119084003.GV26240@suse.de> (raw)
In-Reply-To: <1100813973.1574.29.camel@mulgrave>

On Thu, Nov 18 2004, James Bottomley wrote:
> On Thu, 2004-11-18 at 15:32, Jens Axboe wrote:
> > It's clearly not the only one, the first 3 I looked at all did it.
> > That's the big mess. I'll do an audit.
> 
> Thanks ... I'll owe you a beverage of your choice...

I'm sure that can be arranged :-)

Here's an audit of drivers/scsi, there are quite a few of them in there.
I've opted to keep the ->scsi_done() calls in there and rather return 0,
instead of killing them and returning something more appropriate. I'll
send this to linux-scsi with maintainers CC'ed as well.

===== drivers/scsi/3w-9xxx.c 1.4 vs edited =====
--- 1.4/drivers/scsi/3w-9xxx.c	2004-07-16 17:20:43 +02:00
+++ edited/drivers/scsi/3w-9xxx.c	2004-11-18 22:55:58 +01:00
@@ -1746,6 +1746,7 @@ static int twa_scsi_queue(struct scsi_cm
 		twa_free_request_id(tw_dev, request_id);
 		SCpnt->result = (DID_ERROR << 16);
 		done(SCpnt);
+		reval = 0;
 	}
 
 	return retval;
===== drivers/scsi/3w-xxxx.c 1.47 vs edited =====
--- 1.47/drivers/scsi/3w-xxxx.c	2004-10-07 05:20:16 +02:00
+++ edited/drivers/scsi/3w-xxxx.c	2004-11-18 22:55:31 +01:00
@@ -2067,6 +2067,7 @@ static int tw_scsi_queue(struct scsi_cmn
 		tw_state_request_finish(tw_dev, request_id);
 		SCpnt->result = (DID_ERROR << 16);
 		done(SCpnt);
+		retval = 0;
 	}
 out:
 	return retval;
===== drivers/scsi/ide-scsi.c 1.47 vs edited =====
--- 1.47/drivers/scsi/ide-scsi.c	2004-10-22 01:46:25 +02:00
+++ edited/drivers/scsi/ide-scsi.c	2004-11-18 22:54:09 +01:00
@@ -891,7 +891,7 @@ abort:
 	if (rq) kfree (rq);
 	cmd->result = DID_ERROR << 16;
 	done(cmd);
-	return 1;
+	return 0;
 }
 
 static int idescsi_eh_abort (struct scsi_cmnd *cmd)
===== drivers/scsi/megaraid.c 1.73 vs edited =====
--- 1.73/drivers/scsi/megaraid.c	2004-11-11 09:43:34 +01:00
+++ edited/drivers/scsi/megaraid.c	2004-11-19 09:03:43 +01:00
@@ -634,11 +634,7 @@ mega_build_cmd(adapter_t *adapter, Scsi_
 			}
 
 			if(!(scb = mega_allocate_scb(adapter, cmd))) {
-
-				cmd->result = (DID_ERROR << 16);
-				cmd->scsi_done(cmd);
 				*busy = 1;
-
 				return NULL;
 			}
 
@@ -677,11 +673,7 @@ mega_build_cmd(adapter_t *adapter, Scsi_
 
 			/* Allocate a SCB and initialize passthru */
 			if(!(scb = mega_allocate_scb(adapter, cmd))) {
-
-				cmd->result = (DID_ERROR << 16);
-				cmd->scsi_done(cmd);
 				*busy = 1;
-
 				return NULL;
 			}
 			pthru = scb->pthru;
@@ -723,11 +715,7 @@ mega_build_cmd(adapter_t *adapter, Scsi_
 
 			/* Allocate a SCB and initialize mailbox */
 			if(!(scb = mega_allocate_scb(adapter, cmd))) {
-
-				cmd->result = (DID_ERROR << 16);
-				cmd->scsi_done(cmd);
 				*busy = 1;
-
 				return NULL;
 			}
 			mbox = (mbox_t *)scb->raw_mbox;
@@ -867,11 +855,7 @@ mega_build_cmd(adapter_t *adapter, Scsi_
 
 			/* Allocate a SCB and initialize mailbox */
 			if(!(scb = mega_allocate_scb(adapter, cmd))) {
-
-				cmd->result = (DID_ERROR << 16);
-				cmd->scsi_done(cmd);
 				*busy = 1;
-
 				return NULL;
 			}
 
@@ -899,11 +883,7 @@ mega_build_cmd(adapter_t *adapter, Scsi_
 	else {
 		/* Allocate a SCB and initialize passthru */
 		if(!(scb = mega_allocate_scb(adapter, cmd))) {
-
-			cmd->result = (DID_ERROR << 16);
-			cmd->scsi_done(cmd);
 			*busy = 1;
-
 			return NULL;
 		}
 
===== drivers/scsi/ncr53c8xx.c 1.50 vs edited =====
--- 1.50/drivers/scsi/ncr53c8xx.c	2004-11-11 09:43:34 +01:00
+++ edited/drivers/scsi/ncr53c8xx.c	2004-11-19 09:06:28 +01:00
@@ -7517,6 +7517,7 @@ printk("ncr53c8xx : command successfully
      if (sts != DID_OK) {
           unmap_scsi_data(np, cmd);
           done(cmd);
+	  sts = 0;
      }
 
      return sts;
===== drivers/scsi/nsp32.c 1.32 vs edited =====
--- 1.32/drivers/scsi/nsp32.c	2004-10-20 21:24:36 +02:00
+++ edited/drivers/scsi/nsp32.c	2004-11-19 09:10:05 +01:00
@@ -970,8 +970,7 @@ static int nsp32_queuecommand(struct scs
 		data->CurrentSC = NULL;
 		SCpnt->result   = DID_NO_CONNECT << 16;
 		done(SCpnt);
-
-		return SCSI_MLQUEUE_HOST_BUSY;
+		return 0;
 	}
 
 	/* check target ID is not same as this initiator ID */
@@ -979,7 +978,7 @@ static int nsp32_queuecommand(struct scs
 		nsp32_dbg(NSP32_DEBUG_QUEUECOMMAND, "terget==host???");
 		SCpnt->result = DID_BAD_TARGET << 16;
 		done(SCpnt);
-		return SCSI_MLQUEUE_DEVICE_BUSY;
+		return 0;
 	}
 
 	/* check target LUN is allowable value */
@@ -987,7 +986,7 @@ static int nsp32_queuecommand(struct scs
 		nsp32_dbg(NSP32_DEBUG_QUEUECOMMAND, "no more lun");
 		SCpnt->result = DID_BAD_TARGET << 16;
 		done(SCpnt);
-		return SCSI_MLQUEUE_DEVICE_BUSY;
+		return 0;
 	}
 
 	show_command(SCpnt);
@@ -1019,7 +1018,7 @@ static int nsp32_queuecommand(struct scs
 		nsp32_msg(KERN_ERR, "SGT fail");
 		SCpnt->result = DID_ERROR << 16;
 		nsp32_scsi_done(SCpnt);
-		return SCSI_MLQUEUE_HOST_BUSY;
+		return 0;
 	}
 
 	/* Build IDENTIFY */
@@ -1089,7 +1088,6 @@ static int nsp32_queuecommand(struct scs
 	if (ret != TRUE) {
 		nsp32_dbg(NSP32_DEBUG_QUEUECOMMAND, "selection fail");
 		nsp32_scsi_done(SCpnt);
-		return SCSI_MLQUEUE_DEVICE_BUSY;
 	}
 
 	return 0;
===== drivers/scsi/aacraid/aachba.c 1.29 vs edited =====
--- 1.29/drivers/scsi/aacraid/aachba.c	2004-10-01 17:10:08 +02:00
+++ edited/drivers/scsi/aacraid/aachba.c	2004-11-18 23:10:40 +01:00
@@ -894,7 +894,7 @@ int aac_read(struct scsi_cmnd * scsicmd,
 	aac_io_done(scsicmd);
 	fib_complete(cmd_fibcontext);
 	fib_free(cmd_fibcontext);
-	return -1;
+	return 0;
 }
 
 static int aac_write(struct scsi_cmnd * scsicmd, int cid)
@@ -928,7 +928,7 @@ static int aac_write(struct scsi_cmnd * 
 	if (!(cmd_fibcontext = fib_alloc(dev))) {
 		scsicmd->result = DID_ERROR << 16;
 		aac_io_done(scsicmd);
-		return -1;
+		return 0;
 	}
 	fib_init(cmd_fibcontext);
 
@@ -1004,7 +1004,7 @@ static int aac_write(struct scsi_cmnd * 
 
 	fib_complete(cmd_fibcontext);
 	fib_free(cmd_fibcontext);
-	return -1;
+	return 0;
 }
 
 
===== drivers/scsi/megaraid/megaraid_mbox.c 1.9 vs edited =====
--- 1.9/drivers/scsi/megaraid/megaraid_mbox.c	2004-10-08 17:12:09 +02:00
+++ edited/drivers/scsi/megaraid/megaraid_mbox.c	2004-11-18 23:12:10 +01:00
@@ -1623,6 +1623,7 @@ megaraid_queue_command(struct scsi_cmnd 
 
 	if (!scb) {	// command already completed
 		done(scp);
+		return 0;
 	}
 
 	return if_busy;
===== drivers/scsi/pcmcia/nsp_cs.c 1.35 vs edited =====
--- 1.35/drivers/scsi/pcmcia/nsp_cs.c	2004-10-05 22:11:16 +02:00
+++ edited/drivers/scsi/pcmcia/nsp_cs.c	2004-11-19 09:36:39 +01:00
@@ -226,7 +226,7 @@ static int nsp_queuecommand(Scsi_Cmnd *S
 		nsp_msg(KERN_DEBUG, "CurrentSC!=NULL this can't be happen");
 		SCpnt->result   = DID_BAD_TARGET << 16;
 		nsp_scsi_done(SCpnt);
-		return SCSI_MLQUEUE_HOST_BUSY;
+		return 0;
 	}
 
 #if 0
@@ -273,7 +273,7 @@ static int nsp_queuecommand(Scsi_Cmnd *S
 		nsp_dbg(NSP_DEBUG_QUEUECOMMAND, "selection fail");
 		SCpnt->result   = DID_BUS_BUSY << 16;
 		nsp_scsi_done(SCpnt);
-		return SCSI_MLQUEUE_DEVICE_BUSY;
+		return 0;
 	}
 
 

-- 
Jens Axboe


  reply	other threads:[~2004-11-19  8:41 UTC|newest]

Thread overview: 81+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-11-15  2:49 Linux 2.6.10-rc2 Linus Torvalds
2004-11-15  4:07 ` 2.6.10-rc2 doesn't boot Adrian Bunk
2004-11-15  4:48   ` Linus Torvalds
2004-11-15  5:29     ` Adrian Bunk
2004-11-15 23:27       ` Chris Wright
2004-11-15 23:58         ` Andrew Morton
2004-11-18 23:14         ` 2.6.10-rc2 doesn't boot (if no floppy device) Len Brown
2004-11-19  7:09           ` Chris Wright
2004-11-20  9:02             ` Len Brown
2004-11-20 12:40               ` Adrian Bunk
2004-11-20 18:28                 ` Linus Torvalds
2004-11-20 19:10                   ` Linus Torvalds
2004-11-22 19:55                     ` Len Brown
2004-11-24 16:26                     ` Alan Cox
2004-11-21 16:29                   ` Adrian Bunk
2004-11-22 19:29                   ` Len Brown
2004-11-22 20:02                     ` Linus Torvalds
2004-11-22 20:10                       ` Linus Torvalds
2004-11-22 20:38                       ` Len Brown
2004-11-23  2:45                         ` Linus Torvalds
2004-11-23  4:57                           ` Linus Torvalds
2004-11-23  7:06                             ` Len Brown
2004-11-23 20:13                               ` Stian Jordet
2004-11-23  2:00                   ` Chris Wright
2004-11-22 18:28                 ` Len Brown
2004-11-23  0:46                   ` Adrian Bunk
2004-11-23  1:07                     ` why use ACPI (Re: 2.6.10-rc2 doesn't boot (if no floppy device)) Len Brown
2004-11-23  1:23                       ` Dave Jones
2004-11-23  1:52                         ` Adrian Bunk
2004-11-23  1:37                       ` Adrian Bunk
2004-11-23  2:47                         ` Len Brown
2004-11-23  2:50                           ` Dave Jones
2004-11-23  3:13                             ` Gene Heskett
2004-11-23  3:45                               ` Dave Jones
2004-11-20 16:41               ` 2.6.10-rc2 doesn't boot (if no floppy device) Linus Torvalds
2004-11-22 19:07                 ` Len Brown
2004-11-22 19:23                   ` Linus Torvalds
2004-11-22 20:24                     ` Len Brown
2004-11-22 20:31                       ` Linus Torvalds
2004-11-22 20:36                         ` Linus Torvalds
2004-11-22 20:54                           ` Len Brown
2004-11-22 20:51                         ` Len Brown
2004-11-23  1:58               ` Chris Wright
2004-11-19 13:47           ` Adrian Bunk
2004-11-23  1:57           ` Chris Wright
2004-11-15  7:25   ` 2.6.10-rc2 doesn't boot Andrew Morton
2004-11-15 10:26 ` Linux 2.6.10-rc2 Russell King
2004-11-15 11:24   ` Ben Dooks
2004-11-15 11:55 ` Nick Piggin
2004-11-15 20:20   ` Andrew Morton
2004-11-16  0:29 ` Linux 2.6.10-rc2 [dvb-bt8xx unload oops] Eyal Lebedinsky
2004-11-16  9:57   ` Eyal Lebedinsky
2004-11-17 23:17   ` Eyal Lebedinsky
2004-11-16  7:55 ` Linux 2.6.10-rc2 SAVAGEFB startup crash Philipp Matthias Hahn
2004-11-16  8:17   ` Colin Leroy
2004-11-16 12:43   ` Antonino A. Daplas
2004-11-16 17:27     ` Philipp Matthias Hahn
2004-11-16 21:20       ` Antonino A. Daplas
2004-11-17 11:55         ` Philipp Matthias Hahn
2004-11-16 21:43       ` Antonino A. Daplas
2004-11-16 16:25 ` Linux 2.6.10-rc2 Guido Guenther
2004-11-17 15:54 ` Andrew Walrond
2004-11-17 16:58 ` Linux 2.6.10-rc2 OOPS on boot with 3ware + reiserfs Vladimir B. Savkin
     [not found]   ` <Pine.LNX.4.58.0411170935040.2222@ppc970.osdl.org>
     [not found]     ` <20041118103526.GC26240@suse.de>
2004-11-18 16:02       ` Vladimir B. Savkin
2004-11-18 18:39         ` Jens Axboe
2004-11-18 19:10           ` Jens Axboe
2004-11-18 19:22             ` James Bottomley
2004-11-18 21:32               ` Jens Axboe
2004-11-18 21:39                 ` James Bottomley
2004-11-19  8:40                   ` Jens Axboe [this message]
2004-11-17 19:32 ` Linux 2.6.10-rc2 start_udev very slow Andrew Walrond
2004-11-17 23:13   ` Greg KH
2004-12-16 15:56   ` Greg KH
2004-12-16 20:57     ` Andrew Walrond
2004-12-16 21:11       ` Greg KH
2004-12-16 21:20         ` Andrew Walrond
2004-12-16 21:46           ` Greg KH
2004-11-18 17:26 ` Linux 2.6.10-rc2 Vladimir B. Savkin
2004-11-18 17:59   ` Linus Torvalds
2004-11-18 18:01     ` Matthew Wilcox
2004-11-19  8:43       ` Vladimir B. Savkin

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=20041119084003.GV26240@suse.de \
    --to=axboe@suse.de \
    --cc=James.Bottomley@SteelEye.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=master@sectorb.msk.ru \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox