Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Trouble booting kernel
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Installing Gentoo
View previous topic :: View next topic  
Author Message
SupremeOverlord
n00b
n00b


Joined: 17 Apr 2007
Posts: 52

PostPosted: Tue Aug 28, 2007 4:37 pm    Post subject: Trouble booting kernel Reply with quote

I have recently assembled a new computer with an Athlon 64X2 processor, Asus motherboard, and nVidia geForce video card. after install gentoo and rebooting I get a message saying that /dev/sde3 (were the root file system is) is not a valid root device. I have a raid array with another root file system, which gives me the same message: /dev/md3 is not a valid root device.
Back to top
View user's profile Send private message
John R. Graham
Administrator
Administrator


Joined: 08 Mar 2005
Posts: 10590
Location: Somewhere over Atlanta, Georgia

PostPosted: Tue Aug 28, 2007 4:45 pm    Post subject: Reply with quote

Unless you have five SATA drives, /dev/sde3 is indeed invalid. Should probably be /dev/sda3. Did you make a typo in the forum message? If so, then this error probably indicates that you've not compiled support for your SATA controller into your kernel. Boot the install CD again, follow all the handbook steps to chroot into the environment and then use "lspci" to identify your SATA hardware and then reconfigure, recompile, and reinstall your kernel.

- John
Back to top
View user's profile Send private message
d2_racing
Bodhisattva
Bodhisattva


Joined: 25 Apr 2005
Posts: 13047
Location: Ste-Foy,Canada

PostPosted: Tue Aug 28, 2007 5:46 pm    Post subject: Reply with quote

Also, can you post fdisk -l and also your /boot/grub/grub.conf plz :)
Back to top
View user's profile Send private message
SupremeOverlord
n00b
n00b


Joined: 17 Apr 2007
Posts: 52

PostPosted: Wed Aug 29, 2007 4:16 pm    Post subject: Reply with quote

My lspci output:
Quote:
00:00.0 RAM memory: nVidia Corporation MCP55 Memory Controller (rev a1)
00:01.0 ISA bridge: nVidia Corporation MCP55 LPC Bridge (rev a2)
00:01.1 SMBus: nVidia Corporation MCP55 SMBus (rev a2)
00:01.2 RAM memory: nVidia Corporation MCP55 Memory Controller (rev a2)
00:02.0 USB Controller: nVidia Corporation MCP55 USB Controller (rev a1)
00:02.1 USB Controller: nVidia Corporation MCP55 USB Controller (rev a2)
00:04.0 IDE interface: nVidia Corporation MCP55 IDE (rev a1)
00:05.0 RAID bus controller: nVidia Corporation MCP55 SATA Controller (rev a2)
00:05.1 RAID bus controller: nVidia Corporation MCP55 SATA Controller (rev a2)
00:05.2 RAID bus controller: nVidia Corporation MCP55 SATA Controller (rev a2)
00:06.0 PCI bridge: nVidia Corporation Unknown device 0370 (rev a2)
00:06.1 Audio device: nVidia Corporation MCP55 High Definition Audio (rev a2)
00:08.0 Bridge: nVidia Corporation MCP55 Ethernet (rev a2)
00:09.0 Bridge: nVidia Corporation MCP55 Ethernet (rev a2)
00:0a.0 PCI bridge: nVidia Corporation Unknown device 0376 (rev a2)
00:0b.0 PCI bridge: nVidia Corporation Unknown device 0374 (rev a2)
00:0c.0 PCI bridge: nVidia Corporation Unknown device 0374 (rev a2)
00:0d.0 PCI bridge: nVidia Corporation Unknown device 0378 (rev a2)
00:0e.0 PCI bridge: nVidia Corporation Unknown device 0375 (rev a2)
00:0f.0 PCI bridge: nVidia Corporation Unknown device 0377 (rev a2)
00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control
01:0b.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link)
06:00.0 SATA controller: JMicron Technologies, Inc. JMicron 20360/20363 AHCI Controller (rev 02)
06:00.1 IDE interface: JMicron Technologies, Inc. JMicron 20360/20363 AHCI Controller (rev 02)
07:00.0 VGA compatible controller: nVidia Corporation Unknown device 0393 (rev a1)


I compiled the kernel again with AHCI SATA support in the device drivers. I still got the same error.

my fdisk -l is:
Quote:
Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 1 19457 156288321 fd Linux raid autodetect

Disk /dev/sdb: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sdb1 1 19457 156288321 fd Linux raid autodetect

Disk /dev/sdc: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sdc1 1 19457 156288321 fd Linux raid autodetect

Disk /dev/sdd: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sdd1 1 19457 156288321 fd Linux raid autodetect

Disk /dev/sde: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/sde1 64 68 40162+ 83 Linux
/dev/sde2 1 63 506016 82 Linux swap / Solaris
/dev/sde3 69 19457 155742142+ 83 Linux

Partition table entries are not in disk order


my /boot/grub/grub.conf is:

Quote:
default 0
timeout 30
splashimage=(hd0,0)/boot/grub/splash.xpm.gz

title=Gentoo Linux Main Installation
root(hd0,0)
kernel /boot/kernel-genkernel-x86_64-2.6.22-gentoo-r2 root /dev/ram0 init=/linuxrc ramdisk=8192 real_root=/d$
initrd /boot/initramfs-genkernel-x86_64-2.6.22-gentoo-r2

title=Gentoo Linux Backup Installation
root (hd0,0)
kernel /boot/kernel-genkernel-x86_64-2.6.22-gentoo-r2 root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/d$
initrd /boot/initramfs-genkernel-x86_64-2.6.22-gentoo-r2
Back to top
View user's profile Send private message
SupremeOverlord
n00b
n00b


Joined: 17 Apr 2007
Posts: 52

PostPosted: Thu Aug 30, 2007 10:20 am    Post subject: Reply with quote

Is that enough information?
Back to top
View user's profile Send private message
John R. Graham
Administrator
Administrator


Joined: 08 Mar 2005
Posts: 10590
Location: Somewhere over Atlanta, Georgia

PostPosted: Thu Aug 30, 2007 10:54 am    Post subject: Reply with quote

Yes, thanks. :)

I presume that the "real_root=/d$" is actually an editor artifact and it actually states (as you've said earlier) "real_root=/dev/sde3". If not, please correct it.

A little research shows that the nVidia MCP55 SATA controller is supported by the sata_nv driver, not by sata_ahci. Select "NVIDIA SATA support" in the kernel config. Make sure the support is built-in (showing [*] in the kernel menuconfig) as opposed to being built as a module (showing [M]).

- John
Back to top
View user's profile Send private message
d2_racing
Bodhisattva
Bodhisattva


Joined: 25 Apr 2005
Posts: 13047
Location: Ste-Foy,Canada

PostPosted: Thu Aug 30, 2007 11:59 am    Post subject: Reply with quote

But he uses Genkernel...how this happens ?
Back to top
View user's profile Send private message
John R. Graham
Administrator
Administrator


Joined: 08 Mar 2005
Posts: 10590
Location: Somewhere over Atlanta, Georgia

PostPosted: Thu Aug 30, 2007 12:55 pm    Post subject: Reply with quote

With genkernel's --menuconfig command line option, perhaps? Not all drivers are detected properly by mdev (the small udev-like thing built into busybox, which is what the init script on the genkernel's initramfs uses) and some need to be built in or else explicitly loaded with a "doload=" kernel command line option. Simpler to just build it in.

I use genkernel to manage a highly customized, very lean kernel. It's really convenient when you need an initramfs.

- John
Back to top
View user's profile Send private message
vdodge1
n00b
n00b


Joined: 28 Aug 2007
Posts: 8
Location: Syracuse New York

PostPosted: Thu Aug 30, 2007 2:10 pm    Post subject: Reply with quote

Quote:
title=Gentoo Linux Main Installation
root(hd0,0)
kernel /boot/kernel-genkernel-x86_64-2.6.22-gentoo-r2 root /dev/ram0 init=/linuxrc ramdisk=8192 real_root=/d$
initrd /boot/initramfs-genkernel-x86_64-2.6.22-gentoo-r2

I see you are using the 2.6.22-gentoo-r2 Genkernel. I recently saw the same boot error message for the first time when I started using this new Genkernel (same for the newer r5 kernel).
I have used genkernels recently, and my laptop is using a SATA hard drive and a SATA CDRW/DVD.
I never saw this problem before, but ran across it when I did a re-install and upgraded my kernel.
I did find a discussion in the forum about some changes in the new kernel to try to deal with the way that newer SATA devices are being handled (SCSI controlled vs IDE controlled) in order to try to solve some of the performance issues with SATA CD/DVD drives.

I don't think I understand this 100%, so I will try to word it so I don't say anything technically wrong, but I think you want to make sure that your hard drives (and probably your CD drives if they are SATA) are being picked up by the SCSI controller/drivers, not by the IDE controller/drivers.

Here is a copy of my grub.conf and my fstab:
Code:
default 2
timeout 15
splashimage=(hd0,1)/boot/grub/splash.xpm.gz

title=Gentoo Linux 2.6.22-r5
root (hd0,1)
kernel /boot/kernel-genkernel-x86-2.6.22-gentoo-r5 root=/dev/ram0 init=/linuxrc \
ramdisk=8192 real_root=/dev/sda4 udev vga=791 splash=silent ide0=noprobe ide1=noprobe doscsi
initrd /boot/initramfs-genkernel-x86-2.6.22-gentoo-r5

title=Gentoo Linux 2.6.22-r2
root (hd0,1)
kernel /boot/kernel-genkernel-x86-2.6.22-gentoo-r2 root=/dev/ram0 init=/linuxrc \
ramdisk=8192 real_root=/dev/sda4 udev vga=791 splash=silent ide0=noprobe ide1=noprobe doscsi
initrd /boot/initramfs-genkernel-x86-2.6.22-gentoo-r2


Code:
/dev/sda2               /boot                   ext2            noauto,noatime          1 2
/dev/sda4               /                       ext3            noatime                 0 1
/dev/sda3               none                    swap            sw                      0 0
/dev/cdrom              /mnt/cdrom              auto            noauto,user,ro          0 0
/dev/dvd                /mnt/dvd                auto            noauto,user,ro          0 0
/dev/ipod               /mnt/ipod               vfat            noauto,user,rw          0 0
#/dev/fd0               /mnt/floppy             auto            noauto                  0 0

# glibc 2.2 and above expects tmpfs to be mounted at /dev/shm for
# POSIX shared memory (shm_open, shm_unlink).
# (tmpfs is a dynamically expandable/shrinkable ramdisk, and will
#  use almost no memory if not populated with files)
shm                     /dev/shm        tmpfs           nodev,nosuid,noexec     0 0


Before I added "ide0=noprobe ide1=noprobe doscsi", I got the same boot error message "not a valid root device". I was very confused because I've used the same setup many times in the past and had never had this problem before. It asks you for a valid device, and I kept trying to tell it to use "/dev/sda4" and it kept saying the same thing, but when I told it to use "/dev/hda4" it booted.

I think your SATA drives are being picked up by IDE during boot, and are not being recognized as "/dev/sdXX".

I used the "doscsi" kernel command to force the SCSI scan, and using "ide0=noprobe" so that IDE didn't pick up my harddrive on the first SATA bus (?) and "ide1=noprobe" so it didn't pick up my CDRW on the second SATA bus (?).

I think doing this allows the newer kernels to pick up these devices with SCSI (in my case as /dev/sda4 for the 4th partition on my hard drive, and /dev/sr0 for my CDRW/DVD drive), so that your "/dev/sde3" nomanclature will be understood.

I never had to use this before, and in fact the 2007.0 minimum install cd doesn't have any issue with this either, I'm guessing it's because it uses an older kernel.
_________________
"... and if that doesn't work, CONGRATULATIONS!!! You're about to learn a whole lot more about linux and your system hardware!"
Back to top
View user's profile Send private message
SupremeOverlord
n00b
n00b


Joined: 17 Apr 2007
Posts: 52

PostPosted: Thu Aug 30, 2007 9:29 pm    Post subject: Reply with quote

I updated to the *r5 kernel. I added the nVidia SATA support and updated my /boot/grub/grub.conf file to be:
Quote:
default 0
timeout 30
splashimage=(hd0,0)/boot/grub/splash.xpm.gz

title=Gentoo Linux Main Installation
root(hd0,0)
kernel /boot/kernel-genkernel-x86_64-2.6.22-gentoo-r5 root=/dev/ram0 init=/linuxrc \
ramdisk=8192 real_root=/dev/md3 udev ide0=noprobe ide1=noprobe doscsi
initrd /boot/initramfs-genkernel-x86_64-2.6.22-gentoo-r5

title=Gentoo Linux Backup Installation
root (hd0,0)
kernel /boot/kernel-genkernel-x86_64-2.6.22-gentoo-r5 root=/dev/ram0 init=/linuxrc \
ramdisk=8192 real_root=/dev/sde3 udev ide0=noprobe ide1=noprobe doscsi
initrd /boot/initramfs-genkernel-x86_64-2.6.22-gentoo-r5

I still got the same error.
Back to top
View user's profile Send private message
SupremeOverlord
n00b
n00b


Joined: 17 Apr 2007
Posts: 52

PostPosted: Fri Aug 31, 2007 12:12 pm    Post subject: Reply with quote

Am I missing something here?
Back to top
View user's profile Send private message
jburns
Veteran
Veteran


Joined: 18 Jan 2007
Posts: 1214
Location: Massachusetts USA

PostPosted: Sat Sep 01, 2007 3:49 am    Post subject: Reply with quote

Which controller is handling /dev/sde? The nVidia or the JMicron controller. You could search on the Kernel & Hardware forum for JMicron controller problems.
Back to top
View user's profile Send private message
SupremeOverlord
n00b
n00b


Joined: 17 Apr 2007
Posts: 52

PostPosted: Sun Sep 02, 2007 2:56 am    Post subject: Reply with quote

Four of my hardrives are plugged into the nVidia controller, and the other is in the other controller. I tried booting again and when I got the error message I decided to try entering in other devices. When I tried /dev/sda the root device worked. I went through and changed my grub.conf and fstab from /dev/sde to /dev/sda and it worked. I am now able to boot off of this harddrive.
Back to top
View user's profile Send private message
Habbit
Apprentice
Apprentice


Joined: 01 Sep 2007
Posts: 237
Location: 3.7137 W, 40.3873 N

PostPosted: Sun Sep 02, 2007 2:24 pm    Post subject: Reply with quote

So it seems the problem was your kernel was detecting the SATA controllers in the reverse order as the liveCD kernel. I don't know the motives to that, maybe it's an issue of which was compiled/loaded first. If so, this problem may appear again, so you would be better off with one of these two solutions:

  • Write a custom udev (mdev? i don't really know how genkernel works, I'm one of the crazy optimize-your-own-kernel folks) rule that makes sure the device naming stays consistent
  • Use the partition UUID instead of its assigned name. You can get the uuid with e.g. `vol_id /dev/sda3', which will return something along the lines of 75eb0f40-a131-467b-885d-511b8193f122. Then, you edit your grub.conf so that your real_root option reads either real_root=UUID=your_roots_uuid or, if that doesn't work, real_root=/dev/disk/by-uuid/your_roots_uuid, obviously substituting "your_roots_uuid" for the real uuid. You might want to also edit /etc/fstab in a similar fashion. This procedure is, if well done, extremely safe, and indeed it's used by Ubuntu and Debian Etch for the initial search of the root partition


Hope it helps, but remember to have a backup of both files in case this borks your box (hope not xD)
Back to top
View user's profile Send private message
trondert
Apprentice
Apprentice


Joined: 07 Aug 2005
Posts: 178
Location: Norway

PostPosted: Tue Sep 04, 2007 11:53 am    Post subject: Reply with quote

Ive had the same problems installing kernels since linux-2.6.20-gentoo-r7 and above.
None of the solutions in this thread got me any further, so im back to linux-2.6.19-gentoo-r5 kernel, and waiting for some progress on the kernels to come :)


edit:

Havent tried these yet tho.
Quote:
Write a custom udev (mdev? i don't really know how genkernel works, I'm one of the crazy optimize-your-own-kernel folks) rule that makes sure the device naming stays consistent
Use the partition UUID instead of its assigned name. You can get the uuid with e.g. `vol_id /dev/sda3', which will return something along the lines of 75eb0f40-a131-467b-885d-511b8193f122. Then, you edit your grub.conf so that your real_root option reads either real_root=UUID=your_roots_uuid or, if that doesn't work, real_root=/dev/disk/by-uuid/your_roots_uuid, obviously substituting "your_roots_uuid" for the real uuid. You might want to also edit /etc/fstab in a similar fashion. This procedure is, if well done, extremely safe, and indeed it's used by Ubuntu and Debian Etch for the initial search of the root partition
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Installing Gentoo All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum