* 32-bit IO to-do item...
@ 2009-04-09 5:25 Jeff Garzik
2009-04-09 8:54 ` Alan Cox
0 siblings, 1 reply; 5+ messages in thread
From: Jeff Garzik @ 2009-04-09 5:25 UTC (permalink / raw)
To: Alan Cox; +Cc: Linux IDE mailing list
Alan,
I keep meaning to mention this (and get it into the mail archive)...
The 32-bit IO patch was incomplete, because it rendered
ATA_IOC_[GS]ET_IO32 handling in ata_sas_scsi_ioctl() -- our base ioctl
handler -- incorrect.
Previously, it simply ensured the ioctls reflected hardcoded 16-bit I/O.
Now, behavior no longer matches what the ioctls report.
At a minimum, drivers probably need to set an "I'm using 32bit I/O"
flag, that the ioctl then reads, replacing ata_sas_scsi_ioctl()'s
assumption that val==0.
Jeff
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: 32-bit IO to-do item...
2009-04-09 5:25 32-bit IO to-do item Jeff Garzik
@ 2009-04-09 8:54 ` Alan Cox
2009-04-09 9:48 ` Jeff Garzik
0 siblings, 1 reply; 5+ messages in thread
From: Alan Cox @ 2009-04-09 8:54 UTC (permalink / raw)
To: Jeff Garzik; +Cc: Linux IDE mailing list
On Thu, 09 Apr 2009 01:25:40 -0400
Jeff Garzik <jeff@garzik.org> wrote:
> Alan,
>
> I keep meaning to mention this (and get it into the mail archive)...
> The 32-bit IO patch was incomplete, because it rendered
> ATA_IOC_[GS]ET_IO32 handling in ata_sas_scsi_ioctl() -- our base ioctl
> handler -- incorrect.
>
> Previously, it simply ensured the ioctls reflected hardcoded 16-bit I/O.
> Now, behavior no longer matches what the ioctls report.
>
> At a minimum, drivers probably need to set an "I'm using 32bit I/O"
> flag, that the ioctl then reads, replacing ata_sas_scsi_ioctl()'s
> assumption that val==0.
Put onto my TODO list. I missed the fact you were even faking that
rather bogus ioctl (what for example does a PIO over DMA device claim ??)
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: 32-bit IO to-do item...
2009-04-09 8:54 ` Alan Cox
@ 2009-04-09 9:48 ` Jeff Garzik
2009-04-09 10:22 ` Alan Cox
0 siblings, 1 reply; 5+ messages in thread
From: Jeff Garzik @ 2009-04-09 9:48 UTC (permalink / raw)
To: Alan Cox; +Cc: Linux IDE mailing list
Alan Cox wrote:
> On Thu, 09 Apr 2009 01:25:40 -0400
> Jeff Garzik <jeff@garzik.org> wrote:
>
>> Alan,
>>
>> I keep meaning to mention this (and get it into the mail archive)...
>> The 32-bit IO patch was incomplete, because it rendered
>> ATA_IOC_[GS]ET_IO32 handling in ata_sas_scsi_ioctl() -- our base ioctl
>> handler -- incorrect.
>>
>> Previously, it simply ensured the ioctls reflected hardcoded 16-bit I/O.
>> Now, behavior no longer matches what the ioctls report.
>>
>> At a minimum, drivers probably need to set an "I'm using 32bit I/O"
>> flag, that the ioctl then reads, replacing ata_sas_scsi_ioctl()'s
>> assumption that val==0.
>
> Put onto my TODO list. I missed the fact you were even faking that
> rather bogus ioctl (what for example does a PIO over DMA device claim ??)
Probably as a result of a questionable choice to create new named
constants ATA_IOC_* as a replacement for existing constants HDIO_* I
did that to avoid including linux/hdreg.h -- something we quickly wound
up doing anyway.
I'd say pio-over-dma returns '1', so as to imply '0' meaning boring,
slow, legacy compatible 16-bit I/O. But it's a good question....
Jeff
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: 32-bit IO to-do item...
2009-04-09 9:48 ` Jeff Garzik
@ 2009-04-09 10:22 ` Alan Cox
2009-04-09 11:03 ` Jeff Garzik
0 siblings, 1 reply; 5+ messages in thread
From: Alan Cox @ 2009-04-09 10:22 UTC (permalink / raw)
To: Jeff Garzik; +Cc: Linux IDE mailing list
> I'd say pio-over-dma returns '1', so as to imply '0' meaning boring,
> slow, legacy compatible 16-bit I/O. But it's a good question....
And 8bit transfers ?
The more I look at this the more I think we should just admit it was a
dumb interface and do something different. To start with do we mean the
controller-disk transfer is 32bit (meaningful only in some early proto
IDE stuff), or the controller-fifo transfer is 32bit (which is
meaningless as actually its posted)
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: 32-bit IO to-do item...
2009-04-09 10:22 ` Alan Cox
@ 2009-04-09 11:03 ` Jeff Garzik
0 siblings, 0 replies; 5+ messages in thread
From: Jeff Garzik @ 2009-04-09 11:03 UTC (permalink / raw)
To: Alan Cox; +Cc: Linux IDE mailing list
Alan Cox wrote:
>> I'd say pio-over-dma returns '1', so as to imply '0' meaning boring,
>> slow, legacy compatible 16-bit I/O. But it's a good question....
>
> And 8bit transfers ?
>
> The more I look at this the more I think we should just admit it was a
> dumb interface and do something different. To start with do we mean the
> controller-disk transfer is 32bit (meaningful only in some early proto
> IDE stuff), or the controller-fifo transfer is 32bit (which is
> meaningless as actually its posted)
Sure it's a dumb interface, it's a legacy ioctl... :) We do the best
we can with a legacy interface.
On a more general level, sure, libata sorely lacks a control interface
for twiddling host controller features, or even device xfer modes.
Jeff
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2009-04-09 11:03 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-04-09 5:25 32-bit IO to-do item Jeff Garzik
2009-04-09 8:54 ` Alan Cox
2009-04-09 9:48 ` Jeff Garzik
2009-04-09 10:22 ` Alan Cox
2009-04-09 11:03 ` Jeff Garzik
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).