[plug] SATA boot problem

Peter F Bradshaw pfb at exadios.com
Wed Jun 17 17:16:31 WST 2009


On Wed, 17 Jun 2009, Jim Householder wrote:

> Daniel Pittman wrote:
> > Jim Householder <nofixed at westnet.com.au> writes:
> >
> >> I have just bought a 500GB SATA Seagate Barracuda drive, and have built a
> >> kernel on it with all the SATA options I could find built-in (not modules).
> >>
> >> When I boot from the drive it gets as far as trying to mount / and panics.
> >> A list of partitions available does not show the SATA drive, event though
> >> the code that aborted was executed from it.
> >
> > Do you mean "was executed from it" in the sense of "GRUB loaded the initrd and
> > kernel from it?"
>
> yes, but no initrd - just vmlinuz

Then you need all the components needed to detect and mount the root
volume to bound into the kernel. This includes some sata drvers and some
scsi emulation drivers (I don't have an exact list to hand).

>
> >
> > Is the panic, specifically, that it can't find the root device?
> >
> > When you say "A list of partitions", where is that coming from and what does
> > it show?
> >
> This is a summary of what I see:
>
> ...
> md: Waiting for all devices to be available before autodetect
> md: If you don't use raid, use raid=noautodetect
> md: Autodetecting raid arrays.
> md: Scanned 0 and added 0 devices.
> md: autorun...
> md: ... autorun done
> VFS: Cannot open root device "sda2" or unknown-block(0,0)
> Please append a correct "root=" boot option; here are the available
> partitions:
> 0300 <size> hda driver: ide-gd
> 0301 <size> hda1
> ...
> 0308 <size> hda8
> 0340 <size> hdb driver: ide-gd
> 0341 <size> hdb1
> ...
> 034f <size> hdb15
> 1600 <size> hdc driver: ide-cdrom
> Kernel panic - not syncing: VFS: Unable to mount root fs on
> unknown-block(0,0)

Presumably you have specified root=/dev/sda2. I see no lines of the
form:

scsi 0:0:0:0: ...

My guess is that you do not have either the sata or the scsi drivers
(or both) bound in. All the partitions shown above appear to be on
parallel hard drives.

> _
>
> >> Since code from the drive is already being executed, that does not seem to
> >> be the problem.
> >
> > You are probably wrong, and the answer to the question WRT the bootloader
> > above will confirm that.  My guess is that Linux has never seen the drive,
> > even though the BIOS can.
>
> Exactly.  Why can the kernel not see the drive?
> >
> > Now, one last question: why are you building a custom kernel rather that using
> > the distribution option?  The distribution will almost certainly have the
> > right drivers available and configured sensibly, so you can avoid this problem
> > of doing it yourself entirely...
> >
> I'm using gentoo, and I do not want the kitchen sink!
>
> I may have to get it though, if I cannot sort this out.
>
> Jim
>

Cheers

-- 
Peter F Bradshaw: http://www.exadios.com (public keys avaliable there).
Personal site: http://personal.exadios.com
"I love truth, and the way the government still uses it occasionally to
 keep us guessing." - Sam Kekovich.



More information about the plug mailing list