[arch-general] Problems with mkinitcpio

Ihad ihad at d-tor.org
Fri Mar 5 23:12:41 CET 2010


Hi,

Maybe this is more suitable for arch-dev, but I hope that the devs also read 
here. Let me know if I should redirect this to arch-dev-public.

I have some ancient hardware, specifically an AMD Athlon(tm) XP 2600+ with a 
PCI IDE Controller:
$ lspci | grep Mass
00:0a.0 Mass storage controller: HighPoint Technologies, Inc. 
HPT366/368/370/370A/372/372N (rev 04)

Also, I have IDE devices from hda to hdg, some of them connected to the 
aforementioned PCI IDE controller.

There are 2 raid devices configured:
# cat /proc/mdstat 
Personalities : [raid6] [raid5] [raid4] 
md1 : active raid5 hdb1[0] hdf1[2] hde1[1]
      234436352 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]
      [================>....]  resync = 82.2% (96372676/117218176) 
finish=19.5min speed=17746K/sec
      
md0 : active raid5 hda2[0] hdg2[2] hdd2[1]
      156199808 blocks level 5, 64k chunk, algorithm 2 [3/3] [UUU]
      
unused devices: <none>

The rebuilding device has devices connected to the PCI controller. All other 
devices are handled by sis5513, btw. also from /lib/modules/*/ide

The autodetect hook  from mkinitcpio  thinks that pata_hpt366 is the module of 
choice. But it doesn't work. It crashes the kernel after some time, 
unfortunately not reproducible and without a log message. The box just stops 
responding to anything, including a ping. So I guess this something like a 
kernel panic.

The IDE driver (hpt366) works like a charm, but it doesn't seem to generate 
udev events, so the device nodes don't get created in the initrd, and I'm 
stuck with a busybox prompt. So I created my own hook in /lib/initcpio/hooks:
# cat ide
run_hook ()
{
        msg -n ":: Creating IDE device nodes"
        /bin/mknod "/dev/hda" b 3 0 
        /bin/mknod "/dev/hda1" b 3 1
        /bin/mknod "/dev/hda2" b 3 2
        /bin/mknod "/dev/hdb" b 3 64
        /bin/mknod "/dev/hdb1" b 3 65
        /bin/mknod "/dev/hdb2" b 3 66
        /bin/mknod "/dev/hdc" b 22 0
       [snip]
        /bin/mknod "/dev/hdg2" b 34 2
        msg "done."
}
and included it into my hooks. Works like a charm.

Now my question: is this expected behavior or is it a bug? If it's a bug, 
where should I file it? LKML or against arch/mkinitcpio? LKML is a problem, 
since I don't have any a trace. BTW, pata_hpt366 is marked as experimental in 
2.6.30. at least.

-- 
Regards.

Ihad.


More information about the arch-general mailing list