# genkernel 3.0.1 How-to

## Suicidal

A few changes have been made recently to the genkernel package that has changed the way it works. I saw today that genkernel-3.0.1_beta4  became stable So I thought a how to would be appropriate, seeing on how much confusion it has been causing in regards to  the "Kernel panic: VFS: unable to mount root fs" error.

The good side of the new genkernel is that it can now integreate bootsplash into the default initrd, as well as new options that were not available in previous versions of genkernel. The bad side is it is a bit more complicated than before 

The first thing I would do is to replace the new default config with your old config. If you have been using genkernel 1.8 or older your configs can be found in  /etc/kernels/config-2.x.x-sourcename (ex. config-2.6.1-gentoo) otherwise /usr/src/linux/.config

```

cp /etc/kernels/config-$(uname -r) /usr/share/genkernel/your arch(x86, x86_64)/kernel-config-2.6 

(depending on your kernel use kernel-config-2.4 if running a 2.4 kernel) 
```

Also a good Idea would be to copy your existing kernel

```

cp /boot/kernel-2.x.x-source /boot/kernel-failsafe

cp /boot/initrd-2.x.x-source /boot/initrd-failsafe

```

 Genkernel now requires a target.  example: genkernel all --clean --mrproper. 

The old genkernel --config command will now generate the following showing you the new options:

```
      

        all                     Build all steps

        kernel                  Build only kernel and modules (not done yet)

        initrd                  Build only initrd (not done yet)

 

Available Options:

  Debug settings

        --debuglevel=<0-5>      Debug Verbosity Level

        --debugfile=<outfile>   Output file for debug info

        --color                 Output debug in color

        --no-color              Do not output debug in color

  Kernel Compile settings

        --menuconfig            Run menu config after oldconfig

        --no-menuconfig         Do no run menu config after oldconfig

        --mrproper              Run make mrproper before compilation

        --clean                 Run make clean before compilation

        --no-clean              Do not run make clean before compilation

        --no-mrproper           Do not run make mrproper before compilation

        --bootsplash            Install bootsplash to initrd

        --no-bootsplash         Do not use bootsplash

        --install               Install kernel after building

        --no-install            Do not install kernel after building

        --kerneldir=<dir>       Location of kernel source

        --kernel-config=<file>  Kernel configuration file to use for compilation

        --no-initrdmodules      Don't copy modules to initrd

  Low-Level Compile settings

        --kernel-cc=<compiler>  Compiler to use for kernel (e.g. distcc)

        --kernel-ld=<linker>    Linker to use for kernel

        --kernel-as=<assembler> Assembler to use for kernel

        --kernel-make=<makeprg> GNU Make to use for kernel

        --utils-cc=<compiler>   Compiler to use for utils (e.g. busybox, modutils)

        --utils-ld=<linker>     Linker to use for utils

        --utils-as=<assembler>  Assembler to use for utils

        --utils-make=<makeprog> GNU Make to use for utils

        --makeopts=<makeopts>   Make Opts such as -j2, etc

  Internals

        --arch-override=<arch>  Force to arch instead of autodetect (cross-compile?)

        --busybox-config=<file> Busybox configuration file to use

        --busybox-bin=<file>    Don't compile busybox, use this _static_ bzip2'd binary

  Misc Settings

        --max-kernel-size=<k>   Maximum kernel size

        --max-initrd-size=<k>   Maximum initrd size

        --max-kernel-and-initrd-size=<k>        Maximum combined initrd + kernel size

  Output Settings

        --minkernpackage=<tbz2> File to output a .tar.bz2'd kernel and initrd to.

                                These will be renamed to simply 'kernel' and 'initrd'

                                inside the package without any path information.

                                No modules outside of the initrd will be included

 
```

To simplify things you can edit the genkernel config file in /etc/genkernel.conf 

here are the options I like to use in my genkernel.conf:

```
 

MENUCONFIG="yes"

CLEAN="yes"

MRPROPER="yes"

BOOTSPLASH="yes"

NOINSTALL="yes"

USECOLOR="yes"

```

Now instead of typing 

```

genkernel all --menuconfig --mrproper --bootsplash --clean 

```

I now type:

```

genkernel all

```

Required kernel options:

```

Device Drivers > Block Devices

 <*> Loopback device support

 <*> RAM disk support                                                                                      

 (8192) Default RAM disk size                                                                              

 [*] Initial RAM disk (initrd) support 

edit::

File systems >

 [*] ext2 file system (for initrd)

File systems > Psudo File Systems 

 [*] /dev file system support (OBSOLETE)                        

 [ ]   Automatically mount at boot       

 [*] /dev/pts file system for Unix98 PTYs 

```

 *Quote:*   

> 
> 
> edit::
> 
> Some have had problems with building with genkernel. Before building make sure the following are available in your current kernel. In mine I had loopback as a module and ram disk compiled in. Im thinking it might need loopback and ramdisk support to build the new kernel and initrd. 
> ...

 

For Bootsplash to be integrated into the initrd enable the following kernel options. (Assuming you have already emerged bootsplash)

```

Device Drivers > Graphics Support > 

   [*] Support for frame buffer devices

   [*]   VESA VGA graphics support   

Device Drivers > Graphics Support >  Console display driver support  --->

   [*]   Video mode selection support   

   <*> Framebuffer Console support 

Device Drivers > Graphics Support >  Bootsplash configuration  ---> 

   [*] Bootup splash screen  

```

New boot options used:

```

GRUB:

real_root= needs to point to your root partition

root=  needs to point to the ramdisk (should stay at /dev/ram0)

init= needs to point to the linuxrc file to execute on the ramdisk

vga= should be the resolution you want your screen at  0x317 indicates

      1024x768 - 16bpp   and you'll get a pretty bootsplash if configured properly 
```

Here is where the VFS error comes into play. In the past we did root=/dev/hdx the way the new genkernel does it is root=/dev/ram0 to process the initrd. 

Example grub config:

```

title=Linux 2.6.1 genkernel

root (hd0,0)

kernel (hd0,4)/boot/kernel-2.6.1-gentoo root=/dev/ram0 init=/linuxrc real_root=/dev/hda7 video=vesa:ywrap,mtrr vga=0x317

initrd (hd0,4)/boot/initrd-2.6.1-gentoo

```

Last edited by Suicidal on Tue Jan 20, 2004 3:38 am; edited 2 times in total

----------

## puddpunk

Very nice, Suicidal. Quite helpful.

IMO, the best feature of the new genkernel is it's ability to handle the new 2.6 kernels. YESS!!!

----------

## Shapierian

Does this new genkernel support multiple configs? I often play with new patch sets and the old genkernel had configs for each one e.g. /etc/kernels/config-2.6.1-mm2, /etc/kernels/config-2.6.1-love2, etc.

----------

## rrrkkkttt

kernel: gentoo-dev-sources-2.6.1

I followed this guide and I have the bootsplash and framebuffer.. however when I tried doing df -ah :

```

Filesystem            Size  Used Avail Use% Mounted on

/dev/hdb3              24G   17G  7.3G  69% /

none                     0     0     0   -  /tmp/.initrd/dev

/dev/hdb3              24G   17G  7.3G  69% /

none                     0     0     0   -  /proc

none                     0     0     0   -  /sys

none                     0     0     0   -  /dev

none                     0     0     0   -  /dev/pts

/dev/fd0              0.0K  0.0K  0.0K   -  /mnt/floppy

none                  125M     0  125M   0% /dev/shm

none                     0     0     0   -  /proc/bus/usb

```

my root is mounted two times!

and there was some error mesg in dmesg:

```

Linux version 2.6.1-gentoo (root@gentoobox) (gcc version 3.2.3 20030422 (Gentoo Linux 1.4 3.2.3-r3, propolice)) #1 Thu Jan 15 14:11:29 PST 2004

BIOS-provided physical RAM map:

 BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)

 BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)

 BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved)

 BIOS-e820: 0000000000100000 - 000000000ffc0000 (usable)

 BIOS-e820: 000000000ffc0000 - 000000000fff8000 (ACPI data)

 BIOS-e820: 000000000fff8000 - 0000000010000000 (ACPI NVS)

 BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved)

 BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved)

 BIOS-e820: 00000000ffb80000 - 00000000ffc00000 (reserved)

 BIOS-e820: 00000000fff00000 - 0000000100000000 (reserved)

255MB LOWMEM available.

On node 0 totalpages: 65472

  DMA zone: 4096 pages, LIFO batch:1

  Normal zone: 61376 pages, LIFO batch:14

  HighMem zone: 0 pages, LIFO batch:1

DMI 2.3 present.

ACPI: RSDP (v000 AMI                                       ) @ 0x000ff980

ACPI: RSDT (v001 D850MV MV85010A 0x20011114 MSFT 0x00001011) @ 0x0fff0000

ACPI: FADT (v001 D850MV MV85010A 0x20011114 MSFT 0x00001011) @ 0x0fff1000

ACPI: MADT (v001 D850MV MV85010A 0x20011114 MSFT 0x00001011) @ 0x0ffe36ef

ACPI: DSDT (v001 D850MV MV85010A 0x00000004 MSFT 0x0100000b) @ 0x00000000

ACPI: Local APIC address 0xfee00000

ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled)

Processor #0 15:2 APIC version 20

ACPI: LAPIC_NMI (acpi_id[0x01] dfl dfl lint[0x1])

Building zonelist for node : 0

Kernel command line: root=/dev/ram0 init=/linuxrc real_root=/dev/hdb3 video=vesa:ywrap,mtrr vga=0x31A splash=verbose

bootsplash: verbose mode.

Found and enabled local APIC!

Initializing CPU#0

PID hash table entries: 1024 (order 10: 8192 bytes)

Detected 1595.648 MHz processor.

Using tsc for high-res timesource

Console: colour dummy device 80x25

Memory: 253460k/261888k available (2891k kernel code, 7724k reserved, 1205k data, 156k init, 0k highmem)

Checking if this processor honours the WP bit even in supervisor mode... Ok.

Calibrating delay loop... 3145.72 BogoMIPS

Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)

Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)

Mount-cache hash table entries: 512 (order: 0, 4096 bytes)

checking if image is initramfs...it isn't (no cpio magic); looks like an initrd

Freeing initrd memory: 668k freed

CPU:     After generic identify, caps: 3febfbff 00000000 00000000 00000000

CPU:     After vendor identify, caps: 3febfbff 00000000 00000000 00000000

CPU: Trace cache: 12K uops, L1 D cache: 8K

CPU: L2 cache: 512K

CPU:     After all inits, caps: 3febfbff 00000000 00000000 00000080

Intel machine check architecture supported.

Intel machine check reporting enabled on CPU#0.

CPU#0: Intel P4/Xeon Extended MCE MSRs (12) available

CPU#0: Thermal monitoring enabled

CPU: Intel(R) Pentium(R) 4 CPU 1.60GHz stepping 04

Enabling fast FPU save and restore... done.

Enabling unmasked SIMD FPU exception support... done.

Checking 'hlt' instruction... OK.

POSIX conformance testing by UNIFIX

enabled ExtINT on CPU#0

ESR value before enabling vector: 00000000

ESR value after enabling vector: 00000000

Using local APIC timer interrupts.

calibrating APIC timer ...

..... CPU clock speed is 1594.0986 MHz.

..... host bus clock speed is 99.0686 MHz.

NET: Registered protocol family 16

PCI: PCI BIOS revision 2.10 entry at 0xfda95, last bus=2

PCI: Using configuration type 1

mtrr: v2.0 (20020519)

ACPI: Subsystem revision 20031203

ACPI: IRQ9 SCI: Level Trigger.

ACPI: Interpreter enabled

ACPI: Using PIC for interrupt routing

ACPI: PCI Root Bridge [PCI0] (00:00)

PCI: Probing PCI hardware (bus 00)

Transparent bridge - 0000:00:1e.0

ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT]

ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.PCI1._PRT]

ACPI: Power Resource [FDDP] (off)

ACPI: Power Resource [URP1] (off)

ACPI: Power Resource [URP2] (off)

ACPI: Power Resource [LPTP] (off)

ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 9 10 *11 12 14 15)

ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 *10 11 12 14 15)

ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 10 11 12 14 15)

ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 12 14 15)

ACPI: PCI Interrupt Link [LNKE] (IRQs 3 4 5 6 7 9 10 *11 12 14 15)

ACPI: PCI Interrupt Link [LNKF] (IRQs 3 4 5 6 7 9 10 *11 12 14 15)

ACPI: PCI Interrupt Link [LNKG] (IRQs 3 4 5 6 7 9 10 *11 12 14 15)

ACPI: PCI Interrupt Link [LNKH] (IRQs 3 4 5 6 7 *9 10 11 12 14 15)

Linux Plug and Play Support v0.97 (c) Adam Belay

SCSI subsystem initialized

Linux Kernel Card Services

  options:  [pci] [cardbus] [pm]

drivers/usb/core/usb.c: registered new driver usbfs

drivers/usb/core/usb.c: registered new driver hub

ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 5

ACPI: PCI Interrupt Link [LNKB] enabled at IRQ 10

ACPI: PCI Interrupt Link [LNKH] enabled at IRQ 9

ACPI: PCI Interrupt Link [LNKA] enabled at IRQ 11

ACPI: PCI Interrupt Link [LNKE] enabled at IRQ 11

ACPI: PCI Interrupt Link [LNKF] enabled at IRQ 11

ACPI: PCI Interrupt Link [LNKG] enabled at IRQ 11

PCI: Using ACPI for IRQ routing

PCI: if you experience problems, try using option 'pci=noacpi' or even 'acpi=off'

vesafb: framebuffer at 0xe0000000, mapped to 0xd0807000, size 16384k

vesafb: mode is 1280x1024x16, linelength=2560, pages=24

vesafb: protected mode interface info at c000:550c

vesafb: scrolling: redraw

vesafb: directcolor: size=0:5:6:5, shift=0:11:5:0

fb0: VESA VGA frame buffer device

Machine check exception polling timer started.

cpufreq: P4/Xeon(TM) CPU On-Demand Clock Modulation available

apm: BIOS version 1.2 Flags 0x03 (Driver version 1.16ac)

apm: overridden by ACPI.

devfs: v1.22 (20021013) Richard Gooch (rgooch@atnf.csiro.au)

devfs: boot_options: 0x1

NTFS driver 2.1.5 [Flags: R/O].

udf: registering filesystem

Supermount version 2.0.3 for kernel 2.6

ACPI: Power Button (FF) [PWRF]

ACPI: Processor [CPU1] (supports C1)

bootsplash 3.1.3-2003/11/14: looking for picture...... silentjpeg size 75071 bytes, found (1280x1024, 26385 bytes, v3).

Console: switching to colour frame buffer device 153x54

pty: 256 Unix98 ptys configured

lirc_dev: IR Remote Control driver registered, at major 61 

Non-volatile memory driver v1.2

hw_random hardware driver 1.0.0 loaded

Serial: 8250/16550 driver $Revision: 1.90 $ 8 ports, IRQ sharing disabled

ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A

ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A

Using anticipatory io scheduler

Floppy drive(s): fd0 is 1.44M

FDC 0 is a post-1991 82077

RAMDISK driver initialized: 16 RAM disks of 8192K size 1024 blocksize

loop: loaded (max 8 devices)

PPP generic driver version 2.4.2

PPP Deflate Compression module registered

PPP BSD Compression module registered

orinoco.c 0.13e (David Gibson <hermes@gibson.dropbear.id.au> and others)

orinoco_cs.c 0.13e (David Gibson <hermes@gibson.dropbear.id.au> and others)

orinoco_pci.c 0.13e (David Gibson <hermes@gibson.dropbear.id.au> & Jean Tourrilhes <jt@hpl.hp.com>)

Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2

ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx

ICH2: IDE controller at PCI slot 0000:00:1f.1

ICH2: chipset revision 4

ICH2: not 100% native mode: will probe irqs later

    ide0: BM-DMA at 0xffa0-0xffa7, BIOS settings: hda:DMA, hdb:DMA

    ide1: BM-DMA at 0xffa8-0xffaf, BIOS settings: hdc:DMA, hdd:DMA

hda: ST380021A, ATA DISK drive

hdb: WDC WD1200JB-00DUA3, ATA DISK drive

ide0 at 0x1f0-0x1f7,0x3f6 on irq 14

hdc: LITE-ON LTR-52246S, ATAPI CD/DVD-ROM drive

hdd: Pioneer DVD-ROM ATAPIModel DVD-116 0122, ATAPI CD/DVD-ROM drive

ide1 at 0x170-0x177,0x376 on irq 15

hda: max request size: 128KiB

hda: 156301488 sectors (80026 MB) w/2048KiB Cache, CHS=65535/16/63, UDMA(100)

 /dev/ide/host0/bus0/target0/lun0: p1

hdb: max request size: 1024KiB

hdb: 234441648 sectors (120034 MB) w/8192KiB Cache, CHS=16383/255/63, UDMA(100)

 /dev/ide/host0/bus0/target1/lun0: p1 p2 p3 p4 < p5 >

hdc: ATAPI 52X CD-ROM CD-R/RW drive, 2048kB Cache, UDMA(33)

Uniform CD-ROM driver Revision: 3.12

hdd: ATAPI 40X DVD-ROM drive, 256kB Cache, UDMA(33)

ohci1394: $Rev$ Ben Collins <bcollins@debian.org>

ohci1394: fw-host0: OHCI-1394 1.1 (PCI): IRQ=[9]  MMIO=[ff9fe800-ff9fefff]  Max Packet=[2048]

raw1394: /dev/raw1394 device initialized

sbp2: $Rev$ Ben Collins <bcollins@debian.org>

Console: switching to colour frame buffer device 153x54

drivers/usb/host/uhci-hcd.c: USB Universal Host Controller Interface driver v2.1

uhci_hcd 0000:00:1f.2: UHCI Host Controller

PCI: Setting latency timer of device 0000:00:1f.2 to 64

uhci_hcd 0000:00:1f.2: irq 5, io base 0000ef40

uhci_hcd 0000:00:1f.2: new USB bus registered, assigned bus number 1

hub 1-0:1.0: USB hub found

hub 1-0:1.0: 2 ports detected

uhci_hcd 0000:00:1f.4: UHCI Host Controller

PCI: Setting latency timer of device 0000:00:1f.4 to 64

uhci_hcd 0000:00:1f.4: irq 9, io base 0000ef80

uhci_hcd 0000:00:1f.4: new USB bus registered, assigned bus number 2

hub 2-0:1.0: USB hub found

hub 2-0:1.0: 2 ports detected

drivers/usb/core/usb.c: registered new driver usblp

drivers/usb/class/usblp.c: v0.13: USB Printer Device Class driver

Initializing USB Mass Storage driver...

drivers/usb/core/usb.c: registered new driver usb-storage

USB Mass Storage support registered.

drivers/usb/core/usb.c: registered new driver hiddev

drivers/usb/core/usb.c: registered new driver hid

drivers/usb/input/hid-core.c: v2.0:USB HID core driver

mice: PS/2 mouse device common for all mice

serio: i8042 AUX port at 0x60,0x64 irq 12

input: ImPS/2 Generic Wheel Mouse on isa0060/serio1

serio: i8042 KBD port at 0x60,0x64 irq 1

input: AT Translated Set 2 keyboard on isa0060/serio0

Advanced Linux Sound Architecture Driver Version 1.0.0rc2.

request_module: failed /sbin/modprobe -- snd-card-0. error = -16

ieee1394: Host added: ID:BUS[0-00:1023]  GUID[00023c002106656c]

ALSA device list:

  #0: Sound Blaster Audigy (rev.3) at 0xdf80, irq 11

NET: Registered protocol family 2

IP: routing cache hash table of 2048 buckets, 16Kbytes

TCP: Hash tables configured (established 16384 bind 32768)

NET: Registered protocol family 1

NET: Registered protocol family 17

cpufreq: No CPUs supporting ACPI performance management found.

ACPI: (supports S0 S1 S4 S5)

RAMDISK: Compressed image found at block 0

VFS: Mounted root (ext2 filesystem) readonly.

Mounted devfs on /dev

Freeing unused kernel memory: 156k freed

hub 2-0:1.0: new USB device on port 2, assigned address 2

hub 2-2:1.0: USB hub found

hub 2-2:1.0: 4 ports detected

VFS: Can't find ext3 filesystem on dev hdb3.

VFS: Can't find ext2 filesystem on dev hdb3.

FAT: bogus number of reserved sectors

VFS: Can't find a valid FAT filesystem on dev hdb3.

FAT: bogus number of reserved sectors

VFS: Can't find a valid FAT filesystem on dev hdb3.

Unable to identify CD-ROM format.

NTFS-fs error (device hdb3): read_ntfs_boot_sector(): Primary boot sector is invalid.

NTFS-fs error (device hdb3): read_ntfs_boot_sector(): Mount option errors=recover not used. Aborting without trying to recover.

NTFS-fs error (device hdb3): ntfs_fill_super(): Not an NTFS volume.

VFS: Can't find a romfs filesystem on dev hdb3.

found reiserfs format "3.6" with standard journal

Reiserfs journal params: device hdb3, size 8192, journal first block 18, max trans len 1024, max batch 900, max commit age 30, max trans age 30

reiserfs: checking transaction log (hdb3) for (hdb3)

Using r5 hash to sort names

Adding 522072k swap on /dev/hdb5.  Priority:-1 extents:1

Real Time Clock Driver v1.12

Linux agpgart interface v0.100 (c) Dave Jones

agpgart: Detected an Intel i850 Chipset.

agpgart: Maximum main memory to use for agp memory: 203M

agpgart: AGP aperture is 64M @ 0xf8000000

eepro100.c:v1.09j-t 9/29/99 Donald Becker http://www.scyld.com/network/eepro100.html

eepro100.c: $Revision: 1.36 $ 2000/11/17 Modified by Andrey V. Savochkin <saw@saw.sw.com.sg> and others

eth0: 0000:02:08.0, 00:03:47:DC:5A:BA, IRQ 11.

  Board assembly 000000-000, Physical connectors present: RJ45

  Primary interface chip i82555 PHY #1.

  General self-test: passed.

  Serial sub-system self-test: passed.

  Internal registers self-test: passed.

  ROM checksum self-test: passed (0x04f4518b).

fglrx: module license 'Proprietary. (C) 2002 - ATI Technologies, Starnberg, GERMANY' taints kernel.

[fglrx] Maximum main memory to use for locked dma buffers: 197 MBytes.

[fglrx] module loaded - fglrx 3.2.8 [Sep 21 2003] on minor 0

bootsplash 3.1.3-2003/11/14: looking for picture.... found (1280x1024, 26385 bytes, v3).

bootsplash: status on console 0 changed to on

bootsplash 3.1.3-2003/11/14: looking for picture.... found (1280x1024, 26385 bytes, v3).

bootsplash: status on console 1 changed to on

bootsplash 3.1.3-2003/11/14: looking for picture.... found (1280x1024, 26385 bytes, v3).

bootsplash: status on console 2 changed to on

bootsplash 3.1.3-2003/11/14: looking for picture.... found (1280x1024, 26385 bytes, v3).

bootsplash: status on console 3 changed to on

bootsplash 3.1.3-2003/11/14: looking for picture.... found (1280x1024, 26385 bytes, v3).

bootsplash: status on console 4 changed to on

bootsplash 3.1.3-2003/11/14: looking for picture.... found (1280x1024, 26385 bytes, v3).

bootsplash: status on console 5 changed to on

mtrr: 0xe0000000,0x4000000 overlaps existing 0xe0000000,0x1000000

[fglrx:firegl_addmap] *ERROR* mtrr allocation failed (-22)

[fglrx] AGP detected, AgpState   = 0x1f000217 (hardware caps of chipset)

agpgart: Found an AGP 2.0 compliant device at 0000:00:00.0.

agpgart: Putting AGP V2 device at 0000:00:00.0 into 4x mode

agpgart: Putting AGP V2 device at 0000:01:00.0 into 4x mode

[fglrx] AGP enabled,  AgpCommand = 0x1f000314 (selected caps)

[fglrx] free  AGP = 54800384

[fglrx] max   AGP = 54800384

[fglrx] free  LFB = 49283072

[fglrx] max   LFB = 49283072

[fglrx] free  Inv = 0

[fglrx] max   Inv = 0

[fglrx] total Inv = 0

[fglrx] total TIM = 0

[fglrx] total FB  = 0

[fglrx] total AGP = 16384

atkbd.c: Unknown key released (translated set 2, code 0x7a on isa0060/serio0).

atkbd.c: Unknown key released (translated set 2, code 0x7a on isa0060/serio0).

atkbd.c: Unknown key released (translated set 2, code 0x81 on isa0060/serio0).

```

first off my root is reiserfs and I have no idea how it mounted it as ext2...

```

VFS: Mounted root (ext2 filesystem) readonly.

```

why is it trying to guess the filesystem?

```

VFS: Can't find ext3 filesystem on dev hdb3.

VFS: Can't find ext2 filesystem on dev hdb3.

FAT: bogus number of reserved sectors

VFS: Can't find a valid FAT filesystem on dev hdb3.

FAT: bogus number of reserved sectors

VFS: Can't find a valid FAT filesystem on dev hdb3.

Unable to identify CD-ROM format.

NTFS-fs error (device hdb3): read_ntfs_boot_sector(): Primary boot sector is invalid.

NTFS-fs error (device hdb3): read_ntfs_boot_sector(): Mount option errors=recover not used. Aborting without trying to recover.

NTFS-fs error (device hdb3): ntfs_fill_super(): Not an NTFS volume.

VFS: Can't find a romfs filesystem on dev hdb3.

```

finally found the proper root:

```

found reiserfs format "3.6" with standard journal

Reiserfs journal params: device hdb3, size 8192, journal first block 18, max trans len 1024, max batch 900, max commit age 30, max trans age 30

reiserfs: checking transaction log (hdb3) for (hdb3)

Using r5 hash to sort names

```

here's my /etc/fstab: 

```

# /etc/fstab: static file system information.

# $Header: /home/cvsroot/gentoo-src/rc-scripts/etc/fstab,v 1.13 2003/07/17 19:55:18 azarah Exp $

#

# noatime turns off atimes for increased performance (atimes normally aren't

# needed; notail increases performance of ReiserFS (at the expense of storage

# efficiency).  It's safe to drop the noatime options if you want and to 

# switch between notail and tail freely.

# <fs>             <mountpoint>    <type>     <opts>            <dump/pass>

# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.

/dev/hdb2      /boot      ext3      noauto,noatime      1 2

/dev/hdb3      /      reiserfs   noatime         0 1

/dev/hdb5      none      swap      sw         0 0

/dev/cdroms/cdrom0   /mnt/cdrw   iso9660      noauto,ro,user      0 0

/dev/cdroms/cdrom1   /mnt/dvd   is09660      noauto,ro,user      0 0

#/dev/hdc      /mnt/cdrw   supermount   dev=/dev/cdroms/cdrom0,fs=auto,ro,--,iocharset=iso8859-1,codepage=850   0 0

#/dev/hdd      /mnt/dvd   supermount   dev=/dev/cdroms/cdrom1,fs=auto,ro,--,iocharset=iso8859-1,codepage=850   0 0

/dev/fd0      /mnt/floppy   supermount   dev=/dev/fd0,fs=auto,--,iocharset=iso8859-1,sync,codepage=850   0 0

# NOTE: The next line is critical for boot!

none         /proc      proc      defaults      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)

# Adding the following line to /etc/fstab should take care of this:

none         /dev/shm   tmpfs      defaults      0 0

```

and here's my grub.conf:

```

default 0

timeout 10

splashimage=(hd0,1)/boot/grub/powered-by.xpm.gz

 

title=Gentoo Linux

root (hd0,1)

kernel (hd0,1)/boot/kernel-2.6.1-gentoo root=/dev/ram0 init=/linuxrc real_root=/dev/hdb3 video=vesa:ywrap,mtrr vga=0x31A splash=verbose

initrd (hd0,1)/boot/initrd-2.6.1-gentoo

 

title=Windows XP

map (hd0) (hd1)

map (hd1) (hd0)

rootnoverify (hd1,0)

makeactive

chainloader +1

```

need some desperate help please....

----------

## brantgurga

I am having issues with the new genkernel as well.  A gripe is that it doesn't save the kernel configuration you last used and reload it each time as the previous version did.  Additionally, it keeps not finding the root properly.

/dev/hda2  ext3 /boot

/dev/hda3  reiserfs /

I've tried tinkering with root= and real_root=, but am not successful.  I've also tried compiling the filesystems directly into the kernel and that isn't working either.

----------

## Nu-Bee_4VR

 *Shapierian wrote:*   

> Does this new genkernel support multiple configs? I often play with new patch sets and the old genkernel had configs for each one e.g. /etc/kernels/config-2.6.1-mm2, /etc/kernels/config-2.6.1-love2, etc.

 

Yes, it does quite nicely.  All you need do is use the command:

```
--kernel-config=<file>
```

----------

## Nu-Bee_4VR

NOTE:

The fact that the bootsplash must be read in 16 bit graphics can confuse people, I know it did me for quite a while.  The kernel config option:

```
VGA 16-color graphics support
```

...must not be turned on.

I must have compiled 50 times trying to get a bootsplash before I finally turned this off...and got the bootsplash immediately upon reboot.

BTW, this is my  grub command line:

 *Quote:*   

> root=/dev/ram0 init=/linuxrc real_root=/dev/hda7 devfs=mount acpi=ht resume=/dev/hda8 spl
> 
> ash=silent vga=788

 

Both vga=788 and vga=0x314 work. (800x600)

----------

## rrrkkkttt

so is having two root's mounted dangerous?

----------

## Suicidal

Excellent observation rrrkkkttt

 *Quote:*   

> so is having two root's mounted dangerous?

 

Im not sure but I usually mount my / with options notail and here is my output:

```
#mount

/dev/hda8 on / type reiserfs (rw,noatime,notail)

/dev/hda8 on / type reiserfs (rw,noatime)

none on /proc type proc (rw)

none on /sys type sysfs (rw)

none on /dev type devfs (rw)

none on /dev/pts type devpts (rw)

none on /dev/shm type tmpfs (rw)

none on /proc/bus/usb type usbfs (rw)
```

Im just glad it doesnt automatically mount /boot because If I remember correctly reiserfs doesnt work with grub unless it is mounted with the notail option. I files a bug report to see if this is normal or not.

As far as it mounting root ext2 I am wondering if that is what the initrd is formated in. I get the same message but I dont have any ext2 or ext3 partitions on my system.

 *Quote:*   

> I am having issues with the new genkernel as well. A gripe is that it doesn't save the kernel configuration you last used and reload it each time as the previous version did. Additionally, it keeps not finding the root properly. 

 

I always compile my / and /boot into the kernel, as far as the default config It's not as good as the one in 1.8, I hope after the beta is done they move the configs back to /etc/kernels/

I also think they need to update the install manual or mask this build, They way it sits right now it is going to confuse alot of n00bs trying gentoo for the first time.Last edited by Suicidal on Fri Jan 16, 2004 3:34 am; edited 2 times in total

----------

## gonzalo

 *Nu-Bee_4VR wrote:*   

> The fact that the bootsplash must be read in 16 bit graphics can confuse people, I know it did me for quite a while.  The kernel config option:
> 
> ```
> VGA 16-color graphics support
> ```
> ...

 

there's no problem if you set it as module

----------

## Nu-Bee_4VR

 *gonzalo wrote:*   

>  *Nu-Bee_4VR wrote:*   The fact that the bootsplash must be read in 16 bit graphics can confuse people, I know it did me for quite a while.  The kernel config option:
> 
> ```
> VGA 16-color graphics support
> ```
> ...

 

Thank you for noting this, I hadn't tried it.  I was so frustrated after having compiled so many kernels that I was just happy to finally get it working.

Not this similar thing though; I read in one file that the ATI drivers must be off, but: loading the ATI stuff as drivers also works fine.

----------

## Suicidal

In regards to it mounting root twice i havent heard back from bugzilla, but I am wondering if that is the reason that loopback needs to be compiled into the kernel.

----------

## mhodak

Suicidal,

can you post bug number? 

BTW, I also have root partition mounted twice.

----------

## OhSh33t

Hey Suicidal,

Thanks for taking the time to write this howto. This was very nicely written. Easy to understand and to the point. Much appreciated.

For all the other Portage Hell that I can't seem to shake on my other server, has all been made better with this nice howto and a boost in Gentoo Moral now that I've got one server completely up to date, (with stable packages that is  :Very Happy:  ) and running the new 2.4.22-gentoo-r5 and new genkernel-3.0.1_beta4. 

The only part of you directions I wasn't able to apply were the grub vga settings. I have a Compaq with Video buit into the Motherboard. Fun.. Fun... Fun... Having a hard time determining how to set that up. Another day of research. Heh... Heh..  :Very Happy: 

Thanks again.

----------

## olias2

Thanks Suicidal for this How-to. I followed to the point of 'genkernel all' and got this error...

```
GenKernel v3.0.1_beta4-3

* ARCH: x86

* KERNEL VER: 2.6.1-gentoo

* Your kernel does not appear to have loop device support.

* Please 'modprobe loop' if it is a module before running genkernel

* gen_die(): ----Load loop support----

```

 When I try to 'modprobe loop' I get "FATAL: Module loop not found."

BTW, I'm currently using 2.6.0-gentoo sources.

Thanks again for any help, olias

----------

## vortex01

It seems as though genkernel does not like Suicidal's suggestion of loopback compiled into the kernel. Genkernel seems to error if it is compiled into kernel.

I too have root partition mounted twice, but however I got there, I can't correct it!!   :Crying or Very sad: 

Has anyone found correction to this double mount issue?

AdThanksVance,

.vortexLast edited by vortex01 on Sun Jan 18, 2004 2:10 pm; edited 1 time in total

----------

## Nu-Bee_4VR

I just found, and am going to add my own comments to this bug:

https://bugs.gentoo.org/show_bug.cgi?id=38360

----------

## Suicidal

 *Quote:*   

> 
> 
> The only part of you directions I wasn't able to apply were the grub vga settings. I have a Compaq with Video buit into the Motherboard. Fun.. Fun... Fun... Having a hard time determining how to set that up. Another day of research. Heh... Heh. 

 

Try the options below on vga=

On my Dell Inspirion laptop I use vga=0x317

```

    | 640x480  800x600  1024x768 1280x1024

----+-------------------------------------

256 |  0x301    0x303    0x305    0x307   

32k |  0x310    0x313    0x316    0x319   

64k |  0x311    0x314    0x317    0x31A   

16M |  0x312    0x315    0x318    0x31B   
```

You might want to try and take ywap and mtrr off of the vesa line if the vid card in the laptop is a bit slow.

First I would try to take off ywrap and then mtrr

 *Quote:*   

> 
> 
> Suicidal,
> 
> can you post bug number?
> ...

 

My bug is the one that Nu-Bee_4VR posted at the bottom of the page

https://bugs.gentoo.org/show_bug.cgi?id=38360

 *Quote:*   

>  When I try to 'modprobe loop' I get "FATAL: Module loop not found." 

 

I was reading the readme again it seems you need the following enabled in your current kernel before running genkernel:

 *Quote:*   

> 
> 
> To build a kernel with GenKernel you must have  
> 
>   "Block devices->Loopback device support"  
> ...

 

I guess I need to update the howto.

----------

## olias2

 *Suicidal wrote:*   

> 
> 
>  *Quote:*    When I try to 'modprobe loop' I get "FATAL: Module loop not found."  
> 
> I was reading the readme again it seems you need the following enabled in your current kernel before running genkernel:
> ...

  Thanks, I figured that may be the case. So what you're saying is that I can't run the new genkernel with my current kernel. Funny that my current kernel was generated with genkernel 1.8   :Sad:  . I guess I will have to compile a new kernel the old fashioned way and add the following block devices.

```
"Block devices->Loopback device support"

"Block devices->RAM disk support" 
```

 Sorry I asked something that you already covered. I stopped reading at the point that I got hung up. I've since gone back and read all your directions and have to say you did a fine job with these details.

olias

----------

## SoulSe

For people having problems with their .config dissapearing: Edit /etc/genkernel.conf (after the first compile) and set it to not run mrproper. That should prevent your .config from being wiped out.

The tutorial worked for me, but I am also having problems with the root partition, my root partition is hda3, but on boot, it will only work if I pass hda1 (which is supposed to be /boot) to the kernel. However, no matter what I set as root= in lilo, it does not work.

Also, I have no sound   :Confused: 

----------

## Suicidal

I was looking at the  cvs it looks like the loop problem is being addressed in beta6.

----------

## thc013

great and the old genkernel 1.8 can't be emerged and now i can't do genernel --config and cant find new option in genkernel to config my kernel with extra options

it is great that new thing are created but it is not made easier to configure your kernel 

was way easy run genkernel --config  set extra options in your kernel and lets do genkernel the rest but noiw i can't find a qay to do it

----------

## s0m3body

 *mhodak wrote:*   

> 
> 
> BTW, I also have root partition mounted twice.

 

are you sure ?  :Wink: 

i would bet that it is just because your real root is mounted over the rootfs (ramfs)

have a look at output of:

cat /proc/mounts

you should see something like:

rootfs / rootfs rw 0 0

/dev/hda1 / reiserfs rw,noatime 0 0

output of df is wrong in this case, it sees two records for '/' in /proc/mounts (or /etc/mtab); then it calls statfs two times and the result is always the same (because the input parameter is '/' in both times)

i don't think that it is dangerous, it may be confusing, thought

it WON'T happen if you are not using initrd because there you mount root partition directly to '/' - but if you have your root partition on a drive where you need a module to be loaded to get an access there (not supported (not in kernel) ide controllers, etc ...)

i believe that you can simply ignore that

----------

## thc013

still get

 could not mount initrd filesystem

and have loopback initrd and the other things exlained above but still get that error

and can't emerge genkernel-1.8 to run genkernel --config and have no problems

----------

## olias2

 *s0m3body wrote:*   

> have a look at output of:
> 
> cat /proc/mounts
> 
> you should see something like:
> ...

 I finally got this thing working... nice Gentoo splash now  :Very Happy: . But, I too have the root mounted twice when I check #df...

```
Filesystem           1K-blocks      Used Available Use% Mounted on

/dev/hda3              8008148   4364300   3643848  55% /

/dev/hda3              8008148   4364300   3643848  55% /

/dev/hda4             69029192  33139776  35889416  49% /home

none                    452200         0    452200   0% /dev/shm

```

 So I did as s0m3body sugested 'cat /proc/mounts' and mine is different than your output...  

```
rootfs / rootfs rw 0 0

/dev/root /tmp/.initrd ext2 rw 0 0

none /tmp/.initrd/dev devfs rw 0 0

/dev/hda3 / reiserfs rw,noatime 0 0

none /proc proc rw 0 0

none /sys sysfs rw 0 0

none /dev devfs rw 0 0

none /dev/pts devpts rw 0 0

/dev/hda4 /home reiserfs rw,noatime 0 0

none /dev/shm tmpfs rw 0 0

none /proc/bus/usb usbfs rw 0 0

```

 I have 4 primary partitions like this...

hda1 = /boot

hda2 = swap

hda3 = /

hda4 = /home

Can anybody help me understand the output of 'cat /proc/mounts'. Thanks to All for this guide.

----------

## mhodak

 *s0m3body wrote:*   

>  *mhodak wrote:*   
> 
> BTW, I also have root partition mounted twice. 
> 
> are you sure ? 
> ...

 

You are right, /proc/mounts shows that it is real root mounted over rootfs, which confuses mount:

rootfs / rootfs rw 0 0

/dev/hda3 / reiserfs rw,noatime 0 0

So it seems like this is really nothing to worry about.

----------

## Suicidal

Thnaks for clearing up the mount issue s0m3body, I guess that is why the bug hasnt been responded to.

 *Quote:*   

> great and the old genkernel 1.8 can't be emerged and now i can't do genernel --config and cant find new option in genkernel to config my kernel with extra options 

 

You can still emerge genkernel 1.8 by:

```
emerge /usr/portage/sys-kernel/genkernel/genkernel-1.8.ebuild

```

what extra options are you referring to?

----------

## OhSh33t

 *Suicidal wrote:*   

> 
> 
>  *Quote:*   great and the old genkernel 1.8 can't be emerged and now i can't do genernel --config and cant find new option in genkernel to config my kernel with extra options  
> 
> You can still emerge genkernel 1.8 by:
> ...

 

I believe he's referring to having the ability to use "menuconfig" which is what issuing the "genkernel --config" command did in "genkernel 1.8" I was wondering the same thing myself. Which leads to my next question as well. 

I have a question. When I went from 2.4.22-gentoo-r4 to r5, where is the copy of the 2.4.22-gentoo-r5 config stored/put after I compilation? 

The reason I ask is because I don't see a copy created as per usual in "/etc/kernels/" directory.??

Thanks

----------

## hughesjr

Why would you make a major change like this stable ... when the genkernel section of the installation manual still has genkernel 1.4 in it and there is no mention of kernel loopback or other required settings in the installation manual?

There is no way that a new gentoo user is going to be able to follow the manual and get a new kernel....

----------

## payne

Yeah... like me. First kernel compilation ever. First gentoo install.

Followed the install manual to the letter for the gentoo kernel and ended up with the "root block device unspecified or not detected". I've gone back and tried to follow everything in this thread... setting the mentioned settings in genkernel (loopback, ramdisk... and removing drm modules for all but my video cards--which otherwise would hang the kernel compile). Three days later, I still don't have a bootable machine.

I enter my boot partition /dev/hda1 when it asks to "please specify a device to boot" and I get the error "mount : Mounting /dev/hda1 on /newroot failed: Invalid argument". 

Being the 1st-timer I am, I have no idea how to proceed. Can someone help me or do I just need to install Fedora... with its self-running installation?

----------

## kiko555

After I use genkernel to install gentoo-dev-source-2.6.1...

everything is ok but after rebooting...

got the error message....

```

STEP 4 :Determining root device

Root block device unspecified or not detected

Please specifity a device to book, or "shell" for a shell

```

anyone knew what's wrong  :Question: 

----------

## hughesjr

 *kiko555 wrote:*   

> After I use genkernel to install gentoo-dev-source-2.6.1...
> 
> everything is ok but after rebooting...
> 
> got the error message....
> ...

 

Make sure to include root=/dev/ram0 and init=/linuxrc on the kernel line ... as well real_root=/dev/hdxx where xx is your ROOT partition (a1, a2, b1, etc.)

----------

## wizard69

THX alot for this great howto eventually i succeeded with genkernel 3.01_beta6 and my new kernel is up and running

Gentoo Rocks

----------

## mhodak

 *payne wrote:*   

> 
> 
> I enter my boot partition /dev/hda1 when it asks to "please specify a device to boot" and I get the error "mount : Mounting /dev/hda1 on /newroot failed: Invalid argument". 
> 
> Being the 1st-timer I am, I have no idea how to proceed. Can someone help me or do I just need to install Fedora... with its self-running installation?

 

Your bootloader configuration seems to be wrong, it should not ask you to specify device to boot in the first place. Post here your grub.conf (if you are using grub).

----------

## kiko555

 *hughesjr wrote:*   

> 
> 
> Make sure to include root=/dev/ram0 and init=/linuxrc on the kernel line ... as well real_root=/dev/hdxx where xx is your ROOT partition (a1, a2, b1, etc.)

 

thanks for ur reply....but I already  had done"included root=/dev/ram0 and init=/linuxrc on the kernel line" this line.....

my partition list :

```

primary partition

hda1->fat32->WinXp

hda2->fat32->store data

Extended partition

hda5->ext2->linux boot

hda6->swap

hda7->reiserfs->linux
```

so my grub.conf:

```

root (0,0)

kernel (hd0,4)/boot/kernel-2.6.1-gentoo root=/dev/hda7 video=vesa:ywrap,mtrr vga=0x317

initrd (hd0,4)/boot/initrd-2.6.1-gentoo
```

----------

## mbobak

D'oh!  I've been struggling w/ this.  Since my system is 100%

LVM/XFS, I didn't bother to compile EXT2 support into my

kernel.  Well, when you don't do that, initrd breaks, since it

goes looking for ext2, since that's how the initrd image is

created!  D'oh!

Now rebuilding kernel w/ ext2 support, so that I can reboot,

so I can rebuild one more time to get initrd!

Anyhow, hope that helps out someone else,

-Mark

----------

## Suicidal

 *Quote:*   

>  Why would you make a major change like this stable ... when the genkernel section of the installation manual still has genkernel 1.4 in it and there is no mention of kernel loopback or other required settings in the installation manual?
> 
> There is no way that a new gentoo user is going to be able to follow the manual and get a new kernel....

 

Thats what I thought when I saw it marked stable. The main reason I wrote this how to was with consideration to first time gentoo users. I saw yesterday that they updated the installation manual. However I would reccomend to newbies to either compile the kernel manually or use genkernel 1.8 and then try genkernel until they work more on it's functionality.

 *Quote:*   

> 
> 
> D'oh! I've been struggling w/ this. Since my system is 100%
> 
> LVM/XFS, I didn't bother to compile EXT2 support into my
> ...

 

I have updated the howto to add ext2 support, thanks for the info.

Kilo555 your grub info should look like this:

```

root (0,0)

kernel (hd0,4)/boot/kernel-2.6.1-gentoo root=/dev/hd0 init=/linuxrc real_root=/dev/hda7 video=vesa:ywrap,mtrr vga=0x317

initrd (hd0,4)/boot/initrd-2.6.1-gentoo 
```

----------

## shwamster

I have been trying to install gentoo for the last couple of days. I am using the ck sources v2.4.23 and got through the install and compilation without any problems.  When I try to boot the bootlader loads fine. I select Gentoo and get the following error:

```
STEP4: Mounting root

mount: Mounting /dev/hdd3 on /newroot failed: Invalid argument

Could not mount specified ROOT, try again

Root block device unspecified or not detected.

Please specify a device to boot, or "shell" for a shell 
```

I have read all of the post but none have seemed to help. This is my grub.conf file

```

default 0

timeout 30

splashimage=(hd2,0)/grub/splashimage.xpm.gz

title=Gentoo Linux

root (hd2,0)

kernel (hd2,0)/kernel-2.4.23-ck1 root=/dev/ram0 init=/linuxrc real_root=/dev/hdd3

initrd (hd2,0)/initrd-2.4.23-ck1

```

Also, this is my partitioning scheme:

```
hda->Windows NTFS

hdb -> NTFS storage

hdc -> cdrom

hdd1 -> linux boot (ext2)

hdd2 -> linux swap

hdd3 -> linux root (resiserfs)
```

Any help would be greatly greatly appreciated

----------

## OhSh33t

Im getting the same exact error as "shwamster".

I feel like I've gone over this a million times.

My grub.conf is different though. I Don't think there's much of a difference here:

```

default 0 

timeout 30 

splashimage=(hd0,0)/boot/grub/splashimage.xpm.gz 

title=Gentoo Linux 

root (hd0,0) 

kernel (hd0,0)/kernel-2.4.2-gentoo-r5  root=/dev/ram0 init=/linuxrc real_root=/dev/hda3 vga=794

initrd (hd0,0)/initrd-2.4.22-gentoo-r5

```

The important "/etc/fstab" info:

```

/dev/hda1 /boot ext3

/dev/hda3 / reiserfs

/dev/hda2 none swap

```

Isn't using "ext3" on /boot basically the same as "ext2" when compiling the kernel?

Thanks,

----------

## dopey

This new genkernel really sucks.  The old one was much better.  I think I'm going back to the way I did things in the past (100% manual kernel configuration).

So far I've run into the following:

1) linuxrc's usage of MY_HWOPTS is incorrect.  It should be attempting to recurse with ${MY_HWOPTS} not MY_HWOPTS on line 51 (gentoo bug opened for this) 

2) the modprobe script doesn't handle module dependencies very well at all.  For example, when attempting to load ehci-hcd it loads the usbcore.o dependency then quits.  This happens with every module that has a dependency to load

3) adding "single" as a kernel argument no longer forces the system to boot into single user mode.  I have yet to figure out a way to force boot into single user mode.

Additionally, the entire genkernel system seems way too bloated and complicated. 

Time to file gentoo bugs for 2 and 3.

----------

## windex82

 *dopey wrote:*   

> This new genkernel really sucks.  The old one was much better.  I think I'm going back to the way I did things in the past (100% manual kernel configuration).
> 
> So far I've run into the following:
> 
> 1) linuxrc's usage of MY_HWOPTS is incorrect.  It should be attempting to recurse with ${MY_HWOPTS} not MY_HWOPTS on line 51 (gentoo bug opened for this) 
> ...

 

ahhhh so #3 was the problem ive been having... i cant boot into signle mode either, i tried it earlier today and just kinda shrugged it off, but now that i think about it another strange thing related to signle user mode came to mind, untill just recently when i would reboot the system it would display the signle user banner, "enter the root password or control-d yada" after a couple seconds it would reboot unless you put in the password, i thought it was pretty nice cause you could stop a reboot before it finnally went down if you needed to take care of something real qiuck, like forgeting to edit one last file.  It would do that without me putting single in the options.

----------

## jpalko

Well, got my gentoo once again working with this genkernel. Don't know though whether it was relevant to install also mkinitrd for to get genkernel working... Though I did do that as well before getting this working... If it was, then I could only ask why genkernel does not depend on mkinitrd...  :Smile: 

This was however necessary to be different on my choice in genkernel.conf:

```
BOOTSPLASH="yes"

=>

BOOTSPLASH="no"
```

Only thing left now is that after STEP 6 I get:

```
/linuxrc: 285: test: not found

/linuxrc: 285: test: not found
```

What fixes might there be still coming soon?

----------

## drumz

can someone take a look-see at my grub.conf and tell me if I have the settings for the gentoo r5 kernel entered correctly.  I'm afraid I'm getting the dreaded error:

 *Quote:*   

> mounting /dev/hda5 on /newroot failed:  invalid argument
> 
> root block device unspecified or not detected

 

My grub.conf:

```
default=2

timeout=10

splashimage=(hd0,1)/grub/splash.xpm.gz

title Gentoo Linux v1.4 kernel-2.4.24

      root(hd0,1)

      kernel (hd0,1)/kernel-2.4.24 root=/dev/hda5 vga=792

title Gentoo Linux v1.4 kernel-2.4.22-gentoo-r1

      root(hd0,1)

      kernel (hd0,1)/kernel-2.4.22-gentoo-r1 root=/dev/hda5 vga=792

      initrd (hd0,1)/initrd-2.4.22-gentoo-r1

title=Gentoo Linux v1.4 kernel-2.4.22-gentoo-r5

      root (hd0,1)

      kernel (hd0,1)/kernel-2.4.22-gentoo-r5 root=/dev/ram0 init=/linuxrc real_root=/dev/hda5 vga=0x317

      initrd (hd0,1)/initrd-2.4.22-gentoo-r5

title WinXP

      rootnoverify (hd0,0)

      chainloader +1

```

Please note that the vanilla kernel, the r1 of gentoo sources and winxp all boot fine, problem I'm having is with the r5 gentoo sources kernel.  I assume that the settings would be similar as from the previous kernels...

I've also included my fstab file below:

```

/dev/hda2               /boot           reiserfs        noauto,noatime,notail   1 1

/dev/hda5               /               reiserfs        noatime                 0 0

/dev/hda3               none            swap            sw                      0 0

/dev/cdroms/cdrom0      /mnt/cdrom      iso9660         noauto,user,ro          0 0

/dev/hda1               /mnt/windows    ntfs            noauto,ro               0 0

#/dev/fd0               /mnt/floppy     auto            noauto                  0 0

none                    /proc           proc            defaults                0 0

none                    /dev/shm        tmpfs           defaults                0 0

```

Only item to note is my boot partition is reiserfs, and yes I do have reiserfs compiled into the kernel (ie not as a module).  Now I have had problems (as others have stated here/other threads) with genkernel, but I have finally been able to cleanly compile a kernel with no error messages.  So I figure I must be misreading something.

Oh, and below is an 'ls' of my /boot directory, just for sake of completeness:

```

-rw-r--r--    1 root     root       636285 Dec 20 08:06 System.map-2.4.22-gentoo-r1

-rw-r--r--    1 root     root       533101 Jan 13 18:41 System.map-2.4.24

lrwxrwxrwx    1 root     root            1 Dec  9 12:02 boot -> .

drwxr-xr-x    2 root     root          456 Jan 21 20:21 grub

-rw-r--r--    1 root     root      1496173 Dec 20 08:07 initrd-2.4.22-gentoo-r1

-rw-r--r--    1 root     root      1695232 Jan 21 19:39 initrd-2.4.22-gentoo-r5

-rw-r--r--    1 root     root      1379821 Dec 20 08:06 kernel-2.4.22-gentoo-r1

-rw-r--r--    1 root     root      1284846 Jan 20 19:18 kernel-2.4.22-gentoo-r5

-rw-r--r--    1 root     root      1019414 Jan 13 18:40 kernel-2.4.24

```

Thanks for the look-over, much appreciated.  My eyes are buggin out   :Shocked: 

Drumz

----------

## OhSh33t

Nice post "drumz". 

I wish I had an answer. Obviously the "Documentation tips and Tricks" forum isn't the place for our problems because no-one is answering. You, others and myself have all had the same error message and no one, has any clue as to whats going on or how to trouble shoot this. I feel like I've tried just about everything. Still no-go..  :Sad: 

Would you be willing to submitt your info to bugs.gentoo.org? I have no idea what the engineers will need besides the basic info. I don't see anything in my logs at all to help me with this.

Obviously no-one has any answers for why this is happening. I've scoured through the forums as well as bugs.gentoo.org to no avail. I've recompiled the kernel every which way possible and I can't figure out what the problem is.

HOW DO WE MAKE A "GENKERNEL STICKY" MODERATOR? Would others reading through these postings like to see a Genkernel Sticky?

Obviously this "Genkernel how-to" has turned into a "everyone dump your genkernel  problems in this thread". The "Documentation Tips and Tricks" forum isn't exactly the appropriate place for genkernel problems. I feel that if we can atleast get a "STICKY"-thread going that we can air out why people are having these problems, share kernel settings and come up with a mini "how-to trouble shoot genkernel issues". 

This will only help everyone including the DEV's. They seem pretty frustrated when bugs are brought to them with little or no info.  The end-users really don't have any genkernel documentation to go off of even if they wanted to be pro-active in getting DEV's said needed info.

As a noob, I know how to get around the file system. If there was a howto with an outline of what "said info" needs to be submitted before posting then I would surely following that. Right now all that I have to go off of is my common sense. 

A) A copy of the error that I'm receiving

B) A copy of grub.conf

C) A copy of fstab

D) A copy of my kernel settings

Not trying to be pesimistic because I luv gentoo, but how can Gentoo toot there horn the way they do in the x86 install documentation when talking about how nice genkernel and the gentoo sources are.  Heh.. Heh... If they don't work at all and your forced to debug a kernel problem for days on end without any resolution...... why bother. The new Genkernel is completely blotted/Fat-Ass, undocumented and totally buggy.

This is an "ls" of the new genkernel default config and then the same for the former genkernel. Can YOu say "FAT-ASS".. Even the New default 2.6 kernel is half the size.

Can you say.... "Totally Undocumented and Totally Unfriendly"

Back to manual kernel installs again. This was a convienent kernel help/builder in its former glory but its nothing but a big pig thats over complicated and doesn't have any documentation except for the /usr/share/genkernel  README file... Which is what this thread uses to try and help people initially.

```

"New Genkernel"

root@fusion1 / # ls -la /usr/share/genkernel/x86

-rw-r--r--    1 root     root        42752 Jan 20 12:48 kernel-config-2.4

-rw-r--r--    1 root     root        26847 Jan 20 12:48 kernel-config-2.6

"Old Genkernel"

root@fusion1 / # ls -la /etc/kernels

-rw-r--r--    1 root     root        28073 Sep 19 20:32 default-config

```

Thanks,

----------

## drumz

Hey:

There's this https://bugs.gentoo.org/show_bug.cgi?id=38274 bug posting that the gentlemen lists that he''ll be posting an update to genkernel 'in a few days':

 *Quote:*   

> ------- Additional Comment #12 From Brian Jackson  2004-01-20 21:23 PST -------
> 
> I'm attributing this (and it's dups) to a bad config that made it into genkernel. I'll have a -r6 that fixes this and other bugs in the next few days. I'm also revamping the config that genkernel uses.

 

I'm happy enough to post a bug with the details I posted above, but I'll hold off until this update is posted just in the off chance the problem is with the compiled kernel/etc that even if it compiled cleanly there still may be an issue.  If that doesn't resolve it then I'll post a bug.  Hopefully the new version will be put out soon so we can continue tracking this down.

Drumz

----------

## OhSh33t

Drumz,

For some reason I don't think that our issue is related to modules. The reason I say so is because, if it were I think that genkernel actually fails to compile completely, thus never finishing. I've ran into the same problem and genkernel dies before compiling the kernel. But when I actually go into menuconfig and take out all the junk that I don't need is when Genkernel actually compiles without error. Its only after bootup that we see the errror you, I and many others are getting.

Were getting past this point. But something we've compiled into the kernel isn't jiving with what we have listed in grub. Which is completely beyond me at this point because we've both got grub setup per the directions. 

And its at this point that I have no clue why there isn't a log that we can look at that would help us further diagnose why this is happening. Neither Genkernel.log or Kern.log have anything usefull to tell. Is there somewhere else to look besides these area's that I'm unaware of?

----------

## jpalko

Personally I have gotten that sort of results that even without changing anything in menuconfig on the two runs, genkernel sometimes goes through completely, sometimes it just dies at modules_install... Weird...

----------

## Suicidal

 *Quote:*   

> There's this https://bugs.gentoo.org/show_bug.cgi?id=38274 bug posting that the gentlemen lists that he''ll be posting an update to genkernel 'in a few days':

 

That looks promising because the config that is stock in genkernel 3+ is utter crap imho it is 90% of most peoples problems. I had issues like this with the stock genkernel config then I used an old config and all the problems went away.

Still genkernel should not be sold as an easier way to configure the kernel, most people installing gentoo dont have another computer next to them so they can browse the forums for help.

----------

## allancairns

 *Suicidal wrote:*   

>  *Quote:*   There's this https://bugs.gentoo.org/show_bug.cgi?id=38274 bug posting that the gentlemen lists that he''ll be posting an update to genkernel 'in a few days': 
> 
> That looks promising because the config that is stock in genkernel 3+ is utter crap imho it is 90% of most peoples problems. I had issues like this with the stock genkernel config then I used an old config and all the problems went away.
> 
> Still genkernel should not be sold as an easier way to configure the kernel, most people installing gentoo dont have another computer next to them so they can browse the forums for help.

 

I'm sorry I must have misread that - did you say SHOULD NOT???   :Confused: 

I thought the whole point of genkernel was to take the pain out of sorting through the myriad of options in make menuconfig. When I first installed gentoo I used genkernel and was pleasantly surprised by how smooth things went. Now I'm upgrading to 2.6.1 (gentoo-dev-sources) and, after a few attempts at manual config, concluded I am still too much of a n00b and flew back to the open arms of genkernel. Now I find that genkernel ain't quite the forgiving soul it once was.

I am willing to give genkernel the benefit of the doubt because I am compiling a 2.6.1 kernel and anything that new is bound to have issues.

[Edit]Ok I give up. I've browsed through bugzilla and it's become clear there are some philosophical discussions going on about genkernel. Until Genkernel again reaches the level of 'out of the box'ness that it used to have I'll stick with my trusty old 2.4.20. Pity though - fluxbox under 2.6.1 was positively zipping along (although that may be because most of my services wouldn't load).

I am also looking to put Gentoo on my main box soon, using the Install guide. I will be interested to see whether I hit these same probs on the current 2.4 kernel.

[/Edit]

Cheers,

Allan

----------

## qeldroma

After a struggle with the initrd-image to work correctly i gave up and made one myself.

Isn't very hard, though. Just take one of the dozends of HowTos for bootable CDs, there is initrd mostly integrated.

And then, just make following script:

```
qeldroma@florian qeldroma $ cat /sbin/mksplash

#!/bin/bash

echo "This script adds the bootsplash under /etc/bootsplash/default."

if [ $1 ]; then

    SPLASH_PATH="/etc/bootsplash/default/config"

    SPLASH_APP="/sbin/splash -s -f"

    for RESOLUTION in [800x600 1024x768 1280x1024 1600x1200]; do

        if [ -f $SPLASH_PATH/bootsplash-$RESOLUTION.cfg ]; then

            $SPLASH_APP $SPLASH_PATH/bootsplash-$RESOLUTION.cfg >> $1

            echo "Applied Bootsplash for $RESOLUTION."

        fi

    done

else

    echo "No initrd-File specified."

fi

```

If you've got a symlink in /etc/bootsplash to the theme it should take, that should be all to do.

The parameter for this little script ist of course the initrd-file...Last edited by qeldroma on Tue Jan 27, 2004 1:04 am; edited 2 times in total

----------

## Suicidal

 *Quote:*   

> I'm sorry I must have misread that - did you say SHOULD NOT???

 

I feel with the nature of genkernel 3.0x+ that they should not sell it as an easier way for first time installers (in it's current state). If you browse the forums there are alot of posts from people having issues with it. It probably would have been better if it had not have been marked stable untill gentoo 2004 was released, so the on CD documentation would have been current. 

At the very least at the end of the ebuild it should ewarn the user to the /usr/share/genkernel/README for proper kernel & bootloader configuration.

----------

## allancairns

 *Suicidal wrote:*   

>  *Quote:*   I'm sorry I must have misread that - did you say SHOULD NOT??? 
> 
> I feel with the nature of genkernel 3.0x+ that they should not sell it as an easier way for first time installers (in it's current state). If you browse the forums there are alot of posts from people having issues with it. It probably would have been better if it had not have been marked stable untill gentoo 2004 was released, so the on CD documentation would have been current. 
> 
> At the very least at the end of the ebuild it should ewarn the user to the /usr/share/genkernel/README for proper kernel & bootloader configuration.

 

No argument there mate   :Very Happy: 

I think there is a place for an 'out of the box' default/auto kernel config for gentoo such as we saw in 1.8. This is an essential item to make gentoo more approachable for people using it for the first time. 

A number of people in these forums have argued against this on the basis that they don't want people who are not willing to learn to do it themselves. I am disappointed at the lack of vision this reveals. I am a recent convert to Gentoo and am delighted with what I found. I want to see Gentoo be the most successful distro it can be, and part of that is making it accessible to more than just the techno-geek segment. 

In addition, I have often seen Gentoo referred to as a meta-distro because of it's ability to be customised and tweaked ala Debian. One of the hallmarks of Debian's success (in my eyes) is the way people took a distro that is notorious for not being the friendliest to install and came up with stuff like Knoppix (the benchmark for ease of install). Is it wrong to dream of something similar in the Gentoo space (either in Gentoo itself or a Gentoo-based distro)?

Don't get me wrong - I do want to learn to compile my own kernel but it is not a priority right now. I am having fun (no really   :Smile:  ) right now getting apache2, php, mysql and phpmyadmin to place nicely and porting an ASP/VBScript web-based system I wrote over to PHP.

Cheers,

Allan

----------

## qeldroma

Well, i must agree. A tool that writes INOPERABEL initial ramdisks is far from beeing used by everyone, at my opinion.

I agree it has to be masked, OR this function has to be extra, so that advanced users only can try it.

----------

## jpalko

Does the new version of genkernel copy the .config file created during menuconfig to /usr/share/genkernel/{arch}/kernel-config-2.x or to /etc/kernels/config-{kernelversion} ?

Oh, well... https://bugs.gentoo.org/show_bug.cgi?id=39128

----------

## allancairns

ALRIGHT! Beta 8 of Genkernel 3.0.1 has been released with a MUCH better default config for x86. I ran it with the menuconfig option and checked all of the settings mentioned in this HOWTO and they were all correct OUT OF THE BOX! Ran the compile, install et al and the thing booted first time!

All is forgiven genkernel. Welcome home.

Now I can add cleaning out legacy alsa stuff to my todo list...

Cheers,

Allan

----------

## M@rijn

And what has to be the settings with lilo???

----------

## Trejkaz

I must say, last night was a hell of a time.  Thank the lords for work-provided internet.  Here's my journey, which I'm sure some of you have seen in part or in full.

 Ran "genkernel --config" and saw the menu.  Thinking it looked more or less the same other than the new options for how much do do, did a "genkernel --menuconfig all".

 Since I didn't put in the "--install" bit, it didn't install, but I rebooted anyway.

 Machine didn't reboot properly.  It came up with no networking, despite the 8139too.ko file existing in my modules directory.  Seems something must have installed afterall.  Looking at the kernel file it hadn't been updated since 10 Jan, so the modules must have been overwritten despite me not putting "--install" in!

 Tried to rebuild.  No loop, no build.  Catch-22 right there.  I don't remember the loopback device being needed to build the kernel... or was it always there and the bad config just highlighted it by yanking the loop module from the kernel?

 Off to search for documentation.  Rebooted in an earlier kernel, 2.6.0-gentoo-r2.  This one booted but nvidia.o wasn't present anymore.  Tried to "emerge nvidia-kernel" again but that failed "because the /usr/src/linux symlink wasn't present", yet it was, and I did make sure it was pointing at the right version!

 Decided to give up on getting XFree86 working and tried building a few more times, using 2.6.0-gentoo-r2 to build 2.6.1-gentoo.  No dice, every reboot the same eth0 issue despite the driver being configured in, despite it being present, despite the alias being there!  Trying to modprobe it, it said it was already in the kernel, yet eth0 still wouldn't come up!

 Gave up and hoped that I could find a fix today.  Hopefully that latest 3.0.1 beta works first go (I was on beta6) and the nightmares will be over.

----------

## TheBigBug

For anyone with the "root block device unspecified or not detected" error, in this thread Corw|n of Amber points out that the initrd from Genkernel doesn't have ReiserFS support.

So, if you (like me) have the error above, the options are:

1) To wait for a new genkerel

2) To create your own initrd

I personally want to create my own initrd, so I'll do some searching and when I find out how to create an initrd, I'll post again.

----------

## Trejkaz

3.0.1_beta8 indeed rocks.  It actually remembers the config from the previous run now... what a relief.

----------

## el_compa

Hi,

I can't seem to get bootsplash to emerge, thus I cannot emerge the latest genkernel-3.0.1-beta9. This is the error message, when I do emerge -U world (trying to emerge bootsplash):

>>> Unpacking bootsplash-0.6-r3.tar.bz2 to /var/tmp/portage/bootsplash-0.6-r3/work

>>> Source unpacked.

gcc -O2 -Wall   -c -o fbmngplay.o fbmngplay.c

gcc -O2 -Wall   -c -o messages.o messages.c

In file included from fbmngplay.c:18:

/usr/include/linux/fb.h:342: parse error before '*' token

/usr/include/linux/fb.h:345: parse error before "count"

make: *** [fbmngplay.o] Error 1

make: *** Waiting for unfinished jobs....

!!! ERROR: media-gfx/bootsplash-0.6-r3 failed.

!!! Function src_compile, Line 25, Exitcode 2

!!! (no error message)

I'm running gentoo-dev-sources, uname -a:

Linux xyu 2.6.2-rc1-gentoo #1 Fri Jan 30 16:49:28 CST 2004 i686 Intel(R) Celeron(R) CPU 2.20GHz GenuineIntel GNU/Linux

If someone can help, I'd greatly appreciate it!

Thanks!

Mario

----------

## TheBigBug

 *M@rijn wrote:*   

> And what has to be the settings with lilo???

 

You can find 'm here in the gentoo handbook.

Has anyone figured out yet how to make an initrd? I know Redhat has a tool for it, mkinitrd, which can be emerged. But I haven't had time to look any further.

----------

## XiuX

nice

----------

## Suicidal

 *Quote:*   

> For anyone with the "root block device unspecified or not detected" error, in this thread Corw|n of Amber points out that the initrd from Genkernel doesn't have ReiserFS support. 

 

It doesn't really matter if you compile reiserfs support into the kernel. Both my boot and root partitions are reiserFS and genkernel works fine with them.

----------

## thc013

great emerged new genkernel beta 9 did genkernel all compiled kernel and now in my /boot folder everything is gone only the new kernel en intrd are there all my old kernels and my grub is gone

why ?

----------

## scotthep

Anybody know of a good 2.6 kernel Guide for manaul configuration?  Because after reading this thread I've decided genkernel is a "no go"

I was hoping to find a more sure fire way to get kernel 2.6 up and running.  I've always done manual configs in the past and didn't have many problems.  But the last few times I did a manual config on 2.6 I was having all sorts of problems (not major, but annoying).

----------

## brad_mssw

 *Quote:*   

> great emerged new genkernel beta 9 did genkernel all compiled kernel and now in my /boot folder everything is gone only the new kernel en intrd are there all my old kernels and my grub is gone
> 
> why ?

 

easy, you must    mount /boot   before running genkernel.  What you're

looking at is a kernel and initrd in an unmounted /boot which would reside

in your root instead... user error.

----------

## Trejkaz

 *scotthep wrote:*   

> Anybody know of a good 2.6 kernel Guide for manaul configuration?  Because after reading this thread I've decided genkernel is a "no go"
> 
> I was hoping to find a more sure fire way to get kernel 2.6 up and running.  I've always done manual configs in the past and didn't have many problems.  But the last few times I did a manual config on 2.6 I was having all sorts of problems (not major, but annoying).

 

Actually since genkernel with --menuconfig still invokes the same configuration you would be using normally, you won't gain much out of not using it, except perhaps from it building in a slightly different fashion, and maybe having to do more yourself.

genkernel-3.0.1_beta8 seems rock solid to me, it saves the configuration each go, installs properly provided /boot is mounted before you start, and so forth.  Granted, it would probably be nice if the default settings made it behave exactly like the old version, but it can be rigged up to behave exactly the same (only it doesn't mount /boot for you, the old version did, I'm sure of it.)

----------

## mlsfit138

 *s0m3body wrote:*   

>  *mhodak wrote:*   
> 
> BTW, I also have root partition mounted twice. 
> 
> are you sure ? 
> ...

 

has this been verified?  are we all sure this is safe?  df shows / mounted twice on my system too.

----------

## mhodak

[quote="mlsfit138"] *s0m3body wrote:*   

> 
> 
> has this been verified?  are we all sure this is safe?  df shows / mounted twice on my system too.

 

It is verified, look at the bug thread:

https://bugs.gentoo.org/show_bug.cgi?id=38360

It should be harmless but there is no fix as of yet.

----------

## Dasein

If genkernel creates an initrd with the built in gentoo bootsplash, how do change bootsplash images?

I'll be a little more specific: I've taken the normal steps to change bootsplash themes, and succeeded in getting the theme to change after a certain point in the boot process.  However, the original gentoo bootsplash always shows up first, and lasts through the majority of the boot process.  I'm assuming that this is because the actual configuration file and graphic is integrated into the initrd file. (I used genkernel)

Now, every set of directions for changing bootsplash images I can find directs users to replace their initrd file.  However, I can't do that without getting a kernel panic-- "VFS unable to mount root fs on ram0".

Is there a way around this, or do I pretty much need to rebuild the kernel manually to get the bootsplash I want?

----------

## misao

I've been looking into doing this too. If necessary, I'll go back to non-genkernel compiling, but, I've gotten used to genkernel...

Anyways, someone earlier mentioned a RH tool mkinitrd, so I'll give that a try this evening and see how it pans out.

-misao

----------

