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

Bug#721088: marked as done (initramfs-tools: nfsroot with pxelinux fails on systems with multiple NICs)



Your message dated Wed, 25 Jul 2018 18:04:52 +0000
with message-id <E1fiO9c-000Bqw-3R@fasolo.debian.org>
and subject line Bug#721088: fixed in initramfs-tools 0.132
has caused the Debian Bug report #721088,
regarding initramfs-tools: nfsroot with pxelinux fails on systems with multiple NICs
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.)


-- 
721088: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=721088
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: initramfs-tools
Version: 0.109.1
Severity: normal

When I try to use Debian initramfs to mount root over NFS on a machine with
multiple NICs, it never succeeds, because the initramfs configures all NICs
with the same IP address.

In more detail, the following happens:

  o  I have configured pxelinux to boot Linux kernel and set "ipappend 3",
     so that pxelinux appends "ip=" and "BOOTIF=" to kernel options. The
     former contains the IP address and netmask (but no information on the
     interface, which is logical, because it has no idea how will the kernel
     name the interface). The latter contains the MAC address of the boot
     interface.

  o  configure_networking() in scripts/functions inside the initramfs
     correctly detects that BOOTIF was passed and sets the DEVICE variable
     to the name of the right network device.

  o  Later, configure_networking() detects that the "ip" parameter contains
     something complex (different from trivial things like "any", "off",
     "dhcp", ...) and runs ipconfig on all interfaces.

  o  Therefore, the DEVICE variable calculated from BOOTIF is not used at all.

A simple work-around exists: let pxelinux pass only the BOOTIF parameter
("ipappend 2") and add "ip=dhcp" manually, in which case configure_networking()
behaves correctly and runs ipconfig only on the matching interface. However,
(1) this is unnecessarily slow (DHCP is run twice, once in PXE and then in
the initramfs), (2) one should not need such tricks to get a working nfsroot.

I propose the following fix: In the "complex ip parameter" case (around line
393 in my version of the scripts/functions file), the DEVICE variable should
be checked and if it already set, ipconfig should be run only on the selected
device.

Also, the NEW_DEVICE logic below that call to ipconfig is likely wrong for the
same reason. I think it should be moved to the same place where the BOOTIF
check resides.

If you wish, I can provide a patch.


-- Package-specific info:
-- initramfs sizes
-- /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-3.9.2-kam root=UUID=9a1f02a6-70f0-4958-821a-b603696c6d2d ro

-- /proc/filesystems
	ext3
	ext2
	ext4
	vfat
	msdos
	iso9660
	romfs
	udf

-- lsmod
Module                  Size  Used by
usblp                   9474  0 
tun                    15607  2 
deflate                 1775  0 
zlib_deflate           17451  1 deflate
ctr                     3415  0 
twofish_generic         6017  0 
twofish_x86_64_3way    18587  0 
twofish_x86_64          5221  1 twofish_x86_64_3way
twofish_common         12753  3 twofish_generic,twofish_x86_64_3way,twofish_x86_64
camellia_generic       18041  0 
camellia_x86_64        43873  0 
serpent_sse2_x86_64    44621  0 
serpent_generic        18028  1 serpent_sse2_x86_64
xts                     2687  3 camellia_x86_64,serpent_sse2_x86_64,twofish_x86_64_3way
lrw                     3069  3 camellia_x86_64,serpent_sse2_x86_64,twofish_x86_64_3way
gf128mul                5138  2 lrw,xts
glue_helper             3105  3 camellia_x86_64,serpent_sse2_x86_64,twofish_x86_64_3way
blowfish_generic        3032  0 
blowfish_x86_64        13244  0 
blowfish_common         6159  2 blowfish_generic,blowfish_x86_64
cast5_generic          10293  0 
cast_common             4849  1 cast5_generic
ablk_helper             1556  1 serpent_sse2_x86_64
cryptd                  6479  1 ablk_helper
xcbc                    2269  0 
rmd160                  7160  0 
sha512_generic          4553  0 
sha256_generic          9509  0 
sha1_generic            1822  0 
crypto_null             2468  0 
af_key                 22195  0 
xfrm_algo               4208  1 af_key
ip6t_REJECT             2428  3 
xt_nat                  1777  6 
ipt_REJECT              2009  2 
xt_LOG                  9702  5 
xt_limit                1678  7 
xt_state                1151  3 
xt_multiport            1566  2 
xt_DSCP                 2003  2 
xt_owner                1107  3 
xt_mark                 1133  8 
xt_connmark             1653  2 
ip6table_filter         1284  1 
ip6_tables             13824  1 ip6table_filter
iptable_mangle          1424  1 
iptable_nat             2382  1 
nf_conntrack_ipv4       6526  6 
nf_defrag_ipv4          1259  1 nf_conntrack_ipv4
nf_nat_ipv4             2992  1 iptable_nat
nf_nat                 11007  3 nf_nat_ipv4,xt_nat,iptable_nat
nf_conntrack           50975  6 nf_nat,xt_state,nf_nat_ipv4,xt_connmark,iptable_nat,nf_conntrack_ipv4
iptable_filter          1312  1 
ip_tables              13378  3 iptable_filter,iptable_mangle,iptable_nat
x_tables               13511  16 ip6table_filter,xt_DSCP,xt_mark,ip_tables,xt_limit,xt_owner,xt_state,xt_LOG,xt_nat,xt_multiport,iptable_filter,xt_connmark,ipt_REJECT,iptable_mangle,ip6_tables,ip6t_REJECT
acpi_cpufreq            6294  1 
mperf                   1107  1 acpi_cpufreq
snd_hda_codec_hdmi     24489  1 
kvm_amd                43896  0 
snd_hda_codec_realtek    26712  1 
kvm                   315861  1 kvm_amd
radeon                631819  2 
snd_hda_intel          26851  1 
snd_hda_codec         102967  3 snd_hda_codec_realtek,snd_hda_codec_hdmi,snd_hda_intel
snd_pcm                62018  3 snd_hda_codec_hdmi,snd_hda_codec,snd_hda_intel
snd_page_alloc          6002  2 snd_pcm,snd_hda_intel
fbcon                  32349  72 
bitblit                 4081  1 fbcon
fbcon_rotate            1796  1 bitblit
fbcon_ccw               4462  1 fbcon_rotate
fbcon_ud                4509  1 fbcon_rotate
fbcon_cw                4406  1 fbcon_rotate
softcursor              1141  4 fbcon_cw,fbcon_ud,fbcon_ccw,bitblit
font                    7292  1 fbcon
tileblit                1965  1 fbcon
drm_kms_helper         22796  1 radeon
ttm                    51242  1 radeon
drm                   195966  4 ttm,drm_kms_helper,radeon
cfbfillrect             2994  1 radeon
cfbimgblt               1943  1 radeon
cfbcopyarea             2982  1 radeon
i2c_algo_bit            4463  1 radeon
fb                     44774  9 fbcon,fbcon_cw,fbcon_ud,drm_kms_helper,radeon,softcursor,fbcon_ccw,tileblit,bitblit
processor              32110  1 acpi_cpufreq
fbdev                    798  2 fb,fbcon
snd_timer              14965  1 snd_pcm
snd                    46104  8 snd_hda_codec_realtek,snd_timer,snd_hda_codec_hdmi,snd_pcm,snd_hda_codec,snd_hda_intel
parport_pc             23562  0 
i2c_piix4               7463  0 
k10temp                 2698  0 
asus_atk0110            8418  0 
wmi                     6955  0 
button                  4525  0 
ehci_pci                3312  0 
parport                25915  1 parport_pc
hid_generic             1105  0 
usbhid                 22258  0 
hid                    73002  2 hid_generic,usbhid
microcode               9233  0 
r8169                  46016  0 
ohci_hcd               17344  0 
ehci_hcd               31352  1 ehci_pci
firewire_ohci          26301  0 
firewire_core          42677  1 firewire_ohci
usbcore               127518  6 usblp,ohci_hcd,ehci_hcd,ehci_pci,usbhid
usb_common               874  1 usbcore

-- /etc/initramfs-tools/modules

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

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

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

/usr/share/initramfs-tools/hooks:
amd64_microcode
busybox
dmsetup
fuse
keymap
klibc
kmod
ntfs_3g
thermal
udev


-- System Information:
Debian Release: 7.1
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.9.2-kam (SMP w/4 CPU cores; PREEMPT)
Locale: LANG=C, LC_CTYPE=cs_CZ.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages initramfs-tools depends on:
ii  cpio               2.11+dfsg-0.1
ii  klibc-utils        2.0.1-3.1
ii  kmod               9-3
ii  module-init-tools  9-3
ii  udev               175-7.2

Versions of packages initramfs-tools recommends:
pn  busybox | busybox-initramfs | busybox-static  <none>

Versions of packages initramfs-tools suggests:
pn  bash-completion  <none>

-- no debconf information

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

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.

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 721088@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Ben Hutchings <ben@decadent.org.uk> (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@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Thu, 26 Jul 2018 01:18:39 +0800
Source: initramfs-tools
Binary: initramfs-tools initramfs-tools-core
Architecture: source
Version: 0.132
Distribution: unstable
Urgency: medium
Maintainer: Debian kernel team <debian-kernel@lists.debian.org>
Changed-By: Ben Hutchings <ben@decadent.org.uk>
Description:
 initramfs-tools - generic modular initramfs generator (automation)
 initramfs-tools-core - generic modular initramfs generator (core tools)
Closes: 721088 765750 804295 861228 874523 891560 904065
Changes:
 initramfs-tools (0.132) unstable; urgency=medium
 .
   * [4e1f80e] mkinitramfs: Don't try to remove nonexistent /var/cache/ldconfig
     (Closes: #904065)
   * [d0212d3] hook-functions: Quote exclusions in copy_modules_dir
   * [8c806b4] hook-functions: Add support for compressed module files
     (Closes: #891560)
   * [71f5d61] mkinitramfs: Create usr-merged filesystem layout
     (Closes: #874523)
   * [4c0d86c] hooks/resume: Loop over all swap devices when selecting
     automatically
   * [312393b] hooks/resume: Reject zram swap devices when selecting
     automatically (Closes: #861228)
   * [c0ae42b] update-initramfs: Always take over other initramfs images
     (Closes: #765750, #804295)
   * [f39625a] update-initramfs: Make "-k all" take over other initramfs images
   * [f273172] scripts/functions: Fix parsing of device name from ip parameter
   * [abae896] scripts/functions: Merge information from BOOTIF/DEVICE and ip
     parameters (Closes: #721088)
Checksums-Sha1:
 8d96f26dc1702ddd62b69f5d4c62f74fbd7675a9 1755 initramfs-tools_0.132.dsc
 2e00350e2c41a7ad74ce4f9a555da0615dedf65c 87944 initramfs-tools_0.132.tar.xz
 e2049b86d385e2b2f1e44e51c48935d1efb5f3aa 6160 initramfs-tools_0.132_source.buildinfo
Checksums-Sha256:
 bc6d3dd7940aa626f1f951feb33df9bf9b68825383e6c495ef76ccbf20673bcb 1755 initramfs-tools_0.132.dsc
 b8faaca208e90e1ca07084d31e3610bbcdc2e06fda29168ace78409cb385e6cd 87944 initramfs-tools_0.132.tar.xz
 23e1c1551b74c5b30c8a25306e5085b2a78a29f0e6acf7f968ac27408650265a 6160 initramfs-tools_0.132_source.buildinfo
Files:
 c2334f59f8a18d17a6581ff20681757d 1755 utils optional initramfs-tools_0.132.dsc
 435375dd668cbfab7e36cc97ec2cfff8 87944 utils optional initramfs-tools_0.132.tar.xz
 316fed8d32e36d0fafbc7dadbd56d027 6160 utils optional initramfs-tools_0.132_source.buildinfo

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEErCspvTSmr92z9o8157/I7JWGEQkFAltYtKsACgkQ57/I7JWG
EQkdBRAAk349mEHBR/dytvK+pzIJCLn8RhKlY6vG2xLTwNtOqTOoPaQwacGleSey
/duIs2LY6Jkf8qdjNkx7GrPYAEjODucaCURY4YyM5hTpWWAQuSccj1ReEPbfeTk8
YPXspaDNInwO0qcmAQL712wlzIUdHj539vrQiKMC8e0vbaHneKh8g6ssTUzHCm5s
21xT5s9w+5m3WEh/r5k31t3v288tyiXtIXeah3p9N1gpfmnbXT5stafMvWMCkjES
WTa78KKpD4aJ0OZW73gq1FgEFY8FVyOfZ/lkS4MEcdVe3Cu4nV/zoHwX6koMACwu
1OnE+bdfs1o6r15YPmKcecmZk71FMo4DsMO+uj8MbdkAm/tHVzgX18G7/ch5W9lf
mme0j5JAaXbzc+7u/4F9CMahAJldxywGM3eNftoHJL9ZNyR8XIVLnhun0PHUrwNV
GNMhTISidQqN7LvYZW7YE8siDjf2k+0S2TZfCco2MRQ4Z9hhQwi+Xv2W/RmCABzU
0vPUJimkh8mMzqLYso/ZnPCFVI+dz/jjUaaTx8+EQba3l2/tRsgQTlwMpGz5B1pR
Tftm0lZ6OQ9nqpKwPW4BdUKvrboGquvF4xi39hKLs4r+pBmaseCo8NDGMIbbYg6C
QMK9RjAp2GWpbFYLBZ1cbvwMaLi0Mf1wl1mv+hR1HSobHFR7diw=
=y8Lz
-----END PGP SIGNATURE-----

--- End Message ---

Reply to: