# [solved] Kernel 2.6.22 in VMWare 5.5 - Kernel panic not sync

## xhi2018

Hallo,

ich habe eine gentoo Installation in einer VMWare. Heute hab ich zum ersten mal versucht einen neuen Kernel (Version 2.6.22 ) zu übersetzen. (newbie sozusagen)

Mit "make oldconfig" habe ich die config vom Kernel Version 2.6.20 übernommen. Eigentlich habe ich dabei nichts großes in der Konfiguration der Version 2.6.22 geändert - zumindes hatte ich das nicht vor.   :Smile: 

Nun kommt es beim booten des 2.6.22 Kernels zu dieser Kernel panic:

```
...

VFS: Cannot open root device "sda1" or unknown-block (0,0)

Please append a correct "root=" boot option; here are the available

partitions:

1600     4194302  hdc driver: ide-cdrom

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-

block(0,0)

...
```

Der 2.6.20 Kernel bootet ohne Probleme.

Hier meine /boot/grub/menu.lst:

```
root@box ~ $ cat /boot/grub/menu.lst

#

default 1

timeout 5

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

title=Gentoo LINUX 2.6.22

root (hd0,0)

kernel /boot/vmlinuz-2.6.22-gentoo-r2     root=/dev/sda1

title=Gentoo LINUX 2.6.20

root (hd0,0)

kernel /boot/vmlinuz-2.6.20-gentoo-r8     root=/dev/sda1

# EoF
```

hier meine /etc/fstab:

```
root@box ~ $ cat /etc/fstab

#

/dev/sda1        /                   ext3       defaults               0    1

/dev/sda2        none            swap       sw                      0    0

# EoF
```

lspci gibt mir das da:

```
root@box ~ $  lspci

00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 01)

00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 01)

00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 08)

00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)

00:07.2 USB Controller: Intel Corporation 82371AB/EB/MB PIIX4 USB

00:07.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)

00:0f.0 VGA compatible controller: VMware Inc [VMware SVGA II] PCI Display Adapter

00:10.0 SCSI storage controller: LSI Logic / Symbios Logic 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (rev 01)

00:11.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rev 10)

00:12.0 Multimedia audio controller: Ensoniq ES1371 [AudioPCI-97] (rev 02)
```

Der diff zwischen den Kernel .config Dateien der Versionen 2.6.20 und 2.6.22 ist etwas größer, deshalb hab ich diesen mal nicht angefügt. 

Über dieses Forum hab ich unter anderem diese Doku "boot:unable_to_mount_root_fs" gefunden - doch leider kann ich meinen Fehler nicht finden. Kann mir jemand einen Tipp geben auf was ich besonders achten muß - bzw. was ich vermutlich falsch mache ...

Gruß und vielen Dank für die Tipps&Hilfe!Last edited by xhi2018 on Wed Sep 26, 2007 4:54 pm; edited 1 time in total

----------

## Keruskerfuerst

Was enthält denn /boot?

----------

## misterjack

 *xhi2018 wrote:*   

> 
> 
> ```
> ...
> 
> ...

 

Sieht ganz stark danach aus, als ob im Kernel der Support für den SCSI Controller nicht fest einkompiliert ist. Ohne Kernel-Config kann man das schlecht sagen  :Smile: 

----------

## xhi2018

 *Keruskerfuerst wrote:*   

> Was enthält denn /boot?

 

```
root@box ~ $ ls -lF /boot/

lrwxrwxrwx 1 root root      27 Sep 18 21:02 System.map -> System.map-2.6.22-gentoo-r2

-rw-r--r-- 1 root root  862218 Sep 18 15:48 System.map-2.6.20-gentoo-r8

-rw-r--r-- 1 root root  898507 Sep 18 21:02 System.map-2.6.22-gentoo-r2

lrwxrwxrwx 1 root root       1 May 16 20:40 boot -> ./

lrwxrwxrwx 1 root root      23 Sep 18 21:02 config -> config-2.6.22-gentoo-r2

-rw-r--r-- 1 root root   34368 Sep 18 15:48 config-2.6.20-gentoo-r8

-rw-r--r-- 1 root root   35659 Sep 18 21:02 config-2.6.22-gentoo-r2

drwxr-xr-x 2 root root    4096 Sep 18 20:26 grub/

lrwxrwxrwx 1 root root      24 Sep 18 21:02 vmlinuz -> vmlinuz-2.6.22-gentoo-r2

-rw-r--r-- 1 root root 2124080 Sep 18 15:48 vmlinuz-2.6.20-gentoo-r8

-rw-r--r-- 1 root root 2180080 Sep 18 21:02 vmlinuz-2.6.22-gentoo-r2

```

Was könnte hier die Ursache für meinen Fehler sein? 

- dass ich den falschen Kernel in die menu.lst von grub eingetragen habe - aber dann dürfte der Kernel doch gar nicht booten, oder?

Ich frage nur, damit ich nicht dumm sterben muß   :Wink: 

Gruß & Danke!

----------

## himpierre

 *Quote:*   

> Ich frage nur, damit ich nicht dumm sterben muß

 

Den entscheidenden Hinweis hat Dir schon misterjack gegeben. Dein Kernel ist unvollständig.

----------

## xhi2018

Hallo,

 *himpierre wrote:*   

>  *Quote:*   Ich frage nur, damit ich nicht dumm sterben muß 
> 
> Den entscheidenden Hinweis hat Dir schon misterjack gegeben. Dein Kernel ist unvollständig.

 

ja - das denke ich mir auch - aber leider kann ich meinen Fehler nicht finden   :Confused:  Vielleicht hat ja jemand einen Tipp wonach ich schauen könnte. 

Die im de.gentoo-wiki.com Gentoo_in_VMware angegebenen Treiber und Einstellungen habe ich im Kernel eincompiliert:

```

root@box ~ $ grep ^CONFIG_SCSI .config

CONFIG_SCSI=y

CONFIG_SCSI_NETLINK=y

CONFIG_SCSI_WAIT_SCAN=m

CONFIG_SCSI_SPI_ATTRS=y

CONFIG_SCSI_FC_ATTRS=y

CONFIG_SCSI_SAS_ATTRS=y

CONFIG_SCSI_SYM53C8XX_2=y

CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1

CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16

CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64

CONFIG_SCSI_SYM53C8XX_MMIO=y
```

aber wie gesagt - es kommt zu diesem Fehler:

```

...

VFS: Cannot open root device "sda1" or unknown-block (0,0)

Please append a correct "root=" boot option; here are the available

partitions:

1600     4194302  hdc driver: ide-cdrom

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-

block(0,0)

...
```

Wie gesagt - ich mach' das zum ersten mal  :Embarassed: 

Deshalb vorab vielen Dank für die Hilfe und Eure Geduld.

[Update:]

Ich hab' noch etwas gesucht und dieses hier gefunden: 

Anscheinend handelt es sich bei mir um das selbe/ähnliche Problem das hier im der VMware Community behandelt wird:

VMware 5.5.4 + Kernel 2.6.21.3: LSI SCSI Problem

----------

## xhi2018

Es gibt wohl 2 Möglichkeiten wie das Problem gelöst werden kann. Auf jeden Fall bootet jetzt die Kernel Version 2.6.22 in meiner VirtualMachine Version 5.5.4.

```
root@box ~ $ uname -a

... 2.6.22-gentoo-r2 ...
```

 In diesem VMWare Community Eintrag - VMware 5.5.4 + Kernel 2.6.21.3: LSI SCSI Problem hab ich die Lösung gefunden.

Die erste Möglichkeit:

In der Konfiguration der Virtual Machine (das ist die *.vmx-Datei) den SCSI-Controller ändern. Von:

```
scsi0.virtualDev = "lsilogic"
```

nach

```
scsi0.virtualDev = "buslogic"
```

und in den Kernel muß der BusLogic Treiber fest eincompiliert werden:

```
root@box ~ $ diff .config .config.old

...

640,641c640

< CONFIG_SCSI_BUSLOGIC=y

< # CONFIG_SCSI_OMIT_FLASHPOINT is not set

---

> # CONFIG_SCSI_BUSLOGIC is not set
```

Beim ersten Starten mit der neuen VMWare Konfiguration erscheint eine Hinweismeldung wegen der geänderte Konfiguration lsilogic => buslogic. Diese hab ich bestätigt und der Kernel bootet erfolgreich.

Die zweite Möglichkeit ist, den Kernel zu patchen.

Dabei ist die 

```
/usr/src/linux-2.6.22-gentoo-r2/drivers/message/fusion/mptbase.c
```

 zu patchen:

```
@@ -2564,6 +2564,16 @@

pfacts->IOCStatus = le16_to_cpu(pfacts->IOCStatus);

pfacts->IOCLogInfo = le32_to_cpu(pfacts->IOCLogInfo);

pfacts->MaxDevices = le16_to_cpu(pfacts->MaxDevices);

+ /*

+ * VMware emulation is broken, its PortFact's MaxDevices reports value

+ * programmed by IOC Init, so if you program IOC Init to 256 (which is 0,

+ * as that field is only 8 bit), it reports back 0 in port facts, instead

+ * of 256... And unfortunately using 256 triggers another bug in the

+ * code (parallel SCSI can have only 16 devices).

+ */

+ if (pfacts->MaxDevices == 0) {

+ pfacts->MaxDevices = 16;

+ }

pfacts->PortSCSIID = le16_to_cpu(pfacts->PortSCSIID);

pfacts->ProtocolFlags = le16_to_cpu(pfacts->ProtocolFlags);

pfacts->MaxPostedCmdBuffers = le16_to_cpu(pfacts->MaxPostedCmdBuffers);
```

Danach den Kernel nochmals neu übersetzen und gut ist. Gegenüber der ersten Möglichkeit sind weder weitere Treiber im Kernel erforderlich noch ist die VMWare Konfiguration zu ändern.

auf jeden Fall  ich bin glücklich - suba!!  :Very Happy: Last edited by xhi2018 on Thu Feb 14, 2008 2:25 pm; edited 3 times in total

----------

## stth

hatte das gleiche problem beim update.. da war es aber ein fehlender oder überflüssiger sata treiber

device driver -> ATA/ATAPI/MFM/RLL support -> komplett raus

Serial ATA (prod) and Parallel ATA (experimental) drivers -> passende sata & pata (für cd) treiber auswählen.

ging bei mir. (21-r4 auf 22-r5)

----------

## xhi2018

Danke für Deine Antwort und den Hinweis - ich hab bei mir nun auch die Treiber

```
    Device Drivers  --->

< > ATA/ATAPI/MFM/RLL support  --->
```

komplett aus dem Kernel genommen.

Mich würde noch interessieren, wie Du das mit dem CD-ROM Laufwerk gemacht hast.

Wie hast du herausgefundenen, welche Treiber Du für das CD-ROM Laufwerk brauchst?

Welche Einstellungen hast Du in den VMWare settings bzgl. dem CD-ROM Laufwerk?

Gruß & Danke für Deine Antwort!

----------

## xhi2018

Hallo,

genau das selbe hab ich beim Update von linux-2.6.22-gentoo-r2 auf linux-2.6.23-gentoo-r8. 

Nachdem ich den Kernel wie oben unter "die zweite Möglichkeit" beschreiben ge-patched habe, ist alles wieder wunderbar!   :Cool: 

Gruß

----------

## ubi17

Super, die Lösung ist Gold wert!!! Danke

Seit letztem Jahr schieb ich schon das Kernel-Update vor mir her weil ich die Meise bekommen hab mit dem Spielchen

1. google -> neuer lösungsvorschlag

2. reboot -> panic

3. weiter bei 1.

Aber jetzt läuft ja zum Glück 2.6.23-gentoo-r9   :Very Happy: 

----------

## xhi2018

Hallo,

 *ubi17 wrote:*   

> Super, die Lösung ist Gold wert!!! Danke

 

...

 *ubi17 wrote:*   

> Aber jetzt läuft ja zum Glück 2.6.23-gentoo-r9  

 

freut mich wenn es dir hilft   :Cool: 

Ich selber hab auch noch das eine oder andere Problem mit meiner gentoo-VM unter VM-Ware Workstation 5.5.4 (WIN XP SP2). Das nervigste ist, dass ich die VM Ware Tools nicht installieren kann. Die Installation nach der Gentoo Linux Wiki Beschreibung Gentoo in VMWare scheitert schon daran, dass ich auf das virtuelle CD-ROM Laufwerk nicht zugreifen kann.   :Crying or Very sad: 

Das Device /dev/cdrom gibt es bei mir nicht.  Vielleicht hast Du ja noch jemand einen Tipp für mich.

Gruß & vielen Dank!

----------

