Marcus Meissner
73faa804ea
- 40network: always start netroot in ifup.sh (bnc#881235) * Add: 0066-40network-always-start-netroot-in-ifup.sh.patch - 95fcoe: check() always returns 255 * Add: 0067-95fcoe-check-always-returns-255.patch - 95fcoe-uefi: Test for EFI firmware (bnc#882412) * Add: 0068-95fcoe-uefi-Test-for-EFI-firmware.patch - Rename patches to match git repository: * Old: more-fips-adjustments.patch * New: 0057-01fips-Include-some-more-hmacs.patch * Old: dracut-check-supported.patch * New: 0058-dracut-add-warning-when-including-unsupported-module.patch - Add 99suse module to git repository: * Remove: parse-suse-initrd.sh * Remove: module-setup-initrd.sh * Add: 0059-99suse-Add-SUSE-specific-initrd-parsing.patch - Add write-ifcfg-suse.sh to git repository: * Remove: write-ifcfg-suse.sh * Add: 0060-45ifcfg-Add-SUSE-specific-write-ifcfg-file.patch - Fixup error messages in write-ifcfg-suse.sh (bnc#881286) * Add: 0061-45ifcfg-Fixup-error-message-in-write-ifcfg-suse.patch - Add missing 'libgcc_s.so' library (bnc#881692): * Add: 0062-95iscsi-Install-libgcc_s-library.patch * Add: 0063-90multipath-Install-libgcc_s-library.patch - Install missing scsi_dh_alua module (bnc#871617) * Add: 0064-90kernel-modules-install-scsi_dh_alua.patch - 95iscsi: fixup bnx2i offload booting (bnc#855747) * Add: 0065-95iscsi-Fixup-bnx2i-offload-booting.patch Add: more-fips-adjustments.patch OBS-URL: https://build.opensuse.org/request/show/237520 OBS-URL: https://build.opensuse.org/package/show/Base:System/dracut?expand=0&rev=160
70 lines
2.4 KiB
Diff
70 lines
2.4 KiB
Diff
From 4c9b6f84183857781f93fba3ae75cbce2e0dcbd3 Mon Sep 17 00:00:00 2001
|
|
From: Hannes Reinecke <hare@suse.de>
|
|
Date: Fri, 13 Jun 2014 12:30:11 +0200
|
|
Subject: 95iscsi: Fixup bnx2i offload booting
|
|
|
|
bnx2i is using a separate iSCSI offload engine with a separate
|
|
MAC address. As a result, the iBFT information is displaying
|
|
a MAC address which does not relate to any MAC address from
|
|
the network interfaces.
|
|
In addition, the iSCSI offload engine works independently on
|
|
the NIC, so we do not need to enable the NIC for iSCSI offload
|
|
to work.
|
|
This patch modifies the automatic iBFT detection to not set
|
|
the 'ip=ibft' flag when bnx2i offload is detected.
|
|
|
|
References: bnc#855747
|
|
|
|
Signed-off-by: Hannes Reinecke <hare@suse.de>
|
|
---
|
|
modules.d/95iscsi/module-setup.sh | 26 +++++++++++++++++++++++++-
|
|
1 file changed, 25 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/modules.d/95iscsi/module-setup.sh b/modules.d/95iscsi/module-setup.sh
|
|
index 41785e1..e94e913 100755
|
|
--- a/modules.d/95iscsi/module-setup.sh
|
|
+++ b/modules.d/95iscsi/module-setup.sh
|
|
@@ -2,14 +2,38 @@
|
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
|
|
|
+get_ibft_mod() {
|
|
+ local ibft_mac=$1
|
|
+ # Return the iSCSI offload module for a given MAC address
|
|
+ iscsiadm -m iface | while read iface_name iface_desc ; do
|
|
+ IFS=$','
|
|
+ set -- $iface_desc
|
|
+ if [ "$ibft_mac" = "$2" ] ; then
|
|
+ echo $1
|
|
+ return 0
|
|
+ fi
|
|
+ unset IFS
|
|
+ done
|
|
+}
|
|
+
|
|
install_ibft() {
|
|
# When iBFT / iscsi_boot is detected:
|
|
# - Use 'ip=ibft' to set up iBFT network interface
|
|
+ # Note: bnx2i is using a different MAC address of iSCSI offloading
|
|
+ # so the 'ip=ibft' parameter must not be set
|
|
# - specify firmware booting cmdline parameter
|
|
|
|
for d in /sys/firmware/* ; do
|
|
+ if [ -d ${d}/ethernet0 ] ; then
|
|
+ read ibft_mac < ${d}/ethernet0/mac
|
|
+ ibft_mod=$(get_ibft_mod $ibft_mac)
|
|
+ fi
|
|
+ if [ -z "$ibft_mod" ] && [ -d ${d}/ethernet1 ] ; then
|
|
+ read ibft_mac < ${d}/ethernet1/mac
|
|
+ ibft_mod=$(get_ibft_mod $ibft_mac)
|
|
+ fi
|
|
if [ -d ${d}/initiator ] ; then
|
|
- if [ ${d##*/} = "ibft" ] ; then
|
|
+ if [ ${d##*/} = "ibft" ] && [ "$ibft_mod" != "bnx2i" ] ; then
|
|
echo -n "ip=ibft "
|
|
fi
|
|
echo -n "rd.iscsi.firmware=1"
|
|
--
|
|
1.8.4.5
|
|
|