All of lore.kernel.org
 help / color / mirror / Atom feed
From: Claas Langbehn <claas@rootdir.de>
To: linux-kernel@vger.kernel.org
Cc: andre@linux-ide.org, chb@muc.de
Subject: [2.6.0-test11] VIA IDE DMA problems with sleeping harddisk
Date: Tue, 16 Dec 2003 15:38:08 +0100	[thread overview]
Message-ID: <20031216143808.GA11517@rootdir.de> (raw)

Hello,


I have got two harddiscs in my system (hda, hdb) and an CD-R/W writer as
hdc. Both harddiscs are UDMA-100 drives. First of all, it is strange
that the drives are only set to a transfer rate of 88.8 MB/s and not
to 100MB/s (see below).


hdb is sleeping most of the time (hdparm -S), but when I need the drive,
it does not spin up fast enough, so that the kernel messages say:

    Dec 16 15:13:14 kernel: hdb: dma_timer_expiry: dma status == 0x61
    Dec 16 15:13:24 kernel: hdb: DMA timeout error
    Dec 16 15:13:24 kernel: hdb: dma timeout error: status=0xd0 { Busy }
    Dec 16 15:13:24 kernel: 
    Dec 16 15:13:24 kernel: hda: DMA disabled
    Dec 16 15:13:24 kernel: hdb: DMA disabled
    Dec 16 15:13:25 kernel: ide0: reset: success

In /proc/ide/via i see, that hda is using PIO now:

    -------------------drive0----drive1----drive2----drive3-----
    Transfer Mode:        PIO      UDMA      UDMA       PIO
    Address Setup:      120ns     120ns     120ns     120ns
    Cmd Active:          90ns      90ns      90ns      90ns
    Cmd Recovery:        30ns      30ns      30ns      30ns
    Data Active:         90ns      90ns      90ns     330ns
    Data Recovery:       30ns      30ns      30ns     270ns
    Cycle Time:         120ns      22ns      60ns     600ns
    Transfer Rate:   16.6MB/s  88.8MB/s  33.3MB/s   3.3MB/s

When I re-enable DMA afterwards the messages say:

Dec 16 15:13:49 zoo kernel: blk: queue dfde1200, I/O limit 4095Mb (mask
0xffffffff)



- How do I increase the dma_timer_expiry so that DMA will 
  not be disabled so fast? 
  
- Why does the kernel say "hdb: DMA disabled" but /proc/ide/via says
  that DMA was only disabled on hda?
  Is it a bug or is it enabled again without telling me?
  
- Which workaround should be considered?



Regards, Claas



# cat /proc/ide/via   (with DMA enabled)

    ----------VIA BusMastering IDE Configuration----------------
    Driver Version:                     3.38
    South Bridge:                       VIA vt8235
    Revision:                           ISA 0x0 IDE 0x6
    Highest DMA rate:                   UDMA133
    BM-DMA base:                        0xdc00
    PCI clock:                          33.3MHz
    Master Read  Cycle IRDY:            0ws
    Master Write Cycle IRDY:            0ws
    BM IDE Status Register Read Retry:  yes
    Max DRDY Pulse Width:               No limit
    -----------------------Primary IDE-------Secondary IDE------
    Read DMA FIFO flush:          yes                 yes
    End Sector FIFO flush:         no                  no
    Prefetch Buffer:              yes                 yes
    Post Write Buffer:            yes                 yes
    Enabled:                      yes                 yes
    Simplex only:                  no                  no
    Cable Type:                   80w                 80w
    -------------------drive0----drive1----drive2----drive3-----
    Transfer Mode:       UDMA      UDMA      UDMA       PIO
    Address Setup:      120ns     120ns     120ns     120ns
    Cmd Active:          90ns      90ns      90ns      90ns
    Cmd Recovery:        30ns      30ns      30ns      30ns
    Data Active:         90ns      90ns      90ns     330ns
    Data Recovery:       30ns      30ns      30ns     270ns
    Cycle Time:          22ns      22ns      60ns     600ns
    Transfer Rate:   88.8MB/s  88.8MB/s  33.3MB/s   3.3MB/s

# uname -a
    Linux zoo 2.6.0-test11 #3 Mon Dec 1 19:57:51 CET 2003 i686 GNU/Linux


             reply	other threads:[~2003-12-16 14:38 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-12-16 14:38 Claas Langbehn [this message]
2003-12-17 18:46 ` [2.6.0-test11] VIA IDE DMA problems with sleeping harddisk Vojtech Pavlik

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=20031216143808.GA11517@rootdir.de \
    --to=claas@rootdir.de \
    --cc=andre@linux-ide.org \
    --cc=chb@muc.de \
    --cc=linux-kernel@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.