On Fri, 12 Apr 2002, Jens Axboe wrote:
> On Fri, Apr 12 2002, Petr Vandrovec wrote:
> > I believe that there must be some reason for doing that... And
> > do not ask me why it worked in 2.4.x, as it cleared io_32bit
> > in task_out_intr too.
>
> Because 2.4 doesn't use that path for fs requests. And be glad that it
> doesn't otherwise _everybody_ would have much worse problems than you
> are currently seeing.
Maybe if everyone ever bothered to look at the code base and not assume
they know everything ... and enjoying feable attempts to cast me as a
fool. Better yet maybe understand the hardware ...
ata_input_data
io_32bit = drive->io_32bit;
if (io_32bit)
insl(IDE_DATA_REG, buffer, wcount);
else
insw(IDE_DATA_REG, buffer, wcount<<1);
or
ata_output_data
io_32bit = drive->io_32bit;
if (io_32bit)
outsl(IDE_DATA_REG, buffer, wcount);
else
outsw(IDE_DATA_REG, buffer, wcount<<1);
WHOA is it not obvious it is the total number of calls to the same damn
DATA-TASKFILE-REGISTER-PORT
Which is only SIXTEEN BITS WIDE!
So please contine to write 32 bits to a 16 bit wide address...
Legacy or not the physical layer to the device, so please go look there.
Why do I even bother, all of you are so much smarter than me.
Cheers,
Andre Hedrick
LAD Storage Consulting Group
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Mon Apr 15 2002 - 22:00:20 EST