From: Anton Blanchard <anton@samba.org>
To: James Bottomley <James.Bottomley@SteelEye.com>
Cc: Dipankar Sarma <dipankar@in.ibm.com>,
SCSI Mailing List <linux-scsi@vger.kernel.org>,
Linux Kernel <linux-kernel@vger.kernel.org>,
stern@rowland.harvard.edu
Subject: Re: [2.6.14-rc1] sym scsi boot hang
Date: Wed, 14 Sep 2005 18:06:29 +1000 [thread overview]
Message-ID: <20050914080629.GB19051@krispykreme> (raw)
In-Reply-To: <1126629345.4809.36.camel@mulgrave>
Hi,
> If that's the cause, it's probably a double down of the host scan
> semaphore somewhere in the code. alt-sysrq-t should work in this case,
> can you get a stack trace of the blocked process?
It appears to be this patch:
[SCSI] SCSI core: fix leakage of scsi_cmnd's
From: Alan Stern <stern@rowland.harvard.edu>
This patch (as559b) adds a new routine, scsi_unprep_request, which
gets called every place a request is requeued. (That includes
scsi_queue_insert as well as scsi_requeue_command.) It also changes
scsi_kill_requests to make it call __scsi_done with result equal to
DID_NO_CONNECT << 16. (I'm not sure if it's necessary to call
scsi_init_cmd_errh here; maybe you can check on that.) Finally, the
patch changes the return value from scsi_end_request, to avoid
returning a stale pointer in the case where the request was requeued.
Fortunately the return value is used in only place, and the change
actually simplified it.
And in particular it looks like the scsi_unprep_request in
scsi_queue_insert is causing it. The following patch fixes the boot
problems on the vscsi machine:
Index: build/drivers/scsi/scsi_lib.c
===================================================================
--- build.orig/drivers/scsi/scsi_lib.c 2005-09-14 18:23:34.000000000 +1000
+++ build/drivers/scsi/scsi_lib.c 2005-09-14 18:27:33.000000000 +1000
@@ -188,7 +188,7 @@
* function. The SCSI request function detects the blocked condition
* and plugs the queue appropriately.
*/
- scsi_unprep_request(req);
+ //scsi_unprep_request(req);
spin_lock_irqsave(q->queue_lock, flags);
blk_requeue_request(q, req);
spin_unlock_irqrestore(q->queue_lock, flags);
next prev parent reply other threads:[~2005-09-14 8:06 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-09-13 12:48 [2.6.14-rc1] sym scsi boot hang Dipankar Sarma
2005-09-13 13:17 ` Anton Blanchard
2005-09-13 14:29 ` Anton Blanchard
2005-09-13 16:35 ` James Bottomley
2005-09-13 16:47 ` Anton Blanchard
2005-09-13 17:32 ` James Bottomley
2005-09-13 17:13 ` Anton Blanchard
2005-09-13 17:33 ` Dipankar Sarma
2005-09-14 8:06 ` Anton Blanchard [this message]
2005-09-14 15:49 ` Alan Stern
2005-09-14 16:52 ` Mike Christie
2005-09-14 16:53 ` Mike Christie
2005-09-14 20:35 ` James Bottomley
2005-09-14 16:57 ` James Bottomley
2005-09-14 20:19 ` Alan Stern
2005-09-14 20:44 ` James Bottomley
2005-09-14 21:33 ` Alan Stern
2005-09-15 13:56 ` James Bottomley
2005-09-15 14:13 ` Alan Stern
2005-09-15 17:52 ` Alan Stern
2005-09-16 10:28 ` Anton Blanchard
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=20050914080629.GB19051@krispykreme \
--to=anton@samba.org \
--cc=James.Bottomley@SteelEye.com \
--cc=dipankar@in.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=stern@rowland.harvard.edu \
/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