From c0df1714966285d15d7dff21c0706fb5378efaa2 Mon Sep 17 00:00:00 2001 From: Ben de Groot Date: Sun, 31 May 2015 23:27:53 +0000 Subject: Add upstream BFS 462 patches (bug #549788) (Portage version: 2.2.20/cvs/Linux x86_64, signed Manifest commit with key 0x4FDF9CFD2FAC514E!) --- sys-kernel/ck-sources/ChangeLog | 9 +- sys-kernel/ck-sources/ck-sources-4.0.4-r1.ebuild | 106 +++++++++++++++++++++ sys-kernel/ck-sources/ck-sources-4.0.4.ebuild | 105 -------------------- sys-kernel/ck-sources/files/bfs462-rtmn-fix.patch | 26 +++++ .../ck-sources/files/bfs462-update_inittask.patch | 30 ++++++ 5 files changed, 170 insertions(+), 106 deletions(-) create mode 100644 sys-kernel/ck-sources/ck-sources-4.0.4-r1.ebuild delete mode 100644 sys-kernel/ck-sources/ck-sources-4.0.4.ebuild create mode 100644 sys-kernel/ck-sources/files/bfs462-rtmn-fix.patch create mode 100644 sys-kernel/ck-sources/files/bfs462-update_inittask.patch (limited to 'sys-kernel') diff --git a/sys-kernel/ck-sources/ChangeLog b/sys-kernel/ck-sources/ChangeLog index 1d25323c59dc..761409889bbd 100644 --- a/sys-kernel/ck-sources/ChangeLog +++ b/sys-kernel/ck-sources/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for sys-kernel/ck-sources # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/ck-sources/ChangeLog,v 1.250 2015/05/24 05:04:29 yngwin Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/ck-sources/ChangeLog,v 1.251 2015/05/31 23:27:53 yngwin Exp $ + +*ck-sources-4.0.4-r1 (31 May 2015) + + 31 May 2015; Ben de Groot +ck-sources-4.0.4-r1.ebuild, + +files/bfs462-rtmn-fix.patch, +files/bfs462-update_inittask.patch, + -ck-sources-4.0.4.ebuild: + Add upstream BFS 462 patches (bug #549788) *ck-sources-3.18.14 (24 May 2015) *ck-sources-3.14.43 (24 May 2015) diff --git a/sys-kernel/ck-sources/ck-sources-4.0.4-r1.ebuild b/sys-kernel/ck-sources/ck-sources-4.0.4-r1.ebuild new file mode 100644 index 000000000000..d90b7ce4d194 --- /dev/null +++ b/sys-kernel/ck-sources/ck-sources-4.0.4-r1.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-kernel/ck-sources/ck-sources-4.0.4-r1.ebuild,v 1.1 2015/05/31 23:27:53 yngwin Exp $ + +EAPI="5" +ETYPE="sources" +KEYWORDS="~amd64 ~x86" +IUSE="bfsonly" + +HOMEPAGE="http://dev.gentoo.org/~mpagano/genpatches/ + http://users.on.net/~ckolivas/kernel/" + +K_WANT_GENPATCHES="base extras experimental" +K_EXP_GENPATCHES_PULL="1" +K_EXP_GENPATCHES_NOUSE="1" +K_GENPATCHES_VER="6" +K_SECURITY_UNSUPPORTED="1" +K_DEBLOB_AVAILABLE="1" + +inherit kernel-2 +detect_version +detect_arch + +K_BRANCH_ID="${KV_MAJOR}.${KV_MINOR}" + +DESCRIPTION="Full Linux ${K_BRANCH_ID} kernel sources with Con Kolivas' high performance patchset and Gentoo's genpatches" + +#-- If Gentoo-Sources don't follow then extra incremental patches are needed - + +XTRA_INCP_MIN="" +XTRA_INCP_MAX="" + +#-- + +CK_VERSION="1" +BFS_VERSION="462" + +CK_FILE="patch-${K_BRANCH_ID}-ck${CK_VERSION}.bz2" +BFS_FILE="${K_BRANCH_ID}-sched-bfs-${BFS_VERSION}.patch" + +CK_BASE_URL="http://ck.kolivas.org/patches/4.0" +CK_LVER_URL="${CK_BASE_URL}/${K_BRANCH_ID}/${K_BRANCH_ID}-ck${CK_VERSION}" +CK_URI="${CK_LVER_URL}/${CK_FILE}" +BFS_URI="${CK_LVER_URL}/patches/${BFS_FILE}" + +#-- Build extra incremental patches list -------------------------------------- + +LX_INCP_URI="" +LX_INCP_LIST="" +if [ -n "${XTRA_INCP_MIN}" ]; then + LX_INCP_URL="${KERNEL_BASE_URI}/incr" + for i in `seq ${XTRA_INCP_MIN} ${XTRA_INCP_MAX}`; do + LX_INCP[i]="patch-${K_BRANCH_ID}.${i}-$(($i+1)).bz2" + LX_INCP_URI="${LX_INCP_URI} ${LX_INCP_URL}/${LX_INCP[i]}" + LX_INCP_LIST="${LX_INCP_LIST} ${DISTDIR}/${LX_INCP[i]}" + done +fi + +#-- CK needs sometimes to patch itself... --------------------------- + +CK_INCP_URI="" +CK_INCP_LIST="" + +#-- Local patches needed for the ck-patches to apply smoothly ------- + +PRE_CK_FIX="" +POST_CK_FIX="( ${FILESDIR}/bfs462-rtmn-fix.patch + ${FILESDIR}/bfs462-update_inittask.patch )" + +#-- + +SRC_URI="${KERNEL_URI} ${LX_INCP_URI} ${GENPATCHES_URI} ${ARCH_URI} ${CK_INCP_URI} + !bfsonly? ( ${CK_URI} ) + bfsonly? ( ${BFS_URI} )" + +UNIPATCH_LIST="${LX_INCP_LIST} ${PRE_CK_FIX} ${DISTDIR}" + +if ! use bfsonly ; then + UNIPATCH_LIST="${UNIPATCH_LIST}/${CK_FILE}" +else + UNIPATCH_LIST="${UNIPATCH_LIST}/${BFS_FILE}" +fi + +UNIPATCH_LIST="${UNIPATCH_LIST} ${CK_INCP_LIST} ${POST_CK_FIX}" + +UNIPATCH_STRICTORDER="yes" + +#-- Since experimental genpatches && we want BFQ irrespective of experimental - + +K_EXP_GENPATCHES_LIST="50*_*.patch*" + +src_prepare() { + +#-- Comment out CK's EXTRAVERSION in Makefile --------------------------------- + + sed -i -e 's/\(^EXTRAVERSION :=.*$\)/# \1/' "${S}/Makefile" +} + +pkg_postinst() { + + kernel-2_pkg_postinst + + elog + elog "For more info on this patchset, see: http://forums.gentoo.org/viewtopic-t-941030-start-0.html" + elog +} diff --git a/sys-kernel/ck-sources/ck-sources-4.0.4.ebuild b/sys-kernel/ck-sources/ck-sources-4.0.4.ebuild deleted file mode 100644 index 90abeb577b8b..000000000000 --- a/sys-kernel/ck-sources/ck-sources-4.0.4.ebuild +++ /dev/null @@ -1,105 +0,0 @@ -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-kernel/ck-sources/ck-sources-4.0.4.ebuild,v 1.1 2015/05/19 12:28:01 yngwin Exp $ - -EAPI="5" -ETYPE="sources" -KEYWORDS="~amd64 ~x86" -IUSE="bfsonly" - -HOMEPAGE="http://dev.gentoo.org/~mpagano/genpatches/ - http://users.on.net/~ckolivas/kernel/" - -K_WANT_GENPATCHES="base extras experimental" -K_EXP_GENPATCHES_PULL="1" -K_EXP_GENPATCHES_NOUSE="1" -K_GENPATCHES_VER="6" -K_SECURITY_UNSUPPORTED="1" -K_DEBLOB_AVAILABLE="1" - -inherit kernel-2 -detect_version -detect_arch - -K_BRANCH_ID="${KV_MAJOR}.${KV_MINOR}" - -DESCRIPTION="Full Linux ${K_BRANCH_ID} kernel sources with Con Kolivas' high performance patchset and Gentoo's genpatches" - -#-- If Gentoo-Sources don't follow then extra incremental patches are needed - - -XTRA_INCP_MIN="" -XTRA_INCP_MAX="" - -#-- - -CK_VERSION="1" -BFS_VERSION="462" - -CK_FILE="patch-${K_BRANCH_ID}-ck${CK_VERSION}.bz2" -BFS_FILE="${K_BRANCH_ID}-sched-bfs-${BFS_VERSION}.patch" - -CK_BASE_URL="http://ck.kolivas.org/patches/4.0" -CK_LVER_URL="${CK_BASE_URL}/${K_BRANCH_ID}/${K_BRANCH_ID}-ck${CK_VERSION}" -CK_URI="${CK_LVER_URL}/${CK_FILE}" -BFS_URI="${CK_LVER_URL}/patches/${BFS_FILE}" - -#-- Build extra incremental patches list -------------------------------------- - -LX_INCP_URI="" -LX_INCP_LIST="" -if [ -n "${XTRA_INCP_MIN}" ]; then - LX_INCP_URL="${KERNEL_BASE_URI}/incr" - for i in `seq ${XTRA_INCP_MIN} ${XTRA_INCP_MAX}`; do - LX_INCP[i]="patch-${K_BRANCH_ID}.${i}-$(($i+1)).bz2" - LX_INCP_URI="${LX_INCP_URI} ${LX_INCP_URL}/${LX_INCP[i]}" - LX_INCP_LIST="${LX_INCP_LIST} ${DISTDIR}/${LX_INCP[i]}" - done -fi - -#-- CK needs sometimes to patch itself... (3.7/3.13)--------------------------- - -CK_INCP_URI="" -CK_INCP_LIST="" - -#-- Local patches needed for the ck-patches to apply smoothly (3.4/3.5) ------- - -PRE_CK_FIX="" -POST_CK_FIX="" - -#-- - -SRC_URI="${KERNEL_URI} ${LX_INCP_URI} ${GENPATCHES_URI} ${ARCH_URI} ${CK_INCP_URI} - !bfsonly? ( ${CK_URI} ) - bfsonly? ( ${BFS_URI} )" - -UNIPATCH_LIST="${LX_INCP_LIST} ${PRE_CK_FIX} ${DISTDIR}" - -if ! use bfsonly ; then - UNIPATCH_LIST="${UNIPATCH_LIST}/${CK_FILE}" -else - UNIPATCH_LIST="${UNIPATCH_LIST}/${BFS_FILE}" -fi - -UNIPATCH_LIST="${UNIPATCH_LIST} ${CK_INCP_LIST} ${POST_CK_FIX}" - -UNIPATCH_STRICTORDER="yes" - -#-- Since experimental genpatches && we want BFQ irrespective of experimental - - -K_EXP_GENPATCHES_LIST="50*_*.patch*" - -src_prepare() { - -#-- Comment out CK's EXTRAVERSION in Makefile --------------------------------- - - sed -i -e 's/\(^EXTRAVERSION :=.*$\)/# \1/' "${S}/Makefile" -} - -pkg_postinst() { - - kernel-2_pkg_postinst - - elog - elog "For more info on this patchset, see: http://forums.gentoo.org/viewtopic-t-941030-start-0.html" - elog -} diff --git a/sys-kernel/ck-sources/files/bfs462-rtmn-fix.patch b/sys-kernel/ck-sources/files/bfs462-rtmn-fix.patch new file mode 100644 index 000000000000..c3c77fd6854a --- /dev/null +++ b/sys-kernel/ck-sources/files/bfs462-rtmn-fix.patch @@ -0,0 +1,26 @@ +Fix undefined reference to `register_task_migration_notifier' + +-ck + +--- + kernel/sched/bfs.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +Index: linux-4.0.2-ck1/kernel/sched/bfs.c +=================================================================== +--- linux-4.0.2-ck1.orig/kernel/sched/bfs.c 2015-05-08 09:03:55.730280539 +1000 ++++ linux-4.0.2-ck1/kernel/sched/bfs.c 2015-05-08 09:18:42.266015120 +1000 +@@ -976,6 +976,13 @@ static inline void deactivate_task(struc + clear_sticky(p); + } + ++static ATOMIC_NOTIFIER_HEAD(task_migration_notifier); ++ ++void register_task_migration_notifier(struct notifier_block *n) ++{ ++ atomic_notifier_chain_register(&task_migration_notifier, n); ++} ++ + #ifdef CONFIG_SMP + void set_task_cpu(struct task_struct *p, unsigned int cpu) + { diff --git a/sys-kernel/ck-sources/files/bfs462-update_inittask.patch b/sys-kernel/ck-sources/files/bfs462-update_inittask.patch new file mode 100644 index 000000000000..92321c7d1b59 --- /dev/null +++ b/sys-kernel/ck-sources/files/bfs462-update_inittask.patch @@ -0,0 +1,30 @@ +Add missing init task changes. + +-ck + +--- + include/linux/init_task.h | 4 ++++ + 1 file changed, 4 insertions(+) + +Index: linux-4.0.2-ck1/include/linux/init_task.h +=================================================================== +--- linux-4.0.2-ck1.orig/include/linux/init_task.h 2015-05-08 09:03:54.922287214 +1000 ++++ linux-4.0.2-ck1/include/linux/init_task.h 2015-05-08 14:09:52.046246570 +1000 +@@ -200,6 +200,9 @@ extern struct task_group root_task_group + .cpus_allowed = CPU_MASK_ALL, \ + .mm = NULL, \ + .active_mm = &init_mm, \ ++ .restart_block = { \ ++ .fn = do_no_restart_syscall, \ ++ }, \ + .run_list = LIST_HEAD_INIT(tsk.run_list), \ + .time_slice = HZ, \ + .tasks = LIST_HEAD_INIT(tsk.tasks), \ +@@ -243,6 +246,7 @@ extern struct task_group root_task_group + INIT_FTRACE_GRAPH \ + INIT_TRACE_RECURSION \ + INIT_TASK_RCU_PREEMPT(tsk) \ ++ INIT_KASAN(tsk) \ + } + #else /* CONFIG_SCHED_BFS */ + #define INIT_TASK_COMM "swapper" -- cgit v1.2.3-65-gdbad