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

Re: Unable to disable IDE DMA on boot



Hi, Johannes,

I had to deal with this problem too and got some experience on it

Then I tried to create a custom initrd image using "mkinitrd" from
"initrd-tools" (0.1.56). I noticed that the default "/sbin/init" script
will try to pass the IDE options specified on the kernel command line to
"ide-mod" module. However, this module has been renamed to "ide-core" so

That will be fixed in one of initrd-tools next uploads (see #240734). In the meantime you can use

alias ide-mod ide-core

but I suggest you to do the thing below. By the way, even with a fixed initrd-tools there is a problem about how 2.6 kernel passes options to the modules (see #240886 for details) so there will be problems with 2.6.

Then I added into "/etc/mkinitrd/modules" the line (also tried other
variations above)

  ide-core ide=nodma

ide-core options="ide=nodma"

This is the expected format (see ide.txt) and this is the way I suggest you (ide kernel command line boot options are grouped together by initrd-tools and prefixed by options). This will not work in 2.6 if more than one ide option is there, because of the above mentioned bug, but will casually work if is just as above.

I then created the new custom initrd image using just "mkinitrd -o
/boot/myinitrd.img", updated the "/initrd.img" link and ran lilo.
However, this did not help at all. The DMA was still enabled.

I did my tests keeping a safe boot image with DMA disabled from which I can always boot from, and doing my tests in an initrd image having DMA enabled by default. To make sure I am doing exactly the same that is done at package installation I reconfigured the kernel-image package, e.g.

# dpkg-reconfigure kernel-image-2.4.25-1-586tsc

although if you are building a initrd for your running kernel your call should work.

Hope this helps

--
Agustin



Reply to: