高橋です 昨年の10月にこの件をポストしたのですがようやく解決しました。 (カーネルパニックの件はただ単にカーネルバージョンの記載ミスでした。) その時はVineLinux3.2&SC430でうまくDMA化は出来たのですが、何故かマザーのDMAがUDMA2までしか設定できませんでした。 #cat /proc/ide/piix Controller: 0 Intel PIIX4 Ultra 100 Chipset. --------------- Primary Channel ---------------- Secondary Channel ------------- enabled enabled --------------- drive0 --------- drive1 -------- drive0 ---------- drive1 ------DMA enabled: yes yes no no UDMA enabled: yes yes no no UDMA enabled: 2 2 X X UDMA DMA PIO # hdparm -t /dev/hda /dev/hda: Timing buffered disk reads: 84 MB in 3.06 seconds = 27.45 MB/sec UltraDMA33で動いているせいで30M/Sec位しか出ません。 ちなみにDMA化前は4.94 MB/secでした 変更点は以前ポストした内容を以下に変更しました /usr/src/linux/drivers/ide/pci/piix.h },{ /* 21 */ .vendor = PCI_VENDOR_ID_INTEL, .device = PCI_DEVICE_ID_INTEL_ICH7_2, .name = "ICH7", .init_setup = init_setup_piix, .init_chipset = init_chipset_piix, .init_iops = NULL, .init_hwif = init_hwif_piix, .init_dma = init_dma_piix, .channels = 1, //2から1に変更 .autodma = AUTODMA, .enablebits = {{0x41,0x80,0x80}}, //ここも変更 .bootable = ON_BOARD, .extra = 0, },{ 修正後の内容です # cat /proc/ide/piix Controller: 0 Intel PIIX4 Ultra 100 Chipset. --------------- Primary Channel ---------------- Secondary Channel ------------- enabled enabled --------------- drive0 --------- drive1 -------- drive0 ---------- drive1 ------DMA enabled: yes yes no no UDMA enabled: yes yes no no UDMA enabled: 5 5 X X UDMA DMA PIO # hdparm -t /dev/sda /dev/hda: Timing buffered disk reads: 166 MB in 3.00 seconds = 55.33 MB/sec 憶測なのですがIDEを2チャンネル分サーチし、セカンダリーのポートが無いために プライマリーでUltraDMAがオンされた後、セカンダリーでオフされたのでは無いでしょうか?