From 768341030da4acb06798dc0d444ba8ca9dfea5f8 Mon Sep 17 00:00:00 2001 From: Alexey Shvetsov Date: Tue, 4 Sep 2018 00:04:46 +0300 Subject: sys-cluster/knem: Version bump Closes: https://bugs.gentoo.org/555148 Closes: https://bugs.gentoo.org/560558 Closes: https://bugs.gentoo.org/625688 Closes: https://bugs.gentoo.org/638356 Closes: https://bugs.gentoo.org/649494 Package-Manager: Portage-2.3.47, Repoman-2.3.10 --- sys-cluster/knem/Manifest | 2 +- .../knem/files/knem-1.1.3-setup_timer.patch | 58 ++++++++++++++++ sys-cluster/knem/knem-1.1.1.ebuild | 75 -------------------- sys-cluster/knem/knem-1.1.3.ebuild | 80 ++++++++++++++++++++++ sys-cluster/knem/knem-9999.ebuild | 7 +- 5 files changed, 143 insertions(+), 79 deletions(-) create mode 100644 sys-cluster/knem/files/knem-1.1.3-setup_timer.patch delete mode 100644 sys-cluster/knem/knem-1.1.1.ebuild create mode 100644 sys-cluster/knem/knem-1.1.3.ebuild (limited to 'sys-cluster') diff --git a/sys-cluster/knem/Manifest b/sys-cluster/knem/Manifest index a4736fb6353b..b258d70ac673 100644 --- a/sys-cluster/knem/Manifest +++ b/sys-cluster/knem/Manifest @@ -1 +1 @@ -DIST knem-1.1.1.tar.gz 321401 BLAKE2B bb3f2bd553aa1aad5b7ede61723aaea625b811564f43efaf395425449e2b61631432ab3f9ceed2f3f104f638a93705919e595436fdbe8e64b4782ce1c98629fc SHA512 6b53748df8ffcfa400870657d5c121f51e132d2b724bca832b00d7c16c546299d1dd29739fe1d4b00cc33010558ae584e7c0078de2c56d8ea92ce7880b4bfedc +DIST knem-1.1.3.tar.gz 330109 BLAKE2B 0aa5a2b5cd329e7183800b8b4e6b76297c85325cef218dc0ae27293ffb3aaf8a6896bc237ca745bb8df97a446c2ecc5542b96fc9eb4bbead6a1c9b894dd38f51 SHA512 ab72b3a803898c8de1bb775857da346e16ade285cdf17b9339eef3dc939c5d50ef5b3442e96418e414d64cd3e1e1a922b5e8c74462c5d6866b842ee9749db3eb 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.1.ebuild deleted file mode 100644 index 5de621a022fb..000000000000 --- a/sys-cluster/knem/knem-1.1.1.ebuild +++ /dev/null @@ -1,75 +0,0 @@ -# Copyright 1999-2014 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -inherit autotools linux-mod linux-info toolchain-funcs udev multilib - -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 - KEYWORDS="" -else - SRC_URI="http://runtime.bordeaux.inria.fr/knem/download/${P}.tar.gz" - KEYWORDS="~amd64 ~x86" -fi - -LICENSE="GPL-2 LGPL-2" -SLOT="0" -IUSE="debug modules" - -DEPEND=" - sys-apps/hwloc - virtual/linux-sources" -RDEPEND=" - sys-apps/hwloc - virtual/modutils" - -MODULE_NAMES="knem(misc:${S}/driver/linux)" -BUILD_TARGETS="all" -BUILD_PARAMS="KDIR=${KERNEL_DIR}" - -pkg_setup() { - linux-info_pkg_setup - linux-mod_pkg_setup - ARCH="$(tc-arch-kernel)" - ABI="${KERNEL_ABI}" -} - -src_prepare() { - sed 's:driver/linux::g' -i Makefile.am - eautoreconf -} - -src_configure() { - econf \ - --enable-hwloc \ - --with-linux="${KERNEL_DIR}" \ - --with-linux-release=${KV_FULL} \ - $(use_enable debug) -} - -src_compile() { - default - if use modules; then - cd "${S}/driver/linux" - linux-mod_src_compile || die "failed to build driver" - fi -} - -src_install() { - default - if use modules; then - cd "${S}/driver/linux" - linux-mod_src_install || die "failed to install driver" - fi - - # Drop funny unneded stuff - rm "${ED}/usr/sbin/knem_local_install" || die - rmdir "${ED}/usr/sbin" || die - # install udev rules - udev_dorules "${FILESDIR}/45-knem.rules" - rm "${ED}/etc/10-knem.rules" || die -} diff --git a/sys-cluster/knem/knem-1.1.3.ebuild b/sys-cluster/knem/knem-1.1.3.ebuild new file mode 100644 index 000000000000..ed55d7b088e1 --- /dev/null +++ b/sys-cluster/knem/knem-1.1.3.ebuild @@ -0,0 +1,80 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit autotools linux-mod linux-info toolchain-funcs udev multilib + +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 + KEYWORDS="" +else + SRC_URI="http://gforge.inria.fr/frs/download.php/37186/${P}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="GPL-2 LGPL-2" +SLOT="0" +IUSE="debug modules" + +DEPEND=" + sys-apps/hwloc + virtual/linux-sources" +RDEPEND=" + sys-apps/hwloc + virtual/modutils" + +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}" +} + +src_prepare() { + sed 's:driver/linux::g' -i Makefile.am + eautoreconf + default +} + +src_configure() { + econf \ + --enable-hwloc \ + --with-linux="${KERNEL_DIR}" \ + --with-linux-release=${KV_FULL} \ + $(use_enable debug) +} + +src_compile() { + default + if use modules; then + cd "${S}/driver/linux" + linux-mod_src_compile || die "failed to build driver" + fi +} + +src_install() { + default + if use modules; then + cd "${S}/driver/linux" + linux-mod_src_install || die "failed to install driver" + fi + + # Drop funny unneded stuff + rm "${ED}/usr/sbin/knem_local_install" || die + rmdir "${ED}/usr/sbin" || die + # install udev rules + udev_dorules "${FILESDIR}/45-knem.rules" + rm "${ED}/etc/10-knem.rules" || die +} 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() { -- cgit v1.2.3-65-gdbad