On 09/05/2017 at 04:55 PM, Dave Young wrote:
Hi Xunlei,
On 08/30/17 at 04:45pm, Xunlei Pang wrote:
> After adding "--hostonly-cmdline", besides 99kdump, 95iscsi
> also generates iscsi related cmdline. IOW, we have duplicate
> software iscsi cmdlines.
>
> Considering we need to setup special "kdump-eth*"(moreover,
> 95iscsi generated software iscsi cmdline doesn't work), we
> remove that of 95iscsi and use that of 99kdump.
kdump- prefix is another issue, it is probably one obstable for us to
remove kdump specific soft iscsi code. But it is not the reason why we
need remove duplicate iscsi cmdline genereated by dracut. How about
remove the above paragraph for less confusion?
ok
> Signed-off-by: Xunlei Pang <xlpang(a)redhat.com>
> ---
> dracut-module-setup.sh | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/dracut-module-setup.sh b/dracut-module-setup.sh
> index ae13337..3eeda66 100755
> --- a/dracut-module-setup.sh
> +++ b/dracut-module-setup.sh
> @@ -612,6 +612,11 @@ kdump_check_iscsi_targets () {
> # If our prerequisites are not met, fail anyways.
> type -P iscsistart >/dev/null || return 1
>
> + # Ugly: Remove software iscsi cmdline generated by dracut,
> + # and regenerate here mainly due to kdump_setup_ifname().
> + grep "ip=ibft" ${initdir}/etc/cmdline.d/95iscsi.conf
&>/dev/null
> + [ $? -ne 0 ] && rm -rf ${initdir}/etc/cmdline.d/95iscsi.conf
> +
Checked the dracut code, in dracut install_softiscsi will do nothin in
case /sys/firmware/ibft, so how about do it like below?
[ ! -d /sys/firmware/ibft ] && rm -rf ${initdir}/etc/cmdline.d/95iscsi.conf
Oh, yes, the original code did have some issue, after some iscsi knowledge recall,
let's focus on firmware iscsi:
a) for cxgb4i(iBFT) the cmdline is: "rd.iscsi.firmware=1 ip=ibft"
b) for be2iscsi(firmware behave like iBFT, but not iBFT) the cmdline is:
"rd.iscsi.firmware=1", for such case
there will not be "/sys/firmware/ibft".
I.E. for all firmware cases, "rd.iscsi.firmware" always exists.
So I think we should change to use the following to do the correct thing:
grep "rd.iscsi.firmware" ${initdir}/etc/cmdline.d/95iscsi.conf
&>/dev/null
[ $? -ne 0 ] && rm -f ${initdir}/etc/cmdline.d/95iscsi.conf
Regards,
Xunlei
> kdump_check_setup_iscsi() (
> local _dev
> _dev=$1
> --
> 1.8.3.1
> _______________________________________________
> kexec mailing list -- kexec(a)lists.fedoraproject.org
> To unsubscribe send an email to kexec-leave(a)lists.fedoraproject.org
Thanks
Dave