8.4. Making the LFS System Bootable

Dan Nicholson dbn.lists at gmail.com
Fri Oct 31 11:43:01 PDT 2008


On Fri, Oct 31, 2008 at 11:32 AM, Wolfgang Messingschlager
<w.mess at freenet.de> wrote:
> Dan Nicholson wrote:
>> On Fri, Oct 31, 2008 at 10:39 AM, Wolfgang Messingschlager
>> <w.mess at freenet.de> wrote:
>>> meanwhile I did
>>>
>>> - make mrproper
>>> - make menuconfig    (CONFIG_EXT3_FS=y)
>>> - make
>>> - make modules_install
>>> - cp -v arch/i386/boot/bzImage /boot/vmlinuz-2.6.26.1
>>> - cp -v .config /boot/config-2.6.26.1
>>> - cp -v System.map /boot/System.map-2.6.26.1
>>>
>>>
>>> I added the lines
>>>
>>> title           LFS kernel 2.6.26.1
>>> root            (hd0,22)
>>> kernel          /vmlinuz-2.6.26.1 root=/dev/hdb20 ro
>>> savedefault
>>>
>>> to /boot/grub/menu.lst
>>>
>>> This caused the following errors during boot
>>>
>>> VFS: cannot open root device "hdb20" or unknown block (0,0)
>>> Please append a correct "root=" boot option; here are the available
>>> partitions:
>>> Kernal panic - not syncing: VFS: Unable to mount rootfs on unknown -
>>> block (0,0)
>>
>> The problem is that you need the block devices and controller built in
>> as well as the file system. So, SCSI + libata (to use /dev/sd* nodes)
>> or IDE (to use /dev/hd* nodes).
>>
>> For SCSI + libata:
>> CONFIG_BLK_DEV_SD=y
>> CONFIG_BLK_DEV_SG=y
>> CONFIG_ATA=y
>> CONFIG_[SP]ATA_$controller=y
>>
>> For IDE:
>> CONFIG_IDE=y
>> CONFIG_IDE_$controller=y
>> CONFIG_BLK_DEV_IDE=y
>> CONFIG_BLK_DEV_IDEDISK=y
>>
>> --
>> Dan
>
> Thanks Dan,
>
> for the quick reply. I have only a IDE disk.
>
> # egrep '(CONFIG_IDE|CONFIG_BLK_DEV_IDE)' .config
> CONFIG_IDE=y
> CONFIG_BLK_DEV_IDE=y
> # CONFIG_BLK_DEV_IDE_SATA is not set
> CONFIG_BLK_DEV_IDEDISK=y
> # CONFIG_IDEDISK_MULTI_MODE is not set
> CONFIG_BLK_DEV_IDECD=m
> CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y
> CONFIG_BLK_DEV_IDETAPE=m
> CONFIG_BLK_DEV_IDEFLOPPY=m
> # CONFIG_BLK_DEV_IDESCSI is not set
> CONFIG_BLK_DEV_IDEACPI=y
> # CONFIG_IDE_TASK_IOCTL is not set
> CONFIG_IDE_PROC_FS=y
> # CONFIG_IDE_GENERIC is not set
> CONFIG_BLK_DEV_IDEPNP=y
> CONFIG_BLK_DEV_IDEDMA_SFF=y
> CONFIG_BLK_DEV_IDEPCI=y
> # CONFIG_IDEPCI_PCIBUS_ORDER is not set
> CONFIG_BLK_DEV_IDEDMA_PCI=y
> CONFIG_BLK_DEV_IDEDMA=y

That looks reasonable, although you may want CONFIG_IDE_GENERIC=y, too.

> I am not sure what you mean with
>
> CONFIG_IDE_$controller=y

It had been a while since I looked at the IDE driver. I thought there
were specific backends for each controller (like Intel PIIX), but it
appears there aren't. I think you can ignore this. Have you tried
booting with the above configuration?

--
Dan



More information about the lfs-support mailing list