Kernel panic after update 2.6.32-29 because of trailing dots in /boot/initrd file
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
This is on Ubuntu Lucid 10.04 LTS, 32-bit version.
The problem occured after update to 2.6.32-29, but this could be a bug in grub instead.
Symptom:
- Kernel panic after update to 2.6.32-29
- 2.6.32-28 still boot fines
Setup:
- /boot on a separate partition (reiserfs)
- grub 1.98-1ubuntu10
Cause:
- file /boot/initrd.
Details:
Update manager installed the latest kernel, 2.6.32-
[....] kernel panic - not syncing: VFS - Unable to mount root FS on unknown block
Booting 2.6.32-28 worked fine. Things tried to no avail:
- Booting 2.6.32-29 again.
- Uninstalling 2.6.32-29 headers + image (dpkg -r --force-all), and updating again.
- Reinstalling again with synaptic this time, selecting all 2.6.32-29 packages, and ask for reinstall.
- Refreshing grub menu with sudo update-grub.
- Analyse boot_info_script. Nothing special. In particular both 32-28 and 32-29 entries are pretty much the same
- Unpack & compare the content of the initrd files for 32-28 and 32-29 (looking for missing reiserfs module... but that would be really silly). Nothing special, they are exactly the same except module directory name
So I decided to go through grub command-line, and typed:
init (hd0,3)
linux /vmlinuz-
initrd /initrd <tab> --> pressing <tab> actually returned 3 files:
initrd.
initrd.
initrd.
Please note the *TRAILING DOTS* on the first line.
Now if I boot normally 2.6.32-28, there are no such trailing dots on this file:
$ ls /boot
initrd.
initrd.
initrd.
At this stage, the following workarounds work:
# Rename the initrd file into something different
$ sudo mv /boot/initrd.
$ sudo vi /boot/grub/grub.cfg
# Edit line
# initrd /initrd.
# into
# initrd /foobar
--- OR ---
# Add the 2 trailing dots in grub.cfg
$ sudo vi /boot/grub/grub.cfg
# Edit line
# initrd /initrd.
# into
# initrd /initrd.
What does *NOT* work (but is a complete mystery to me):
# Rename initrd into something and back to original name
$ cd /boot
$ sudo mv initrd.
$ sudo mv foobar initrd.
If I do this, the 2 trailing dots are back visible in grub
ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: linux-image-
Regression: Yes
Reproducible: Yes
ProcVersionSign
Uname: Linux 2.6.32-
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.21.
Architecture: i386
ArecordDevices:
**** List of CAPTURE Hardware Devices ****
card 0: Intel [HDA Intel], device 0: STAC92xx Analog [STAC92xx Analog]
Subdevices: 2/2
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
AudioDevicesInUse:
USER PID ACCESS COMMAND
/dev/snd/
/dev/snd/pcmC0D0p: beq06659 2283 F...m pulseaudio
CRDA: Error: [Errno 2] No such file or directory
Card0.Amixer.info:
Card hw:0 'Intel'/'HDA Intel at 0xf6adc000 irq 21'
Mixer name : 'Intel G45 DEVCTG'
Components : 'HDA:111d76b2,
Controls : 24
Simple ctrls : 15
Date: Thu Mar 3 13:39:12 2011
HibernationDevice: RESUME=
MachineType: Dell Inc. Latitude E6500
PccardctlIdent:
Socket 0:
no product info available
PccardctlStatus:
Socket 0:
no card
ProcCmdLine: BOOT_IMAGE=
ProcEnviron:
PATH=(custom, user)
LANG=en_US.utf8
SHELL=/bin/bash
RelatedPackageV
SourcePackage: linux
dmi.bios.date: 12/21/2009
dmi.bios.vendor: Dell Inc.
dmi.bios.version: A19
dmi.board.name: 0W612R
dmi.board.vendor: Dell Inc.
dmi.chassis.type: 8
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.
dmi.product.name: Latitude E6500
dmi.sys.vendor: Dell Inc.
Changed in linux (Ubuntu): | |
status: | New → Confirmed |
Ditto on 10.04.1 amd64
I now boot into 2.6.32-28-generic
David