Accepting request 229743 from home:hreinecke:branches:network:fcoe

- Replace patches with upstream version
  Remove: 0025-systemctl-cannot-start-fcoemon.socket.patch
  Add: 0028-systemctl-cannot-start-fcoemon.socket.patch
- Pull in patches from upstream:
  * Really break out of recv_loop in fipvlan (bnc#870300)
    Add: 0026-FIPVLAN-Really-break-out-of-the-recv_loop-upon-fip_r.patch
  * Update documentation
    Add: 0025-doc-Update-QUICKSTART-INSTALL-docs-for-systemd-init-.patch
    Add: 0027-man-Fix-typo-in-fcoemon-documentation.patch
- Add dependency on libhbalinux2 (bnc#873066)
- Correctly handle options when invoking fcoemon (bnc#872732)
  Add: 0029-fcoemon-Correctly-handle-options-in-the-service-file.patch
- Include bnx2fc to SUPPORTED_DRIVERS (bnc#872741)

OBS-URL: https://build.opensuse.org/request/show/229743
OBS-URL: https://build.opensuse.org/package/show/network:fcoe/fcoe-utils?expand=0&rev=16
This commit is contained in:
Tomáš Chvátal
2014-04-18 11:42:07 +00:00
committed by Git OBS Bridge
parent a1bafaf1fa
commit 12c8fe9d6a
10 changed files with 269 additions and 16 deletions

View File

@@ -1,9 +1,10 @@
From 51cfb504c434a8a0a1df9fa7c3cd9000c4e53d92 Mon Sep 17 00:00:00 2001
From 0e5d536b20ed481d5a057e9bfee772b4c53bdb0f Mon Sep 17 00:00:00 2001
From: Hannes Reinecke <hare@suse.de>
Date: Fri, 6 Dec 2013 11:08:23 +0100
Subject: Add missing 'DESTDIR' when installing bash completion
Date: Fri, 6 Dec 2013 19:51:51 +0000
Subject: build: Add missing 'DESTDIR' when installing bash completion
Signed-off-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Robert Love <robert.w.love@intel.com>
---
Makefile.am | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

View File

@@ -1,12 +1,13 @@
From a76be731a5e5262abf0c8deadf8f4f541559b9f8 Mon Sep 17 00:00:00 2001
From 9869390ff1a6ecca1e6599e37128a07d237655e6 Mon Sep 17 00:00:00 2001
From: Hannes Reinecke <hare@suse.de>
Date: Fri, 6 Dec 2013 11:23:34 +0100
Subject: Fix build with '-Wl,--as-needed'
Date: Fri, 6 Dec 2013 19:51:52 +0000
Subject: build: Fix build with '-Wl,--as-needed'
The libraries need to be specified correctly to get '--as-needed'
to work.
Signed-off-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Robert Love <robert.w.love@intel.com>
---
Makefile.am | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)

View File

@@ -0,0 +1,46 @@
From fa308a68bda455d7305fc194d716ebc06b6f26c7 Mon Sep 17 00:00:00 2001
From: Robert Love <robert.w.love@intel.com>
Date: Wed, 18 Dec 2013 11:51:35 -0800
Subject: doc: Update QUICKSTART/INSTALL docs for systemd init file install
Update installation instructions so that systemd init files
may be installed.
Signed-off-by: Robert Love <robert.w.love@intel.com>
---
INSTALL | 3 +++
QUICKSTART | 3 +++
2 files changed, 6 insertions(+)
diff --git a/INSTALL b/INSTALL
index 3abdf07..ea8c95e 100644
--- a/INSTALL
+++ b/INSTALL
@@ -19,6 +19,9 @@ DEPENDENCIES
1) Bootstrap, configure, make and make install
# ./bootstrap.sh
+ Either execute the next line for System V init script install
# rpm --eval "%configure" | sh
+ or the following line to install systemd unit scripts
+ # rpm --eval "%configure --with-systemdsystemunitdir=/" | sh
# make
# make install
diff --git a/QUICKSTART b/QUICKSTART
index 6fc82b3..c001bc1 100644
--- a/QUICKSTART
+++ b/QUICKSTART
@@ -201,7 +201,10 @@ PROCESS
2) Bootstrap, configure, make and make install
# cd fcoe-utils
# ./bootstrap.sh
+ Either execute the next line for System V init script install
# rpm --eval "%configure" | sh
+ or the following line to install systemd unit scripts
+ # rpm --eval "%configure --with-systemdsystemunitdir=/" | sh
# make
# make install
--
1.8.1.4

View File

@@ -0,0 +1,34 @@
From f90bbd76499b71a62f1e7c4ec68a62008031ee8e Mon Sep 17 00:00:00 2001
From: Eddie Wai <eddie.wai@broadcom.com>
Date: Wed, 5 Mar 2014 14:42:28 +0000
Subject: FIPVLAN: Really break out of the recv_loop upon fip_recv error
This patch adds additional code to break out of the recv_loop's while
loop upon fip_recv error. This completes the fix from
commit 78ea81aaef57b5b40fdc86335a7e6a432a72ad48.
Without this, we have seen cases where the recv_loop gets
stuck looping indefinitely.
Signed-off-by: Eddie Wai <eddie.wai@broadcom.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
---
fipvlan.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/fipvlan.c b/fipvlan.c
index 1b8492d..cc71412 100644
--- a/fipvlan.c
+++ b/fipvlan.c
@@ -792,6 +792,8 @@ static void recv_loop(int timeout)
break;
}
}
+ if (i < pfd_len)
+ break;
}
}
--
1.8.1.4

View File

@@ -0,0 +1,28 @@
From 4982e604dab3f350f3a3ca20b3c001f8ee66fdc2 Mon Sep 17 00:00:00 2001
From: Robert Love <robert.w.love@intel.com>
Date: Sat, 25 Jan 2014 03:10:21 +0000
Subject: man: Fix typo in fcoemon documentation
"module" was misspelled "modlue." This patch fixes it.
Signed-off-by: Robert Love <robert.w.love@intel.com>
---
doc/fcoemon.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/doc/fcoemon.txt b/doc/fcoemon.txt
index 09ee5a2..7ccf892 100644
--- a/doc/fcoemon.txt
+++ b/doc/fcoemon.txt
@@ -56,7 +56,7 @@ OPTIONS
*-d*, *--debug*::
Enable debugging messages.
*-l*, *--legacy*::
- Force fcoemon to use the legacy /sys/modlue/libfcoe/parameters/
+ Force fcoemon to use the legacy /sys/module/libfcoe/parameters/
interface. The default is to use the newer /sys/bus/fcoe/ interfaces
if they are available.
*-s*, *--syslog*::
--
1.8.1.4

View File

@@ -1,4 +1,4 @@
From 913faf7761a8fb004d44b5515b14efb0f60e9fa9 Mon Sep 17 00:00:00 2001
From 444f3c66ee5a2b59a563d78cb70db7da2326d446 Mon Sep 17 00:00:00 2001
From: Hannes Reinecke <hare@suse.de>
Date: Fri, 21 Mar 2014 14:46:40 +0100
Subject: systemctl cannot start fcoemon.socket

View File

@@ -0,0 +1,121 @@
From 5216ae2ef4434d92ff3d49c4d5a7b73b438aee2d Mon Sep 17 00:00:00 2001
From: Hannes Reinecke <hare@suse.de>
Date: Fri, 11 Apr 2014 15:38:26 +0200
Subject: fcoemon: Correctly handle options in the service file
When runnig under systemd we can't really modify the arguments
to provide an 'FCOEMON_OPTS' variable. Instead we should be
modifying fcoemon --debug and --syslog to accept 'yes' or 'no'
as parameters; that way we can use the variables directly.
References: bnc#872732
Signed-off-by: Hannes Reinecke <hare@suse.de>
---
doc/fcoemon.txt | 6 +++---
etc/systemd/fcoe.service | 4 ++--
fcoemon.c | 24 +++++++++++++++---------
3 files changed, 20 insertions(+), 14 deletions(-)
diff --git a/doc/fcoemon.txt b/doc/fcoemon.txt
index 7ccf892..7449601 100644
--- a/doc/fcoemon.txt
+++ b/doc/fcoemon.txt
@@ -53,13 +53,13 @@ OPTIONS
-------
*-f*, *--foreground*::
Run *fcoemon* in the foreground.
-*-d*, *--debug*::
- Enable debugging messages.
+*-d*, *--debug=yes|no*::
+ Enable or disable debugging messages.
*-l*, *--legacy*::
Force fcoemon to use the legacy /sys/module/libfcoe/parameters/
interface. The default is to use the newer /sys/bus/fcoe/ interfaces
if they are available.
-*-s*, *--syslog*::
+*-s*, *--syslog=yes|no*::
Use syslogd for logging. The default behavior is to log to stdout
and stderr.
*-h*, *--help*::
diff --git a/etc/systemd/fcoe.service b/etc/systemd/fcoe.service
index 5e5c8a2..2e10bcd 100644
--- a/etc/systemd/fcoe.service
+++ b/etc/systemd/fcoe.service
@@ -4,9 +4,9 @@ After=syslog.target network.target
[Service]
Type=simple
-EnvironmentFile=/etc/sysconfig/fcoe
+EnvironmentFile=/etc/fcoe/config
ExecStartPre=/sbin/modprobe -qa $SUPPORTED_DRIVERS
-ExecStart=/usr/sbin/fcoemon $FCOEMON_OPTS
+ExecStart=/usr/sbin/fcoemon --debug=$DEBUG --syslog=$SYSLOG
[Install]
WantedBy=multi-user.target
diff --git a/fcoemon.c b/fcoemon.c
index 5e4f8d7..23fc2f6 100644
--- a/fcoemon.c
+++ b/fcoemon.c
@@ -336,9 +336,9 @@ static int fcoe_vid_from_ifname(const char *ifname);
* Table for getopt_long(3).
*/
static struct option fcm_options[] = {
- {"debug", 0, NULL, 'd'},
+ {"debug", 1, NULL, 'd'},
{"legacy", 0, NULL, 'l'},
- {"syslog", 0, NULL, 's'},
+ {"syslog", 1, NULL, 's'},
{"exec", 1, NULL, 'e'},
{"foreground", 0, NULL, 'f'},
{"version", 0, NULL, 'v'},
@@ -3192,9 +3192,9 @@ static void fcm_usage(void)
{
printf("Usage: %s\n"
"\t [-f|--foreground]\n"
- "\t [-d|--debug]\n"
+ "\t [-d|--debug=yes|no]\n"
"\t [-l|--legacy]\n"
- "\t [-s|--syslog]\n"
+ "\t [-s|--syslog=yes|no]\n"
"\t [-v|--version]\n"
"\t [-h|--help]\n\n", progname);
exit(1);
@@ -3648,22 +3648,28 @@ int main(int argc, char **argv)
sa_log_flags = 0;
openlog(sa_log_prefix, LOG_CONS, LOG_DAEMON);
- while ((c = getopt_long(argc, argv, "fdhlsv",
+ while ((c = getopt_long(argc, argv, "fd:hls:v",
fcm_options, NULL)) != -1) {
switch (c) {
case 'f':
fcm_fg = 1;
break;
case 'd':
- fcoe_config.debug = 1;
- enable_debug_log(1);
+ if (!strncmp(optarg, "yes", 3) ||
+ !strncmp(optarg, "YES", 3)) {
+ fcoe_config.debug = 1;
+ enable_debug_log(1);
+ }
break;
case 'l':
force_legacy = true;
break;
case 's':
- fcoe_config.use_syslog = 1;
- enable_syslog(1);
+ if (!strncmp(optarg, "yes", 3) ||
+ !strncmp(optarg, "YES", 3)) {
+ fcoe_config.use_syslog = 1;
+ enable_syslog(1);
+ }
break;
case 'v':
printf("%s\n", FCOE_UTILS_VERSION);
--
1.8.1.4

View File

@@ -1,3 +1,20 @@
-------------------------------------------------------------------
Fri Apr 11 15:08:04 CEST 2014 - hare@suse.de
- Replace patches with upstream version
Remove: 0025-systemctl-cannot-start-fcoemon.socket.patch
Add: 0028-systemctl-cannot-start-fcoemon.socket.patch
- Pull in patches from upstream:
* Really break out of recv_loop in fipvlan (bnc#870300)
Add: 0026-FIPVLAN-Really-break-out-of-the-recv_loop-upon-fip_r.patch
* Update documentation
Add: 0025-doc-Update-QUICKSTART-INSTALL-docs-for-systemd-init-.patch
Add: 0027-man-Fix-typo-in-fcoemon-documentation.patch
- Add dependency on libhbalinux2 (bnc#873066)
- Correctly handle options when invoking fcoemon (bnc#872732)
Add: 0029-fcoemon-Correctly-handle-options-in-the-service-file.patch
- Include bnx2fc to SUPPORTED_DRIVERS (bnc#872741)
-------------------------------------------------------------------
Fri Mar 21 14:49:35 CET 2014 - hare@suse.de

View File

@@ -24,10 +24,11 @@ BuildRequires: libHBAAPI2-devel
BuildRequires: libhbalinux2-devel
BuildRequires: libtool
BuildRequires: open-lldp-devel
BuildRequires: systemd-devel
Requires: device-mapper
Requires: iproute
Requires: libhbalinux2
Requires: open-lldp
BuildRequires: systemd-devel
%systemd_requires
Version: 1.0.29
Release: 0
@@ -36,7 +37,6 @@ License: GPL-2.0
Group: System/Daemons
# git://open-fcoe.org/fcoe/fcoe-utils.git
Source0: %{name}-%{version}.tar.xz
Source2: fcoe.config
# Patches from git repository
Patch1: 0001-man-Fix-small-typo-regarding-fcf-option.patch
Patch2: 0002-Don-t-call-AM_INIT_AUTOMAKE-twice.patch
@@ -55,8 +55,6 @@ Patch14: 0014-fipvlan-Do-not-shut-down-FCoE-connections-on-physica.patch
Patch15: 0015-fipvlan-break-out-of-receive-loop-on-error.patch
Patch16: 0016-fipvlan-handle-errors-from-fip-socket-creation.patch
Patch17: 0017-fipvlan-filter-interfaces-from-rtnl_getlink.patch
# Patches to be upstreamed
Patch18: 0018-Add-missing-DESTDIR-when-installing-bash-completion.patch
Patch19: 0019-Fix-build-with-Wl-as-needed.patch
Patch20: 0020-Fix-integer-formatting.patch
@@ -64,7 +62,13 @@ Patch21: 0021-fcnsq-Fixup-help-text.patch
Patch22: 0022-fcnsq-Fixup-64bit-integer-handling.patch
Patch23: 0023-fcoemon-add-systemd-service-file.patch
Patch24: 0024-fcoemon-systemd-socket-activation.patch
Patch25: 0025-systemctl-cannot-start-fcoemon.socket.patch
Patch25: 0025-doc-Update-QUICKSTART-INSTALL-docs-for-systemd-init-.patch
Patch26: 0026-FIPVLAN-Really-break-out-of-the-recv_loop-upon-fip_r.patch
Patch27: 0027-man-Fix-typo-in-fcoemon-documentation.patch
# Patches to be upstreamed
Patch28: 0028-systemctl-cannot-start-fcoemon.socket.patch
Patch29: 0029-fcoemon-Correctly-handle-options-in-the-service-file.patch
# Patches from Fedora
Patch101: fcoe-utils-1.0.29-make.patch
@@ -102,6 +106,10 @@ connections.
%patch23 -p1
%patch24 -p1
%patch25 -p1
%patch26 -p1
%patch27 -p1
%patch28 -p1
%patch29 -p1
%patch101 -p1
%build
@@ -117,9 +125,6 @@ rm -rf %{buildroot}/etc/init.d
# unitfile
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcfcoe
# config
install -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/fcoe/config
# contrib files
mkdir -p %{buildroot}%{_libexecdir}/fcoe
for file in \

View File

@@ -1,5 +1,5 @@
# All supported drivers listed here are loaded when service starts
SUPPORTED_DRIVERS="libfc fcoe"
SUPPORTED_DRIVERS="libfc fcoe bnx2fc"
# Add --debug to enable debug messages
FCOEMON_OPTS="--syslog"