From: "Petr Vandrovec" <VANDROVE@vc.cvut.cz>
To: Andre Hedrick <andre@linuxdiskcert.org>
Cc: <vojtech@suse.cz>, Davide Libenzi <davidel@xmailserver.org>,
Anton Altaparmakov <aia21@cam.ac.uk>,
Linus Torvalds <torvalds@transmeta.com>,
linux-kernel@vger.kernel.org
Subject: Re: Linux 2.5.3-pre1-aia1
Date: Mon, 21 Jan 2002 23:45:00 +0100 [thread overview]
Message-ID: <F9158D81E5D@vcnet.vc.cvut.cz> (raw)
I did not want to participate in this discussion, as it is probably
impossible to explain to you that there is nothing wrong with doing
requests not evenly divisible by block size.
On 21 Jan 02 at 13:44, Andre Hedrick wrote:
> On Mon, 21 Jan 2002, Jens Axboe wrote:
> > On Mon, Jan 21 2002, Andre Hedrick wrote:
> > > > I always thought it is like this (and this is what I still believe after
> > > > having read the sprcification):
> > > >
> > > > ---
> > > > SET_MUTIPLE 16 sectors
> > > > ---
> > > > READ_MULTIPLE 24 sectors
> > > > IRQ
> > > > PIO transfer 16 sectors
> > > > IRQ
> > > > PIO transfer 8 sectors
> > > > ---
>
> 255 * 512bytes != 128K BUG
> 256 * 512bytes == 128K
>
> You insure we will fail on alignemnt.
SET MULTIPLE MODE description says that host should try block size only
1,2,4,8,16,32,64 or 128 sectors. So where you got 255 from?
> You have stated BLOCK can not deal with correct sector alignments, and
> thus 255 so please fix it first. I have accepted this brokeness in BLOCK
> and dropped to 128 sectors or a clean 64k.
>
> If we restrict multi-sector PIO to 8 sectors we can do multi interrupt
> ATOMIC disk IO on the paging alignments, but you have enforced single
> sector IO in the multi-sector writing and can not see the difference.
Why we cannot do multi-sector PIO with 16...128 sectors? There is no need
to read all data with one insw() loop, you can store each of these
64kB of data in 65536 different, non-continuous, locations, and ATA device
will not complain, as it will always see 32768 of word reads from its
data port, nothing else... And no, there is no requirement that host
must do back-to-back reads or writes from ATA device data port. Otherwise
we would see upper bound on t0 in PIO-in and PIO-out cycles description.
> If rq->current_nr_sectors is less than 8 we do PIO single sector IO, but
> we are doing that now w/ the copy paste changes from the old ide-disk.c
> stuff that we are attempting deleting.
Please tell me what page 168 (it is number of paper page, page number
in PDF is by 14 greater) of Volume 2, Revision 0, of ATA/ATAPI rev.7
(T13/1532D) in description of READ MULTIPLE talks about?
If the number of requested sectors is not evenly divisible by the block
count, as many full blocks as possible are transferred, followed by a final,
partial block transfer. The partial block transfer shall be for n sectors,
where n = remainder (sector count/block count).
And almost identical text appears on page 296, where it talks about
WRITE MULTIPLE.
If you are trying to persuade us that there are devices which support
ATA interface, and do not follow these paragraphs word by word, there
is certainly something wrong in the ATA world...
Best regards,
Petr Vandrovec
vandrove@vc.cvut.cz
next reply other threads:[~2002-01-21 22:46 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-01-21 22:45 Petr Vandrovec [this message]
2002-01-21 23:27 ` Linux 2.5.3-pre1-aia1 Andre Hedrick
2002-01-22 7:58 ` Jens Axboe
2002-01-22 8:52 ` Andre Hedrick
2002-01-22 14:17 ` Denis Vlasenko
-- strict thread matches above, loose matches on Subject: below --
2002-01-21 4:40 Andre Hedrick
2002-01-21 6:19 ` Matti Aarnio
2002-01-21 4:40 Andre Hedrick
2002-01-18 2:27 Anton Altaparmakov
2002-01-18 17:32 ` Davide Libenzi
2002-01-18 19:05 ` Jens Axboe
2002-01-18 19:23 ` Davide Libenzi
2002-01-18 19:28 ` Andre Hedrick
2002-01-18 19:48 ` Davide Libenzi
2002-01-18 19:40 ` Andre Hedrick
2002-01-18 19:44 ` Andre Hedrick
2002-01-19 11:40 ` Jens Axboe
2002-01-19 11:37 ` Andre Hedrick
2002-01-19 15:45 ` Jens Axboe
2002-01-19 20:36 ` Andre Hedrick
2002-01-19 21:44 ` Davide Libenzi
2002-01-20 0:31 ` Andre Hedrick
2002-01-20 2:02 ` Davide Libenzi
2002-01-20 10:48 ` Jens Axboe
2002-01-20 18:55 ` Davide Libenzi
2002-01-21 0:12 ` Andre Hedrick
2002-01-21 10:43 ` Vojtech Pavlik
2002-01-21 10:48 ` Jens Axboe
2002-01-21 10:56 ` Jens Axboe
2002-01-21 17:44 ` Davide Libenzi
2002-01-21 11:14 ` Vojtech Pavlik
2002-01-21 11:29 ` Jens Axboe
2002-01-21 11:38 ` Vojtech Pavlik
2002-01-21 11:51 ` Andre Hedrick
2002-01-21 11:34 ` Andre Hedrick
2002-01-21 17:44 ` Jens Axboe
2002-01-21 20:18 ` Andre Hedrick
2002-01-21 22:57 ` Vojtech Pavlik
2002-01-21 23:53 ` Andre Hedrick
2002-01-22 7:20 ` Vojtech Pavlik
2002-01-22 7:52 ` Andre Hedrick
2002-01-22 8:16 ` Jens Axboe
2002-01-22 9:45 ` Andre Hedrick
2002-01-22 10:06 ` Jens Axboe
2002-01-22 10:26 ` Anton Altaparmakov
2002-01-22 16:49 ` Linus Torvalds
2002-01-22 18:45 ` Andre Hedrick
2002-01-21 21:44 ` Andre Hedrick
2002-01-22 7:32 ` Jens Axboe
2002-01-21 11:22 ` Andre Hedrick
2002-01-21 11:32 ` Vojtech Pavlik
2002-01-21 11:34 ` Jens Axboe
2002-01-21 1:48 ` Andre Hedrick
2002-01-21 7:36 ` Jens Axboe
2002-01-21 7:46 ` Andre Hedrick
2002-01-21 8:01 ` Jens Axboe
2002-01-21 8:42 ` Andre Hedrick
2002-01-21 9:00 ` Jens Axboe
2002-01-21 8:59 ` Andre Hedrick
2002-01-21 9:07 ` Jens Axboe
2002-01-21 9:48 ` Andre Hedrick
2002-01-18 19:26 ` Andre Hedrick
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=F9158D81E5D@vcnet.vc.cvut.cz \
--to=vandrove@vc.cvut.cz \
--cc=aia21@cam.ac.uk \
--cc=andre@linuxdiskcert.org \
--cc=davidel@xmailserver.org \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@transmeta.com \
--cc=vojtech@suse.cz \
/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