Relocate drbd to stx-integ/kernel/kernel-modules/drbd
Move content from stx-gplv2 into stx-integ Packages will be relocated to stx-integ: base/ bash cgcs-users cluster-resource-agents dpkg haproxy libfdt netpbm rpm database/ mariadb filesystem/ iscsi-initiator-utils filesystem/drbd/ drbd-tools kernel/kernel-modules/ drbd integrity intel-e1000e intel-i40e intel-i40evf intel-ixgbe intel-ixgbevf qat17 tpmdd ldap/ ldapscripts networking/ iptables net-tools Change-Id: I50dac2ecdc740fb5a8d16d165e4ca9e250711c42 Story: 2002801 Task: 22687 Signed-off-by: Scott Little <scott.little@windriver.com>
This commit is contained in:
parent
d7e9b8e15f
commit
f569519b41
|
@ -10,6 +10,5 @@ iscsi-initiator-utils
|
|||
ldapscripts
|
||||
netpbm
|
||||
net-tools
|
||||
drbd
|
||||
drbd-tools
|
||||
mariadb
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
drbd
|
|
@ -1,16 +0,0 @@
|
|||
Metadata-Version: 1.1
|
||||
Name: drbd-kernel
|
||||
Version: 8.4.7
|
||||
Summary: Kernel driver for DRBD
|
||||
Home-page:
|
||||
Author:
|
||||
Author-email:
|
||||
License: GPLv2+
|
||||
|
||||
Description:
|
||||
This module is the kernel-dependent driver for DRBD. This is split out so
|
||||
that multiple kernel driver versions can be installed, one for each
|
||||
installed kernel.
|
||||
|
||||
|
||||
Platform: UNKNOWN
|
|
@ -1,4 +0,0 @@
|
|||
COPY_LIST="$FILES_BASE/* \
|
||||
$DISTRO/patches/* \
|
||||
$CGCS_BASE/downloads/drbd-8.4.7-1.tar.gz"
|
||||
TIS_PATCH_VER=4
|
|
@ -1,161 +0,0 @@
|
|||
%if "%{?_tis_build_type}" == "rt"
|
||||
%define bt_ext -rt
|
||||
%else
|
||||
%undefine bt_ext
|
||||
%endif
|
||||
|
||||
# Define the kmod package name here.
|
||||
%define kmod_name drbd
|
||||
|
||||
Name: drbd-kernel%{?bt_ext}
|
||||
Summary: Kernel driver for DRBD
|
||||
Version: 8.4.7
|
||||
%define upstream_release 1
|
||||
Release: %{upstream_release}%{?_tis_dist}.%{tis_patch_ver}
|
||||
%global tarball_version %(echo "%{version}-%{?upstream_release}" | sed -e "s,%{?dist}$,,")
|
||||
Group: System Environment/Kernel
|
||||
License: GPLv2+
|
||||
Summary: %{kmod_name} kernel module(s)
|
||||
|
||||
BuildRequires: kernel%{?bt_ext}-devel, redhat-rpm-config, perl, openssl
|
||||
ExclusiveArch: x86_64
|
||||
|
||||
# Sources.
|
||||
Source0: http://oss.linbit.com/drbd/drbd-%{tarball_version}.tar.gz
|
||||
|
||||
# WRS
|
||||
Patch0001: 0001-remove_bind_before_connect_error.patch
|
||||
Patch0002: compat-Statically-initialize-families.patch
|
||||
|
||||
%define kversion %(rpm -q kernel%{?bt_ext}-devel | sort --version-sort | tail -1 | sed 's/kernel%{?bt_ext}-devel-//')
|
||||
|
||||
Summary: drbd kernel module(s)
|
||||
Group: System Environment/Kernel
|
||||
%global _use_internal_dependency_generator 0
|
||||
Provides: kernel-modules >= %{kversion}
|
||||
Provides: drbd-kernel = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Requires(post): /usr/sbin/depmod
|
||||
Requires(postun): /usr/sbin/depmod
|
||||
BuildRequires: kernel%{?bt_ext}-devel
|
||||
|
||||
%description
|
||||
This module is the kernel-dependent driver for DRBD. This is split out so
|
||||
that multiple kernel driver versions can be installed, one for each
|
||||
installed kernel.
|
||||
|
||||
%package -n kmod-drbd%{?bt_ext}
|
||||
Summary: drbd kernel module(s)
|
||||
%description -n kmod-drbd%{?bt_ext}
|
||||
This module is the kernel-dependent driver for DRBD. This is split out so
|
||||
that multiple kernel driver versions can be installed, one for each
|
||||
installed kernel.
|
||||
|
||||
%post -n kmod-drbd%{?bt_ext}
|
||||
echo "Working. This may take some time ..."
|
||||
if [ -e "/boot/System.map-%{kversion}" ]; then
|
||||
/usr/sbin/depmod -aeF "/boot/System.map-%{kversion}" "%{kversion}" > /dev/null || :
|
||||
fi
|
||||
modules=( $(find /lib/modules/%{kversion}/extra/drbd | grep '\.ko$') )
|
||||
if [ -x "/sbin/weak-modules" ]; then
|
||||
printf '%s\n' "${modules[@]}" | /sbin/weak-modules --add-modules
|
||||
fi
|
||||
echo "Done."
|
||||
%preun -n kmod-drbd%{?bt_ext}
|
||||
rpm -ql kmod-drbd%{?bt_ext}-%{version}-%{release}.x86_64 | grep '\.ko$' > /var/run/rpm-kmod-drbd%{?bt_ext}-modules
|
||||
%postun -n kmod-drbd%{?bt_ext}
|
||||
echo "Working. This may take some time ..."
|
||||
if [ -e "/boot/System.map-%{kversion}" ]; then
|
||||
/usr/sbin/depmod -aeF "/boot/System.map-%{kversion}" "%{kversion}" > /dev/null || :
|
||||
fi
|
||||
modules=( $(cat /var/run/rpm-kmod-drbd%{?bt_ext}-modules) )
|
||||
rm /var/run/rpm-kmod-drbd%{?bt_ext}-modules
|
||||
if [ -x "/sbin/weak-modules" ]; then
|
||||
printf '%s\n' "${modules[@]}" | /sbin/weak-modules --remove-modules
|
||||
fi
|
||||
echo "Done."
|
||||
%files -n kmod-drbd%{?bt_ext}
|
||||
%defattr(644,root,root,755)
|
||||
/lib/modules/%{kversion}/
|
||||
%config(noreplace)/etc/depmod.d/drbd.conf
|
||||
%doc /usr/share/doc/kmod-drbd-%{version}/
|
||||
|
||||
|
||||
# Disable the building of the debug package(s).
|
||||
%define debug_package %{nil}
|
||||
|
||||
%prep
|
||||
%setup -q -n drbd-%{tarball_version}
|
||||
%patch0001 -p1
|
||||
%patch0002 -p1
|
||||
|
||||
%build
|
||||
rm -rf obj
|
||||
mkdir obj
|
||||
ln -s ../scripts obj/
|
||||
cp -r drbd obj/default
|
||||
make -C obj/default %{_smp_mflags} all KDIR=/usr/src/kernels/%{kversion}
|
||||
|
||||
%install
|
||||
pwd
|
||||
%{__install} -d %{buildroot}/lib/modules/%{kversion}/extra/%{kmod_name}/
|
||||
%{__install} obj/default/%{kmod_name}.ko %{buildroot}/lib/modules/%{kversion}/extra/%{kmod_name}/
|
||||
%{__install} -d %{buildroot}%{_sysconfdir}/depmod.d/
|
||||
%{__install} -d %{buildroot}%{_defaultdocdir}/kmod-%{kmod_name}-%{version}/
|
||||
%{__install} ChangeLog %{buildroot}%{_defaultdocdir}/kmod-%{kmod_name}-%{version}/
|
||||
%{__install} COPYING %{buildroot}%{_defaultdocdir}/kmod-%{kmod_name}-%{version}/
|
||||
mv obj/default/.kernel.config.gz obj/k-config-$kernelrelease.gz
|
||||
%{__install} obj/k-config-$kernelrelease.gz %{buildroot}%{_defaultdocdir}/kmod-%{kmod_name}-%{version}/
|
||||
|
||||
echo "override drbd * weak-updates" > %{buildroot}%{_sysconfdir}/depmod.d/drbd.conf
|
||||
|
||||
# Strip the modules(s).
|
||||
find %{buildroot} -type f -name \*.ko -exec %{__strip} --strip-debug \{\} \;
|
||||
|
||||
# Always Sign the modules(s).
|
||||
# If the module signing keys are not defined, define them here.
|
||||
%{!?privkey: %define privkey /usr/src/kernels/%{kversion}/signing_key.priv}
|
||||
%{!?pubkey: %define pubkey /usr/src/kernels/%{kversion}/signing_key.x509}
|
||||
for module in $(find %{buildroot} -type f -name \*.ko);
|
||||
do %{__perl} /usr/src/kernels/%{kversion}/scripts/sign-file \
|
||||
sha256 %{privkey} %{pubkey} $module;
|
||||
done
|
||||
|
||||
%clean
|
||||
%{__rm} -rf %{buildroot}
|
||||
|
||||
%changelog
|
||||
* Wed Dec 16 2015 Philipp Reisner <phil@linbit.com> - 8.4.7-1
|
||||
- New upstream release.
|
||||
|
||||
* Wed Sep 16 2015 Lars Ellenberg <lars@linbit.com> - 8.4.6-5
|
||||
- New upstream release.
|
||||
|
||||
* Thu Jul 30 2015 Lars Ellenberg <lars@linbit.com> - 8.4.6-4
|
||||
- New upstream release.
|
||||
|
||||
* Fri Apr 3 2015 Philipp Reisner <phil@linbit.com> - 8.4.6-1
|
||||
- New upstream release.
|
||||
|
||||
* Mon Jun 2 2014 Philipp Reisner <phil@linbit.com> - 8.4.5-1
|
||||
- New upstream release.
|
||||
|
||||
* Fri Oct 11 2013 Philipp Reisner <phil@linbit.com> - 8.4.4-1
|
||||
- New upstream release.
|
||||
|
||||
* Tue Feb 5 2013 Philipp Reisner <phil@linbit.com> - 8.4.3-1
|
||||
- New upstream release.
|
||||
|
||||
* Thu Sep 6 2012 Philipp Reisner <phil@linbit.com> - 8.4.2-1
|
||||
- New upstream release.
|
||||
|
||||
* Tue Dec 20 2011 Philipp Reisner <phil@linbit.com> - 8.4.1-1
|
||||
- New upstream release.
|
||||
|
||||
* Mon Jul 18 2011 Philipp Reisner <phil@linbit.com> - 8.4.0-1
|
||||
- New upstream release.
|
||||
|
||||
* Fri Jan 28 2011 Philipp Reisner <phil@linbit.com> - 8.3.10-1
|
||||
- New upstream release.
|
||||
|
||||
* Thu Nov 25 2010 Andreas Gruenbacher <agruen@linbit.com> - 8.3.9-1
|
||||
- Convert to a Kernel Module Package.
|
|
@ -1,11 +0,0 @@
|
|||
%defattr(644,root,root,755)
|
||||
%doc COPYING
|
||||
%doc ChangeLog
|
||||
%if 0%(grep -q "release 5" /etc/redhat-release && echo 1)
|
||||
/lib/modules/%verrel%variant
|
||||
%doc obj/k-config-%verrel%variant.gz
|
||||
%else
|
||||
/lib/modules/%verrel%dotvariant
|
||||
%doc obj/k-config-%verrel%dotvariant.gz
|
||||
%endif
|
||||
%config /etc/depmod.d/drbd.conf
|
|
@ -1,12 +0,0 @@
|
|||
Index: drbd-8.4.7-1/drbd/drbd_receiver.c
|
||||
===================================================================
|
||||
--- drbd-8.4.7-1.orig/drbd/drbd_receiver.c
|
||||
+++ drbd-8.4.7-1/drbd/drbd_receiver.c
|
||||
@@ -718,6 +718,7 @@ out:
|
||||
/* peer not (yet) available, network problem */
|
||||
case ECONNREFUSED: case ENETUNREACH:
|
||||
case EHOSTDOWN: case EHOSTUNREACH:
|
||||
+ case EADDRNOTAVAIL:
|
||||
disconnect_on_error = 0;
|
||||
break;
|
||||
default:
|
|
@ -1,171 +0,0 @@
|
|||
From 7510d78909774e33b64ada4055bea65881350763 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <7510d78909774e33b64ada4055bea65881350763.1528136610.git.Jim.Somerville@windriver.com>
|
||||
From: Nick Wang <nwang@suse.com>
|
||||
Date: Mon, 13 Mar 2017 15:23:29 +0800
|
||||
Subject: [PATCH 1/1] compat: Statically initialize families
|
||||
|
||||
In a07ea4d9, genetlink no longer use static family id.
|
||||
GENL_ID_GENERATE is removed.
|
||||
In 489111e5, statically initialize the families and remove
|
||||
the inline functions.
|
||||
|
||||
Thanks to Nick Wang <nwang@suse.com> for preparing a first draft.
|
||||
Unfortunately this version actually broke netlink on v4.10. Probably
|
||||
only compile-tested, but never "drbdadm up" tested.
|
||||
|
||||
Signed-off-by: Nick Wang <nwang@suse.com>
|
||||
[add missing pieces introduced in 489111e5]
|
||||
Signed-off-by: Roland Kammerer <roland.kammerer@linbit.com>
|
||||
[Simplified :-) and backported to drbd 8.4]
|
||||
Signed-off-by: Lars Ellenberg <lars@linbit.com>
|
||||
|
||||
Signed-off-by: Jim Somerville <Jim.Somerville@windriver.com>
|
||||
---
|
||||
.../tests/have_genl_family_in_genlmsg_multicast.c | 9 ++++++
|
||||
drbd/compat/tests/have_genl_id_generate.c | 6 ++++
|
||||
.../tests/have_genl_register_family_with_ops.c | 9 ++++++
|
||||
.../tests/have_genl_register_family_with_ops3.c | 9 ++++++
|
||||
...gic_func-genl_register_family_with_ops_groups.h | 4 +++
|
||||
drbd/linux/genl_magic_func.h | 34 +++++++++++++++-------
|
||||
6 files changed, 61 insertions(+), 10 deletions(-)
|
||||
create mode 100644 drbd/compat/tests/have_genl_family_in_genlmsg_multicast.c
|
||||
create mode 100644 drbd/compat/tests/have_genl_id_generate.c
|
||||
create mode 100644 drbd/compat/tests/have_genl_register_family_with_ops.c
|
||||
create mode 100644 drbd/compat/tests/have_genl_register_family_with_ops3.c
|
||||
|
||||
diff --git a/drbd/compat/tests/have_genl_family_in_genlmsg_multicast.c b/drbd/compat/tests/have_genl_family_in_genlmsg_multicast.c
|
||||
new file mode 100644
|
||||
index 0000000..6d44faa
|
||||
--- /dev/null
|
||||
+++ b/drbd/compat/tests/have_genl_family_in_genlmsg_multicast.c
|
||||
@@ -0,0 +1,9 @@
|
||||
+#include <net/genetlink.h>
|
||||
+
|
||||
+void test(void)
|
||||
+{
|
||||
+ struct genl_family family = { };
|
||||
+ struct sk_buff *skb = NULL;
|
||||
+
|
||||
+ genlmsg_multicast(&family, skb, 0, 0, GFP_KERNEL);
|
||||
+}
|
||||
diff --git a/drbd/compat/tests/have_genl_id_generate.c b/drbd/compat/tests/have_genl_id_generate.c
|
||||
new file mode 100644
|
||||
index 0000000..4ef0e8e
|
||||
--- /dev/null
|
||||
+++ b/drbd/compat/tests/have_genl_id_generate.c
|
||||
@@ -0,0 +1,6 @@
|
||||
+#include <linux/genetlink.h>
|
||||
+
|
||||
+void test(void)
|
||||
+{
|
||||
+ int i = GENL_ID_GENERATE;
|
||||
+}
|
||||
diff --git a/drbd/compat/tests/have_genl_register_family_with_ops.c b/drbd/compat/tests/have_genl_register_family_with_ops.c
|
||||
new file mode 100644
|
||||
index 0000000..27123db
|
||||
--- /dev/null
|
||||
+++ b/drbd/compat/tests/have_genl_register_family_with_ops.c
|
||||
@@ -0,0 +1,9 @@
|
||||
+#include <net/genetlink.h>
|
||||
+
|
||||
+void test(void)
|
||||
+{
|
||||
+ struct genl_family family = { };
|
||||
+ struct genl_ops ops[23];
|
||||
+
|
||||
+ genl_register_family_with_ops(&family, ops);
|
||||
+}
|
||||
diff --git a/drbd/compat/tests/have_genl_register_family_with_ops3.c b/drbd/compat/tests/have_genl_register_family_with_ops3.c
|
||||
new file mode 100644
|
||||
index 0000000..11b6d73
|
||||
--- /dev/null
|
||||
+++ b/drbd/compat/tests/have_genl_register_family_with_ops3.c
|
||||
@@ -0,0 +1,9 @@
|
||||
+#include <net/genetlink.h>
|
||||
+
|
||||
+void test(void)
|
||||
+{
|
||||
+ struct genl_family family = { };
|
||||
+ struct genl_ops ops[23];
|
||||
+
|
||||
+ genl_register_family_with_ops(&family, ops, 23);
|
||||
+}
|
||||
diff --git a/drbd/linux/genl_magic_func-genl_register_family_with_ops_groups.h b/drbd/linux/genl_magic_func-genl_register_family_with_ops_groups.h
|
||||
index 27d8f73..403e8e2 100644
|
||||
--- a/drbd/linux/genl_magic_func-genl_register_family_with_ops_groups.h
|
||||
+++ b/drbd/linux/genl_magic_func-genl_register_family_with_ops_groups.h
|
||||
@@ -29,9 +29,13 @@ static int CONCAT_(GENL_MAGIC_FAMILY, _genl_multicast_ ## group)( \
|
||||
|
||||
int CONCAT_(GENL_MAGIC_FAMILY, _genl_register)(void)
|
||||
{
|
||||
+#if defined(COMPAT_HAVE_GENL_REGISTER_FAMILY_WITH_OPS) || defined(COMPAT_HAVE_GENL_REGISTER_FAMILY_WITH_OPS3)
|
||||
return genl_register_family_with_ops_groups(&ZZZ_genl_family, \
|
||||
ZZZ_genl_ops, \
|
||||
ZZZ_genl_mcgrps);
|
||||
+#else
|
||||
+ return genl_register_family(&ZZZ_genl_family);
|
||||
+#endif
|
||||
}
|
||||
|
||||
void CONCAT_(GENL_MAGIC_FAMILY, _genl_unregister)(void)
|
||||
diff --git a/drbd/linux/genl_magic_func.h b/drbd/linux/genl_magic_func.h
|
||||
index 29f44a8..504719a 100644
|
||||
--- a/drbd/linux/genl_magic_func.h
|
||||
+++ b/drbd/linux/genl_magic_func.h
|
||||
@@ -261,15 +261,7 @@ static struct genl_ops ZZZ_genl_ops[] __read_mostly = {
|
||||
* {{{2
|
||||
*/
|
||||
#define ZZZ_genl_family CONCAT_(GENL_MAGIC_FAMILY, _genl_family)
|
||||
-static struct genl_family ZZZ_genl_family __read_mostly = {
|
||||
- .id = GENL_ID_GENERATE,
|
||||
- .name = __stringify(GENL_MAGIC_FAMILY),
|
||||
- .version = GENL_MAGIC_VERSION,
|
||||
-#ifdef GENL_MAGIC_FAMILY_HDRSZ
|
||||
- .hdrsize = NLA_ALIGN(GENL_MAGIC_FAMILY_HDRSZ),
|
||||
-#endif
|
||||
- .maxattr = ARRAY_SIZE(drbd_tla_nl_policy)-1,
|
||||
-};
|
||||
+static struct genl_family ZZZ_genl_family;
|
||||
|
||||
/*
|
||||
* Magic: define multicast groups
|
||||
@@ -282,13 +274,35 @@ static struct genl_family ZZZ_genl_family __read_mostly = {
|
||||
* genetlink: pass family to functions using groups
|
||||
* genetlink: only pass array to genl_register_family_with_ops()
|
||||
* which are commits c53ed742..2a94fe48
|
||||
+ *
|
||||
+ * v4.10, 489111e5 genetlink: statically initialize families
|
||||
+ * and previous commit drop GENL_ID_GENERATE and register helper functions.
|
||||
*/
|
||||
-#ifdef genl_register_family_with_ops_groups
|
||||
+#if defined(genl_register_family_with_ops_groups) || !defined(GENL_ID_GENERATE)
|
||||
#include <linux/genl_magic_func-genl_register_family_with_ops_groups.h>
|
||||
#else
|
||||
#include <linux/genl_magic_func-genl_register_mc_group.h>
|
||||
#endif
|
||||
|
||||
+static struct genl_family ZZZ_genl_family __read_mostly = {
|
||||
+ /* .id = GENL_ID_GENERATE, which exists no longer, and was 0 anyways */
|
||||
+ .name = __stringify(GENL_MAGIC_FAMILY),
|
||||
+ .version = GENL_MAGIC_VERSION,
|
||||
+#ifdef GENL_MAGIC_FAMILY_HDRSZ
|
||||
+ .hdrsize = NLA_ALIGN(GENL_MAGIC_FAMILY_HDRSZ),
|
||||
+#endif
|
||||
+ .maxattr = ARRAY_SIZE(CONCAT_(GENL_MAGIC_FAMILY, _tla_nl_policy))-1,
|
||||
+
|
||||
+#ifndef GENL_ID_GENERATE
|
||||
+ .ops = ZZZ_genl_ops,
|
||||
+ .n_ops = ARRAY_SIZE(ZZZ_genl_ops),
|
||||
+ .mcgrps = ZZZ_genl_mcgrps,
|
||||
+ .n_mcgrps = ARRAY_SIZE(ZZZ_genl_mcgrps),
|
||||
+ .module = THIS_MODULE,
|
||||
+#endif
|
||||
+};
|
||||
+
|
||||
+
|
||||
/*
|
||||
* Magic: provide conversion functions {{{1
|
||||
* populate skb from struct.
|
||||
--
|
||||
1.8.3.1
|
||||
|
Loading…
Reference in New Issue