[PATCH 2/3] module-setup: add two functions to determine iBFT
Vivek Goyal
vgoyal at redhat.com
Mon Nov 24 22:35:13 UTC 2014
On Thu, Nov 13, 2014 at 03:58:42PM +0800, WANG Chao wrote:
> If iBFT (iscsi Boot Firmware Table) is configured, we don't have to pass the
> setup information to 2nd kernel. Because with cmdline argument
> "rd.iscsi.ibft", dracut will automatically retrieve the setup information
> from BIOS's ROM or network device's optional-ROM (not from HBA's firmware)
>
> Add two functions to do the check. One is checking if we have
> "rd.iscsi.ibft" or its equivalents specified in kernel cmdline. The other is
> to check if the current iscsi session is iBFT.
>
> Because I don't find a reliable way to tell if an iscsi session is using the
> configurations from iBFT, I marked the second functions as "FIXME" and it
> always returns false. That means we don't handle iBFT yet. In the future,
> if someone is asking iBFT support, we can gather some data and finish the
> work.
If we can't figure out if a connection is using iBFT or not, then we
should not have this patch.
I am Ccing Ewan and Andy Grover. May be they have an idea how to figure
out if a particular session/connection is using iBFT or not.
Thanks
Vivek
>
> Signed-off-by: WANG Chao <chaowang at redhat.com>
> ---
> dracut-module-setup.sh | 26 ++++++++++++++++++++++++++
> 1 file changed, 26 insertions(+)
>
> diff --git a/dracut-module-setup.sh b/dracut-module-setup.sh
> index bca21ea..780601a 100755
> --- a/dracut-module-setup.sh
> +++ b/dracut-module-setup.sh
> @@ -422,6 +422,11 @@ kdump_is_iscsi_hw_session() {
> return 0
> }
>
> +# FIXME: determine iBFT
> +kdump_is_iscsi_ibft_session() {
> + return 1
> +}
> +
> # kernel cmdline must contain these either of the following arguments
> # for booting off hardware iSCSI:
> # rd.iscsi.firmware[=1], iscsi_firmware
> @@ -443,6 +448,27 @@ kdump_is_iscsi_hw_cmdline() {
> return 1
> }
>
> +# kernel cmdline must contain these either of the following arguments
> +# for booting off iBFT:
> +# rd.iscsi.ibft[=1], ip=ibft
> +kdump_is_iscsi_ibft_cmdline() {
> + local cmdline
> +
> + cmdline="$(cat /proc/cmdline)"
> +
> + for arg in $cmdline; do
> + case "$arg" in
> + "rd.iscsi.ibft" |\
> + "rd.iscsi.ibft=1" |\
> + "ip=ibft")
> + return 0
> + ;;
> + esac
> + done
> +
> + return 1
> +}
> +
> # No ibft handling yet.
> kdump_setup_iscsi_device() {
> local path=$1
> --
> 1.9.3
>
> _______________________________________________
> kexec mailing list
> kexec at lists.fedoraproject.org
> https://lists.fedoraproject.org/mailman/listinfo/kexec
More information about the kexec
mailing list