linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tejun Heo <htejun@gmail.com>
To: Matthew Wilcox <matthew@wil.cx>
Cc: Jeff Garzik <jeff@garzik.org>, linux-ide@vger.kernel.org
Subject: Re: [PATCH] Remove sync waiting code from libata
Date: Sat, 08 Sep 2007 19:36:30 +0200	[thread overview]
Message-ID: <46E2DD9E.9080302@gmail.com> (raw)
In-Reply-To: <20070908171731.GB6809@parisc-linux.org>

Matthew Wilcox wrote:
> On Sat, Sep 08, 2007 at 05:14:21PM +0900, Tejun Heo wrote:
>> Matthew Wilcox wrote:
>>> By using the scsi async probing code, we can remove the 'sync' argument
>>> from ata_scsi_scan_host():
>> Hmmm... How so?  @sync is there to keep device numbering stable even
>> when SCSI scan fails due to allocation failure.  I don't see how async
>> probing changes that.
> 
> async probing also keeps device numbering stable.  As long as the device
> responds within ten seconds (and the current code has half a second as
> the timeout), it'll get the same number it would have had, even though
> other hosts have successfully completed their probes during that time.

The @sync parameter is to work around GFP_ATOMIC allocation in SCSI scan
code.  A libata SCSI host can have upto 15 devices with PMP and with
multiple devices allocation failure is not so rare, probably because
libata SCSI scanning is done back-to-back in rapid succession.

The proper fix is probably to make SCSI scanning code not use GFP_ATOMIC
(there doesn't seem to be any reason to) but @sync is the bandaid till
that happens.

Thanks.

-- 
tejun

  reply	other threads:[~2007-09-08 17:38 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-09-07  2:46 [PATCH] Remove sync waiting code from libata Matthew Wilcox
2007-09-08  8:14 ` Tejun Heo
2007-09-08 17:17   ` Matthew Wilcox
2007-09-08 17:36     ` Tejun Heo [this message]
2007-09-08 18:47     ` Alan Cox
2007-09-08 20:33       ` Tejun Heo

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=46E2DD9E.9080302@gmail.com \
    --to=htejun@gmail.com \
    --cc=jeff@garzik.org \
    --cc=linux-ide@vger.kernel.org \
    --cc=matthew@wil.cx \
    /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).