[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#607509: initramfs-tools: Does not work if root is on an AOE device



Package: initramfs-tools
Version: 0.98.6
Severity: important



-- Package-specific info:
-- initramfs sizes
-rw-r--r-- 1 root root 2.2M Dec 19 09:50 /boot/initrd.img-2.6.32-5-kirkwood
-- /proc/cmdline
console=ttyS0,115200 root=/dev/etherd/e0.1p1

-- resume
RESUME=UUID=501b84a0-eb7b-464d-895a-23e666058aa1
-- /proc/filesystems
	ext3
	ext2

-- lsmod
Module                  Size  Used by
ipv6                  253826  26 
nfsd                  247720  2 
exportfs                3000  1 nfsd
nfs                   270232  0 
lockd                  63145  2 nfsd,nfs
fscache                34105  1 nfs
nfs_acl                 2277  2 nfsd,nfs
auth_rpcgss            33318  2 nfsd,nfs
sunrpc                171068  6 nfsd,nfs,lockd,nfs_acl,auth_rpcgss
ext2                   55411  1 
loop                   11419  0 
mmc_block               7658  2 
ehci_hcd               35579  0 
hmac                    2475  0 
usbcore               122183  2 ehci_hcd
sha1_generic            1717  0 
mvsdio                  5318  0 
mv_cesa                 9262  0 
nls_base                5367  1 usbcore
mmc_core               50206  2 mmc_block,mvsdio
aes_generic            32820  1 mv_cesa
ext3                  110992  1 
jbd                    37434  1 ext3
mbcache                 4860  2 ext2,ext3
aoe                    21063  3 
mv643xx_eth            22562  0 
libphy                 14836  1 mv643xx_eth
inet_lro                5060  1 mv643xx_eth

-- /etc/initramfs-tools/modules

-- /etc/kernel-img.conf
# Kernel image management overrides
# See kernel-img.conf(5) for details
do_symlinks = yes
do_bootloader = no
do_initrd = yes
link_in_boot = yes

-- /etc/initramfs-tools/initramfs.conf
MODULES=most
BUSYBOX=y
KEYMAP=n
COMPRESS=gzip
BOOT=local
DEVICE=
NFSROOT=auto

-- /etc/initramfs-tools/update-initramfs.conf
update_initramfs=yes
backup_initramfs=no

-- mkinitramfs hooks
/etc/initramfs-tools/hooks/:
aoetools

/usr/share/initramfs-tools/hooks:
busybox
flash_kernel_set_root
keymap
klibc
thermal
udev


-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: armel (armv5tel)

Kernel: Linux 2.6.32-5-kirkwood
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages initramfs-tools depends on:
ii  cpio                          2.11-4     GNU cpio -- a program to manage ar
ii  findutils                     4.4.2-1+b1 utilities for finding files--find,
ii  klibc-utils                   1.5.20-1   small utilities built with klibc f
ii  module-init-tools             3.12-1     tools for managing Linux kernel mo
ii  udev                          164-3      /dev/ and hotplug management daemo

Versions of packages initramfs-tools recommends:
ii  busybox                       1:1.17.1-8 Tiny utilities for small and embed

Versions of packages initramfs-tools suggests:
ii  bash-completion               1:1.2-3    programmable completion for the ba

-- no debconf information
Problem Description:
root@squeezeserver:/usr/share/initramfs-tools# mkinitramfs -o /tmp/foo
mkinitramfs: for root /dev/etherd/e0.1p1 missing etherd/e /sys/block/ entry
mkinitramfs: workaround is MODULES=most
mkinitramfs: Error please report the bug

Fix:
--- /usr/share/initramfs-tools/hook-functions_orig	2010-12-19 10:24:44.000000000 +0100
+++ /usr/share/initramfs-tools/hook-functions	2010-12-19 09:50:16.000000000 +0100
@@ -338,6 +338,10 @@
 		block="rd!c${root#/dev/rd/c}"
 		block=${block%%p[0-9]*}
         # etherd device
+        elif [ "${root#/dev/etherd/}" != "${root}" ]; then
+                block=${root#/dev/etherd/*}
+                block="etherd!${block%p*}"
+
 	# classical root device
 	else
 		block=${root#/dev/}



Reply to: