linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jens Axboe <axboe@suse.de>
To: "Vladimir B. Savkin" <master@sectorb.msk.ru>
Cc: linux-kernel@vger.kernel.org,
	James Bottomley <James.Bottomley@steeleye.com>
Subject: Re: Linux 2.6.10-rc2 OOPS on boot with 3ware + reiserfs
Date: Thu, 18 Nov 2004 20:10:02 +0100	[thread overview]
Message-ID: <20041118191002.GO26240@suse.de> (raw)
In-Reply-To: <20041118183920.GL26240@suse.de>

On Thu, Nov 18 2004, Jens Axboe wrote:
> On Thu, Nov 18 2004, Vladimir B. Savkin wrote:
> > On Thu, Nov 18, 2004 at 11:35:26AM +0100, Jens Axboe wrote:
> > > On Wed, Nov 17 2004, Linus Torvalds wrote:
> > > > 
> > > > Jens, did you see this one?
> > > 
> > > Vladimir, is this completely reproducable? Does -rc1 work correctly (or
> > > which was the last version you tested)? I haven't been able to spot any
> > > errors in this path so far.
> > 
> > It happens 100% when smartd tries to fetch SMART info from
> > disks connected to 3ware controller.
> > Seems like using obsolete 3ware API has something to do with this.
> > It does happen with -rc1 too.
> > Here is a complete dmesg output:
> 
> Really looks like a double requeue, bet it happens because we end up
> requeing both from the failed queuecommand return and from scsi_done().
> I'll take a look.

It is a double requeue. The SCSI path looks really messy (and buggy
there). What happens is that the host queuecommand sets DID_ERROR and
calls scsi_done() on the command, which may decide the commands need
retrying and thus requeue it. Upon return from queuecommand, the SCSI
layer initiates a requeue of the request because queuecommand returned
1. Double requeue, request list is now screwed.

James, it looks like the queuecommand returns need an overhaul so it's
clear who does what and when.

You can work around the issue with this patch (I hope, not tested), I'll
see if I can scrub the paths a little.

--- linux-2.6.10-rc2-mm1/drivers/scsi/3w-xxxx.c~	2004-11-18 20:03:27.945527140 +0100
+++ linux-2.6.10-rc2-mm1/drivers/scsi/3w-xxxx.c	2004-11-18 20:10:01.249255049 +0100
@@ -2053,6 +2053,11 @@
 			break;
 		case TW_IOCTL:
 			printk(KERN_WARNING "3w-xxxx: SCSI_IOCTL_SEND_COMMAND deprecated, please update your 3ware tools.\n");
+			tw_dev->state[request_id] = TW_S_COMPLETED;
+			tw_state_request_finish(tw_dev, request_id);
+			SCpnt->result = DID_ABORT << 16;
+			done(SCpnt);
+			reval = 0;
 			break;
 		default:
 			printk(KERN_NOTICE "3w-xxxx: scsi%d: Unknown scsi opcode: 0x%x\n", tw_dev->host->host_no, *command);

-- 
Jens Axboe


  reply	other threads:[~2004-11-18 19:13 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 [this message]
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
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=20041118191002.GO26240@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;
as well as URLs for NNTP newsgroup(s).