[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

DMA missing after install -- rebuild initrd? HOWTO?


After playing around for a while, I decided to go ahead and do my
AMD64 Etch install for real.  At the end of it, though, I got a
surprise -- no DMA on any IDE devices.  The drives are capable,
the BIOS recognizes them as UDMA5, I tried a bunch of different
80-connector cables, and hdparm shows them as udma5 too.  But still,
attempts to turn on DMA got the well-known "DIO_SET_DMA failed:
Operation not permitted" error.

While googling like crazy for ideas, I came upon this thread from
this mailing list:


which suggests the problem may be loading ide-generic before my
chipset-specific module, and that the solution would be to rebuild
my initrd.  Since my symptoms look similar to those described in
this thread, I'll give it a shot.

I've never built or rebuilt an initrd, or monkeyed with the contents
of one.  When I haven't been able to use a Debian install kernel,
I've always just built my own and compiled the drive controller/
filesystem modules into the kernel, so there's no issue.  I could
do that again here, and I plan to eventually; but I'd like to have
the installation kernel working well first so I can use it as a base
from which to start (these are my first steps with 2.6.x as well).

So I'm wondering if someone can point me at good docs/a howto
for building/rebuilding the Debian install initrd?  I have a
vague memory of people commenting that mkinitrd is now deprecated
in favor of yaird -- that correct?

Thanks for any info.


P.S.  What's odd about this is that at one point in my playing around,
I *did* have DMA access.  I added some drives and did my install, and
presto, no DMA anymore.  So if it is the "ide-generic loaded before
chipset-specific" issue, the loading sequence apparently can vary.


Reply to: