Use DMA w/ IDE to speed up FAI dramatically

malk at sidehack.sat.gweep.net malk at sidehack.sat.gweep.net
Tue Jun 15 17:13:35 CEST 2004


Thought I would pass on this tip especially since recent activity on the
list has been about tweaking 06hwdetect.source.

With the plain generic IDE drivers loaded by 06hwdetect.source, you won't
have chipset specific enhancement or DMA capability making for a slow
installation of packages.

In my case, by loading the chipset specific drivers on top of the generic
IDE stuff in 06hwdetect.source and setting DMA on reduced my FAI time from
about 34 minutes to something like 14 minutes.

What I would do is lspci on the various hardware I need to support and add
some script code to detect the IDE chipset, load the enhanced driver for it
and turn on DMA.  I do something like this right after the modprobe in 
06hwdetect.source that loads the IDE drivers:

if [ "`lspci 2>/dev/null | egrep 'IDE' | egrep 'PIIX4'`" != "" ]
then
   modprobe piix
   hdparm -d 1 /dev/hda 1>/dev/null
fi

That covers my Intel based boxes and I do something like this for SiS:

if [ "`lspci 2>/dev/null | egrep 'IDE' | egrep -i 'sis'`" != "" ]
then
   modprobe sis5513
   hdparm -d 1 /dev/hda 1>/dev/null
fi

Back when using FAI 2.5.1 I built my own kernel since the stock one had issues
w/ my network board setup.  I built it w/ all IDE support built in instead of
as modules.

I then upgraded to FAI 2.5.4 and went with the stock kernel -- worked fine
w/ my network board setup, but the FAIs started taking a lot more time to
finish...  I found out DMA wasn't on and added the above stuff to get DMA
on for the package load and I again enjoy really fast FAI installs.

Hope this is useful for someone...

-Eric Malkowski



More information about the linux-fai mailing list