LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (https://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   Promise PDC20378 - Cannot Mount Root FS (https://www.linuxquestions.org/questions/linux-hardware-18/promise-pdc20378-cannot-mount-root-fs-523518/)

topnotcher 01-28-2007 12:35 PM

Promise PDC20378 - Cannot Mount Root FS
 
I have an alienware laptop with a Promise PDC20378 SATA/PATA controller. The gentoo, live cd recognizes the device, as do fedora (previously installed) and Ubuntu (live cd). When I try to boot my new kernel, I get the whole "Kernel Panic... Unable to mount root filesystem on unknown-block(0,0)" From previous experience, I know this usually means that I am missing drivers. The problem is that I'm not sure what I am missing. According to an article in the gentoo wiki, I have built the correct driver for my device into the kernel. I've been at this for about a week now :(.

I have tried both the 2.6.18-gentoo-r6 kernel, and the latest kernel from kernel.org. Any help is greatly appreciated.

My .config: http://divinelunacy.com/config-2.6.18-gentoo-r6

lspci:

0000:00:00.0 Host bridge: Intel Corporation 915G/P/GV/GL/PL/910GL Processor to I/O Controller (rev 0e)
0000:00:01.0 PCI bridge: Intel Corporation 915G/P/GV/GL/PL/910GL PCI Express Root Port (rev 0e)
0000:00:1b.0 0403: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) High Definition Audio Controller (rev 05)
0000:00:1d.0 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #1 (rev 05)
0000:00:1d.1 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #2 (rev 05)
0000:00:1d.2 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #3 (rev 05)
0000:00:1d.3 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI #4 (rev 05)
0000:00:1d.7 USB Controller: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI Controller (rev 05)
0000:00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev d5)
0000:00:1f.0 ISA bridge: Intel Corporation 82801FB/FR (ICH6/ICH6R) LPC Interface Bridge (rev 05)
0000:00:1f.1 IDE interface: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controller (rev 05)
0000:00:1f.3 SMBus: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Controller (rev 05)
0000:01:00.0 VGA compatible controller: nVidia Corporation NV41.8 [GeForce Go 6800] (rev a2)
0000:0a:00.0 CardBus bridge: ENE Technology Inc CB1410 Cardbus Controller (rev 01)
0000:0a:01.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link)
0000:0a:02.0 RAID bus controller: Promise Technology, Inc. PDC20378 (FastTrak 378/SATA 378) (rev 02)
0000:0a:03.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet (rev 10)

stress_junkie 01-28-2007 12:46 PM

Boot the Gentoo live CD, open a terminal window, and issue the lsmod command. This will give you a list of the drivers that you need to have in your kernel or initrd. Be sure to write the list somewhere so that you don't have to repeat the procedure.

Edited for spelling, not content.

topnotcher 01-28-2007 01:34 PM

The problem with that is that the Live cd doesn't exactly load the modules intelligently. It seems to me that its autodetect sees an SATA controller and decides to modprobe all of the SATA modules. Instead, I booted the live cd with nodetect so I could modprobe the modules myself.

Before I modprobe anything. (cannot mount my partitions at this point, as the devices do not yet exist.)
Module Size Used by
rtc 6836 0
usbcore 70400 1

After modprobe sata_promise:
Module Size Used by
sata_promise 5764 0
libata 36492 1 sata_promise
rtc 6836 0
usbcore 70400 1

At this point, there is output stating that it found my device. I am able to successfully mount my partition after sata_promise is loaded.

Electro 01-28-2007 01:43 PM

Not to be mean, but Promise controllers are not reliable and not stable in Linux.

In order for the module to be loaded upon boot up to run any init scripts, you will have to use mkinitrd to create an initrd file. Also the directory /initrd have to be created.

topnotcher 01-28-2007 05:06 PM

Quote:

Originally Posted by Electro
Not to be mean, but Promise controllers are not reliable and not stable in Linux.

In order for the module to be loaded upon boot up to run any init scripts, you will have to use mkinitrd to create an initrd file. Also the directory /initrd have to be created.

Yeah, I've heard that.:(.

Anyway, I did try making an initrd image and I made sure that the correct modules were included (by using --with=). That had no effect.


All times are GMT -5. The time now is 02:11 PM.