In a iSCSI multipath environment (which uses iSCSI software initiator
and target environment) when the vmcore file is saved on the target,
kdump always fails to establish a iSCSI session and also fails to
collect dump due to duplicate entries for 'netroot' and
'iscsi initiator' in the kdump bootargs:
# echo c > /proc/sysrq-trigger
[83471.842707] SysRq : Trigger a crash
[83471.843233] BUG: unable to handle kernel NULL pointer dereference at
(null)
[83471.844155] IP: [<ffffffffac82ed16>] sysrq_handle_crash+0x16/0x20
[83471.844931] PGD 800000023f710067 PUD 229fd6067 PMD 0
[83471.845655] Oops: 0002 [#1] SMP
<snip..>
[83471.861889] Call Trace:
[83471.862162] [<ffffffffac82f53d>] __handle_sysrq+0x10d/0x170
[83471.862771] [<ffffffffac82f9af>] write_sysrq_trigger+0x2f/0x40
[83471.863405] [<ffffffffac690630>] proc_reg_write+0x40/0x80
[83471.863984] [<ffffffffac61acd0>] vfs_write+0xc0/0x1f0
[83471.864536] [<ffffffffac61baff>] SyS_write+0x7f/0xf0
[83471.865075] [<ffffffffacb1f7d5>] system_call_fastpath+0x1c/0x21
[83471.865714] Code: eb 9b 45 01 f4 45 39 65 34 75 e5 4c 89 ef e8 e2 f7 ff ff eb db 0f
1f 44 00 00 55 48 89 e5 c7 05 41 47 81 00 01 00 00 00 0f ae f8 <c6> 04 25 00 00 00
00 01 5d c3 0f 1f 44 00 00 55 31 c0 c7 05 be
[83471.868888] RIP [<ffffffffac82ed16>] sysrq_handle_crash+0x16/0x20
[83471.869700] RSP <ffff9e7fe77b7e58>
[83471.870074] CR2: 0000000000000000
<snip..>
Starting Login iSCSI Target iqn.2014-08.com.example:t1...
[ OK ] Stopped Login iSCSI Target iqn.2014-08.com.example:t1.
Starting Login iSCSI Target iqn.2014-08.com.example:t1...
[ 6.607051] scsi host2: iSCSI Initiator over TCP/IP
[FAILED] Failed to start Login iSCSI Target iqn.2014-08.com.example:t1.
See 'systemctl status "iscsistart_\\x40...com.example:t1.service"'
for details.
[ 126.572911] dracut-initqueue[243]: Warning: dracut-initqueue timeout - starting
timeout scripts
Stopping Open-iSCSI...
[ OK ] Stopped Open-iSCSI.
Starting Open-iSCSI...
[ OK ] Started Open-iSCSI.
Starting Login iSCSI Target iqn.2014-08.com.example:t1...
[ OK ] Stopped Login iSCSI Target iqn.2014-08.com.example:t1.
Starting Login iSCSI Target iqn.2014-08.com.example:t1...
[ 131.095897] scsi host3: iSCSI Initiator over TCP/IP
[FAILED] Failed to start Login iSCSI Target iqn.2014-08.com.example:t1.
See 'systemctl status "iscsistart_\\x40...com.example:t1.service"'
for details.
[ 251.085029] dracut-initqueue[243]: Warning: dracut-initqueue timeout - starting
timeout scripts
[ 251.594554] dracut-initqueue[243]: Warning: dracut-initqueue timeout - starting
timeout scripts
<snip..>
This patch fixes the same by removing the 'netroot',
'rd.iscsi.initiator' and 'iscsi_initiator' entries from the kdump boot
cmdline.
Signed-off-by: Bhupesh Sharma <bhsharma(a)redhat.com>
---
kdumpctl | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/kdumpctl b/kdumpctl
index cebca36a4b20..c55a5a5817db 100755
--- a/kdumpctl
+++ b/kdumpctl
@@ -138,6 +138,11 @@ prepare_cmdline()
# With the help of "--hostonly-cmdline", we can avoid some interitage.
cmdline=$(remove_cmdline_param "$cmdline" rd.lvm.lv rd.luks.uuid rd.dm.uuid
rd.md.uuid fcoe)
+ # Remove netroot, rd.iscsi.initiator and iscsi_initiator since
+ # we get duplicate entries for the same in case iscsi code adds
+ # it as well.
+ cmdline=$(remove_cmdline_param "$cmdline" netroot rd.iscsi.initiator
iscsi_initiator)
+
cmdline="${cmdline} ${KDUMP_COMMANDLINE_APPEND}"
id=$(get_bootcpu_apicid)
--
2.7.4
Show replies by date