All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alan Stern <stern@rowland.harvard.edu>
To: Matthew Dharm <mdharm-usb@one-eyed-alien.net>
Cc: USB Storage List <usb-storage@one-eyed-alien.net>,
	SCSI development list <linux-scsi@vger.kernel.org>
Subject: Re: Notify about errors during initialization
Date: Mon, 8 Dec 2003 11:15:06 -0500 (EST)	[thread overview]
Message-ID: <Pine.LNX.4.44L0.0312081101480.1043-100000@ida.rowland.org> (raw)
In-Reply-To: <20031207051634.GB21951@one-eyed-alien.net>

Cross-posted to the linux-scsi list in the hope that someone there can 
confirm this answer...

On Sat, 6 Dec 2003, Matthew Dharm wrote:

> Question: Are we guaranteed that scsi_scan_host() doesn't return until the
> scanning process is complete?

I'm not absolutely certain -- best to check with someone on the linux-scsi
list.  But a quick look through the call chain in scsi_scan.c indicates
that scsi_scan_host() doesn't return until the scanning process is indeed
complete.  The real work is done in scsi_probe_lun() (called from
scsi_probe_and_add_lun()), and that uses scsi_wait_req().  After all, it
can't tell whether the LUN is there or not until it gets a reply to the
INQUIRY!

> I recall a problem that we had with the setting of flags and the call to
> scan the host -- without pre-emption, it worked, but with pre-emption
> things happened in the wrong order.  Could that happen here?

I don't remember that problem.  But I don't think pre-emption would cause 
any difficulties here.  All the flags should be set before we call 
scsi_scan_host().  If you can provide more details or a reference to what 
you're thinking of, I could reply in more detail.

When pre-emption does cause a problem it's generally because of some
assumption that the current task won't be scheduled out when it calls up()
or complete() or something like that.

Alan Stern


       reply	other threads:[~2003-12-08 16:15 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20031207051634.GB21951@one-eyed-alien.net>
2003-12-08 16:15 ` Alan Stern [this message]
2004-01-05  2:10   ` Notify about errors during initialization Matthew Dharm
2004-01-05 22:04     ` Alan Stern
2004-01-05 22:13       ` Christoph Hellwig
2004-01-05 23:32         ` Mike Anderson
2004-01-06 16:17           ` Christoph Hellwig
2004-01-06 17:15             ` Patrick Mansfield
2004-01-06 17:18               ` Christoph Hellwig
2004-01-06 18:08                 ` Mike Anderson
2004-01-06 18:08                   ` Christoph Hellwig
2004-01-06 19:04                     ` Mike Anderson
2004-01-06 18:07               ` Sysfs attribute file for max_sectors Alan Stern
2004-01-06 18:23                 ` James Bottomley
2004-01-06 19:31                   ` Alan Stern
2004-01-06 19:47                     ` James Bottomley
2004-01-07 16:16                       ` PATCH: (as168) " Alan Stern
2004-01-06 21:11                     ` Patrick Mansfield
2004-01-06 21:14                       ` Jens Axboe
2004-01-06 22:00                       ` Alan Stern

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=Pine.LNX.4.44L0.0312081101480.1043-100000@ida.rowland.org \
    --to=stern@rowland.harvard.edu \
    --cc=linux-scsi@vger.kernel.org \
    --cc=mdharm-usb@one-eyed-alien.net \
    --cc=usb-storage@one-eyed-alien.net \
    /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.