summaryrefslogtreecommitdiff
path: root/sys-cluster/knem
diff options
context:
space:
mode:
Diffstat (limited to 'sys-cluster/knem')
-rw-r--r--sys-cluster/knem/Manifest7
-rw-r--r--sys-cluster/knem/files/knem-1.1.3-setup_timer.patch58
-rw-r--r--sys-cluster/knem/knem-1.1.3.ebuild (renamed from sys-cluster/knem/knem-1.1.1.ebuild)11
-rw-r--r--sys-cluster/knem/knem-9999.ebuild7
4 files changed, 74 insertions, 9 deletions
diff --git a/sys-cluster/knem/Manifest b/sys-cluster/knem/Manifest
index db9d95a1fbe6..da30b0980521 100644
--- a/sys-cluster/knem/Manifest
+++ b/sys-cluster/knem/Manifest
@@ -1,5 +1,6 @@
AUX 45-knem.rules 28 BLAKE2B 4f7eb2b4c84bc786998ac8ad610626b6ca3e384777aeecd7bb18fb657ff095f7311670bb388d6e7c5f1da944428d6d088bd65d333d27cf67f3d1d532354aaaf6 SHA512 fc819a12ad7432cbf08450ebc36b469402753d8d363d72a46b71efb916391d320591eac0be9498a37a7bbc5ebe1b2725a2cbf37c7c69ed7d5c6e1ccf9ce0e51b
-DIST knem-1.1.1.tar.gz 321401 BLAKE2B bb3f2bd553aa1aad5b7ede61723aaea625b811564f43efaf395425449e2b61631432ab3f9ceed2f3f104f638a93705919e595436fdbe8e64b4782ce1c98629fc SHA512 6b53748df8ffcfa400870657d5c121f51e132d2b724bca832b00d7c16c546299d1dd29739fe1d4b00cc33010558ae584e7c0078de2c56d8ea92ce7880b4bfedc
-EBUILD knem-1.1.1.ebuild 1568 BLAKE2B 717eddfe5e5d19a449335d356669ac38308330b7ac39e9b7896bf8b06fbb3997148d866377e97c3a8d53bfbd4711e5175e8e6d7562c9f223e1f8ebcf0dc56674 SHA512 6586238a87b39dd0041bcf0f22f7704bcbdb2d9deeaa1f24818fdff4da1f7cb807a9e92cc6b4876592da44e73e38cbc9da67090e45f0f277a2567b8d02e94f81
-EBUILD knem-9999.ebuild 1568 BLAKE2B 717eddfe5e5d19a449335d356669ac38308330b7ac39e9b7896bf8b06fbb3997148d866377e97c3a8d53bfbd4711e5175e8e6d7562c9f223e1f8ebcf0dc56674 SHA512 6586238a87b39dd0041bcf0f22f7704bcbdb2d9deeaa1f24818fdff4da1f7cb807a9e92cc6b4876592da44e73e38cbc9da67090e45f0f277a2567b8d02e94f81
+AUX knem-1.1.3-setup_timer.patch 1965 BLAKE2B b70774ca235d159c4054a496e23e7e5205f504815878b0045ff80f91f7cda1fb3748d1fde16a6da6c6c67f2d8acfc4310a7e0cfa3ad1d461b89bc73d41af8f10 SHA512 ab87faded049f999638d4092a9758a542836e2c373c43e4f00141f54b8aa38ab2bbd288edf95a67f087b949864e4a00163cf2eff13f2b41a71677b72c4f9eb01
+DIST knem-1.1.3.tar.gz 330109 BLAKE2B 0aa5a2b5cd329e7183800b8b4e6b76297c85325cef218dc0ae27293ffb3aaf8a6896bc237ca745bb8df97a446c2ecc5542b96fc9eb4bbead6a1c9b894dd38f51 SHA512 ab72b3a803898c8de1bb775857da346e16ade285cdf17b9339eef3dc939c5d50ef5b3442e96418e414d64cd3e1e1a922b5e8c74462c5d6866b842ee9749db3eb
+EBUILD knem-1.1.3.ebuild 1673 BLAKE2B acd1ce030660d37c7f1376f508e47359f44b26502947ce43ec8f211968c933ecbafdaae200447c8bae263c632eac26d7858a7a3d1c7311db6b19ade1eed8673e SHA512 04eee443b2ce3cb36f975e3e77b0c1895fd95a088c7e5991be21f7bedc1b5142aaec2e503f10963357e7a1883279e0403af486f375406f21d97f204392a01e05
+EBUILD knem-9999.ebuild 1578 BLAKE2B c6b960f4ca1a89b79132a2aeb4646e24a303981111a3467bb477459465ba8ab7a29b31adce49fa6ad9806c4fadb088c132b5b6849c29cfb024523f5a16de4a26 SHA512 215ab7e79d61ba7c6281624f3090bc9bdd0154eace539204c94cff99eb67c14965e759cf8b13b0c2838b1ca4e4608198f3ef31aaabccf6f251701de80a6d46c6
MISC metadata.xml 365 BLAKE2B ceba315f0fbd74cfc6ec310a70126108f304deef94ba49cc1a9f8291b9827fdea3e3224cd7a52265d98ec55e240496d943874301e7a51f29eef2d5f03a26842d SHA512 debd6bb734810af46390ed76b73151e5729999aff31956951cf9482e06ae6d08e4d642f9fc27ff99f0947b0b63214dc9ca6514e760d0d93a79bcd9ea79b60743
diff --git a/sys-cluster/knem/files/knem-1.1.3-setup_timer.patch b/sys-cluster/knem/files/knem-1.1.3-setup_timer.patch
new file mode 100644
index 000000000000..eb418ccc957a
--- /dev/null
+++ b/sys-cluster/knem/files/knem-1.1.3-setup_timer.patch
@@ -0,0 +1,58 @@
+diff --git a/driver/linux/check_kernel_headers.sh b/driver/linux/check_kernel_headers.sh
+index b0b9b851c0a1..7afec9fae138 100755
+--- a/driver/linux/check_kernel_headers.sh
++++ b/driver/linux/check_kernel_headers.sh
+@@ -330,6 +330,19 @@ else
+ echo no
+ fi
+
++# timer_setup() added in v4.14-rc3
++echo -n " checking (in kernel headers) timer_setup() availability ... "
++if test -e ${LINUX_HDR}/include/linux/timer.h > /dev/null ; then
++ if grep timer_setup ${LINUX_HDR}/include/linux/timer.h > /dev/null ; then
++ echo "#define HAVE_TIMER_SETUP 1" >> ${TMP_CHECKS_NAME}
++ echo yes
++ else
++ echo no
++ fi
++else
++ echo no
++fi
++
+ # add the footer
+ echo "" >> ${TMP_CHECKS_NAME}
+ echo "#endif /* __knem_checks_h__ */" >> ${TMP_CHECKS_NAME}
+diff --git a/driver/linux/knem_main.c b/driver/linux/knem_main.c
+index e12aad3c0ea5..ddae2af14449 100644
+--- a/driver/linux/knem_main.c
++++ b/driver/linux/knem_main.c
+@@ -2610,9 +2610,17 @@ knem_kthread_func(void *data)
+
+ #ifdef KNEM_HAVE_DMA_ENGINE
+ static void
++#ifdef HAVE_TIMER_SETUP
++knem_dmacpy_cleanup_timer_handler(struct timer_list *t)
++#else
+ knem_dmacpy_cleanup_timer_handler(unsigned long data)
++#endif
+ {
++#ifdef HAVE_TIMER_SETUP
++ struct knem_context * ctx = from_timer(ctx, t, dmacpy_cleanup_timer);
++#else
+ struct knem_context * ctx = (void *) data;
++#endif
+
+ wake_up(&ctx->kthread_work_wq);
+ knem_counter_inc(DMACPY_CLEANUP_TIMEOUT);
+@@ -2665,7 +2673,11 @@ knem_miscdev_open(struct inode * inode, struct file * file)
+ if (ctx->dmacpy_chan) {
+ INIT_LIST_HEAD(&ctx->dmacpy_cleanup_work_list);
+ spin_lock_init(&ctx->dmacpy_cleanup_work_lock);
++#ifdef HAVE_TIMER_SETUP
++ timer_setup(&ctx->dmacpy_cleanup_timer, knem_dmacpy_cleanup_timer_handler, 0);
++#else
+ setup_timer(&ctx->dmacpy_cleanup_timer, knem_dmacpy_cleanup_timer_handler, (unsigned long) ctx);
++#endif
+ #if (defined CONFIG_NUMA) && (defined KNEM_HAVE_CPUMASK_OF_NODE)
+ {
+ int node = dev_to_node(ctx->dmacpy_chan->device->dev);
diff --git a/sys-cluster/knem/knem-1.1.1.ebuild b/sys-cluster/knem/knem-1.1.3.ebuild
index 5de621a022fb..ed55d7b088e1 100644
--- a/sys-cluster/knem/knem-1.1.1.ebuild
+++ b/sys-cluster/knem/knem-1.1.3.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=6
inherit autotools linux-mod linux-info toolchain-funcs udev multilib
@@ -12,7 +12,7 @@ if [[ ${PV} == "9999" ]] ; then
inherit git-2
KEYWORDS=""
else
- SRC_URI="http://runtime.bordeaux.inria.fr/knem/download/${P}.tar.gz"
+ SRC_URI="http://gforge.inria.fr/frs/download.php/37186/${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi
@@ -31,8 +31,12 @@ MODULE_NAMES="knem(misc:${S}/driver/linux)"
BUILD_TARGETS="all"
BUILD_PARAMS="KDIR=${KERNEL_DIR}"
+PATCHES=( "${FILESDIR}/${P}-setup_timer.patch" )
+
pkg_setup() {
linux-info_pkg_setup
+ CONFIG_CHECK="DMA_ENGINE"
+ check_extra_config
linux-mod_pkg_setup
ARCH="$(tc-arch-kernel)"
ABI="${KERNEL_ABI}"
@@ -41,6 +45,7 @@ pkg_setup() {
src_prepare() {
sed 's:driver/linux::g' -i Makefile.am
eautoreconf
+ default
}
src_configure() {
diff --git a/sys-cluster/knem/knem-9999.ebuild b/sys-cluster/knem/knem-9999.ebuild
index 5de621a022fb..135aad0a586b 100644
--- a/sys-cluster/knem/knem-9999.ebuild
+++ b/sys-cluster/knem/knem-9999.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=6
inherit autotools linux-mod linux-info toolchain-funcs udev multilib
@@ -9,7 +9,7 @@ DESCRIPTION="High-Performance Intra-Node MPI Communication"
HOMEPAGE="http://runtime.bordeaux.inria.fr/knem/"
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="https://gforge.inria.fr/git/knem/knem.git"
- inherit git-2
+ inherit git-r3
KEYWORDS=""
else
SRC_URI="http://runtime.bordeaux.inria.fr/knem/download/${P}.tar.gz"
@@ -41,6 +41,7 @@ pkg_setup() {
src_prepare() {
sed 's:driver/linux::g' -i Makefile.am
eautoreconf
+ default
}
src_configure() {