From bda814b46930b3da3f30b24d66c07740c894a8af Mon Sep 17 00:00:00 2001 From: Chris Leech Date: Mon, 18 Nov 2019 16:43:15 -0800 Subject: [PATCH] update to upstream v2.1.0 --- .gitignore | 1 + 0001-service-file-tweaks.patch | 146 ++++++++++++++++++ ...-idmb_rec_write-check-for-tpgt-first.patch | 16 +- ...te-seperate-old-and-new-style-writes.patch | 59 ++++--- ...write-pick-tpgt-from-existing-record.patch | 14 +- ...ervice-files-add-iscsi.service-for-s.patch | 93 ----------- ...si-boot-related-service-file-updates.patch | 75 --------- ... => 0005-update-initscripts-and-docs.patch | 14 +- ...fig.patch => 0006-use-var-for-config.patch | 44 ++++-- ...e.patch => 0007-use-red-hat-for-name.patch | 16 +- 0009-libiscsi.patch => 0008-libiscsi.patch | 104 ++++++------- ... 0009-Add-macros-to-release-GIL-lock.patch | 8 +- ...0010-libiscsi-introduce-sessions-API.patch | 20 +-- 0011-iscsiuio-systemd-unit-files.patch | 53 ------- ...discovery-request-timeout-regression.patch | 8 +- ...autostart-sessions-if-iscsi-is-not-u.patch | 30 ---- ...ibiscsi-format-security-build-errors.patch | 8 +- ...csi-fix-build-to-use-libopeniscsiusr.patch | 12 +- ...-build-against-latest-upstream-again.patch | 66 ++++++++ 0014-update-handling-of-boot-sessions.patch | 55 ------- ...ove-the-offload-boot-supported-ifdef.patch | 8 +- ...si.service-for-boot-session-recovery.patch | 34 ---- ...csiadm-return-error-when-login-fails.patch | 8 +- 0016-updates-to-iscsi.service.patch | 41 ----- ...s.patch => 0017-dont-install-scripts.patch | 14 +- ...on-shutdown-a-seperate-service.patch.patch | 55 ------- ...use-var-lib-iscsi-in-libopeniscsiusr.patch | 18 +-- 0019-Coverity-scan-fixes.patch | 123 +++++++++++++++ ...m-build-breakage-of-iscsiuio-LDFLAGS.patch | 29 ++++ ...service-files-for-boot-session-handl.patch | 130 ++++++++++++++++ ...ion-string-to-match-RPM-package-vers.patch | 12 +- iscsi-initiator-utils.spec | 66 ++++---- sources | 2 +- 33 files changed, 734 insertions(+), 648 deletions(-) create mode 100644 0001-service-file-tweaks.patch rename 0001-idmb_rec_write-check-for-tpgt-first.patch => 0002-idmb_rec_write-check-for-tpgt-first.patch (78%) rename 0002-idbm_rec_write-seperate-old-and-new-style-writes.patch => 0003-idbm_rec_write-seperate-old-and-new-style-writes.patch (72%) rename 0003-idbw_rec_write-pick-tpgt-from-existing-record.patch => 0004-idbw_rec_write-pick-tpgt-from-existing-record.patch (88%) delete mode 100644 0004-update-systemd-service-files-add-iscsi.service-for-s.patch delete mode 100644 0005-iscsi-boot-related-service-file-updates.patch rename 0006-update-initscripts-and-docs.patch => 0005-update-initscripts-and-docs.patch (93%) rename 0007-use-var-for-config.patch => 0006-use-var-for-config.patch (91%) rename 0008-use-red-hat-for-name.patch => 0007-use-red-hat-for-name.patch (68%) rename 0009-libiscsi.patch => 0008-libiscsi.patch (98%) rename 0018-Add-macros-to-release-GIL-lock.patch => 0009-Add-macros-to-release-GIL-lock.patch (90%) rename 0019-libiscsi-introduce-sessions-API.patch => 0010-libiscsi-introduce-sessions-API.patch (95%) delete mode 100644 0011-iscsiuio-systemd-unit-files.patch rename 0021-libiscsi-fix-discovery-request-timeout-regression.patch => 0011-libiscsi-fix-discovery-request-timeout-regression.patch (83%) delete mode 100644 0012-Don-t-check-for-autostart-sessions-if-iscsi-is-not-u.patch rename 0022-libiscsi-format-security-build-errors.patch => 0012-libiscsi-format-security-build-errors.patch (84%) rename 0023-libiscsi-fix-build-to-use-libopeniscsiusr.patch => 0013-libiscsi-fix-build-to-use-libopeniscsiusr.patch (80%) create mode 100644 0014-libiscsi-fix-build-against-latest-upstream-again.patch delete mode 100644 0014-update-handling-of-boot-sessions.patch rename 0010-remove-the-offload-boot-supported-ifdef.patch => 0015-remove-the-offload-boot-supported-ifdef.patch (86%) delete mode 100644 0015-update-iscsi.service-for-boot-session-recovery.patch rename 0013-Revert-iscsiadm-return-error-when-login-fails.patch => 0016-Revert-iscsiadm-return-error-when-login-fails.patch (82%) delete mode 100644 0016-updates-to-iscsi.service.patch rename 0024-dont-install-scripts.patch => 0017-dont-install-scripts.patch (57%) delete mode 100644 0017-make-session-shutdown-a-seperate-service.patch.patch rename 0028-use-var-lib-iscsi-in-libopeniscsiusr.patch => 0018-use-var-lib-iscsi-in-libopeniscsiusr.patch (91%) create mode 100644 0019-Coverity-scan-fixes.patch create mode 100644 0020-fix-upstream-build-breakage-of-iscsiuio-LDFLAGS.patch create mode 100644 0021-improve-systemd-service-files-for-boot-session-handl.patch rename 0020-use-Red-Hat-version-string-to-match-RPM-package-vers.patch => 0022-use-Red-Hat-version-string-to-match-RPM-package-vers.patch (64%) diff --git a/.gitignore b/.gitignore index 49c0e85..14d53cd 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ /open-iscsi-86e8892.tar.gz /open-iscsi-4ef9261.tar.gz /open-iscsi-f3c8e90.tar.gz +/open-iscsi-4440e57.tar.gz diff --git a/0001-service-file-tweaks.patch b/0001-service-file-tweaks.patch new file mode 100644 index 0000000..c83faf3 --- /dev/null +++ b/0001-service-file-tweaks.patch @@ -0,0 +1,146 @@ +From 2d84ee02e9ac69928261b38b5876bebb2349bd65 Mon Sep 17 00:00:00 2001 +From: rpm-build +Date: Tue, 4 Jun 2019 13:23:32 -0700 +Subject: [PATCH] service file tweaks + +--- + etc/systemd/iscsi-mark-root-nodes | 30 ++++++++++++++++++++++++++++++ + etc/systemd/iscsi-shutdown.service | 14 ++++++++++++++ + etc/systemd/iscsi.service | 23 +++++++++++++---------- + etc/systemd/iscsid.service | 6 ++++-- + etc/systemd/iscsiuio.service | 2 +- + 5 files changed, 62 insertions(+), 13 deletions(-) + create mode 100755 etc/systemd/iscsi-mark-root-nodes + create mode 100644 etc/systemd/iscsi-shutdown.service + +diff --git a/etc/systemd/iscsi-mark-root-nodes b/etc/systemd/iscsi-mark-root-nodes +new file mode 100755 +index 0000000..c693707 +--- /dev/null ++++ b/etc/systemd/iscsi-mark-root-nodes +@@ -0,0 +1,30 @@ ++#!/bin/bash ++ ++ISCSIADM=/usr/sbin/iscsiadm ++start_iscsid=0 ++start_iscsiuio=0 ++ ++while read t num p target flash; do ++ # strip tag number from portal, keep "ip:port" ++ portal=${p%,*} ++ transport=${t%:} ++ ++ $ISCSIADM -m node -p $portal -T $target -o update -n node.startup -v onboot ++ ++ start_iscsid=1 ++ ++ if [ "$transport" = bnx2i ] || [ "$transport" = qedi ]; then ++ start_iscsiuio=1 ++ fi ++done < <( $ISCSIADM -m session ) ++ ++# force iscsid and iscsiuio to start if needed for ++# recovering sessions created in the initrd ++ ++if [ "$start_iscsid" -eq 1 ]; then ++ systemctl --no-block start iscsid.service ++fi ++if [ "$start_iscsiuio" -eq 1 ]; then ++ systemctl --no-block start iscsiuio.service ++fi ++ +diff --git a/etc/systemd/iscsi-shutdown.service b/etc/systemd/iscsi-shutdown.service +new file mode 100644 +index 0000000..69c1c77 +--- /dev/null ++++ b/etc/systemd/iscsi-shutdown.service +@@ -0,0 +1,14 @@ ++[Unit] ++Description=Logout off all iSCSI sessions on shutdown ++Documentation=man:iscsid(8) man:iscsiadm(8) ++DefaultDependencies=no ++Conflicts=shutdown.target ++After=systemd-remount-fs.service network.target iscsid.service iscsiuio.service ++Before=remote-fs-pre.target ++Wants=remote-fs-pre.target ++RefuseManualStop=yes ++ ++[Service] ++Type=oneshot ++RemainAfterExit=true ++ExecStop=-/usr/sbin/iscsiadm -m node --logoutall=all +diff --git a/etc/systemd/iscsi.service b/etc/systemd/iscsi.service +index e475888..eadfcec 100644 +--- a/etc/systemd/iscsi.service ++++ b/etc/systemd/iscsi.service +@@ -1,18 +1,21 @@ + [Unit] + Description=Login and scanning of iSCSI devices +-Documentation=man:iscsiadm(8) man:iscsid(8) +-Before=remote-fs.target +-After=network.target network-online.target iscsid.service +-Requires=iscsid.service +-ConditionPathExists=/etc/iscsi/initiatorname.iscsi ++Documentation=man:iscsid(8) man:iscsiadm(8) ++DefaultDependencies=no ++Conflicts=shutdown.target ++After=systemd-remount-fs.service network.target iscsid.service iscsiuio.service ++Before=remote-fs-pre.target ++Wants=remote-fs-pre.target iscsi-shutdown.service ++ConditionDirectoryNotEmpty=|/var/lib/iscsi/nodes ++ConditionDirectoryNotEmpty=|/sys/class/iscsi_session + + [Service] + Type=oneshot +-ExecStart=/sbin/iscsiadm -m node --loginall=automatic +-ExecStop=/sbin/iscsiadm -m node --logoutall=automatic +-ExecStop=/sbin/iscsiadm -m node --logoutall=manual +-SuccessExitStatus=21 + RemainAfterExit=true ++ExecStart=-/usr/libexec/iscsi-mark-root-nodes ++ExecStart=-/usr/sbin/iscsiadm -m node --loginall=automatic ++ExecReload=-/usr/sbin/iscsiadm -m node --loginall=automatic ++SuccessExitStatus=21 + + [Install] +-WantedBy=remote-fs.target ++WantedBy=sysinit.target +diff --git a/etc/systemd/iscsid.service b/etc/systemd/iscsid.service +index 4fef168..8d50cf0 100644 +--- a/etc/systemd/iscsid.service ++++ b/etc/systemd/iscsid.service +@@ -1,14 +1,16 @@ + [Unit] + Description=Open-iSCSI +-Documentation=man:iscsid(8) man:iscsiuio(8) man:iscsiadm(8) ++Documentation=man:iscsid(8) man:iscsiadm(8) + DefaultDependencies=no ++Conflicts=shutdown.target + After=network.target iscsiuio.service + Before=remote-fs-pre.target + + [Service] + Type=notify + NotifyAccess=main +-ExecStart=/sbin/iscsid -f ++ExecStart=/usr/sbin/iscsid -f ++ExecStop=/usr/sbin/iscsiadm -k 0 2 + KillMode=mixed + Restart=on-failure + +diff --git a/etc/systemd/iscsiuio.service b/etc/systemd/iscsiuio.service +index e4d9fd0..8620cde 100644 +--- a/etc/systemd/iscsiuio.service ++++ b/etc/systemd/iscsiuio.service +@@ -11,7 +11,7 @@ Before=remote-fs-pre.target iscsid.service + [Service] + Type=notify + NotifyAccess=main +-ExecStart=/sbin/iscsiuio -f ++ExecStart=/usr/sbin/iscsiuio -f + KillMode=mixed + Restart=on-failure + +-- +2.21.0 + diff --git a/0001-idmb_rec_write-check-for-tpgt-first.patch b/0002-idmb_rec_write-check-for-tpgt-first.patch similarity index 78% rename from 0001-idmb_rec_write-check-for-tpgt-first.patch rename to 0002-idmb_rec_write-check-for-tpgt-first.patch index 220f693..5b9d247 100644 --- a/0001-idmb_rec_write-check-for-tpgt-first.patch +++ b/0002-idmb_rec_write-check-for-tpgt-first.patch @@ -1,7 +1,7 @@ -From dbec0a5b7737142f8a1462cdf826c35a78e899b2 Mon Sep 17 00:00:00 2001 +From 97071360caa6868c21a161047ed471790c405efb Mon Sep 17 00:00:00 2001 From: Chris Leech Date: Tue, 13 Aug 2013 10:59:44 -0700 -Subject: [PATCH 01/32] idmb_rec_write, check for tpgt first +Subject: [PATCH] idmb_rec_write, check for tpgt first Factor out the check for a tpgt to a single place, before going crazy on the rec files. Makes flow of this function easier to follow, and preps @@ -11,12 +11,12 @@ for splitting it up. 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/usr/idbm.c b/usr/idbm.c -index 830189f571ea..ab3577878e86 100644 +index be4d4e3..a7da540 100644 --- a/usr/idbm.c +++ b/usr/idbm.c -@@ -2042,6 +2042,10 @@ static int idbm_rec_write(node_rec_t *rec) - if (rc) - goto free_portal; +@@ -2078,6 +2078,10 @@ static int idbm_rec_write(node_rec_t *rec, bool disable_lock) + goto free_portal; + } + if (rec->tpgt == PORTAL_GROUP_TAG_UNKNOWN) + /* drop down to old style portal as config */ @@ -25,7 +25,7 @@ index 830189f571ea..ab3577878e86 100644 rc = stat(portal, &statb); if (rc) { rc = 0; -@@ -2050,22 +2054,10 @@ static int idbm_rec_write(node_rec_t *rec) +@@ -2086,22 +2090,10 @@ static int idbm_rec_write(node_rec_t *rec, bool disable_lock) * set the tgpt. In new versions you must pass all the info in * from the start */ @@ -50,5 +50,5 @@ index 830189f571ea..ab3577878e86 100644 * Old style portal as a file, but with tpgt. Let's update it. */ -- -2.14.4 +2.21.0 diff --git a/0002-idbm_rec_write-seperate-old-and-new-style-writes.patch b/0003-idbm_rec_write-seperate-old-and-new-style-writes.patch similarity index 72% rename from 0002-idbm_rec_write-seperate-old-and-new-style-writes.patch rename to 0003-idbm_rec_write-seperate-old-and-new-style-writes.patch index fb96724..25cddd3 100644 --- a/0002-idbm_rec_write-seperate-old-and-new-style-writes.patch +++ b/0003-idbm_rec_write-seperate-old-and-new-style-writes.patch @@ -1,31 +1,35 @@ -From b9d89091daab823eb2dc72c6c568af7897f83137 Mon Sep 17 00:00:00 2001 +From 4c6e7c0fcc6da66cf81c0714bf907762194eedf2 Mon Sep 17 00:00:00 2001 From: Chris Leech Date: Tue, 13 Aug 2013 11:34:31 -0700 -Subject: [PATCH 02/32] idbm_rec_write, seperate old and new style writes +Subject: [PATCH] idbm_rec_write, seperate old and new style writes Duplicates a small bit of code, but easier to understand and extened. --- - usr/idbm.c | 116 +++++++++++++++++++++++++++++++++++++++++-------------------- - 1 file changed, 79 insertions(+), 37 deletions(-) + usr/idbm.c | 129 +++++++++++++++++++++++++++++++++++------------------ + 1 file changed, 86 insertions(+), 43 deletions(-) diff --git a/usr/idbm.c b/usr/idbm.c -index ab3577878e86..21ff61ab2bd8 100644 +index a7da540..2f5e309 100644 --- a/usr/idbm.c +++ b/usr/idbm.c -@@ -2001,7 +2001,7 @@ mkdir_portal: +@@ -2030,12 +2030,7 @@ mkdir_portal: return f; } --static int idbm_rec_write(node_rec_t *rec) +-/* +- * When the disable_lock param is true, the idbm_lock/idbm_unlock needs +- * to be holt by the caller, this will avoid overwriting each other in +- * case of updating(read-modify-write) the recs in parallel. +- */ +-static int idbm_rec_write(node_rec_t *rec, bool disable_lock) +static int idbm_rec_write_new(node_rec_t *rec) { struct stat statb; FILE *f; -@@ -2013,38 +2013,8 @@ static int idbm_rec_write(node_rec_t *rec) - log_error("Could not alloc portal"); +@@ -2048,39 +2043,8 @@ static int idbm_rec_write(node_rec_t *rec, bool disable_lock) return ISCSI_ERR_NOMEM; } -- + - snprintf(portal, PATH_MAX, "%s", NODE_CONFIG_DIR); - if (access(portal, F_OK) != 0) { - if (mkdir(portal, 0660) != 0) { @@ -50,9 +54,11 @@ index ab3577878e86..21ff61ab2bd8 100644 rec->name, rec->conn[0].address, rec->conn[0].port); - log_debug(5, "Looking for config file %s", portal); - -- rc = idbm_lock(); -- if (rc) -- goto free_portal; +- if (!disable_lock) { +- rc = idbm_lock(); +- if (rc) +- goto free_portal; +- } - - if (rec->tpgt == PORTAL_GROUP_TAG_UNKNOWN) - /* drop down to old style portal as config */ @@ -60,7 +66,7 @@ index ab3577878e86..21ff61ab2bd8 100644 rc = stat(portal, &statb); if (rc) { -@@ -2065,11 +2035,11 @@ static int idbm_rec_write(node_rec_t *rec) +@@ -2101,11 +2065,11 @@ static int idbm_rec_write(node_rec_t *rec, bool disable_lock) log_error("Could not convert %s: %s", portal, strerror(errno)); rc = ISCSI_ERR_IDBM; @@ -74,7 +80,7 @@ index ab3577878e86..21ff61ab2bd8 100644 } mkdir_portal: -@@ -2080,24 +2050,96 @@ mkdir_portal: +@@ -2116,24 +2080,103 @@ mkdir_portal: log_error("Could not make dir %s: %s", portal, strerror(errno)); rc = ISCSI_ERR_IDBM; @@ -87,7 +93,7 @@ index ab3577878e86..21ff61ab2bd8 100644 rec->name, rec->conn[0].address, rec->conn[0].port, rec->tpgt, rec->iface.name); -open_conf: -+/* open_conf: */ ++ f = fopen(portal, "w"); if (!f) { log_error("Could not open %s: %s", portal, strerror(errno)); @@ -131,7 +137,12 @@ index ab3577878e86..21ff61ab2bd8 100644 + return rc; +} + -+static int idbm_rec_write(node_rec_t *rec) ++/* ++ * When the disable_lock param is true, the idbm_lock/idbm_unlock needs ++ * to be holt by the caller, this will avoid overwriting each other in ++ * case of updating(read-modify-write) the recs in parallel. ++ */ ++static int idbm_rec_write(node_rec_t *rec, bool disable_lock) +{ + char *portal; + int rc = 0; @@ -162,9 +173,11 @@ index ab3577878e86..21ff61ab2bd8 100644 + } + } + -+ rc = idbm_lock(); -+ if (rc) -+ goto free_portal; ++ if (!disable_lock) { ++ rc = idbm_lock(); ++ if (rc) ++ goto free_portal; ++ } + + if (rec->tpgt == PORTAL_GROUP_TAG_UNKNOWN) + /* old style portal as config */ @@ -172,9 +185,9 @@ index ab3577878e86..21ff61ab2bd8 100644 + else + rc = idbm_rec_write_new(rec); + - idbm_unlock(); + if (!disable_lock) + idbm_unlock(); free_portal: - free(portal); -- -2.14.4 +2.21.0 diff --git a/0003-idbw_rec_write-pick-tpgt-from-existing-record.patch b/0004-idbw_rec_write-pick-tpgt-from-existing-record.patch similarity index 88% rename from 0003-idbw_rec_write-pick-tpgt-from-existing-record.patch rename to 0004-idbw_rec_write-pick-tpgt-from-existing-record.patch index 5e2469f..d26e670 100644 --- a/0003-idbw_rec_write-pick-tpgt-from-existing-record.patch +++ b/0004-idbw_rec_write-pick-tpgt-from-existing-record.patch @@ -1,7 +1,7 @@ -From 7ba6464018daac1b150335bb73d272761d2cbfe5 Mon Sep 17 00:00:00 2001 +From 6051b9ef3cdf206630969940aba980f4088e2e14 Mon Sep 17 00:00:00 2001 From: Chris Leech Date: Tue, 13 Aug 2013 12:39:07 -0700 -Subject: [PATCH 03/32] idbw_rec_write, pick tpgt from existing record +Subject: [PATCH] idbw_rec_write, pick tpgt from existing record On a static add (-m node -o new) without a user specified tpgt, looks for existing new style records with tpgt before creating an old style @@ -12,7 +12,7 @@ updated new style record instead. 1 file changed, 40 insertions(+) diff --git a/usr/idbm.c b/usr/idbm.c -index 21ff61ab2bd8..cd705fa2b033 100644 +index 2f5e309..a2332cc 100644 --- a/usr/idbm.c +++ b/usr/idbm.c @@ -28,6 +28,7 @@ @@ -22,8 +22,8 @@ index 21ff61ab2bd8..cd705fa2b033 100644 +#include #include #include - -@@ -163,6 +164,8 @@ static struct idbm *db; + #include +@@ -164,6 +165,8 @@ static struct idbm *db; _n++; \ } while(0) @@ -32,7 +32,7 @@ index 21ff61ab2bd8..cd705fa2b033 100644 static void idbm_recinfo_discovery(discovery_rec_t *r, recinfo_t *ri) { -@@ -2077,12 +2080,49 @@ static int idbm_rec_write_old(node_rec_t *rec) +@@ -2107,12 +2110,49 @@ static int idbm_rec_write_old(node_rec_t *rec) FILE *f; char *portal; int rc = 0; @@ -83,5 +83,5 @@ index 21ff61ab2bd8..cd705fa2b033 100644 rec->name, rec->conn[0].address, rec->conn[0].port); -- -2.14.4 +2.21.0 diff --git a/0004-update-systemd-service-files-add-iscsi.service-for-s.patch b/0004-update-systemd-service-files-add-iscsi.service-for-s.patch deleted file mode 100644 index ebe1650..0000000 --- a/0004-update-systemd-service-files-add-iscsi.service-for-s.patch +++ /dev/null @@ -1,93 +0,0 @@ -From 33076c9c1e975ea3225923d66ae24648c0c82a7f Mon Sep 17 00:00:00 2001 -From: Chris Leech -Date: Wed, 19 Dec 2012 15:07:36 -0800 -Subject: [PATCH 04/32] update systemd service files, add iscsi.service for - starting sessions on boot - -Signed-off-by: Chris Leech ---- - etc/systemd/iscsi.service | 19 +++++++++++++++++++ - etc/systemd/iscsi_mark_root_nodes | 14 ++++++++++++++ - etc/systemd/iscsid.service | 7 +++++-- - etc/systemd/iscsid.socket | 2 +- - 4 files changed, 39 insertions(+), 3 deletions(-) - create mode 100644 etc/systemd/iscsi.service - create mode 100755 etc/systemd/iscsi_mark_root_nodes - -diff --git a/etc/systemd/iscsi.service b/etc/systemd/iscsi.service -new file mode 100644 -index 000000000000..bbd52fd66890 ---- /dev/null -+++ b/etc/systemd/iscsi.service -@@ -0,0 +1,19 @@ -+[Unit] -+Description=Login and scanning of iSCSI devices -+Documentation=man:iscsid(8) man:iscsiadm(8) -+DefaultDependencies=no -+Conflicts=shutdown.target -+After=systemd-remount-fs.service network.target iscsid.service iscsiuio.service -+Before=remote-fs-pre.target -+ConditionPathExists=/etc/iscsi/initiatorname.iscsi -+ -+[Service] -+Type=oneshot -+RemainAfterExit=true -+ExecStart=/usr/libexec/iscsi_mark_root_nodes -+ExecStart=/sbin/iscsiadm -m node --loginall=automatic -+ExecStop=/bin/sync -+ExecStop=/sbin/iscsiadm -m node --logoutall=automatic -+ -+[Install] -+WantedBy=sysinit.target -diff --git a/etc/systemd/iscsi_mark_root_nodes b/etc/systemd/iscsi_mark_root_nodes -new file mode 100755 -index 000000000000..c68475c44de5 ---- /dev/null -+++ b/etc/systemd/iscsi_mark_root_nodes -@@ -0,0 +1,14 @@ -+#!/bin/bash -+ -+ISCSIADM=/sbin/iscsiadm -+SESSION_FILE=/run/initramfs/iscsi.sessions -+ -+if [ ! -f $SESSION_FILE ] ; then -+ exit 0 -+fi -+ -+while read t num i target; do -+ ip=${i%:*} -+ $ISCSIADM -m node -p $ip -T $target -o update -n node.startup -v onboot -+done < $SESSION_FILE -+ -diff --git a/etc/systemd/iscsid.service b/etc/systemd/iscsid.service -index 028e0b3f4e59..653dd085bbdd 100644 ---- a/etc/systemd/iscsid.service -+++ b/etc/systemd/iscsid.service -@@ -1,7 +1,10 @@ - [Unit] - Description=Open-iSCSI --Documentation=man:iscsid(8) man:iscsiuio(8) man:iscsiadm(8) --After=network.target NetworkManager-wait-online.service iscsiuio.service tgtd.service targetcli.service -+Documentation=man:iscsid(8) man:iscsiadm(8) -+DefaultDependencies=no -+Conflicts=shutdown.target -+After=network.target iscsiuio.service -+Before=remote-fs-pre.target - - [Service] - Type=forking -diff --git a/etc/systemd/iscsid.socket b/etc/systemd/iscsid.socket -index 832451d7a0ce..58a8d1239996 100644 ---- a/etc/systemd/iscsid.socket -+++ b/etc/systemd/iscsid.socket -@@ -1,6 +1,6 @@ - [Unit] - Description=Open-iSCSI iscsid Socket --Documentation=man:iscsid(8) man:iscsiuio(8) man:iscsiadm(8) -+Documentation=man:iscsid(8) man:iscsiadm(8) - - [Socket] - ListenStream=@ISCSIADM_ABSTRACT_NAMESPACE --- -2.14.4 - diff --git a/0005-iscsi-boot-related-service-file-updates.patch b/0005-iscsi-boot-related-service-file-updates.patch deleted file mode 100644 index bf39a76..0000000 --- a/0005-iscsi-boot-related-service-file-updates.patch +++ /dev/null @@ -1,75 +0,0 @@ -From 5dd8fc7d27204a3461b33defed1e0bb4331c7663 Mon Sep 17 00:00:00 2001 -From: Chris Leech -Date: Mon, 19 Aug 2013 07:18:25 -0700 -Subject: [PATCH 05/32] iscsi boot related service file updates - -make sure iscsid gets started if there are any boot sessions running -add reload target to fix double session problem when restarting from NM -don't rely on session list passed from initrd, never got fully implemented ---- - etc/systemd/iscsi-mark-root-nodes | 13 +++++++++++++ - etc/systemd/iscsi.service | 3 ++- - etc/systemd/iscsi_mark_root_nodes | 14 -------------- - 3 files changed, 15 insertions(+), 15 deletions(-) - create mode 100644 etc/systemd/iscsi-mark-root-nodes - delete mode 100755 etc/systemd/iscsi_mark_root_nodes - -diff --git a/etc/systemd/iscsi-mark-root-nodes b/etc/systemd/iscsi-mark-root-nodes -new file mode 100644 -index 000000000000..157be62b4041 ---- /dev/null -+++ b/etc/systemd/iscsi-mark-root-nodes -@@ -0,0 +1,13 @@ -+#!/bin/bash -+ -+ISCSIADM=/sbin/iscsiadm -+ -+$ISCSIADM -m session >/dev/null 2>&1 || exit 0 -+ -+$ISCSIADM -m session | while read t num i target; do -+ ip=${i%:*} -+ $ISCSIADM -m node -p $ip -T $target -o update -n node.startup -v onboot -+done -+ -+systemctl start iscsid.service -+ -diff --git a/etc/systemd/iscsi.service b/etc/systemd/iscsi.service -index bbd52fd66890..0309e2fc9892 100644 ---- a/etc/systemd/iscsi.service -+++ b/etc/systemd/iscsi.service -@@ -10,10 +10,11 @@ ConditionPathExists=/etc/iscsi/initiatorname.iscsi - [Service] - Type=oneshot - RemainAfterExit=true --ExecStart=/usr/libexec/iscsi_mark_root_nodes -+ExecStart=/usr/libexec/iscsi-mark-root-nodes - ExecStart=/sbin/iscsiadm -m node --loginall=automatic - ExecStop=/bin/sync - ExecStop=/sbin/iscsiadm -m node --logoutall=automatic -+ExecReload=/sbin/iscsiadm -m node --loginall=automatic - - [Install] - WantedBy=sysinit.target -diff --git a/etc/systemd/iscsi_mark_root_nodes b/etc/systemd/iscsi_mark_root_nodes -deleted file mode 100755 -index c68475c44de5..000000000000 ---- a/etc/systemd/iscsi_mark_root_nodes -+++ /dev/null -@@ -1,14 +0,0 @@ --#!/bin/bash -- --ISCSIADM=/sbin/iscsiadm --SESSION_FILE=/run/initramfs/iscsi.sessions -- --if [ ! -f $SESSION_FILE ] ; then -- exit 0 --fi -- --while read t num i target; do -- ip=${i%:*} -- $ISCSIADM -m node -p $ip -T $target -o update -n node.startup -v onboot --done < $SESSION_FILE -- --- -2.14.4 - diff --git a/0006-update-initscripts-and-docs.patch b/0005-update-initscripts-and-docs.patch similarity index 93% rename from 0006-update-initscripts-and-docs.patch rename to 0005-update-initscripts-and-docs.patch index 9abcf52..0e0bdfb 100644 --- a/0006-update-initscripts-and-docs.patch +++ b/0005-update-initscripts-and-docs.patch @@ -1,7 +1,7 @@ -From 2e6f564ebb3c85cb9a457d282b845374776a54ae Mon Sep 17 00:00:00 2001 +From 6602f08bfcc2b2e75d1a58671cb160c96cf2d99b Mon Sep 17 00:00:00 2001 From: Chris Leech Date: Mon, 19 Nov 2012 16:37:13 -0800 -Subject: [PATCH 06/32] update initscripts and docs +Subject: [PATCH] update initscripts and docs --- README | 10 ++++------ @@ -10,7 +10,7 @@ Subject: [PATCH 06/32] update initscripts and docs 3 files changed, 18 insertions(+), 17 deletions(-) diff --git a/README b/README -index 2499d9a7b638..c05814a2593b 100644 +index 2499d9a..c05814a 100644 --- a/README +++ b/README @@ -77,11 +77,6 @@ the cache sync command will fail. @@ -45,7 +45,7 @@ index 2499d9a7b638..c05814a2593b 100644 -------- diff --git a/etc/iscsid.conf b/etc/iscsid.conf -index fee11482a09b..3539ac4cd578 100644 +index 70985af..2f3a28c 100644 --- a/etc/iscsid.conf +++ b/etc/iscsid.conf @@ -19,7 +19,7 @@ @@ -105,10 +105,10 @@ index fee11482a09b..3539ac4cd578 100644 # For multipath configurations, you may want more than one session to be # created on each iface record. If node.session.nr_sessions is greater diff --git a/usr/idbm.c b/usr/idbm.c -index cd705fa2b033..0aa3870a76fd 100644 +index a2332cc..aed08f2 100644 --- a/usr/idbm.c +++ b/usr/idbm.c -@@ -518,9 +518,13 @@ idbm_recinfo_node(node_rec_t *r, recinfo_t *ri) +@@ -521,9 +521,13 @@ idbm_recinfo_node(node_rec_t *r, recinfo_t *ri) IDBM_SHOW, "None", "CRC32C", "CRC32C,None", "None,CRC32C", num, 1); sprintf(key, CONN_DATA_DIGEST, i); @@ -123,5 +123,5 @@ index cd705fa2b033..0aa3870a76fd 100644 __recinfo_int_o2(key, ri, r, conn[i].iscsi.IFMarker, IDBM_SHOW, "No", "Yes", num, 1); -- -2.14.4 +2.21.0 diff --git a/0007-use-var-for-config.patch b/0006-use-var-for-config.patch similarity index 91% rename from 0007-use-var-for-config.patch rename to 0006-use-var-for-config.patch index 1690126..db63b54 100644 --- a/0007-use-var-for-config.patch +++ b/0006-use-var-for-config.patch @@ -1,18 +1,19 @@ -From 478527833bdb8ebc9f4523c54e544b244bfe76f1 Mon Sep 17 00:00:00 2001 +From 9cae86dd15bf78ee9d221f722f723062eb6ad3d8 Mon Sep 17 00:00:00 2001 From: Chris Leech Date: Mon, 19 Nov 2012 16:38:45 -0800 -Subject: [PATCH 07/32] use var for config +Subject: [PATCH] use var for config --- README | 33 ++++++++++++++++----------------- doc/iscsiadm.8 | 8 ++++---- + doc/iscsid.8 | 2 +- usr/idbm.c | 6 +++--- usr/idbm.h | 13 +++++++------ usr/iface.h | 3 ++- - 5 files changed, 32 insertions(+), 31 deletions(-) + 6 files changed, 33 insertions(+), 32 deletions(-) diff --git a/README b/README -index c05814a2593b..326c3b01e608 100644 +index c05814a..326c3b0 100644 --- a/README +++ b/README @@ -172,8 +172,7 @@ Usage: iscsid [OPTION] @@ -146,10 +147,10 @@ index c05814a2593b..326c3b01e608 100644 Note that for iSNS the poll_interval does not have to be set. If not set, iscsid will only perform rediscovery when it gets a SCN from the server. diff --git a/doc/iscsiadm.8 b/doc/iscsiadm.8 -index a82805e28fb9..758a47c2d1fe 100644 +index bf23dd2..9cfce16 100644 --- a/doc/iscsiadm.8 +++ b/doc/iscsiadm.8 -@@ -241,7 +241,7 @@ This option is only valid for ping submode. +@@ -228,7 +228,7 @@ This option is only valid for ping submode. .TP \fB\-I\fR, \fB\-\-interface=\fI[iface]\fR The interface argument specifies the iSCSI interface to use for the operation. @@ -158,16 +159,16 @@ index a82805e28fb9..758a47c2d1fe 100644 iSCSI (qla4xxx) the iface config must have the hardware address (iface.hwaddress = port's MAC address) and the driver/transport_name (iface.transport_name). The iface's name is -@@ -318,7 +318,7 @@ If no other options are specified: for \fIdiscovery\fR, \fIdiscoverydb\fR and +@@ -301,7 +301,7 @@ If no other options are specified: for \fIdiscovery\fR, \fIdiscoverydb\fR and \fInode\fR, all of their respective records are displayed; for \fIsession\fR, all active sessions and connections are displayed; for \fIfw\fR, all boot firmware values are displayed; for \fIhost\fR, all iSCSI hosts are displayed; -and for \fIiface\fR, all ifaces setup in /etc/iscsi/ifaces are displayed. +and for \fIiface\fR, all ifaces setup in /var/lib/iscsi/ifaces are displayed. - .TP \fB\-n\fR, \fB\-\-name=\fIname\fR -@@ -703,10 +703,10 @@ The configuration file read by \fBiscsid\fR and \fBiscsiadm\fR on startup. + In node mode, specify a field \fIname\fR in a record. In flashnode submode +@@ -640,10 +640,10 @@ The configuration file read by \fBiscsid\fR and \fBiscsiadm\fR on startup. The file containing the iSCSI InitiatorName and InitiatorAlias read by \fBiscsid\fR and \fBiscsiadm\fR on startup. .TP @@ -178,13 +179,26 @@ index a82805e28fb9..758a47c2d1fe 100644 -/etc/iscsi/send_targets +/var/lib/iscsi/send_targets This directory contains the portals. + .SH "SEE ALSO" + .BR iscsid (8) +diff --git a/doc/iscsid.8 b/doc/iscsid.8 +index 6f9218f..0da0551 100644 +--- a/doc/iscsid.8 ++++ b/doc/iscsid.8 +@@ -65,7 +65,7 @@ and + .B iscsiadm + on startup. + .TP +-/etc/iscsi/nodes ++/var/lib/iscsi/nodes + Open-iSCSI persistent configuration database .SH "SEE ALSO" diff --git a/usr/idbm.c b/usr/idbm.c -index 0aa3870a76fd..ec33ce905dc1 100644 +index aed08f2..15802c3 100644 --- a/usr/idbm.c +++ b/usr/idbm.c -@@ -2926,9 +2926,9 @@ free_info: +@@ -2968,9 +2968,9 @@ free_info: int idbm_init(idbm_get_config_file_fn *fn) { /* make sure root db dir is there */ @@ -198,10 +212,10 @@ index 0aa3870a76fd..ec33ce905dc1 100644 return errno; } diff --git a/usr/idbm.h b/usr/idbm.h -index b83c0bb1cca8..2b05d7871be9 100644 +index 18c5025..6bdfd60 100644 --- a/usr/idbm.h +++ b/usr/idbm.h -@@ -29,12 +29,13 @@ +@@ -30,12 +30,13 @@ #include "list.h" #include "flashnode.h" @@ -222,7 +236,7 @@ index b83c0bb1cca8..2b05d7871be9 100644 #define ISNS_CONFIG_NAME "isns_config" diff --git a/usr/iface.h b/usr/iface.h -index 6c06f7f7d450..c8b9de9a7c3a 100644 +index 6c06f7f..c8b9de9 100644 --- a/usr/iface.h +++ b/usr/iface.h @@ -21,8 +21,9 @@ @@ -237,5 +251,5 @@ index 6c06f7f7d450..c8b9de9a7c3a 100644 struct iface_rec; struct list_head; -- -2.14.4 +2.21.0 diff --git a/0008-use-red-hat-for-name.patch b/0007-use-red-hat-for-name.patch similarity index 68% rename from 0008-use-red-hat-for-name.patch rename to 0007-use-red-hat-for-name.patch index dc9b853..2719565 100644 --- a/0008-use-red-hat-for-name.patch +++ b/0007-use-red-hat-for-name.patch @@ -1,7 +1,7 @@ -From ea35362504329e7fe86f4af17a88bed009c5069c Mon Sep 17 00:00:00 2001 +From 1ddee25396962a6bd966b98311881ed6d4cba87c Mon Sep 17 00:00:00 2001 From: Chris Leech Date: Mon, 19 Nov 2012 16:40:04 -0800 -Subject: [PATCH 08/32] use red hat for name +Subject: [PATCH] use red hat for name --- doc/iscsi-iname.8 | 2 +- @@ -9,31 +9,31 @@ Subject: [PATCH 08/32] use red hat for name 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/iscsi-iname.8 b/doc/iscsi-iname.8 -index a55d666d1af3..dd77ed9f3165 100644 +index 6a413f6..dd77ed9 100644 --- a/doc/iscsi-iname.8 +++ b/doc/iscsi-iname.8 @@ -14,7 +14,7 @@ generates a unique iSCSI node name on every invocation. Display help .TP .BI [-p=]\fIprefix\fP --Use the prefix passed in instead of the default "iqn.2005-03.org.open-iscsi" +-Use the prefix passed in instead of the default "iqn.2016-04.com.open-iscsi" +Use the prefix passed in instead of the default "iqn.1994-05.com.redhat" .SH AUTHORS Open-iSCSI project diff --git a/utils/iscsi-iname.c b/utils/iscsi-iname.c -index 6347edc46293..cb2f6c8b8651 100644 +index da850dc..29aa4ad 100644 --- a/utils/iscsi-iname.c +++ b/utils/iscsi-iname.c -@@ -73,7 +73,7 @@ main(int argc, char *argv[]) +@@ -80,7 +80,7 @@ main(int argc, char *argv[]) exit(0); } } else { -- prefix = "iqn.2005-03.org.open-iscsi"; +- prefix = "iqn.2016-04.com.open-iscsi"; + prefix = "iqn.1994-05.com.redhat"; } /* try to feed some entropy from the pool to MD5 in order to get -- -2.14.4 +2.21.0 diff --git a/0009-libiscsi.patch b/0008-libiscsi.patch similarity index 98% rename from 0009-libiscsi.patch rename to 0008-libiscsi.patch index b90686b..16f3544 100644 --- a/0009-libiscsi.patch +++ b/0008-libiscsi.patch @@ -1,32 +1,32 @@ -From ef17e73261b386a21e231aa702c65e58ee8f65cc Mon Sep 17 00:00:00 2001 +From af721a438031fa9f79db5de3b018c4b532ac2e0c Mon Sep 17 00:00:00 2001 From: rpm-build Date: Mon, 26 Jan 2015 12:57:11 -0800 -Subject: [PATCH 09/32] libiscsi +Subject: [PATCH] libiscsi --- Makefile | 2 + - libiscsi/Makefile | 61 ++ - libiscsi/libiscsi.c | 617 +++++++++++ - libiscsi/libiscsi.doxy | 1473 +++++++++++++++++++++++++++ - libiscsi/libiscsi.h | 344 +++++++ + libiscsi/Makefile | 65 + + libiscsi/libiscsi.c | 617 ++++++++ + libiscsi/libiscsi.doxy | 1473 +++++++++++++++++++ + libiscsi/libiscsi.h | 344 +++++ libiscsi/no_date_footer.html | 6 + - libiscsi/pylibiscsi.c | 709 +++++++++++++ + libiscsi/pylibiscsi.c | 709 +++++++++ libiscsi/setup.py | 9 + libiscsi/tests/test_discovery_firmware.c | 53 + - libiscsi/tests/test_discovery_sendtargets.c | 60 ++ - libiscsi/tests/test_get_auth.c | 70 ++ + libiscsi/tests/test_discovery_sendtargets.c | 60 + + libiscsi/tests/test_get_auth.c | 70 + libiscsi/tests/test_get_initiator_name.c | 38 + libiscsi/tests/test_get_network_config.c | 45 + libiscsi/tests/test_login.c | 52 + libiscsi/tests/test_logout.c | 51 + libiscsi/tests/test_params.c | 103 ++ - libiscsi/tests/test_set_auth.c | 58 ++ + libiscsi/tests/test_set_auth.c | 58 + usr/Makefile | 2 +- usr/discovery.c | 5 + usr/idbm.c | 6 +- usr/idbm.h | 3 + usr/iscsi_ipc.h | 2 + - 22 files changed, 3765 insertions(+), 4 deletions(-) + 22 files changed, 3769 insertions(+), 4 deletions(-) create mode 100644 libiscsi/Makefile create mode 100644 libiscsi/libiscsi.c create mode 100644 libiscsi/libiscsi.doxy @@ -45,10 +45,10 @@ Subject: [PATCH 09/32] libiscsi create mode 100644 libiscsi/tests/test_set_auth.c diff --git a/Makefile b/Makefile -index c533e9d0d016..80afe86d6558 100644 +index 7b445a5..4ab091f 100644 --- a/Makefile +++ b/Makefile -@@ -52,6 +52,7 @@ user: iscsiuio/Makefile +@@ -65,6 +65,7 @@ user: iscsiuio/Makefile $(MAKE) -C usr $(MAKE) -C utils $(MAKE) -C iscsiuio @@ -56,7 +56,7 @@ index c533e9d0d016..80afe86d6558 100644 @echo @echo "Compilation complete Output file" @echo "----------------------------------- ----------------" -@@ -72,6 +73,7 @@ iscsiuio/configure iscsiuio/Makefile.in: iscsiuio/configure.ac iscsiuio/Makefile +@@ -85,6 +86,7 @@ iscsiuio/configure iscsiuio/Makefile.in: iscsiuio/configure.ac iscsiuio/Makefile force: ; clean: @@ -66,7 +66,7 @@ index c533e9d0d016..80afe86d6558 100644 $(MAKE) -C utils clean diff --git a/libiscsi/Makefile b/libiscsi/Makefile new file mode 100644 -index 000000000000..317a7ec4db30 +index 0000000..53f9746 --- /dev/null +++ b/libiscsi/Makefile @@ -0,0 +1,65 @@ @@ -137,7 +137,7 @@ index 000000000000..317a7ec4db30 +-include .depend ../usr/.depend diff --git a/libiscsi/libiscsi.c b/libiscsi/libiscsi.c new file mode 100644 -index 000000000000..064e4b570d0b +index 0000000..064e4b5 --- /dev/null +++ b/libiscsi/libiscsi.c @@ -0,0 +1,617 @@ @@ -760,7 +760,7 @@ index 000000000000..064e4b570d0b +} diff --git a/libiscsi/libiscsi.doxy b/libiscsi/libiscsi.doxy new file mode 100644 -index 000000000000..7a5ff7f7cd5a +index 0000000..7a5ff7f --- /dev/null +++ b/libiscsi/libiscsi.doxy @@ -0,0 +1,1473 @@ @@ -2239,7 +2239,7 @@ index 000000000000..7a5ff7f7cd5a +SEARCHENGINE = NO diff --git a/libiscsi/libiscsi.h b/libiscsi/libiscsi.h new file mode 100644 -index 000000000000..756590e14d8b +index 0000000..756590e --- /dev/null +++ b/libiscsi/libiscsi.h @@ -0,0 +1,344 @@ @@ -2589,7 +2589,7 @@ index 000000000000..756590e14d8b +#endif diff --git a/libiscsi/no_date_footer.html b/libiscsi/no_date_footer.html new file mode 100644 -index 000000000000..1e0c6c4ab49e +index 0000000..1e0c6c4 --- /dev/null +++ b/libiscsi/no_date_footer.html @@ -0,0 +1,6 @@ @@ -2601,7 +2601,7 @@ index 000000000000..1e0c6c4ab49e + diff --git a/libiscsi/pylibiscsi.c b/libiscsi/pylibiscsi.c new file mode 100644 -index 000000000000..88008538f04f +index 0000000..8800853 --- /dev/null +++ b/libiscsi/pylibiscsi.c @@ -0,0 +1,709 @@ @@ -3316,7 +3316,7 @@ index 000000000000..88008538f04f +} diff --git a/libiscsi/setup.py b/libiscsi/setup.py new file mode 100644 -index 000000000000..caa4e66ca906 +index 0000000..caa4e66 --- /dev/null +++ b/libiscsi/setup.py @@ -0,0 +1,9 @@ @@ -3331,7 +3331,7 @@ index 000000000000..caa4e66ca906 + description = 'libiscsi python bindings', ext_modules = [module1]) diff --git a/libiscsi/tests/test_discovery_firmware.c b/libiscsi/tests/test_discovery_firmware.c new file mode 100644 -index 000000000000..76e852a37019 +index 0000000..76e852a --- /dev/null +++ b/libiscsi/tests/test_discovery_firmware.c @@ -0,0 +1,53 @@ @@ -3390,7 +3390,7 @@ index 000000000000..76e852a37019 +} diff --git a/libiscsi/tests/test_discovery_sendtargets.c b/libiscsi/tests/test_discovery_sendtargets.c new file mode 100644 -index 000000000000..1a3c12ef684b +index 0000000..1a3c12e --- /dev/null +++ b/libiscsi/tests/test_discovery_sendtargets.c @@ -0,0 +1,60 @@ @@ -3456,7 +3456,7 @@ index 000000000000..1a3c12ef684b +} diff --git a/libiscsi/tests/test_get_auth.c b/libiscsi/tests/test_get_auth.c new file mode 100644 -index 000000000000..5e234dadd0de +index 0000000..5e234da --- /dev/null +++ b/libiscsi/tests/test_get_auth.c @@ -0,0 +1,70 @@ @@ -3532,7 +3532,7 @@ index 000000000000..5e234dadd0de +} diff --git a/libiscsi/tests/test_get_initiator_name.c b/libiscsi/tests/test_get_initiator_name.c new file mode 100644 -index 000000000000..997c053e5bf6 +index 0000000..997c053 --- /dev/null +++ b/libiscsi/tests/test_get_initiator_name.c @@ -0,0 +1,38 @@ @@ -3576,7 +3576,7 @@ index 000000000000..997c053e5bf6 +} diff --git a/libiscsi/tests/test_get_network_config.c b/libiscsi/tests/test_get_network_config.c new file mode 100644 -index 000000000000..2dedd6102858 +index 0000000..2dedd61 --- /dev/null +++ b/libiscsi/tests/test_get_network_config.c @@ -0,0 +1,45 @@ @@ -3627,7 +3627,7 @@ index 000000000000..2dedd6102858 +} diff --git a/libiscsi/tests/test_login.c b/libiscsi/tests/test_login.c new file mode 100644 -index 000000000000..3eb70d63e111 +index 0000000..3eb70d6 --- /dev/null +++ b/libiscsi/tests/test_login.c @@ -0,0 +1,52 @@ @@ -3685,7 +3685,7 @@ index 000000000000..3eb70d63e111 +} diff --git a/libiscsi/tests/test_logout.c b/libiscsi/tests/test_logout.c new file mode 100644 -index 000000000000..b734dca58773 +index 0000000..b734dca --- /dev/null +++ b/libiscsi/tests/test_logout.c @@ -0,0 +1,51 @@ @@ -3742,7 +3742,7 @@ index 000000000000..b734dca58773 +} diff --git a/libiscsi/tests/test_params.c b/libiscsi/tests/test_params.c new file mode 100644 -index 000000000000..d3223be1e894 +index 0000000..d3223be --- /dev/null +++ b/libiscsi/tests/test_params.c @@ -0,0 +1,103 @@ @@ -3851,7 +3851,7 @@ index 000000000000..d3223be1e894 +} diff --git a/libiscsi/tests/test_set_auth.c b/libiscsi/tests/test_set_auth.c new file mode 100644 -index 000000000000..a21f88806ab9 +index 0000000..a21f888 --- /dev/null +++ b/libiscsi/tests/test_set_auth.c @@ -0,0 +1,58 @@ @@ -3914,20 +3914,20 @@ index 000000000000..a21f88806ab9 + return rc; +} diff --git a/usr/Makefile b/usr/Makefile -index f9445adabbb0..8751d0d05468 100644 +index 3bb0cb4..8ae6e07 100644 --- a/usr/Makefile +++ b/usr/Makefile -@@ -35,7 +35,7 @@ endif +@@ -37,7 +37,7 @@ PKG_CONFIG = /usr/bin/pkg-config CFLAGS ?= -O2 -g WARNFLAGS ?= -Wall -Wstrict-prototypes CFLAGS += $(WARNFLAGS) -I../include -I. -D_GNU_SOURCE \ - -I$(TOPDIR)/libopeniscsiusr + -I$(TOPDIR)/libopeniscsiusr -DISNS_ENABLE + CFLAGS += $(shell $(PKG_CONFIG) --cflags libkmod) ISCSI_LIB = -L$(TOPDIR)/libopeniscsiusr -lopeniscsiusr - PROGRAMS = iscsid iscsiadm iscsistart - + LDFLAGS += $(shell $(PKG_CONFIG) --libs libkmod) diff --git a/usr/discovery.c b/usr/discovery.c -index 8001af6fe452..02b77f02b644 100644 +index 199c160..d17a250 100644 --- a/usr/discovery.c +++ b/usr/discovery.c @@ -36,6 +36,7 @@ @@ -3968,38 +3968,38 @@ index 8001af6fe452..02b77f02b644 100644 int discovery_fw(void *data, struct iface_rec *iface, struct list_head *rec_list) diff --git a/usr/idbm.c b/usr/idbm.c -index ec33ce905dc1..6b651765f19e 100644 +index 15802c3..3184c77 100644 --- a/usr/idbm.c +++ b/usr/idbm.c -@@ -1709,9 +1709,9 @@ int idbm_print_all_discovery(int info_level) +@@ -1725,9 +1725,9 @@ int idbm_print_all_discovery(int info_level) * fn should return -1 if it skipped the rec, an ISCSI_ERR error code if * the operation failed or 0 if fn was run successfully. */ --static int idbm_for_each_iface(int *found, void *data, -- idbm_iface_op_fn *fn, -- char *targetname, int tpgt, char *ip, int port) -+int idbm_for_each_iface(int *found, void *data, -+ idbm_iface_op_fn *fn, -+ char *targetname, int tpgt, char *ip, int port) +-static int idbm_for_each_iface(int *found, void *data, idbm_iface_op_fn *fn, +- char *targetname, int tpgt, char *ip, int port, +- bool ruw_lock) ++int idbm_for_each_iface(int *found, void *data, idbm_iface_op_fn *fn, ++ char *targetname, int tpgt, char *ip, int port, ++ bool ruw_lock) { DIR *iface_dirfd; struct dirent *iface_dent; diff --git a/usr/idbm.h b/usr/idbm.h -index 2b05d7871be9..b9b1810f78f2 100644 +index 6bdfd60..c6982e4 100644 --- a/usr/idbm.h +++ b/usr/idbm.h -@@ -102,6 +102,9 @@ struct rec_op_data { +@@ -103,6 +103,9 @@ struct rec_op_data { node_rec_t *match_rec; idbm_iface_op_fn *fn; }; -+extern int idbm_for_each_iface(int *found, void *data, -+ idbm_iface_op_fn *fn, -+ char *targetname, int tpgt, char *ip, int port); - extern int idbm_for_each_portal(int *found, void *data, - idbm_portal_op_fn *fn, char *targetname); ++extern int idbm_for_each_iface(int *found, void *data, idbm_iface_op_fn *fn, ++ char *targetname, int tpgt, char *ip, int port, ++ bool ruw_lock); + extern int idbm_for_each_portal(int *found, void *data, idbm_portal_op_fn *fn, + char *targetname, bool ruw_lock); extern int idbm_for_each_node(int *found, void *data, diff --git a/usr/iscsi_ipc.h b/usr/iscsi_ipc.h -index 47857dd9b0ca..fb8e96552551 100644 +index 47857dd..fb8e965 100644 --- a/usr/iscsi_ipc.h +++ b/usr/iscsi_ipc.h @@ -162,4 +162,6 @@ struct iscsi_ipc { @@ -4010,5 +4010,5 @@ index 47857dd9b0ca..fb8e96552551 100644 + #endif /* ISCSI_IPC_H */ -- -2.14.4 +2.21.0 diff --git a/0018-Add-macros-to-release-GIL-lock.patch b/0009-Add-macros-to-release-GIL-lock.patch similarity index 90% rename from 0018-Add-macros-to-release-GIL-lock.patch rename to 0009-Add-macros-to-release-GIL-lock.patch index 37a5d01..6804133 100644 --- a/0018-Add-macros-to-release-GIL-lock.patch +++ b/0009-Add-macros-to-release-GIL-lock.patch @@ -1,7 +1,7 @@ -From bd26fd7e7f91e5c4c6903c3d7e1a375a14261a48 Mon Sep 17 00:00:00 2001 +From 3df19ccba0af40da8cdb15c41e1bcd08ce25fbd9 Mon Sep 17 00:00:00 2001 From: Jiri Konecny Date: Mon, 11 May 2015 13:16:26 +0200 -Subject: [PATCH 18/32] Add macros to release GIL lock +Subject: [PATCH] Add macros to release GIL lock Other threads are blocked when GIL is not released before the time consuming functions. @@ -10,7 +10,7 @@ functions. 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/libiscsi/pylibiscsi.c b/libiscsi/pylibiscsi.c -index 88008538f04f..40b59553a28e 100644 +index 8800853..40b5955 100644 --- a/libiscsi/pylibiscsi.c +++ b/libiscsi/pylibiscsi.c @@ -364,8 +364,13 @@ static PyObject *PyIscsiNode_str(PyObject *self) @@ -52,5 +52,5 @@ index 88008538f04f..40b59553a28e 100644 libiscsi_get_error_string(context)); return NULL; -- -2.14.4 +2.21.0 diff --git a/0019-libiscsi-introduce-sessions-API.patch b/0010-libiscsi-introduce-sessions-API.patch similarity index 95% rename from 0019-libiscsi-introduce-sessions-API.patch rename to 0010-libiscsi-introduce-sessions-API.patch index 5bc1b38..b6c3728 100644 --- a/0019-libiscsi-introduce-sessions-API.patch +++ b/0010-libiscsi-introduce-sessions-API.patch @@ -1,17 +1,17 @@ -From 7671cd56d36a76e954318cbdce3f08fc40aa3fe4 Mon Sep 17 00:00:00 2001 +From bca0b3a085b7a169aa40d81ed7997c73fde8b4d3 Mon Sep 17 00:00:00 2001 From: Peter Hatina Date: Mon, 5 Oct 2015 16:50:36 -0700 -Subject: [PATCH 19/32] libiscsi introduce sessions API +Subject: [PATCH] libiscsi introduce sessions API --- - libiscsi/libiscsi.c | 125 ++++++++++++++++++++++++++++++++++++++++++++++++++++ - libiscsi/libiscsi.h | 56 +++++++++++++++++++++++ + libiscsi/libiscsi.c | 125 ++++++++++++++++++++++++++++++++++++++++++++ + libiscsi/libiscsi.h | 56 ++++++++++++++++++++ usr/iscsi_sysfs.c | 6 +++ usr/iscsi_sysfs.h | 2 + 4 files changed, 189 insertions(+) diff --git a/libiscsi/libiscsi.c b/libiscsi/libiscsi.c -index 064e4b570d0b..755c18ca8e3b 100644 +index 064e4b5..755c18c 100644 --- a/libiscsi/libiscsi.c +++ b/libiscsi/libiscsi.c @@ -3,6 +3,7 @@ @@ -154,7 +154,7 @@ index 064e4b570d0b..755c18ca8e3b 100644 const struct libiscsi_node *node, const char *parameter, const char *value) diff --git a/libiscsi/libiscsi.h b/libiscsi/libiscsi.h -index 756590e14d8b..a9891f48b7d6 100644 +index 756590e..a9891f4 100644 --- a/libiscsi/libiscsi.h +++ b/libiscsi/libiscsi.h @@ -3,6 +3,7 @@ @@ -242,7 +242,7 @@ index 756590e14d8b..a9891f48b7d6 100644 * * Set the given nodes iSCSI parameter named by \e parameter to value \e value. diff --git a/usr/iscsi_sysfs.c b/usr/iscsi_sysfs.c -index fdc26c7bd9ba..80b7b0210fd1 100644 +index 418f51b..6febba2 100644 --- a/usr/iscsi_sysfs.c +++ b/usr/iscsi_sysfs.c @@ -3,6 +3,7 @@ @@ -253,7 +253,7 @@ index fdc26c7bd9ba..80b7b0210fd1 100644 * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published -@@ -1146,6 +1147,11 @@ free_info: +@@ -1151,6 +1152,11 @@ free_info: return rc; } @@ -266,7 +266,7 @@ index fdc26c7bd9ba..80b7b0210fd1 100644 int *nr_found, iscsi_sysfs_iface_op_fn *fn) diff --git a/usr/iscsi_sysfs.h b/usr/iscsi_sysfs.h -index cdcefa65f683..12ad87f96c8c 100644 +index 1d0377f..909db34 100644 --- a/usr/iscsi_sysfs.h +++ b/usr/iscsi_sysfs.h @@ -3,6 +3,7 @@ @@ -286,5 +286,5 @@ index cdcefa65f683..12ad87f96c8c 100644 int *nr_found, iscsi_sysfs_iface_op_fn *fn); -- -2.14.4 +2.21.0 diff --git a/0011-iscsiuio-systemd-unit-files.patch b/0011-iscsiuio-systemd-unit-files.patch deleted file mode 100644 index da97e01..0000000 --- a/0011-iscsiuio-systemd-unit-files.patch +++ /dev/null @@ -1,53 +0,0 @@ -From f16f7f90721c9d6965e48c7338a600d23b58e19d Mon Sep 17 00:00:00 2001 -From: Chris Leech -Date: Tue, 22 Jan 2013 14:27:12 -0800 -Subject: [PATCH 11/32] iscsiuio systemd unit files - ---- - etc/systemd/iscsiuio.service | 17 +++++++++++++++++ - etc/systemd/iscsiuio.socket | 9 +++++++++ - 2 files changed, 26 insertions(+) - create mode 100644 etc/systemd/iscsiuio.service - create mode 100644 etc/systemd/iscsiuio.socket - -diff --git a/etc/systemd/iscsiuio.service b/etc/systemd/iscsiuio.service -new file mode 100644 -index 000000000000..f0410b76b80e ---- /dev/null -+++ b/etc/systemd/iscsiuio.service -@@ -0,0 +1,17 @@ -+[Unit] -+Description=iSCSI UserSpace I/O driver -+Documentation=man:iscsiuio(8) -+DefaultDependencies=no -+Conflicts=shutdown.target -+Requires=iscsid.service -+BindTo=iscsid.service -+After=network.target -+Before=remote-fs-pre.target iscsid.service -+ -+[Service] -+Type=forking -+PIDFile=/var/run/iscsiuio.pid -+ExecStart=/usr/sbin/iscsiuio -+ -+[Install] -+WantedBy=multi-user.target -diff --git a/etc/systemd/iscsiuio.socket b/etc/systemd/iscsiuio.socket -new file mode 100644 -index 000000000000..d42cedc161a3 ---- /dev/null -+++ b/etc/systemd/iscsiuio.socket -@@ -0,0 +1,9 @@ -+[Unit] -+Description=Open-iSCSI iscsiuio Socket -+Documentation=man:iscsiuio(8) -+ -+[Socket] -+ListenStream=@ISCSID_UIP_ABSTRACT_NAMESPACE -+ -+[Install] -+WantedBy=sockets.target --- -2.14.4 - diff --git a/0021-libiscsi-fix-discovery-request-timeout-regression.patch b/0011-libiscsi-fix-discovery-request-timeout-regression.patch similarity index 83% rename from 0021-libiscsi-fix-discovery-request-timeout-regression.patch rename to 0011-libiscsi-fix-discovery-request-timeout-regression.patch index 9be3ff1..8771f6a 100644 --- a/0021-libiscsi-fix-discovery-request-timeout-regression.patch +++ b/0011-libiscsi-fix-discovery-request-timeout-regression.patch @@ -1,14 +1,14 @@ -From 1aa35262d566d829d711bc746f944dee5c2d9e7a Mon Sep 17 00:00:00 2001 +From 2e660a78632545e98f7c9e2ffb8518512c0db5ff Mon Sep 17 00:00:00 2001 From: rpm-build Date: Tue, 28 Feb 2017 09:00:41 -0800 -Subject: [PATCH 21/32] libiscsi: fix discovery request timeout regression +Subject: [PATCH] libiscsi: fix discovery request timeout regression --- libiscsi/libiscsi.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libiscsi/libiscsi.c b/libiscsi/libiscsi.c -index 755c18ca8e3b..bb17dfcafded 100644 +index 755c18c..bb17dfc 100644 --- a/libiscsi/libiscsi.c +++ b/libiscsi/libiscsi.c @@ -136,6 +136,7 @@ int libiscsi_discover_sendtargets(struct libiscsi_context *context, @@ -28,5 +28,5 @@ index 755c18ca8e3b..bb17dfcafded 100644 rc = idbm_bind_ifaces_to_nodes(discovery_fw, &drec, &ifaces, &rec_list); if (rc) { -- -2.14.4 +2.21.0 diff --git a/0012-Don-t-check-for-autostart-sessions-if-iscsi-is-not-u.patch b/0012-Don-t-check-for-autostart-sessions-if-iscsi-is-not-u.patch deleted file mode 100644 index 9980d61..0000000 --- a/0012-Don-t-check-for-autostart-sessions-if-iscsi-is-not-u.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 9807bf0a042238891f2008a5a6d70acfd6724b12 Mon Sep 17 00:00:00 2001 -From: Chris Leech -Date: Tue, 28 May 2013 13:12:27 -0700 -Subject: [PATCH 12/32] Don't check for autostart sessions if iscsi is not used - (bug #951951) - -Change conditional startup in iscsi.service to check for a non-empty -nodes directory, instead of initiator-name. This fits better with what -it's doing, as there's no need to scan for autostart node records if -there are no node records at all. ---- - etc/systemd/iscsi.service | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/etc/systemd/iscsi.service b/etc/systemd/iscsi.service -index 0309e2fc9892..d5712bd3779b 100644 ---- a/etc/systemd/iscsi.service -+++ b/etc/systemd/iscsi.service -@@ -5,7 +5,7 @@ DefaultDependencies=no - Conflicts=shutdown.target - After=systemd-remount-fs.service network.target iscsid.service iscsiuio.service - Before=remote-fs-pre.target --ConditionPathExists=/etc/iscsi/initiatorname.iscsi -+ConditionDirectoryNotEmpty=/var/lib/iscsi/nodes - - [Service] - Type=oneshot --- -2.14.4 - diff --git a/0022-libiscsi-format-security-build-errors.patch b/0012-libiscsi-format-security-build-errors.patch similarity index 84% rename from 0022-libiscsi-format-security-build-errors.patch rename to 0012-libiscsi-format-security-build-errors.patch index 87dd812..19244b3 100644 --- a/0022-libiscsi-format-security-build-errors.patch +++ b/0012-libiscsi-format-security-build-errors.patch @@ -1,14 +1,14 @@ -From 1b2b6b683bd7ca3a7030889daf8c326dda797319 Mon Sep 17 00:00:00 2001 +From 3040b7530eda1ab5625d76783dc7b8cf595a0ef0 Mon Sep 17 00:00:00 2001 From: rpm-build Date: Tue, 28 Feb 2017 10:06:42 -0800 -Subject: [PATCH 22/32] libiscsi format-security build errors +Subject: [PATCH] libiscsi format-security build errors --- libiscsi/libiscsi.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libiscsi/libiscsi.c b/libiscsi/libiscsi.c -index bb17dfcafded..7003388e3346 100644 +index bb17dfc..7003388 100644 --- a/libiscsi/libiscsi.c +++ b/libiscsi/libiscsi.c @@ -177,7 +177,8 @@ int libiscsi_discover_sendtargets(struct libiscsi_context *context, @@ -31,5 +31,5 @@ index bb17dfcafded..7003388e3346 100644 } -- -2.14.4 +2.21.0 diff --git a/0023-libiscsi-fix-build-to-use-libopeniscsiusr.patch b/0013-libiscsi-fix-build-to-use-libopeniscsiusr.patch similarity index 80% rename from 0023-libiscsi-fix-build-to-use-libopeniscsiusr.patch rename to 0013-libiscsi-fix-build-to-use-libopeniscsiusr.patch index 92667f2..65688a7 100644 --- a/0023-libiscsi-fix-build-to-use-libopeniscsiusr.patch +++ b/0013-libiscsi-fix-build-to-use-libopeniscsiusr.patch @@ -1,17 +1,17 @@ -From b0d26441cebf6f1d78a2b4523ee9c348578b3d91 Mon Sep 17 00:00:00 2001 +From 123fc55dd8ad98c9afd39bf0824b3d31d5e93214 Mon Sep 17 00:00:00 2001 From: rpm-build Date: Thu, 24 May 2018 15:17:05 -0700 -Subject: [PATCH 23/32] libiscsi fix build to use libopeniscsiusr +Subject: [PATCH] libiscsi fix build to use libopeniscsiusr --- libiscsi/Makefile | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/libiscsi/Makefile b/libiscsi/Makefile -index 317a7ec4db30..1196bb5c0cf4 100644 +index 53f9746..f2cf248 100644 --- a/libiscsi/Makefile +++ b/libiscsi/Makefile -@@ -4,7 +4,9 @@ OSNAME=$(shell uname -s) +@@ -8,7 +8,9 @@ OSNAME=$(shell uname -s) OPTFLAGS ?= -O2 -g WARNFLAGS ?= -Wall -Wstrict-prototypes CFLAGS = $(OPTFLAGS) $(WARNFLAGS) -I../include -I../usr \ @@ -22,7 +22,7 @@ index 317a7ec4db30..1196bb5c0cf4 100644 LIB = libiscsi.so.0 TESTS = tests/test_discovery_sendtargets tests/test_discovery_firmware TESTS += tests/test_login tests/test_logout tests/test_params -@@ -19,7 +21,7 @@ FW_PARAM_SRCS = fw_entry.o prom_lex.o prom_parse.tab.o fwparam_ppc.o fwparam_sys +@@ -23,7 +25,7 @@ FW_PARAM_SRCS = fw_entry.o prom_lex.o prom_parse.tab.o fwparam_ppc.o fwparam_sys # sources shared with the userspace utils, note we build these separately # to get PIC versions. COMMON_OBJS = $(patsubst %.o, common-objs/%.o, $(COMMON_SRCS)) @@ -32,5 +32,5 @@ index 317a7ec4db30..1196bb5c0cf4 100644 # Flags for the tests -- -2.14.4 +2.21.0 diff --git a/0014-libiscsi-fix-build-against-latest-upstream-again.patch b/0014-libiscsi-fix-build-against-latest-upstream-again.patch new file mode 100644 index 0000000..ef2c891 --- /dev/null +++ b/0014-libiscsi-fix-build-against-latest-upstream-again.patch @@ -0,0 +1,66 @@ +From 039700890e11dff3323241349d3858f258c09cc0 Mon Sep 17 00:00:00 2001 +From: Chris Leech +Date: Thu, 7 Nov 2019 09:16:17 -0800 +Subject: [PATCH] libiscsi: fix build against latest upstream, again + +--- + libiscsi/Makefile | 4 ++-- + libiscsi/libiscsi.c | 6 +++--- + 2 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/libiscsi/Makefile b/libiscsi/Makefile +index f2cf248..462d666 100644 +--- a/libiscsi/Makefile ++++ b/libiscsi/Makefile +@@ -10,7 +10,7 @@ WARNFLAGS ?= -Wall -Wstrict-prototypes + CFLAGS = $(OPTFLAGS) $(WARNFLAGS) -I../include -I../usr \ + -D$(OSNAME) -fPIC -D_GNU_SOURCE -fvisibility=hidden \ + -I../libopeniscsiusr +-LDFLAGS = -L../libopeniscsiusr -lopeniscsiusr ++LDFLAGS = -L../libopeniscsiusr -lopeniscsiusr -lkmod -lcrypto + LIB = libiscsi.so.0 + TESTS = tests/test_discovery_sendtargets tests/test_discovery_firmware + TESTS += tests/test_login tests/test_logout tests/test_params +@@ -19,7 +19,7 @@ TESTS += tests/test_set_auth tests/test_get_auth + + COMMON_SRCS = sysdeps.o + # sources shared between iscsid, iscsiadm and iscsistart +-ISCSI_LIB_SRCS = netlink.o transport.o cxgbi.o be2iscsi.o iscsi_timer.o initiator_common.o iscsi_err.o session_info.o iscsi_util.o io.o auth.o discovery.o login.o log.o md5.o sha1.o iface.o idbm.o sysfs.o iscsi_sysfs.o iscsi_net_util.o iscsid_req.o iser.o uip_mgmt_ipc.o ++ISCSI_LIB_SRCS = netlink.o transport.o cxgbi.o be2iscsi.o iscsi_timer.o initiator_common.o iscsi_err.o session_info.o iscsi_util.o io.o auth.o discovery.o login.o log.o iface.o idbm.o sysfs.o iscsi_sysfs.o iscsi_net_util.o iscsid_req.o iser.o uip_mgmt_ipc.o + FW_PARAM_SRCS = fw_entry.o prom_lex.o prom_parse.tab.o fwparam_ppc.o fwparam_sysfs.o + + # sources shared with the userspace utils, note we build these separately +diff --git a/libiscsi/libiscsi.c b/libiscsi/libiscsi.c +index 7003388..c598aee 100644 +--- a/libiscsi/libiscsi.c ++++ b/libiscsi/libiscsi.c +@@ -429,7 +429,7 @@ int libiscsi_node_login(struct libiscsi_context *context, + + CHECK(idbm_for_each_iface(&nr_found, (void*)node->iface, login_helper, + (char *)node->name, node->tpgt, +- (char *)node->address, node->port)) ++ (char *)node->address, node->port, false)) + if (nr_found == 0) { + strcpy(context->error_str, "No such node"); + rc = ENODEV; +@@ -615,7 +615,7 @@ int libiscsi_node_set_parameter(struct libiscsi_context *context, + + CHECK(idbm_for_each_iface(&nr_found, ¶ms, idbm_node_set_param, + (char *)node->name, node->tpgt, +- (char *)node->address, node->port)) ++ (char *)node->address, node->port, false)) + if (nr_found == 0) { + strcpy(context->error_str, "No such node"); + rc = ENODEV; +@@ -677,7 +677,7 @@ int libiscsi_node_get_parameter(struct libiscsi_context *context, + as most settings should be the same independent of the iface. */ + CHECK(idbm_for_each_iface(&nr_found, context, get_parameter_helper, + (char *)node->name, node->tpgt, +- (char *)node->address, node->port)) ++ (char *)node->address, node->port, false)) + if (nr_found == 0) { + strcpy(context->error_str, "No such node"); + rc = ENODEV; +-- +2.21.0 + diff --git a/0014-update-handling-of-boot-sessions.patch b/0014-update-handling-of-boot-sessions.patch deleted file mode 100644 index 953bef9..0000000 --- a/0014-update-handling-of-boot-sessions.patch +++ /dev/null @@ -1,55 +0,0 @@ -From c7b743486c6a499a037744760846abdb42959808 Mon Sep 17 00:00:00 2001 -From: Chris Leech -Date: Wed, 26 Feb 2014 16:33:48 -0800 -Subject: [PATCH 14/32] update handling of boot sessions - -force start iscsiuio if needed, socket activation does not seem to be -working for recovery ---- - etc/systemd/iscsi-mark-root-nodes | 29 +++++++++++++++++++++++------ - 1 file changed, 23 insertions(+), 6 deletions(-) - -diff --git a/etc/systemd/iscsi-mark-root-nodes b/etc/systemd/iscsi-mark-root-nodes -index 157be62b4041..6bddf6c5ccc1 100644 ---- a/etc/systemd/iscsi-mark-root-nodes -+++ b/etc/systemd/iscsi-mark-root-nodes -@@ -1,13 +1,30 @@ - #!/bin/bash - - ISCSIADM=/sbin/iscsiadm -+start_iscsid=0 -+start_iscsiuio=0 - --$ISCSIADM -m session >/dev/null 2>&1 || exit 0 -+while read t num p target flash; do -+ # strip tag number from portal, keep "ip:port" -+ portal=${p%,*} -+ transport=${t%:} - --$ISCSIADM -m session | while read t num i target; do -- ip=${i%:*} -- $ISCSIADM -m node -p $ip -T $target -o update -n node.startup -v onboot --done -+ $ISCSIADM -m node -p $portal -T $target -o update -n node.startup -v onboot - --systemctl start iscsid.service -+ start_iscsid=1 -+ -+ if [ "$transport" = bnx2i ] || [ "$transport" = qedi ]; then -+ start_iscsiuio=1 -+ fi -+done < <( $ISCSIADM -m session ) -+ -+# force iscsid and iscsiuio to start if needed for -+# recovering sessions created in the initrd -+ -+if [ "$start_iscsid" -eq 1 ]; then -+ systemctl --no-block start iscsid.service -+fi -+if [ "$start_iscsiuio" -eq 1 ]; then -+ systemctl --no-block start iscsiuio.service -+fi - --- -2.14.4 - diff --git a/0010-remove-the-offload-boot-supported-ifdef.patch b/0015-remove-the-offload-boot-supported-ifdef.patch similarity index 86% rename from 0010-remove-the-offload-boot-supported-ifdef.patch rename to 0015-remove-the-offload-boot-supported-ifdef.patch index 3fe3789..d63dbd9 100644 --- a/0010-remove-the-offload-boot-supported-ifdef.patch +++ b/0015-remove-the-offload-boot-supported-ifdef.patch @@ -1,14 +1,14 @@ -From 71b576b10a03651f67173d19883a929e91a3423a Mon Sep 17 00:00:00 2001 +From d0689253c9e2eb78fc5296adb109aba4d35a13fd Mon Sep 17 00:00:00 2001 From: Chris Leech Date: Mon, 19 Nov 2012 17:09:24 -0800 -Subject: [PATCH 10/32] remove the offload boot supported ifdef +Subject: [PATCH] remove the offload boot supported ifdef --- usr/iface.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/usr/iface.c b/usr/iface.c -index 137138f5af67..889fe8cd8202 100644 +index 645b0b8..9cd07fd 100644 --- a/usr/iface.c +++ b/usr/iface.c @@ -993,6 +993,7 @@ int iface_setup_from_boot_context(struct iface_rec *iface, @@ -41,5 +41,5 @@ index 137138f5af67..889fe8cd8202 100644 return 0; -- -2.14.4 +2.21.0 diff --git a/0015-update-iscsi.service-for-boot-session-recovery.patch b/0015-update-iscsi.service-for-boot-session-recovery.patch deleted file mode 100644 index 96454d2..0000000 --- a/0015-update-iscsi.service-for-boot-session-recovery.patch +++ /dev/null @@ -1,34 +0,0 @@ -From f349a706ec083574fbf7ed1e479fdfebde7023b8 Mon Sep 17 00:00:00 2001 -From: Chris Leech -Date: Fri, 14 Mar 2014 09:22:21 -0700 -Subject: [PATCH 15/32] update iscsi.service for boot session recovery - ---- - etc/systemd/iscsi.service | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/etc/systemd/iscsi.service b/etc/systemd/iscsi.service -index d5712bd3779b..3de76c5b07ec 100644 ---- a/etc/systemd/iscsi.service -+++ b/etc/systemd/iscsi.service -@@ -5,14 +5,15 @@ DefaultDependencies=no - Conflicts=shutdown.target - After=systemd-remount-fs.service network.target iscsid.service iscsiuio.service - Before=remote-fs-pre.target --ConditionDirectoryNotEmpty=/var/lib/iscsi/nodes -+ConditionDirectoryNotEmpty=|/var/lib/iscsi/nodes -+ConditionDirectoryNotEmpty=|/sys/class/iscsi_session - - [Service] - Type=oneshot - RemainAfterExit=true - ExecStart=/usr/libexec/iscsi-mark-root-nodes -+SuccessExitStatus=21 - ExecStart=/sbin/iscsiadm -m node --loginall=automatic --ExecStop=/bin/sync - ExecStop=/sbin/iscsiadm -m node --logoutall=automatic - ExecReload=/sbin/iscsiadm -m node --loginall=automatic - --- -2.14.4 - diff --git a/0013-Revert-iscsiadm-return-error-when-login-fails.patch b/0016-Revert-iscsiadm-return-error-when-login-fails.patch similarity index 82% rename from 0013-Revert-iscsiadm-return-error-when-login-fails.patch rename to 0016-Revert-iscsiadm-return-error-when-login-fails.patch index 23e5e7d..0420b01 100644 --- a/0013-Revert-iscsiadm-return-error-when-login-fails.patch +++ b/0016-Revert-iscsiadm-return-error-when-login-fails.patch @@ -1,7 +1,7 @@ -From 6629618e3581cbe632b7408a49437270bc04a8d4 Mon Sep 17 00:00:00 2001 +From ccb9d70a0dad7c42f926f1680ae708a5ae3d3696 Mon Sep 17 00:00:00 2001 From: Chris Leech Date: Mon, 24 Feb 2014 09:33:33 -0800 -Subject: [PATCH 13/32] Revert "iscsiadm: return error when login fails" +Subject: [PATCH] Revert "iscsiadm: return error when login fails" This reverts commit fc2a8e9a2911bc76f961fe3e4a159fab9b8b9691. @@ -11,7 +11,7 @@ Done to address RHBZ #1015563 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/usr/session_mgmt.c b/usr/session_mgmt.c -index 596085b1f640..07f587d2bafb 100644 +index 0500f15..1e1f2bc 100644 --- a/usr/session_mgmt.c +++ b/usr/session_mgmt.c @@ -178,12 +178,12 @@ int iscsi_login_portal(void *data, struct list_head *list, struct node_rec *rec) @@ -30,5 +30,5 @@ index 596085b1f640..07f587d2bafb 100644 } -- -2.14.4 +2.21.0 diff --git a/0016-updates-to-iscsi.service.patch b/0016-updates-to-iscsi.service.patch deleted file mode 100644 index edb9005..0000000 --- a/0016-updates-to-iscsi.service.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 954ab51516734aaeed01a195a6e70b825b0bf10a Mon Sep 17 00:00:00 2001 -From: Chris Leech -Date: Wed, 17 Sep 2014 09:58:39 -0700 -Subject: [PATCH 16/32] updates to iscsi.service - -Resolves: #1126524 -Resolves: #1111925 ---- - etc/systemd/iscsi.service | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/etc/systemd/iscsi.service b/etc/systemd/iscsi.service -index 3de76c5b07ec..ad7be34d5918 100644 ---- a/etc/systemd/iscsi.service -+++ b/etc/systemd/iscsi.service -@@ -5,17 +5,17 @@ DefaultDependencies=no - Conflicts=shutdown.target - After=systemd-remount-fs.service network.target iscsid.service iscsiuio.service - Before=remote-fs-pre.target -+Wants=remote-fs-pre.target - ConditionDirectoryNotEmpty=|/var/lib/iscsi/nodes - ConditionDirectoryNotEmpty=|/sys/class/iscsi_session - - [Service] - Type=oneshot - RemainAfterExit=true --ExecStart=/usr/libexec/iscsi-mark-root-nodes --SuccessExitStatus=21 --ExecStart=/sbin/iscsiadm -m node --loginall=automatic --ExecStop=/sbin/iscsiadm -m node --logoutall=automatic --ExecReload=/sbin/iscsiadm -m node --loginall=automatic -+ExecStart=-/usr/libexec/iscsi-mark-root-nodes -+ExecStart=-/sbin/iscsiadm -m node --loginall=automatic -+ExecStop=-/sbin/iscsiadm -m node --logoutall=automatic -+ExecReload=-/sbin/iscsiadm -m node --loginall=automatic - - [Install] - WantedBy=sysinit.target --- -2.14.4 - diff --git a/0024-dont-install-scripts.patch b/0017-dont-install-scripts.patch similarity index 57% rename from 0024-dont-install-scripts.patch rename to 0017-dont-install-scripts.patch index c4fc227..14c3683 100644 --- a/0024-dont-install-scripts.patch +++ b/0017-dont-install-scripts.patch @@ -1,19 +1,19 @@ -From 09485b397990aca06d5e98a855bab2444c9ec572 Mon Sep 17 00:00:00 2001 +From f524e332835b2b59d3f3ff8a67814ef2d58a2857 Mon Sep 17 00:00:00 2001 From: rpm-build Date: Fri, 25 May 2018 09:39:07 -0700 -Subject: [PATCH 24/32] dont install scripts +Subject: [PATCH] dont install scripts --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile -index 80afe86d6558..a35082daa9f9 100644 +index 4ab091f..7e6b734 100644 --- a/Makefile +++ b/Makefile -@@ -99,7 +99,7 @@ install_udev_rules: - $(INSTALL) -d $(DESTDIR)$(rulesdir) - $(INSTALL) -m 644 $(RULESFILES) $(DESTDIR)/$(rulesdir) +@@ -116,7 +116,7 @@ install_systemd: + $(INSTALL) -d $(DESTDIR)$(systemddir) + $(INSTALL) -m 644 $(SYSTEMDFILES) $(DESTDIR)/$(systemddir) -install_programs: $(PROGRAMS) $(SCRIPTS) +install_programs: $(PROGRAMS) # $(SCRIPTS) @@ -21,5 +21,5 @@ index 80afe86d6558..a35082daa9f9 100644 $(INSTALL) -m 755 $^ $(DESTDIR)$(sbindir) -- -2.14.4 +2.21.0 diff --git a/0017-make-session-shutdown-a-seperate-service.patch.patch b/0017-make-session-shutdown-a-seperate-service.patch.patch deleted file mode 100644 index e1ae024..0000000 --- a/0017-make-session-shutdown-a-seperate-service.patch.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 3815643d7db65487fa2b7058dd612ddf2549f85a Mon Sep 17 00:00:00 2001 -From: rpm-build -Date: Tue, 13 Jan 2015 16:30:01 -0800 -Subject: [PATCH 17/32] make-session-shutdown-a-seperate-service.patch - ---- - etc/systemd/iscsi-shutdown.service | 14 ++++++++++++++ - etc/systemd/iscsi.service | 3 +-- - 2 files changed, 15 insertions(+), 2 deletions(-) - create mode 100644 etc/systemd/iscsi-shutdown.service - -diff --git a/etc/systemd/iscsi-shutdown.service b/etc/systemd/iscsi-shutdown.service -new file mode 100644 -index 000000000000..23758e959ff2 ---- /dev/null -+++ b/etc/systemd/iscsi-shutdown.service -@@ -0,0 +1,14 @@ -+[Unit] -+Description=Logout off all iSCSI sessions on shutdown -+Documentation=man:iscsid(8) man:iscsiadm(8) -+DefaultDependencies=no -+Conflicts=shutdown.target -+After=systemd-remount-fs.service network.target iscsid.service iscsiuio.service -+Before=remote-fs-pre.target -+Wants=remote-fs-pre.target -+RefuseManualStop=yes -+ -+[Service] -+Type=oneshot -+RemainAfterExit=true -+ExecStop=-/sbin/iscsiadm -m node --logoutall=all -diff --git a/etc/systemd/iscsi.service b/etc/systemd/iscsi.service -index ad7be34d5918..27369568bf35 100644 ---- a/etc/systemd/iscsi.service -+++ b/etc/systemd/iscsi.service -@@ -5,7 +5,7 @@ DefaultDependencies=no - Conflicts=shutdown.target - After=systemd-remount-fs.service network.target iscsid.service iscsiuio.service - Before=remote-fs-pre.target --Wants=remote-fs-pre.target -+Wants=remote-fs-pre.target iscsi-shutdown.service - ConditionDirectoryNotEmpty=|/var/lib/iscsi/nodes - ConditionDirectoryNotEmpty=|/sys/class/iscsi_session - -@@ -14,7 +14,6 @@ Type=oneshot - RemainAfterExit=true - ExecStart=-/usr/libexec/iscsi-mark-root-nodes - ExecStart=-/sbin/iscsiadm -m node --loginall=automatic --ExecStop=-/sbin/iscsiadm -m node --logoutall=automatic - ExecReload=-/sbin/iscsiadm -m node --loginall=automatic - - [Install] --- -2.14.4 - diff --git a/0028-use-var-lib-iscsi-in-libopeniscsiusr.patch b/0018-use-var-lib-iscsi-in-libopeniscsiusr.patch similarity index 91% rename from 0028-use-var-lib-iscsi-in-libopeniscsiusr.patch rename to 0018-use-var-lib-iscsi-in-libopeniscsiusr.patch index fb1917d..08d5ed2 100644 --- a/0028-use-var-lib-iscsi-in-libopeniscsiusr.patch +++ b/0018-use-var-lib-iscsi-in-libopeniscsiusr.patch @@ -1,7 +1,7 @@ -From 089cd6910d9f0d1e459e1d8d00b754843437526d Mon Sep 17 00:00:00 2001 +From e2b8215b80cc037ecbcb9eef50e432c31d5e56eb Mon Sep 17 00:00:00 2001 From: rpm-build Date: Wed, 30 May 2018 16:08:30 -0700 -Subject: [PATCH 28/28] use /var/lib/iscsi in libopeniscsiusr +Subject: [PATCH] use /var/lib/iscsi in libopeniscsiusr --- libopeniscsiusr/idbm.h | 3 ++- @@ -12,7 +12,7 @@ Subject: [PATCH 28/28] use /var/lib/iscsi in libopeniscsiusr 5 files changed, 9 insertions(+), 8 deletions(-) diff --git a/libopeniscsiusr/idbm.h b/libopeniscsiusr/idbm.h -index 3fd0864a797d..c84d332ff949 100644 +index 3fd0864..c84d332 100644 --- a/libopeniscsiusr/idbm.h +++ b/libopeniscsiusr/idbm.h @@ -31,7 +31,8 @@ @@ -26,10 +26,10 @@ index 3fd0864a797d..c84d332ff949 100644 #define BOOT_NAME_MAXLEN 256 #define IDBM_DUMP_SIZE 8192 diff --git a/libopeniscsiusr/iface.c b/libopeniscsiusr/iface.c -index e2355bc0fff0..cd9dd7326ae6 100644 +index e7938a5..99ab7b5 100644 --- a/libopeniscsiusr/iface.c +++ b/libopeniscsiusr/iface.c -@@ -383,7 +383,7 @@ int iscsi_default_iface_setup(struct iscsi_context *ctx) +@@ -381,7 +381,7 @@ int iscsi_default_iface_setup(struct iscsi_context *ctx) _good(_iscsi_hids_get(ctx, &hids, &hid_count), rc, out); for (i = 0; i < hid_count; ++i) { @@ -39,7 +39,7 @@ index e2355bc0fff0..cd9dd7326ae6 100644 _good(_iscsi_ifaces_get_from_sysfs(ctx, hids[i], &ifaces, &iface_count), rc, out); diff --git a/libopeniscsiusr/libopeniscsiusr/libopeniscsiusr.h b/libopeniscsiusr/libopeniscsiusr/libopeniscsiusr.h -index 439590249212..81582da9e1e6 100644 +index 4395902..81582da 100644 --- a/libopeniscsiusr/libopeniscsiusr/libopeniscsiusr.h +++ b/libopeniscsiusr/libopeniscsiusr/libopeniscsiusr.h @@ -339,7 +339,7 @@ __DLL_EXPORT void iscsi_session_free(struct iscsi_session *se); @@ -79,7 +79,7 @@ index 439590249212..81582da9e1e6 100644 * by assert. * @iface: diff --git a/libopeniscsiusr/libopeniscsiusr/libopeniscsiusr_iface.h b/libopeniscsiusr/libopeniscsiusr/libopeniscsiusr_iface.h -index a1a255246d20..95b01602fb37 100644 +index a1a2552..95b0160 100644 --- a/libopeniscsiusr/libopeniscsiusr/libopeniscsiusr_iface.h +++ b/libopeniscsiusr/libopeniscsiusr/libopeniscsiusr_iface.h @@ -182,7 +182,7 @@ __DLL_EXPORT const char *iscsi_iface_name_get(struct iscsi_iface *iface); @@ -92,7 +92,7 @@ index a1a255246d20..95b01602fb37 100644 * @iface: * Pointer of 'struct iscsi_iface'. diff --git a/libopeniscsiusr/node.h b/libopeniscsiusr/node.h -index 39e07b3befae..9eba7fa6077c 100644 +index 39e07b3..9eba7fa 100644 --- a/libopeniscsiusr/node.h +++ b/libopeniscsiusr/node.h @@ -44,7 +44,7 @@ struct iscsi_node { @@ -105,5 +105,5 @@ index 39e07b3befae..9eba7fa6077c 100644 /* Might be public in the future */ __DLL_LOCAL void iscsi_node_free(struct iscsi_node *node); -- -2.14.4 +2.21.0 diff --git a/0019-Coverity-scan-fixes.patch b/0019-Coverity-scan-fixes.patch new file mode 100644 index 0000000..1161fd1 --- /dev/null +++ b/0019-Coverity-scan-fixes.patch @@ -0,0 +1,123 @@ +From 44bb05de04c0f8819c1fdae8f567dd802a8444e8 Mon Sep 17 00:00:00 2001 +From: Chris Leech +Date: Wed, 5 Jun 2019 09:08:39 -0700 +Subject: [PATCH] Coverity scan fixes + +--- + iscsiuio/src/unix/libs/qedi.c | 2 +- + iscsiuio/src/unix/main.c | 12 ++++++++++-- + libopeniscsiusr/idbm.c | 11 +++++------ + usr/idbm.c | 10 ++++------ + usr/iscsid.c | 2 +- + 5 files changed, 21 insertions(+), 16 deletions(-) + +diff --git a/iscsiuio/src/unix/libs/qedi.c b/iscsiuio/src/unix/libs/qedi.c +index 3414cb5..a359700 100644 +--- a/iscsiuio/src/unix/libs/qedi.c ++++ b/iscsiuio/src/unix/libs/qedi.c +@@ -1023,7 +1023,7 @@ static int qedi_read(nic_t *nic, packet_t *pkt) + + LOG_DEBUG(PFX "%s:hw_prod %d bd_prod %d, rx_pkt_idx %d, rxlen %d", + nic->log_name, hw_prod, bd_prod, rx_bd->rx_pkt_index, len); +- LOG_DEBUG(PFX "%s: sw_con %d bd_cons %d num BD %d", ++ LOG_DEBUG(PFX "%s: sw_con %d bd_cons %d num BD %lu", + nic->log_name, sw_cons, bd_cons, QEDI_NUM_RX_BD); + + if (bd_cons != bd_prod) { +diff --git a/iscsiuio/src/unix/main.c b/iscsiuio/src/unix/main.c +index 5e3f66c..4c50890 100644 +--- a/iscsiuio/src/unix/main.c ++++ b/iscsiuio/src/unix/main.c +@@ -341,7 +341,10 @@ int main(int argc, char *argv[]) + + /* parent: wait for child msg then exit */ + close(pipefds[1]); +- read(pipefds[0], msgbuf, sizeof(msgbuf)); ++ if (read(pipefds[0], msgbuf, sizeof(msgbuf)) < 0) { ++ fprintf(stderr, "ERR: Waiting for child process failed\n"); ++ exit(1); ++ } + exit(0); + } + +@@ -387,6 +390,9 @@ int main(int argc, char *argv[]) + sigaddset(&set, SIGTERM); + sigaddset(&set, SIGUSR1); + rc = pthread_sigmask(SIG_SETMASK, &set, NULL); ++ if (rc != 0) { ++ LOG_ERR("Failed to set thread signal mask"); ++ } + + /* Spin off the signal handling thread */ + pthread_attr_init(&attr); +@@ -416,7 +422,9 @@ int main(int argc, char *argv[]) + if (!foreground) { + /* signal parent they can go away now */ + close(pipefds[0]); +- write(pipefds[1], "ok\n", 3); ++ if (write(pipefds[1], "ok\n", 3) < 0) { ++ LOG_ERR("Failed to signal parent process of completed initialization"); ++ } + close(pipefds[1]); + } + +diff --git a/libopeniscsiusr/idbm.c b/libopeniscsiusr/idbm.c +index d020e6c..342aab5 100644 +--- a/libopeniscsiusr/idbm.c ++++ b/libopeniscsiusr/idbm.c +@@ -287,12 +287,11 @@ int _idbm_lock(struct iscsi_context *ctx) + return 0; + } + +- if (access(LOCK_DIR, F_OK) != 0) { +- if (mkdir(LOCK_DIR, 0660) != 0) { +- _error(ctx, "Could not open %s: %d %s", LOCK_DIR, errno, +- _strerror(errno, strerr_buff)); +- return LIBISCSI_ERR_IDBM; +- } ++ if (((mkdir(LOCK_DIR, 0660) != 0) && (errno != EEXIST)) || ++ (access(LOCK_DIR, F_OK) != 0)) { ++ _error(ctx, "Could not open %s: %d %s", LOCK_DIR, errno, ++ _strerror(errno, strerr_buff)); ++ return LIBISCSI_ERR_IDBM; + } + + fd = open(LOCK_FILE, O_RDWR | O_CREAT, 0666); +diff --git a/usr/idbm.c b/usr/idbm.c +index 3184c77..0c6870c 100644 +--- a/usr/idbm.c ++++ b/usr/idbm.c +@@ -1339,12 +1339,10 @@ int idbm_lock(void) + return 0; + } + +- if (access(LOCK_DIR, F_OK) != 0) { +- if (mkdir(LOCK_DIR, 0660) != 0) { +- log_error("Could not open %s: %s", LOCK_DIR, +- strerror(errno)); +- return ISCSI_ERR_IDBM; +- } ++ if (((mkdir(LOCK_DIR, 0660) != 0) && (errno != EEXIST)) || ++ (access(LOCK_DIR, F_OK) != 0)) { ++ log_error("Could not open %s: %s", LOCK_DIR, strerror(errno)); ++ return ISCSI_ERR_IDBM; + } + + fd = open(LOCK_FILE, O_RDWR | O_CREAT, 0666); +diff --git a/usr/iscsid.c b/usr/iscsid.c +index 8f1c597..96a6452 100644 +--- a/usr/iscsid.c ++++ b/usr/iscsid.c +@@ -489,8 +489,8 @@ int main(int argc, char *argv[]) + log_close(log_pid); + exit(ISCSI_ERR); + } ++ close(fd); + } +- close(fd); + + if ((control_fd = ipc->ctldev_open()) < 0) { + log_close(log_pid); +-- +2.21.0 + diff --git a/0020-fix-upstream-build-breakage-of-iscsiuio-LDFLAGS.patch b/0020-fix-upstream-build-breakage-of-iscsiuio-LDFLAGS.patch new file mode 100644 index 0000000..b7d5c02 --- /dev/null +++ b/0020-fix-upstream-build-breakage-of-iscsiuio-LDFLAGS.patch @@ -0,0 +1,29 @@ +From 4142125fa296d21a307fb2370b2d4d7e8487f22c Mon Sep 17 00:00:00 2001 +From: rpm-build +Date: Wed, 16 Oct 2019 23:17:20 -0700 +Subject: [PATCH] fix upstream build breakage of iscsiuio LDFLAGS + +--- + iscsiuio/configure.ac | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/iscsiuio/configure.ac b/iscsiuio/configure.ac +index b41df0e..a856cc5 100644 +--- a/iscsiuio/configure.ac ++++ b/iscsiuio/configure.ac +@@ -67,10 +67,10 @@ AM_CONDITIONAL([DEBUG], [test x$debug = xtrue]) + AC_ARG_WITH([systemd], + AS_HELP_STRING([--without-systemd], [Build without systemd]), + [case "${withval}" in +- yes) LDFLAGS="`pkg-config --libs libsystemd`" ;; ++ yes) LDFLAGS="${LDFLAGS} `pkg-config --libs libsystemd`" ;; + no) CFLAGS="${CFLAGS} -DNO_SYSTEMD" ;; + *) AC_MSG_ERROR([bad value $withval for --with-systemd]) ;; +- esac],[LDFLAGS="`pkg-config --libs libsystemd`"]) ++ esac],[LDFLAGS="${LDFLAGS} `pkg-config --libs libsystemd`"]) + + AC_CONFIG_COMMANDS([default],[[ + if [ -n "$SOURCE_DATE_EPOCH" ] ; then +-- +2.21.0 + diff --git a/0021-improve-systemd-service-files-for-boot-session-handl.patch b/0021-improve-systemd-service-files-for-boot-session-handl.patch new file mode 100644 index 0000000..ba53b55 --- /dev/null +++ b/0021-improve-systemd-service-files-for-boot-session-handl.patch @@ -0,0 +1,130 @@ +From 77150edd697669467ff9f8775b93bd9d7a34cadf Mon Sep 17 00:00:00 2001 +From: rpm-build +Date: Mon, 28 Oct 2019 10:20:56 -0700 +Subject: [PATCH] improve systemd service files for boot session handling + +--- + etc/systemd/iscsi-mark-root-nodes | 6 +++++- + etc/systemd/iscsi-onboot.service | 15 +++++++++++++++ + etc/systemd/iscsi-shutdown.service | 1 + + etc/systemd/iscsi.service | 11 ++++------- + etc/systemd/iscsid.service | 4 +--- + etc/systemd/iscsiuio.service | 1 - + 6 files changed, 26 insertions(+), 12 deletions(-) + create mode 100644 etc/systemd/iscsi-onboot.service + +diff --git a/etc/systemd/iscsi-mark-root-nodes b/etc/systemd/iscsi-mark-root-nodes +index c693707..9d48805 100755 +--- a/etc/systemd/iscsi-mark-root-nodes ++++ b/etc/systemd/iscsi-mark-root-nodes +@@ -9,7 +9,11 @@ while read t num p target flash; do + portal=${p%,*} + transport=${t%:} + +- $ISCSIADM -m node -p $portal -T $target -o update -n node.startup -v onboot ++ # use session number to find the iface name in use ++ num=${num#[}; num=${num%]} ++ iface=$(iscsiadm -m session -r $num | grep iface.iscsi_ifacename | cut -d= -f2) ++ ++ $ISCSIADM -m node -p $portal -T $target -I $iface -o update -n node.startup -v onboot + + start_iscsid=1 + +diff --git a/etc/systemd/iscsi-onboot.service b/etc/systemd/iscsi-onboot.service +new file mode 100644 +index 0000000..42ced68 +--- /dev/null ++++ b/etc/systemd/iscsi-onboot.service +@@ -0,0 +1,15 @@ ++[Unit] ++Description=Special handling of early boot iSCSI sessions ++Documentation=man:iscsiadm(8) man:iscsid(8) ++DefaultDependencies=no ++RefuseManualStart=true ++Before=iscsi.service ++After=systemd-remount-fs.service ++ConditionDirectoryNotEmpty=/sys/class/iscsi_session ++ ++[Service] ++Type=oneshot ++ExecStart=-/usr/libexec/iscsi-mark-root-nodes ++ ++[Install] ++WantedBy=sysinit.target +diff --git a/etc/systemd/iscsi-shutdown.service b/etc/systemd/iscsi-shutdown.service +index 69c1c77..caee933 100644 +--- a/etc/systemd/iscsi-shutdown.service ++++ b/etc/systemd/iscsi-shutdown.service +@@ -11,4 +11,5 @@ RefuseManualStop=yes + [Service] + Type=oneshot + RemainAfterExit=true ++ExecStart=-/usr/bin/true + ExecStop=-/usr/sbin/iscsiadm -m node --logoutall=all +diff --git a/etc/systemd/iscsi.service b/etc/systemd/iscsi.service +index eadfcec..175cb2c 100644 +--- a/etc/systemd/iscsi.service ++++ b/etc/systemd/iscsi.service +@@ -1,21 +1,18 @@ + [Unit] + Description=Login and scanning of iSCSI devices +-Documentation=man:iscsid(8) man:iscsiadm(8) ++Documentation=man:iscsiadm(8) man:iscsid(8) + DefaultDependencies=no +-Conflicts=shutdown.target +-After=systemd-remount-fs.service network.target iscsid.service iscsiuio.service + Before=remote-fs-pre.target ++After=network.target network-online.target iscsid.service iscsiuio.service systemd-remount-fs.service + Wants=remote-fs-pre.target iscsi-shutdown.service +-ConditionDirectoryNotEmpty=|/var/lib/iscsi/nodes +-ConditionDirectoryNotEmpty=|/sys/class/iscsi_session ++ConditionDirectoryNotEmpty=/var/lib/iscsi/nodes + + [Service] + Type=oneshot + RemainAfterExit=true +-ExecStart=-/usr/libexec/iscsi-mark-root-nodes + ExecStart=-/usr/sbin/iscsiadm -m node --loginall=automatic + ExecReload=-/usr/sbin/iscsiadm -m node --loginall=automatic + SuccessExitStatus=21 + + [Install] +-WantedBy=sysinit.target ++WantedBy=remote-fs.target +diff --git a/etc/systemd/iscsid.service b/etc/systemd/iscsid.service +index 8d50cf0..28402fb 100644 +--- a/etc/systemd/iscsid.service ++++ b/etc/systemd/iscsid.service +@@ -1,8 +1,7 @@ + [Unit] + Description=Open-iSCSI +-Documentation=man:iscsid(8) man:iscsiadm(8) ++Documentation=man:iscsid(8) man:iscsiuio(8) man:iscsiadm(8) + DefaultDependencies=no +-Conflicts=shutdown.target + After=network.target iscsiuio.service + Before=remote-fs-pre.target + +@@ -10,7 +9,6 @@ Before=remote-fs-pre.target + Type=notify + NotifyAccess=main + ExecStart=/usr/sbin/iscsid -f +-ExecStop=/usr/sbin/iscsiadm -k 0 2 + KillMode=mixed + Restart=on-failure + +diff --git a/etc/systemd/iscsiuio.service b/etc/systemd/iscsiuio.service +index 8620cde..fc0be93 100644 +--- a/etc/systemd/iscsiuio.service ++++ b/etc/systemd/iscsiuio.service +@@ -2,7 +2,6 @@ + Description=iSCSI UserSpace I/O driver + Documentation=man:iscsiuio(8) + DefaultDependencies=no +-Conflicts=shutdown.target + Requires=iscsid.service + BindTo=iscsid.service + After=network.target +-- +2.21.0 + diff --git a/0020-use-Red-Hat-version-string-to-match-RPM-package-vers.patch b/0022-use-Red-Hat-version-string-to-match-RPM-package-vers.patch similarity index 64% rename from 0020-use-Red-Hat-version-string-to-match-RPM-package-vers.patch rename to 0022-use-Red-Hat-version-string-to-match-RPM-package-vers.patch index dea1bec..f4282e4 100644 --- a/0020-use-Red-Hat-version-string-to-match-RPM-package-vers.patch +++ b/0022-use-Red-Hat-version-string-to-match-RPM-package-vers.patch @@ -1,25 +1,25 @@ -From 92aac85cf423d1c566d324255a86de0116d33015 Mon Sep 17 00:00:00 2001 +From c589d94293f3bee77c34ca61371ddfbeef71f2af Mon Sep 17 00:00:00 2001 From: Chris Leech Date: Mon, 21 Jan 2013 15:43:36 -0800 -Subject: [PATCH 20/32] use Red Hat version string to match RPM package version +Subject: [PATCH] use Red Hat version string to match RPM package version --- usr/version.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr/version.h b/usr/version.h -index 4dfef4ccfb77..1334d47c6bb3 100644 +index 615f533..a1f6cc2 100644 --- a/usr/version.h +++ b/usr/version.h @@ -6,7 +6,7 @@ * This may not be the same value as the kernel versions because * some other maintainer could merge a patch without going through us */ --#define ISCSI_VERSION_STR "2.0-876" -+#define ISCSI_VERSION_STR "6.2.0.876-1" +-#define ISCSI_VERSION_STR "2.1.0" ++#define ISCSI_VERSION_STR "6.2.1.0-0" #define ISCSI_VERSION_FILE "/sys/module/scsi_transport_iscsi/version" #endif -- -2.14.4 +2.21.0 diff --git a/iscsi-initiator-utils.spec b/iscsi-initiator-utils.spec index df767c2..3911cde 100644 --- a/iscsi-initiator-utils.spec +++ b/iscsi-initiator-utils.spec @@ -1,6 +1,6 @@ -%global open_iscsi_version 2.0 -%global open_iscsi_build 876 -%global commit0 f3c8e90fc0894c088950a15ee6618b427f9e2457 +%global open_iscsi_version 2.1 +%global open_iscsi_build 0 +%global commit0 4440e57a59c7f1c23bbfdcb10844017f478918b6 %global shortcommit0 %(c=%{commit0}; echo ${c:0:7}) # Disable python2 build by default @@ -9,43 +9,40 @@ Summary: iSCSI daemon and utility programs Name: iscsi-initiator-utils Version: 6.%{open_iscsi_version}.%{open_iscsi_build} -Release: 12.git%{shortcommit0}%{?dist} +Release: 0.git%{shortcommit0}%{?dist} License: GPLv2+ URL: http://www.open-iscsi.org Source0: https://github.com/open-iscsi/open-iscsi/archive/%{commit0}.tar.gz#/open-iscsi-%{shortcommit0}.tar.gz Source4: 04-iscsi Source5: iscsi-tmpfiles.conf -Patch0001: 0001-idmb_rec_write-check-for-tpgt-first.patch -Patch0002: 0002-idbm_rec_write-seperate-old-and-new-style-writes.patch -Patch0003: 0003-idbw_rec_write-pick-tpgt-from-existing-record.patch -Patch0004: 0004-update-systemd-service-files-add-iscsi.service-for-s.patch -Patch0005: 0005-iscsi-boot-related-service-file-updates.patch -Patch0006: 0006-update-initscripts-and-docs.patch -Patch0007: 0007-use-var-for-config.patch -Patch0008: 0008-use-red-hat-for-name.patch -Patch0009: 0009-libiscsi.patch -Patch0010: 0010-remove-the-offload-boot-supported-ifdef.patch -Patch0011: 0011-iscsiuio-systemd-unit-files.patch -Patch0012: 0012-Don-t-check-for-autostart-sessions-if-iscsi-is-not-u.patch -Patch0013: 0013-Revert-iscsiadm-return-error-when-login-fails.patch -Patch0014: 0014-update-handling-of-boot-sessions.patch -Patch0015: 0015-update-iscsi.service-for-boot-session-recovery.patch -Patch0016: 0016-updates-to-iscsi.service.patch -Patch0017: 0017-make-session-shutdown-a-seperate-service.patch.patch -Patch0018: 0018-Add-macros-to-release-GIL-lock.patch -Patch0019: 0019-libiscsi-introduce-sessions-API.patch -Patch0020: 0020-use-Red-Hat-version-string-to-match-RPM-package-vers.patch -Patch0021: 0021-libiscsi-fix-discovery-request-timeout-regression.patch -Patch0022: 0022-libiscsi-format-security-build-errors.patch -Patch0023: 0023-libiscsi-fix-build-to-use-libopeniscsiusr.patch -Patch0024: 0024-dont-install-scripts.patch -Patch0028: 0028-use-var-lib-iscsi-in-libopeniscsiusr.patch +Patch0001: 0001-service-file-tweaks.patch +Patch0002: 0002-idmb_rec_write-check-for-tpgt-first.patch +Patch0003: 0003-idbm_rec_write-seperate-old-and-new-style-writes.patch +Patch0004: 0004-idbw_rec_write-pick-tpgt-from-existing-record.patch +Patch0005: 0005-update-initscripts-and-docs.patch +Patch0006: 0006-use-var-for-config.patch +Patch0007: 0007-use-red-hat-for-name.patch +Patch0008: 0008-libiscsi.patch +Patch0009: 0009-Add-macros-to-release-GIL-lock.patch +Patch0010: 0010-libiscsi-introduce-sessions-API.patch +Patch0011: 0011-libiscsi-fix-discovery-request-timeout-regression.patch +Patch0012: 0012-libiscsi-format-security-build-errors.patch +Patch0013: 0013-libiscsi-fix-build-to-use-libopeniscsiusr.patch +Patch0014: 0014-libiscsi-fix-build-against-latest-upstream-again.patch +Patch0015: 0015-remove-the-offload-boot-supported-ifdef.patch +Patch0016: 0016-Revert-iscsiadm-return-error-when-login-fails.patch +Patch0017: 0017-dont-install-scripts.patch +Patch0018: 0018-use-var-lib-iscsi-in-libopeniscsiusr.patch +Patch0019: 0019-Coverity-scan-fixes.patch +Patch0020: 0020-fix-upstream-build-breakage-of-iscsiuio-LDFLAGS.patch +Patch0021: 0021-improve-systemd-service-files-for-boot-session-handl.patch +Patch0022: 0022-use-Red-Hat-version-string-to-match-RPM-package-vers.patch BuildRequires: flex bison doxygen kmod-devel systemd-units BuildRequires: autoconf automake libtool libmount-devel openssl-devel BuildRequires: isns-utils-devel -# For dir ownership +BuildRequires: systemd-devel Requires: %{name}-iscsiuio >= %{version}-%{release} Requires(post): systemd Requires(preun): systemd @@ -105,7 +102,7 @@ developing applications that use %{name}. %package -n python2-%{name} %{?python_provide:%python_provide python2-%{name}} Summary: Python %{python2_version} bindings to %{name} - +Requires: %{name} = %{version}-%{release} BuildRequires: python2-devel BuildRequires: python2-setuptools @@ -117,7 +114,7 @@ libiscsi interface for interacting with %{name} %package -n python3-%{name} %{?python_provide:%python_provide python3-%{name}} Summary: Python %{python3_version} bindings to %{name} - +Requires: %{name} = %{version}-%{release} BuildRequires: python3-devel BuildRequires: python3-setuptools @@ -142,7 +139,7 @@ autoreconf --install %{configure} cd .. -%{__make} OPTFLAGS="%{optflags} %{?__global_ldflags} -DUSE_KMOD -lkmod" +%{__make} OPTFLAGS="%{optflags} %{?__global_ldflags}" pushd libiscsi %if %{with python2} %py2_build @@ -339,6 +336,9 @@ fi %{python3_sitearch}/* %changelog +* Tue Nov 19 2019 Chris Leech - 6.2.1.0-0.git4440e57 +- update to upstream v2.1.0 + * Thu Aug 22 2019 Lubomir Rintel - 6.2.0.876-12.gitf3c8e90 - Move the NetworkManager dispatcher script out of /etc diff --git a/sources b/sources index 48f53c7..ebf0de1 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (open-iscsi-f3c8e90.tar.gz) = 01cda61f1654cbd874bd0a5b2a2ca272e9c33344f8f057d0b84b712ad5ce7a3149e0d229c51ff91b6c62ac76b09825346091d721f748ad872e7e535e64b55170 +SHA512 (open-iscsi-4440e57.tar.gz) = 5f2264168977f85da4654a1a1d6777c5bb4aa3655eb350a92ee29d9cc0126e16a8c82c0e1935e682fe0c4e17b4aaa0e76a9e3fdf8496b71f2747b88fd4b57fe9