From: Albert Lee <albertcc@tw.ibm.com>
To: Jeff Garzik <jgarzik@pobox.com>
Cc: albertl@mail.com, Tejun Heo <htejun@gmail.com>,
linux-ide@vger.kernel.org, Doug Maxey <dwm@maxeymade.com>
Subject: Re: [PATCH 1/1] libata: use polling pio for identify device
Date: Tue, 23 May 2006 10:27:24 +0800 [thread overview]
Message-ID: <4472730C.3090800@tw.ibm.com> (raw)
In-Reply-To: <44715907.7060602@pobox.com>
Jeff Garzik wrote:
> Albert Lee wrote:
>
>> Use polling pio for identify device.
>> This can save some time to detect the phantom device 1 during boot.
>>
>> Signed-off-by: Albert Lee <albertcc@tw.ibm.com>
>> ---
>> For the phantom slave device (found with some IBM DVD-RAM drive and
>> Intel ICHx chip), irq-pio has to wait 30 seconds timeout to detect them.
>>
>> Use polling pio can detect the phantom slave quicker. (Verified ok by
>> Tejun.)
>>
>> Patch again the current upstream branch
>> (b74ba22f030eb7ab88f7d8954ad18ecc0ac5ce3c).
>> For your review, thanks.
>>
>> --- upstream/drivers/scsi/libata-core.c 2006-05-22
>> 10:04:12.000000000 +0800
>> +++ polling_identify/drivers/scsi/libata-core.c 2006-05-22
>> 11:07:02.000000000 +0800
>> @@ -1196,6 +1196,8 @@ static int ata_dev_read_id(struct ata_de
>> }
>>
>> tf.protocol = ATA_PROT_PIO;
>> + /* Use polling for early detection of phantom dev 1 */
>> + tf.flags |= ATA_TFLAG_POLLING;
>
>
> Sorry I didn't jump into the thread earlier. I'm trying out this new
> no-work-on-weekends thing, which is a change from my usual
> working-7-days-a-week thing. :)
>
> NAK. The above change is going backwards from the direction we took by
> merging irq-pio, and it reintroduces problems that irq-pio solved.
> Additionally, for irq problems unrelated to libata (we will continue to
> see such problems FOREVER), this simply shifts the I-notice-a-problem
> moment from IDENTIFY DEVICE to SET FEATURES, or perhaps the first READ
> or WRITE.
Currently if the device fails to IDENTIFY DEVICE, new EH will retry
for 3 times and offline it. So, the faulty/phantom device won't
cause trouble to SET FEATURES and normal operation of libata.
(The impact is, 90 seconds boot time for irq-pio and 15 seconds
boot time for polling-pio to IDENTIFY DEVICE and EH recovery.)
>
> SATA is inherently event driven (read: irq-driven), and PATA has
> traditionally been irq-driven in the Linux drivers/ide code. Using
> polling for solving this specific problem just isn't enough
> justification. We should be able to fix this elsewhere. Take a look at
> the drivers/ide "bang at the door w/ IDENTIFY" probing method. We took
> a different approach (device signature, etc.) but its still a useful
> working case to examine.
Agree. We need better way to identify the phantom slave.
Will check if any clue we can use, before banging the door by IDENTIFY.
--
albert
>
> As an aside, phantom devices make me think that somewhere we might be
> getting device-select wrong, or accidentally skipping it entirely.
>
> Jeff
>
next prev parent reply other threads:[~2006-05-23 2:27 UTC|newest]
Thread overview: 113+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-05-15 17:00 [RFT] major libata update Jeff Garzik
2006-05-15 17:18 ` Andrew Morton
2006-05-15 18:06 ` Jeff Garzik
2006-05-15 19:06 ` Arkadiusz Miskiewicz
2006-05-15 20:45 ` Jeff Garzik
2006-05-15 19:33 ` Mark Lord
2006-05-15 22:52 ` Tejun Heo
2006-05-15 18:15 ` Jeff Garzik
2006-05-15 18:27 ` Andrew Morton
2006-05-15 18:44 ` Jeff Garzik
2006-05-15 18:37 ` Alan Cox
2006-05-15 17:19 ` Alan Cox
2006-05-15 17:13 ` Jeff Garzik
2006-05-15 18:29 ` Tomasz Torcz
2006-05-15 18:43 ` Jeff Garzik
2006-05-15 23:32 ` Tejun Heo
2006-05-15 23:49 ` Jeff Garzik
2006-05-16 0:04 ` Tejun Heo
2006-05-16 2:15 ` Tejun Heo
2006-05-15 19:15 ` Jeff Garzik
2006-05-15 23:02 ` Wakko Warner
2006-05-15 23:00 ` Jeff Garzik
2006-05-15 23:13 ` Wakko Warner
2006-05-15 23:19 ` Jeff Garzik
2006-05-15 23:40 ` Alan Cox
2006-05-15 23:50 ` Wakko Warner
2006-05-15 23:38 ` Alan Cox
2006-05-15 23:47 ` Wakko Warner
2006-05-15 23:45 ` Jeff Garzik
2006-05-15 23:30 ` Avuton Olrich
2006-05-15 23:36 ` Tejun Heo
2006-05-15 23:54 ` Jeff Garzik
2006-05-16 0:08 ` Avuton Olrich
2006-05-16 3:36 ` Avuton Olrich
2006-05-16 3:51 ` Jeff Garzik
2006-05-16 4:33 ` Avuton Olrich
2006-05-16 14:57 ` Linus Torvalds
2006-05-17 15:25 ` OGAWA Hirofumi
2006-05-17 23:40 ` Linus Torvalds
2006-05-17 23:48 ` Jeff Garzik
2006-05-18 1:48 ` Alan Cox
2006-05-17 23:49 ` Linus Torvalds
2006-05-16 15:02 ` Jeff Garzik
2006-05-16 3:55 ` Tejun Heo
2006-05-16 4:37 ` Avuton Olrich
2006-05-16 11:36 ` Ric Wheeler
2006-05-16 14:25 ` Jeff Garzik
2006-05-16 15:24 ` Tejun Heo
2006-05-16 18:29 ` Ric Wheeler
2006-05-16 21:41 ` Ric Wheeler
2006-05-16 22:02 ` Jeff Garzik
2006-05-16 23:11 ` Eric D. Mudama
2006-05-17 2:13 ` Ric Wheeler
2006-05-16 23:23 ` Tejun Heo
2006-05-17 2:09 ` Ric Wheeler
2006-05-16 23:44 ` Tejun Heo
2006-05-16 23:53 ` Jeff Garzik
2006-05-17 0:00 ` Jeff Garzik
2006-05-17 0:29 ` Tejun Heo
2006-05-17 1:08 ` Jeff Garzik
2006-05-17 1:27 ` Tejun Heo
2006-05-17 2:26 ` Jeff Garzik
2006-05-17 3:05 ` Tejun Heo
2006-05-22 7:19 ` Jeff Garzik
2006-05-23 13:59 ` Tejun Heo
2006-05-17 0:31 ` Jeff Garzik
2006-05-17 0:50 ` Tejun Heo
2006-05-17 0:57 ` Tejun Heo
2006-05-17 2:22 ` Ric Wheeler
2006-05-17 1:37 ` Tejun Heo
2006-05-17 3:57 ` Ric Wheeler
2006-05-17 4:44 ` Tejun Heo
2006-05-17 11:30 ` Ric Wheeler
2006-05-17 20:45 ` Ric Wheeler
2006-05-17 21:01 ` Mark Lord
2006-05-17 21:04 ` Jeff Garzik
2006-05-17 21:50 ` Tejun Heo
2006-05-17 21:56 ` Mark Lord
2006-05-17 22:00 ` Jeff Garzik
2006-05-17 22:03 ` Mark Lord
2006-05-17 22:13 ` Jeff Garzik
2006-05-18 3:33 ` Ric Wheeler
2006-05-18 3:26 ` Tejun Heo
2006-05-18 11:58 ` Ric Wheeler
2006-05-18 12:52 ` Mark Lord
2006-05-18 13:22 ` Ric Wheeler
2006-05-18 13:37 ` Jens Axboe
2006-05-17 1:13 ` Jeff Garzik
2006-05-17 1:14 ` Jeff Garzik
2006-05-17 2:16 ` Ric Wheeler
2006-05-16 23:34 ` Jeff Garzik
2006-05-16 23:53 ` Tejun Heo
2006-05-17 2:05 ` Andrew Morton
2006-05-17 4:49 ` Tejun Heo
2006-05-17 4:56 ` Andrew Morton
2006-05-17 5:14 ` Tejun Heo
2006-05-17 6:35 ` Tejun Heo
2006-05-18 11:24 ` Albert Lee
2006-05-18 11:33 ` Tejun Heo
2006-05-19 10:37 ` Albert Lee
2006-05-19 11:03 ` Tejun Heo
2006-05-22 3:51 ` [PATCH 1/1] libata: use polling pio for identify device Albert Lee
2006-05-22 6:24 ` Jeff Garzik
2006-05-23 2:27 ` Albert Lee [this message]
2006-05-18 23:07 ` [RFT] major libata update Andrew Morton
2006-05-19 1:14 ` Tejun Heo
2006-05-19 2:06 ` Jeff Garzik
2006-05-19 2:16 ` Tejun Heo
2006-05-22 7:22 ` Jeff Garzik
2006-05-21 23:51 ` Michael Sterrett -Mr. Bones.-
2006-05-22 2:42 ` Tejun Heo
2006-05-22 3:42 ` Michael Sterrett -Mr. Bones.-
2006-05-22 6:23 ` Michael Sterrett -Mr. Bones.-
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=4472730C.3090800@tw.ibm.com \
--to=albertcc@tw.ibm.com \
--cc=albertl@mail.com \
--cc=dwm@maxeymade.com \
--cc=htejun@gmail.com \
--cc=jgarzik@pobox.com \
--cc=linux-ide@vger.kernel.org \
/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.