On Tue, Jan 29, 2019 at 1:36 PM Hari Bathini hbathini@linux.ibm.com wrote:
When a network-based dump target is configured, the interface name is prefixed with 'kdump-'. While this has no consequence for production kernel when kdump is configured, the network interface name is changed for production kernel as well when fadump is configured. Avoid that and ensure network interface is renamed only while capturing vmcore.
Signed-off-by: Hari Bathini hbathini@linux.ibm.com
Changes in V2:
- kdump cmdline hook priority adjusted
dracut-kdump-boot.sh | 12 ++++++++++++ dracut-module-setup.sh | 1 + kexec-tools.spec | 3 +++ 3 files changed, 16 insertions(+) create mode 100644 dracut-kdump-boot.sh
diff --git a/dracut-kdump-boot.sh b/dracut-kdump-boot.sh new file mode 100644 index 0000000..ba205dc --- /dev/null +++ b/dracut-kdump-boot.sh @@ -0,0 +1,12 @@ +#!/bin/sh
+# An Initrd with dump capturing support can boot a production kernel +# as well (FADump). In such scenario, avoid enforcing such parameters +# in production kernel that make sense only while capturing dump. +[ ! -f /etc/fadump.initramfs ] && return
+if [ ! -f /proc/device-tree/rtas/ibm,kernel-dump ]; then
- rm -f /etc/cmdline.d/40kdump-ip.conf
- rm -f /etc/cmdline.d/60kdumpnic.conf
- rm -f /etc/cmdline.d/70kdump-bootdev.conf
+fi
dracut-module-setup.sh may also setup following files: /etc/cmdline.d/{41bridge.conf,42bond.conf,43vlan.conf,44team.conf} that will still contain reference to old kdump-* ifname, you may need add prefixes and delete them as well.
And another problem is if you deleted the network related cmdline.d files, dracut will not setup the network in early bootup stage, but dracut will still try to setup the network dump target and then fail. This may not fail the boot progress, but it generates an extra error message.
-- Best Regards, Kairui Song