On Mon, Nov 24, 2014 at 03:02:05PM -0800, Andy Grover wrote:
iBFT-fu = you. Or I can take a stab.. -A
Hi, jumping in here without full context but ...
You can check the iSCSI node records node.discovery_type value for "fw"
(iBFT being the most common type of firmware discovery). Non-firmware
records will be set to something else like send_targets, static, isns.
- Chris
-------- Forwarded Message --------
Subject: Re: [PATCH 2/3] module-setup: add two functions to determine iBFT
Date: Mon, 24 Nov 2014 17:35:13 -0500
From: Vivek Goyal <vgoyal(a)redhat.com>
To: WANG Chao <chaowang(a)redhat.com>
CC: kexec(a)lists.fedoraproject.org, emilne(a)redhat.com, agrover(a)redhat.com
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(a)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(a)lists.fedoraproject.org
>https://lists.fedoraproject.org/mailman/listinfo/kexec