summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Yao <ryao@gentoo.org>2013-11-21 15:47:44 +0000
committerRichard Yao <ryao@gentoo.org>2013-11-21 15:47:44 +0000
commit5d7de1d4eb0d19de029a333ee4913589fb3d562f (patch)
tree65869b80b3335be4961ca96db0044821441cc2d0 /sys-fs/zfs-kmod
parentbug number to comment for clarity's sake (diff)
downloadgentoo-2-5d7de1d4eb0d19de029a333ee4913589fb3d562f.tar.gz
gentoo-2-5d7de1d4eb0d19de029a333ee4913589fb3d562f.tar.bz2
gentoo-2-5d7de1d4eb0d19de029a333ee4913589fb3d562f.zip
Fix writeback regression introduced in -r2 that affected mmap() and AIO writes; Apply locking fixes from Illumos; Reintroduce uio_prefaultpages() to minimize the possibility of hitting zfsonlinux/zfs#1689; Add Linux 3.12 Support
(Portage version: 2.2.7/cvs/Linux x86_64, signed Manifest commit with key 0xBEE84C64)
Diffstat (limited to 'sys-fs/zfs-kmod')
-rw-r--r--sys-fs/zfs-kmod/ChangeLog12
-rw-r--r--sys-fs/zfs-kmod/zfs-kmod-0.6.2-r2.ebuild129
-rw-r--r--sys-fs/zfs-kmod/zfs-kmod-0.6.2-r3.ebuild (renamed from sys-fs/zfs-kmod/zfs-kmod-0.6.2-r1.ebuild)6
-rw-r--r--sys-fs/zfs-kmod/zfs-kmod-0.6.2.ebuild123
-rw-r--r--sys-fs/zfs-kmod/zfs-kmod-9999.ebuild15
5 files changed, 26 insertions, 259 deletions
diff --git a/sys-fs/zfs-kmod/ChangeLog b/sys-fs/zfs-kmod/ChangeLog
index ba815a465146..f89c92548dcb 100644
--- a/sys-fs/zfs-kmod/ChangeLog
+++ b/sys-fs/zfs-kmod/ChangeLog
@@ -1,6 +1,16 @@
# ChangeLog for sys-fs/zfs-kmod
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/zfs-kmod/ChangeLog,v 1.39 2013/10/18 16:25:53 ryao Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/zfs-kmod/ChangeLog,v 1.40 2013/11/21 15:47:44 ryao Exp $
+
+*zfs-kmod-0.6.2-r3 (21 Nov 2013)
+
+ 21 Nov 2013; Richard Yao <ryao@gentoo.org> +zfs-kmod-0.6.2-r3.ebuild,
+ -zfs-kmod-0.6.2-r1.ebuild, -zfs-kmod-0.6.2-r2.ebuild, -zfs-kmod-0.6.2.ebuild,
+ zfs-kmod-9999.ebuild:
+ Fix writeback regression introduced in -r2 that affected mmap() and AIO
+ writes; Apply locking fixes from Illumos; Reintroduce uio_prefaultpages() to
+ minimize the possibility of hitting zfsonlinux/zfs#1689; Add Linux 3.12
+ Support
*zfs-kmod-0.6.2-r2 (18 Oct 2013)
diff --git a/sys-fs/zfs-kmod/zfs-kmod-0.6.2-r2.ebuild b/sys-fs/zfs-kmod/zfs-kmod-0.6.2-r2.ebuild
deleted file mode 100644
index 9ec379f4c077..000000000000
--- a/sys-fs/zfs-kmod/zfs-kmod-0.6.2-r2.ebuild
+++ /dev/null
@@ -1,129 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/zfs-kmod/zfs-kmod-0.6.2-r2.ebuild,v 1.1 2013/10/18 16:25:53 ryao Exp $
-
-EAPI="4"
-
-AT_M4DIR="config"
-AUTOTOOLS_AUTORECONF="1"
-AUTOTOOLS_IN_SOURCE_BUILD="1"
-
-inherit bash-completion-r1 flag-o-matic linux-info linux-mod toolchain-funcs autotools-utils
-
-if [ ${PV} == "9999" ] ; then
- inherit git-2
- MY_PV=9999
- EGIT_REPO_URI="git://github.com/zfsonlinux/zfs.git"
-else
- inherit eutils versionator
- MY_PV=$(replace_version_separator 3 '-')
- SRC_URI="https://github.com/zfsonlinux/zfs/archive/zfs-${MY_PV}.tar.gz
- http://dev.gentoo.org/~ryao/dist/${PN}-${MY_PV}-p1.tar.xz"
- S="${WORKDIR}/zfs-zfs-${MY_PV}"
- KEYWORDS="~amd64"
-fi
-
-DESCRIPTION="Linux ZFS kernel module for sys-fs/zfs"
-HOMEPAGE="http://zfsonlinux.org/"
-
-LICENSE="CDDL debug? ( GPL-2+ )"
-SLOT="0"
-IUSE="custom-cflags debug +rootfs"
-RESTRICT="test"
-
-DEPEND="
- =sys-kernel/spl-${PV}*
- dev-lang/perl
- virtual/awk
-"
-
-RDEPEND="${DEPEND}
- !sys-fs/zfs-fuse
-"
-
-pkg_setup() {
- linux-info_pkg_setup
- CONFIG_CHECK="!DEBUG_LOCK_ALLOC
- BLK_DEV_LOOP
- EFI_PARTITION
- IOSCHED_NOOP
- MODULES
- !PAX_KERNEXEC_PLUGIN_METHOD_OR
- ZLIB_DEFLATE
- ZLIB_INFLATE
- "
-
- use rootfs && \
- CONFIG_CHECK="${CONFIG_CHECK} BLK_DEV_INITRD
- DEVTMPFS"
-
- kernel_is ge 2 6 26 || die "Linux 2.6.26 or newer required"
-
- [ ${PV} != "9999" ] && \
- { kernel_is le 3 11 || die "Linux 3.11 is the latest supported version."; }
-
- check_extra_config
-}
-
-src_prepare() {
- # Remove GPLv2-licensed ZPIOS unless we are debugging
- use debug || sed -e 's/^subdir-m += zpios$//' -i "${S}/module/Makefile.in"
-
- if [ ${PV} != "9999" ]
- then
- # Apply patch set
- EPATCH_SUFFIX="patch" \
- EPATCH_FORCE="yes" \
- epatch "${WORKDIR}/${PN}-${MY_PV}-patches"
- fi
-
- autotools-utils_src_prepare
-}
-
-src_configure() {
- use custom-cflags || strip-flags
- filter-ldflags -Wl,*
-
- set_arch_to_kernel
- local myeconfargs=(
- --bindir="${EPREFIX}/bin"
- --sbindir="${EPREFIX}/sbin"
- --with-config=kernel
- --with-linux="${KV_DIR}"
- --with-linux-obj="${KV_OUT_DIR}"
- $(use_enable debug)
- )
- autotools-utils_src_configure
-}
-
-src_install() {
- autotools-utils_src_install
- dodoc AUTHORS COPYRIGHT DISCLAIMER README.markdown
-}
-
-pkg_postinst() {
- linux-mod_pkg_postinst
-
- # Remove old modules
- if [ -d "${EROOT}lib/modules/${KV_FULL}/addon/zfs" ]
- then
- ewarn "${PN} now installs modules in ${EROOT}lib/modules/${KV_FULL}/extra/zfs"
- ewarn "Old modules were detected in ${EROOT}lib/modules/${KV_FULL}/addon/zfs"
- ewarn "Automatically removing old modules to avoid problems."
- rm -r "${EROOT}lib/modules/${KV_FULL}/addon/zfs" || die "Cannot remove modules"
- rmdir --ignore-fail-on-non-empty "${EROOT}lib/modules/${KV_FULL}/addon"
- fi
-
- if use x86 || use arm
- then
- ewarn "32-bit kernels will likely require increasing vmalloc to"
- ewarn "at least 256M and decreasing zfs_arc_max to some value less than that."
- fi
-
- ewarn "This version of ZFSOnLinux includes support for features flags."
- ewarn "If you upgrade your pools to make use of feature flags, you will lose"
- ewarn "the ability to import them using older versions of ZFSOnLinux."
- ewarn "Any new pools will be created with feature flag support and will"
- ewarn "not be compatible with older versions of ZFSOnLinux. To create a new"
- ewarn "pool that is backward compatible, use zpool create -o version=28 ..."
-}
diff --git a/sys-fs/zfs-kmod/zfs-kmod-0.6.2-r1.ebuild b/sys-fs/zfs-kmod/zfs-kmod-0.6.2-r3.ebuild
index 0a474922e8fe..9e33094ba92f 100644
--- a/sys-fs/zfs-kmod/zfs-kmod-0.6.2-r1.ebuild
+++ b/sys-fs/zfs-kmod/zfs-kmod-0.6.2-r3.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/zfs-kmod/zfs-kmod-0.6.2-r1.ebuild,v 1.3 2013/10/14 14:36:12 ryao Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/zfs-kmod/zfs-kmod-0.6.2-r3.ebuild,v 1.1 2013/11/21 15:47:44 ryao Exp $
EAPI="4"
@@ -18,7 +18,7 @@ else
inherit eutils versionator
MY_PV=$(replace_version_separator 3 '-')
SRC_URI="https://github.com/zfsonlinux/zfs/archive/zfs-${MY_PV}.tar.gz
- http://dev.gentoo.org/~ryao/dist/${PN}-${MY_PV}-p0.tar.xz"
+ http://dev.gentoo.org/~ryao/dist/${PN}-${MY_PV}-p2.tar.xz"
S="${WORKDIR}/zfs-zfs-${MY_PV}"
KEYWORDS="~amd64"
fi
@@ -60,7 +60,7 @@ pkg_setup() {
kernel_is ge 2 6 26 || die "Linux 2.6.26 or newer required"
[ ${PV} != "9999" ] && \
- { kernel_is le 3 11 || die "Linux 3.11 is the latest supported version."; }
+ { kernel_is le 3 12 || die "Linux 3.12 is the latest supported version."; }
check_extra_config
}
diff --git a/sys-fs/zfs-kmod/zfs-kmod-0.6.2.ebuild b/sys-fs/zfs-kmod/zfs-kmod-0.6.2.ebuild
deleted file mode 100644
index 51e15addffce..000000000000
--- a/sys-fs/zfs-kmod/zfs-kmod-0.6.2.ebuild
+++ /dev/null
@@ -1,123 +0,0 @@
-# Copyright 1999-2013 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/zfs-kmod/zfs-kmod-0.6.2.ebuild,v 1.1 2013/08/23 23:20:07 ryao Exp $
-
-EAPI="4"
-
-AT_M4DIR="config"
-AUTOTOOLS_AUTORECONF="1"
-AUTOTOOLS_IN_SOURCE_BUILD="1"
-
-inherit bash-completion-r1 flag-o-matic linux-info linux-mod toolchain-funcs autotools-utils
-
-if [ ${PV} == "9999" ] ; then
- inherit git-2
- MY_PV=9999
- EGIT_REPO_URI="git://github.com/zfsonlinux/zfs.git"
-else
- inherit eutils versionator
- MY_PV=$(replace_version_separator 3 '-')
- SRC_URI="https://github.com/zfsonlinux/zfs/archive/zfs-${MY_PV}.tar.gz"
- S="${WORKDIR}/zfs-zfs-${MY_PV}"
- KEYWORDS="~amd64"
-fi
-
-DESCRIPTION="Linux ZFS kernel module for sys-fs/zfs"
-HOMEPAGE="http://zfsonlinux.org/"
-
-LICENSE="CDDL debug? ( GPL-2+ )"
-SLOT="0"
-IUSE="custom-cflags debug +rootfs"
-RESTRICT="test"
-
-DEPEND="
- =sys-kernel/spl-${PV}*
- dev-lang/perl
- virtual/awk
-"
-
-RDEPEND="${DEPEND}
- !sys-fs/zfs-fuse
-"
-
-pkg_setup() {
- linux-info_pkg_setup
- CONFIG_CHECK="!DEBUG_LOCK_ALLOC
- BLK_DEV_LOOP
- EFI_PARTITION
- IOSCHED_NOOP
- MODULES
- !PAX_KERNEXEC_PLUGIN_METHOD_OR
- ZLIB_DEFLATE
- ZLIB_INFLATE
- "
-
- use rootfs && \
- CONFIG_CHECK="${CONFIG_CHECK} BLK_DEV_INITRD
- DEVTMPFS"
-
- kernel_is ge 2 6 26 || die "Linux 2.6.26 or newer required"
-
- [ ${PV} != "9999" ] && \
- { kernel_is le 3 11 || die "Linux 3.11 is the latest supported version."; }
-
- check_extra_config
-}
-
-src_prepare() {
- # Remove GPLv2-licensed ZPIOS unless we are debugging
- use debug || sed -e 's/^subdir-m += zpios$//' -i "${S}/module/Makefile.in"
-
- autotools-utils_src_prepare
-}
-
-src_configure() {
- use custom-cflags || strip-flags
- filter-ldflags -Wl,*
-
- set_arch_to_kernel
- local myeconfargs=(
- --bindir="${EPREFIX}/bin"
- --sbindir="${EPREFIX}/sbin"
- --with-config=kernel
- --with-linux="${KV_DIR}"
- --with-linux-obj="${KV_OUT_DIR}"
- $(use_enable debug)
- )
- autotools-utils_src_configure
-}
-
-src_install() {
- autotools-utils_src_install
- dodoc AUTHORS COPYRIGHT DISCLAIMER README.markdown
-
- # Provide /usr/src/zfs symlink for lustre
- dosym "$(basename $(echo "${ED}/usr/src/zfs-"*))/${KV_FULL}" /usr/src/zfs
-}
-
-pkg_postinst() {
- linux-mod_pkg_postinst
-
- # Remove old modules
- if [ -d "${EROOT}lib/modules/${KV_FULL}/addon/zfs" ]
- then
- ewarn "${PN} now installs modules in ${EROOT}lib/modules/${KV_FULL}/extra/zfs"
- ewarn "Old modules were detected in ${EROOT}lib/modules/${KV_FULL}/addon/zfs"
- ewarn "Automatically removing old modules to avoid problems."
- rm -r "${EROOT}lib/modules/${KV_FULL}/addon/zfs" || die "Cannot remove modules"
- rmdir --ignore-fail-on-non-empty "${EROOT}lib/modules/${KV_FULL}/addon"
- fi
-
- if use x86 || use arm
- then
- ewarn "32-bit kernels will likely require increasing vmalloc to"
- ewarn "at least 256M and decreasing zfs_arc_max to some value less than that."
- fi
-
- ewarn "This version of ZFSOnLinux includes support for features flags."
- ewarn "If you upgrade your pools to make use of feature flags, you will lose"
- ewarn "the ability to import them using older versions of ZFSOnLinux."
- ewarn "Any new pools will be created with feature flag support and will"
- ewarn "not be compatible with older versions of ZFSOnLinux. To create a new"
- ewarn "pool that is backward compatible, use zpool create -o version=28 ..."
-}
diff --git a/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild b/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild
index b5c315003ce3..080ecbc62a74 100644
--- a/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild
+++ b/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild,v 1.17 2013/04/17 14:30:18 ryao Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild,v 1.18 2013/11/21 15:47:44 ryao Exp $
EAPI="4"
@@ -17,7 +17,8 @@ if [ ${PV} == "9999" ] ; then
else
inherit eutils versionator
MY_PV=$(replace_version_separator 3 '-')
- SRC_URI="https://github.com/zfsonlinux/zfs/archive/zfs-${MY_PV}.tar.gz"
+ SRC_URI="https://github.com/zfsonlinux/zfs/archive/zfs-${MY_PV}.tar.gz
+ http://dev.gentoo.org/~ryao/dist/${PN}-${MY_PV}-p2.tar.xz"
S="${WORKDIR}/zfs-zfs-${MY_PV}"
KEYWORDS="~amd64"
fi
@@ -59,7 +60,7 @@ pkg_setup() {
kernel_is ge 2 6 26 || die "Linux 2.6.26 or newer required"
[ ${PV} != "9999" ] && \
- { kernel_is le 3 9 || die "Linux 3.9 is the latest supported version."; }
+ { kernel_is le 3 12 || die "Linux 3.12 is the latest supported version."; }
check_extra_config
}
@@ -68,6 +69,14 @@ src_prepare() {
# Remove GPLv2-licensed ZPIOS unless we are debugging
use debug || sed -e 's/^subdir-m += zpios$//' -i "${S}/module/Makefile.in"
+ if [ ${PV} != "9999" ]
+ then
+ # Apply patch set
+ EPATCH_SUFFIX="patch" \
+ EPATCH_FORCE="yes" \
+ epatch "${WORKDIR}/${PN}-${MY_PV}-patches"
+ fi
+
autotools-utils_src_prepare
}