From: Tejun Heo <htejun@gmail.com>
To: Eddie Hung <eddie.hung@gmail.com>
Cc: linux-ide@vger.kernel.org, Alan Cox <alan@lxorguk.ukuu.org.uk>
Subject: Re: CF as IDE on ICH6M using libata
Date: Mon, 03 Sep 2007 20:46:56 +0900 [thread overview]
Message-ID: <46DBF430.1050508@gmail.com> (raw)
In-Reply-To: <6f9550040709030340h42dfbce4ud5919dafde4e5b69@mail.gmail.com>
Eddie Hung wrote:
>> libata doesn't use SWDMA. SWDMA is pointless to support. It buys
>> almost nothing over PIO modes. The condition to fall back to PIO is
>> very strict to prevent premature fall back. I think it needs some
>> relaxation and special handling for cases where DMA transfer has never
>> succeeded after configuration so that it can fall back more easily.
>
> Sorry, by SWDMA I meant PIO4 - and as the log shows - it does not seem
> to drop from MWDMA1 to the PIO modes - even after about 15 minutes.
Yeah, it seems the logic can't speed down to PIO only with timeouts.
The condition is more than 10 Cat-1 + Cat-2 + Cat-3 errors in 5 mins.
The timeout is 30secs so you can't do 10 of them within 5 mins. It
needs fixing.
>>> I can confirm that my chipset does indeed support UDMA, here is the
>>> hdparm -I report on my original disk:
>> Yeah, it's really difficult to come by a controller which doesn't
>> support UDMA these days.
>
> So from that, we can determine that the CF card doesn't support UDMA
> (or if you're being optimistic like I am - it doesn't report it, or it
> doesn't report it in a way which the controller recognises)
The report mechanism is simple and the controller doesn't have much to
do with it. Bridge chip may affect it but I'm doubtful.
>> WXP uses PIO modes just fine. I dunno how HDTune determines the current
>> transfer mode but if it uses IDENTIFY to query the device setting, it's
>> possible that the device reports MWDMA while the OS drives it in PIO
>> mode. The best way to tell is watching cpu usage while transferring
>> data from the device. If you're using mwdma, you won't see too high cpu
>> usage; otherwise, you'll notice high spikes during data transfer. Can
>> you please try that and report?
>
> Like I said before, the CF card is operating extremely slowly: HDTune
> shows that I'm getting 2MB/s burst which often drops to about 0.1MB/s
> - and the qualitative observation is the same as what I get when I'm
> using ide-generic.
>
> My X41 has a 1.5Ghz P4M, and a 0.1MB/s hit (if it is using PIO) is
> hardly going to make a dent - I'm fairly sure that it is spending most
> of its time waiting for IO, but I shall take a deeper look tonight.
The beautiful thing about PIO is that it doesn't matter how fast your
cpu is. Faster CPUs will just burn more cycles while transferring data
at the same measly speed. :-)
> What's confusing me is that my 40MB/s card only supporting MWDMA2 -
> which offers only a max transfer rate of 16.7MB/s - how have other
> people achieved 30MB/s then!?! (I'm referring to an ICH8 user who
> claims he has here, with a very similar CF card:
> http://www.opensubscriber.com/message/linux-ide@vger.kernel.org/6818048.html
Whatever the device is, it should support UDMA to do 30MB/s. MWDMA2
just can't reach that speed electronically.
> Also, does libATA support the PIO5 and PIO6 modes, which according to
> Wikipedia are not part of the ATA standard, but the CF 2.0 standard?
> (source: http://en.wikipedia.org/wiki/Programmed_input/output )
I dunno much about those fancy PIO modes. Maybe Alan knows?
Thanks.
--
tejun
next prev parent reply other threads:[~2007-09-03 11:47 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-09-02 12:42 CF as IDE on ICH6M using libata Eddie Hung
2007-09-02 13:08 ` Tejun Heo
2007-09-02 18:29 ` Eddie Hung
2007-09-03 2:45 ` Tejun Heo
2007-09-03 10:40 ` Eddie Hung
2007-09-03 11:46 ` Tejun Heo [this message]
2007-09-03 12:03 ` Eddie Hung
2007-09-03 12:20 ` Eddie Hung
2007-09-03 12:40 ` Tejun Heo
2007-09-03 12:51 ` Eddie Hung
2007-09-04 18:17 ` Eddie Hung
2007-09-05 17:28 ` Mark Lord
2007-09-05 22:03 ` Eddie Hung
2007-09-06 17:50 ` Tejun Heo
[not found] ` <6f9550040709061456h6f9a64ebgec9dbe457a836138@mail.gmail.com>
2007-09-07 0:44 ` Tejun Heo
2007-09-07 13:38 ` Mark Lord
2007-09-08 7:10 ` Tejun Heo
2007-09-10 12:18 ` Mark Lord
2007-09-10 18:19 ` Alan Cox
2007-09-10 19:39 ` Mark Lord
2007-09-02 14:04 ` Alan Cox
2007-09-02 18:41 ` Eddie Hung
2007-09-02 18:58 ` Alan Cox
2007-09-02 19:14 ` Eddie Hung
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=46DBF430.1050508@gmail.com \
--to=htejun@gmail.com \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=eddie.hung@gmail.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 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).