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

Bug#566295: marked as done (initramfs-tools: Deviation from Documentation/filesystems/nfs/nfsroot.txt WRT multiple net devs)



Your message dated Sat, 29 May 2010 04:17:07 +0000
with message-id <E1OIDTv-0002KG-V7@ries.debian.org>
and subject line Bug#566295: fixed in initramfs-tools 0.95
has caused the Debian Bug report #566295,
regarding initramfs-tools: Deviation from Documentation/filesystems/nfs/nfsroot.txt WRT multiple net devs
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
566295: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=566295
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: initramfs-tools
Version: 0.93.4
Severity: normal
Tags: patch

/usr/share/initramfs-tools/scripts/functions attempts to follow the
semantics described in Documentation/filesystems/nfs/nfsroot.txt with
respect to IP autoconfiguration, however a significant departure from
the behaviour is that nfsroot.txt says:

<device>      Name of network device to use.

     Default: If the host only has one device, it is used.
     Otherwise the device is determined using
     autoconfiguration. This is done by sending
     autoconfiguration requests out of all devices,
     and using the device that received the first reply.


initramfs-tools currently requires a device to be hard-coded, but this
is not much use if the network device is not known ahead of time.  If
the device specified in either /etc/initramfs-tools/initramfs.conf or
on the ip=xxx kernel command line.

Moreover a combination of the kernel commandline and the contents of
/etc/initramfs-tools/initramfs.conf is currently used which can be
misleading.

With the attached patch, it is possible to specify either:

DEVICE="all" or DEVICE="" in the /etc/initramfs-tools/initramfs.conf

The patch is against lenny, I've not had a chance to test it on sid but
it looks like it should apply (modulo the change of the relevant env
variable).

Many Thanks,

Tim.

-- Package-specific info:
-- /proc/cmdline
root=/dev/md0 ro console=tty0 

-- /proc/filesystems
	ext3
	vfat
	fuseblk

-- lsmod
Module                  Size  Used by
ftdi_sio               57736  0 
pl2303                 21508  0 
ark3116                16004  0 
usbserial              36592  3 ftdi_sio,pl2303,ark3116
dm_hp_sw                7168  0 
dm_multipath           21392  1 dm_hp_sw
dm_mirror              20608  0 
dm_log                 13956  1 dm_mirror
battery                16904  0 
usbhid                 45920  0 
hid                    41792  1 usbhid
ff_memless              9224  1 usbhid
fuse                   54176  1 
enclosure              13632  0 
ipt_REDIRECT            6272  1 
nls_utf8                6272  0 
nls_cp437              11136  0 
vfat                   14976  0 
fat                    51128  1 vfat
nls_base               12932  4 nls_utf8,nls_cp437,vfat,fat
radeon                133920  2 
drm                    91360  3 radeon
vzethdev               14720  0 
vznetdev               24456  1 
simfs                   8944  1 
vzrst                 122920  0 
vzcpt                 106424  0 
tun                    15492  2 vzrst,vzcpt
vzdquota               42740  1 [permanent]
vzmon                  31376  5 vzethdev,vznetdev,vzrst,vzcpt
vzdev                   7568  4 vzethdev,vznetdev,vzdquota,vzmon
xt_length               6400  0 
ipt_ttl                 6144  0 
xt_tcpmss               6656  0 
xt_dscp                 7168  0 
iTCO_wdt               15696  1 
authenc                 9984  2 
esp4                   10880  2 
aead                   11904  2 authenc,esp4
xfrm4_mode_tunnel       6912  4 
deflate                 7424  0 
zlib_deflate           24088  1 deflate
zlib_inflate           18944  1 deflate
ctr                     8832  0 
twofish                11136  0 
twofish_common         18560  1 twofish
camellia               25216  0 
serpent                23296  0 
blowfish               13056  0 
des_generic            21376  0 
cbc                     7936  2 
aes_x86_64             12416  2 
aes_generic            32552  1 aes_x86_64
xcbc                    8968  0 
sha256_generic         13696  0 
sha1_generic            6912  0 
crypto_null             7680  2 
af_key                 32280  0 
xt_tcpudp               7680  88 
xt_DSCP                 7808  34 
ipt_MASQUERADE          6528  2 
iptable_nat            11652  1 
nf_nat_ftp              7296  0 
nf_nat                 22548  4 ipt_REDIRECT,ipt_MASQUERADE,iptable_nat,nf_nat_ftp
xt_TCPMSS               8576  3 
ipt_LOG                10372  46 
ipt_REJECT              7552  0 
iptable_mangle          8704  1 
iptable_filter          8320  1 
xt_multiport            7424  0 
xt_state                6656  13 
xt_limit                7172  50 
xt_conntrack            8704  0 
nf_conntrack_ftp       12728  1 nf_nat_ftp
nf_conntrack_ipv4      24352  16 iptable_nat,nf_nat
nf_conntrack           82688  7 iptable_nat,nf_nat_ftp,nf_nat,xt_state,xt_conntrack,nf_conntrack_ftp,nf_conntrack_ipv4
ip_tables              21776  3 iptable_nat,iptable_mangle,iptable_filter
x_tables               25736  17 ipt_REDIRECT,xt_length,ipt_ttl,xt_tcpmss,xt_dscp,xt_tcpudp,xt_DSCP,ipt_MASQUERADE,iptable_nat,xt_TCPMSS,ipt_LOG,ipt_REJECT,xt_multiport,xt_state,xt_limit,xt_conntrack,ip_tables
nfs                   252336  1 
lockd                  70448  1 nfs
nfs_acl                 7552  1 nfs
sunrpc                202216  11 nfs,lockd,nfs_acl
ipv6                  296256  79 vzrst,vzcpt,vzmon
bridge                 54952  0 
loop                   64148  0 
dm_crypt               17032  0 
crypto_blkcipher       21636  7 authenc,ctr,cbc,crypto_null,dm_crypt
snd_hda_intel         436440  4 
snd_pcm_oss            41760  0 
snd_mixer_oss          18816  1 snd_pcm_oss
snd_pcm                81800  3 snd_hda_intel,snd_pcm_oss
snd_seq_dummy           7428  0 
snd_seq_oss            33280  0 
button                 11680  0 
snd_seq_midi           11072  0 
snd_rawmidi            26784  1 snd_seq_midi
snd_seq_midi_event     11904  2 snd_seq_oss,snd_seq_midi
snd_seq                54304  6 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_seq_midi_event
snd_timer              25744  3 snd_pcm,snd_seq
snd_seq_device         11668  5 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_rawmidi,snd_seq
snd                    63688  15 snd_hda_intel,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_seq_oss,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
pcspkr                  7040  0 
i2c_i801               13596  0 
i2c_core               27936  1 i2c_i801
joydev                 14848  0 
soundcore              12064  1 snd
snd_page_alloc         13072  2 snd_hda_intel,snd_pcm
evdev                  14208  5 
ext3                  124688  3 
jbd                    51240  1 ext3
mbcache                12804  1 ext3
dm_mod                 58864  16 dm_multipath,dm_mirror,dm_log,dm_crypt
raid1                  23936  3 
md_mod                 79908  4 raid1
ide_disk               16512  9 
ata_generic            10116  0 
ide_pci_generic         9220  0 [permanent]
uhci_hcd               25760  0 
ata_piix               22660  0 
libata                165600  2 ata_generic,ata_piix
scsi_mod              160888  2 dm_hp_sw,libata
dock                   14112  1 libata
tulip                  54048  0 
it821x                 11140  0 [permanent]
ide_core              128156  3 ide_disk,ide_pci_generic,it821x
r8169                  31492  0 
ehci_hcd               35980  0 
intel_agp              31856  0 
thermal                22816  1 
processor              42304  1 thermal
fan                     9352  1 
thermal_sys            17728  3 thermal,processor,fan

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

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

-- /etc/crypttab
# <target name>	<source device>		<key file>	<options>
cryptvz1	/dev/ermintrude/lukstest /keysource/keymaterial luks,noauto
#cryptswap	/dev/md1		/dev/urandom	swap,cipher=aes-cbc-essiv:sha256,size=256,hash=sha256


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

Kernel: Linux 2.6.26-2-openvz-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages initramfs-tools depends on:
ii  cpio                          2.10-1     GNU cpio -- a program to manage ar
ii  findutils                     4.4.2-1    utilities for finding files--find,
ii  klibc-utils                   1.5.15-1   small utilities built with klibc f
ii  module-init-tools             3.11-1     tools for managing Linux kernel mo
ii  udev                          149-2      /dev/ and hotplug management daemo

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

initramfs-tools suggests no packages.

-- no debconf information
--- initramfs-tools-0.93.4/conf/initramfs.conf.old	2010-01-22 17:52:02.000000000 +0000
+++ initramfs-tools-0.93.4/conf/initramfs.conf	2010-01-22 17:54:55.000000000 +0000
@@ -52,10 +52,14 @@
 #
 # DEVICE: ...
 #
-# Specify the network interface, like eth0
+# Hard code a device for autoconfiguration.  If the empty
+# string, or the word "all" then autoconfiguration will occur
+# on all devices, and the first reply will be used.  May be
+# overridden using the "ip=..." argument as per the Linux kernel
+# Documentation/filesystems/nfs/nfsroot.txt
 #
 
-DEVICE=eth0
+DEVICE=all
 
 #
 # NFSROOT: [ auto | HOST:MOUNT ]
--- lenny/initramfs-tools/scripts/functions.orig	2009-01-07 14:14:37.000000000 +0000
+++ lenny/initramfs-tools/scripts/functions	2010-01-22 16:37:26.000000000 +0000
@@ -269,10 +269,10 @@
 		;;
 	""|on|any)
 		# Bring up device
-		ipconfig -t 180 ${DEVICE}
+		ipconfig -t 180 "${DEVICE}"
 		;;
 	dhcp|bootp|rarp|both)
-		ipconfig -t 180 -c ${IPOPTS} -d ${DEVICE}
+		ipconfig -t 180 -c ${IPOPTS} -d "${DEVICE}"
 		;;
 	*)
 		ipconfig -t 180 -d $IPOPTS
@@ -292,11 +292,12 @@
 	esac
 
 	# source ipconfig output
-	if [ -n "${DEVICE}" ]; then
+	if [ -n "${DEVICE}" ] && [ "${DEVICE}" != "all" ]; then
 		# source specific bootdevice
 		. /tmp/net-${DEVICE}.conf
 	else
-		# source any interface as not exaclty specified
+		# source any interface...
+		# ipconfig should have quit after first response
 		. /tmp/net-*.conf
 	fi
 }
--- initramfs-tools-0.93.4/initramfs.conf.5.orig	2010-01-22 17:45:51.000000000 +0000
+++ initramfs-tools-0.93.4/initramfs.conf.5	2010-01-22 18:11:43.000000000 +0000
@@ -57,7 +57,20 @@
 
 .TP
 \fB DEVICE
-Specifies the network interface, like eth0.
+Specifies the network interface which should be used during IP configuration.
+This can be overridden by arguments supplied on the kernel command line using
+the 'ip=...' argument as described in
+\fIDocumentation/filesystems/nfs/nfsroot.txt\fP from the Linux kernel
+documentation.
+
+If this is set to the empty string, or the value "all" i.e.
+\fIDEVICE\fP=\fI"all"\fP then autoconfiguration will be carried out on all
+network interfaces, and only the first reply will be used.
+
+Note that the network devices will have been renamed as specified in
+\fI/etc/udev/rules.d/70-persistent-net.rules\fP prior to autoconfiguration,
+and that a copy of this file (as it was at the time that
+update-initramfs/mkinitramfs was executed) will be included in the initramfs.
 
 .TP
 \fB ROOT

--- End Message ---
--- Begin Message ---
Source: initramfs-tools
Source-Version: 0.95

We believe that the bug you reported is fixed in the latest version of
initramfs-tools, which is due to be installed in the Debian FTP archive:

initramfs-tools_0.95.dsc
  to main/i/initramfs-tools/initramfs-tools_0.95.dsc
initramfs-tools_0.95.tar.gz
  to main/i/initramfs-tools/initramfs-tools_0.95.tar.gz
initramfs-tools_0.95_all.deb
  to main/i/initramfs-tools/initramfs-tools_0.95_all.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 566295@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
maximilian attems <maks@debian.org> (supplier of updated initramfs-tools package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Fri, 28 May 2010 17:22:56 -0700
Source: initramfs-tools
Binary: initramfs-tools
Architecture: source all
Version: 0.95
Distribution: unstable
Urgency: low
Maintainer: Debian kernel team <debian-kernel@lists.debian.org>
Changed-By: maximilian attems <maks@debian.org>
Description: 
 initramfs-tools - tools for generating an initramfs
Closes: 545728 566295 575766 577253 577981 579702
Changes: 
 initramfs-tools (0.95) unstable; urgency=low
 .
   [ maximilian attems ]
   * update TODO list.
   * hook-functions: refactor copy_exec.
   * mkinitramfs: check only once for existing ldd.
   * mkinitramfs: Use eventual TMPDIR definition.
   * mkinitramfs: guard against empty EXTRA_CONF.
   * update-initramfs: Use nounset.
   * mkinitramfs: Fix several unbound variables.
   * mkinitramfs: On verbose indicate what we rm.
   * bug script: include sizes of generated initramfs.
   * debian/script: add generated resume param to bug.
   * hook-functions: manual_add_modules simplify.
   * hook-functions: copy_modules_dir() small simplifications.
   * mkinitramfs.8: Fix wrong sourcing in boot script. (Closes: #545728)
   * initramfs-tools.8: Mention /scritps/functions.
   * initramfs-tools.8: cryptopts param gone.
   * initramfs-tools.8: document BOOTIF variable.
   * configure_networking(): work with empty DEVICE string.
     (Closes: #566295, #575766)
   * hook-functions: add hid-apple. (Closes: #577253)
   * Revert "mkinitramfs: only copy modprobe conf files". (Closes: #577981)
   * initramfs-tools: change license to GPL.
   * hook-functions: re-add hid-microsoft. (Closes: #577253)
   * initramfs-tools: drop outdated breaks.
   * debian/copyright: add boilerplate to keep lintian happy.
   * hook-functions: Fix copy_modules_dir().
 .
   [ Axel Beckert ]
   * mkinitramfs.8: Add information about $TMPDIR environment variable.
 .
   [ bert schulze ]
   * mkinitramfs: add LZO support.
   * mkinitramfs: use -9 for lzop.
 .
   [ Vagrant Cascadian ]
   * configure_networking: pxelinux BOOTIF fixes.
   * init: add BOOTIF bootarg.
 .
   [ Michael Prokop ]
   * Support booting from USB 3 xHCI-based controllers.
 .
   [ Claus Herwig ]
   * mkinitramfs: fix MODULES=dep on mylex raid devices (DAC960).
     (Closes: #579702)
Checksums-Sha1: 
 9216f73b02d3b5eb006e3260b75655a6da7c45de 922 initramfs-tools_0.95.dsc
 a690ae41f9d01ff63d9997a2dba0c94d19dcd0ac 73275 initramfs-tools_0.95.tar.gz
 e7baa9731d1f5f5e0ac6314d9e2e4d6f2fd74640 79950 initramfs-tools_0.95_all.deb
Checksums-Sha256: 
 7b8954fd0a8e075a38c5c33970b475bd6e9d1c2e4b6f2f81814461d37986ec56 922 initramfs-tools_0.95.dsc
 ceafb109d8cf6240e8c5ea22cd14122c268bee30236867cc43b06b8821d37514 73275 initramfs-tools_0.95.tar.gz
 a8cab85628b927a365d9194f29a2825c1943c21c7e49a1083b5105ce1f655976 79950 initramfs-tools_0.95_all.deb
Files: 
 6b6072a0e133472eba9a27d0b257a96b 922 utils optional initramfs-tools_0.95.dsc
 c43c28e9ff65b26563ccf43079fc3d03 73275 utils optional initramfs-tools_0.95.tar.gz
 1c7793dab0a318b0a2773188f3f41fae 79950 utils optional initramfs-tools_0.95_all.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEARECAAYFAkwAX84ACgkQeW7Lc5tEHqiDYwCgz4kG/6PcZ8KZAzpUNAKPgmKb
iy4An2v7U7LwlGo0tSJKhdjCy0xS+bwQ
=v+rR
-----END PGP SIGNATURE-----



--- End Message ---

Reply to: