[Ksummit-2008-discuss] Kernel Summit request for Discussion of future of ATA (libata) and IDE

Tejun Heo htejun at gmail.com
Mon Aug 4 16:49:09 PDT 2008


Jeff Garzik wrote:
> Robert Hancock wrote:
>> Alan Cox wrote:
>>>> * There are still corner case in libata core - PIO is dead slow
>>>> compared to drivers/ide/,
>>> There are two there - libata keeps IRQs blocked for longer in PIO mode as
>>> well which is a factor for realtime that needs looking at, as well as
>>> using 16bit not 32bit I/O for most devices (which is trivial to fix). The
>>> IRQ masking stuff is more complex and old IDE handles it far better for
>>> PIO on non shared IRQ interfaces. That is actually probably the most
>>> complicated thing to address of the stuff you'd want to do if you were
>>> going to kill off old IDE.
>> I was looking into the 32-bit PIO issue a bit yesterday. It looks like 
>> some of the VLB libata drivers are doing this internally already, so it 
>> shouldn't be hard to do this in the core. Only question is how we know 
>> generically if the controller can do it or not? It looks like in old 
>> IDE, a few controllers explicitly disable it, but it appears that it 
>> doesn't default to on for any controller, so it's possible there are 
>> others on which it doesn't work. Presumably anything on an actual 16-bit 
>> bus (ISA, LPC, etc.) wouldn't like it, to start with.
> 
> FWIW there is already a patch from Willy Terreau (sp?) to add 32-bit I/O.
> 
> I queued it for "later" because it had some issues that Alan pointed 
> out, IIRC.  I definitely want to push it in, though.

Jeff, have your thoughts about PIO IRQ disable handling changed yet?  I
don't really see any better way than doing it like IDE.

Thanks.

-- 
tejun


More information about the Ksummit-2008-discuss mailing list