diff options
author | sirlucjan | 2016-10-31 21:22:45 +0100 |
---|---|---|
committer | sirlucjan | 2016-10-31 21:22:45 +0100 |
commit | cec41cc838749533d876e619a154b1f97f3d7495 (patch) | |
tree | e91e846ddbd336154747b12b7918535c7f63f716 | |
parent | 9c3b240a198b72b09ff8a4f4b28d4610d16b3d8d (diff) | |
download | aur-cec41cc838749533d876e619a154b1f97f3d7495.tar.gz |
Bump to 4.8.6-rt5
-rw-r--r-- | .SRCINFO | 18 | ||||
-rw-r--r-- | PKGBUILD | 18 | ||||
-rw-r--r-- | fix-CVE-2016-5195.patch | 90 |
3 files changed, 14 insertions, 112 deletions
@@ -1,7 +1,7 @@ # Generated by mksrcinfo v8 -# Mon Oct 24 14:34:22 UTC 2016 +# Mon Oct 31 20:22:28 UTC 2016 pkgbase = linux-rt-bfq - pkgver = 4.8.2_rt3 + pkgver = 4.8.6_rt5 pkgrel = 1 url = http://algo.ing.unimo.it arch = i686 @@ -13,10 +13,10 @@ pkgbase = linux-rt-bfq options = !strip source = http://www.kernel.org/pub/linux/kernel/v4.x/linux-4.8.tar.xz source = https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.8.tar.sign - source = http://www.kernel.org/pub/linux/kernel/v4.x/patch-4.8.2.xz - source = https://www.kernel.org/pub/linux/kernel/v4.x/patch-4.8.2.sign - source = http://www.kernel.org/pub/linux/kernel/projects/rt/4.8/patch-4.8.2-rt3.patch.xz - source = http://www.kernel.org/pub/linux/kernel/projects/rt/4.8/patch-4.8.2-rt3.patch.sign + source = http://www.kernel.org/pub/linux/kernel/v4.x/patch-4.8.6.xz + source = https://www.kernel.org/pub/linux/kernel/v4.x/patch-4.8.6.sign + source = http://www.kernel.org/pub/linux/kernel/projects/rt/4.8/patch-4.8.6-rt5.patch.xz + source = http://www.kernel.org/pub/linux/kernel/projects/rt/4.8/patch-4.8.6-rt5.patch.sign source = http://algo.ing.unimo.it/people/paolo/disk_sched/patches/4.8.0-v8r4/0001-block-cgroups-kconfig-build-bits-for-BFQ-v7r11-4.8.0.patch source = http://algo.ing.unimo.it/people/paolo/disk_sched/patches/4.8.0-v8r4/0002-block-introduce-the-BFQ-v7r11-I-O-sched-to-be-ported.patch source = http://algo.ing.unimo.it/people/paolo/disk_sched/patches/4.8.0-v8r4/0003-block-bfq-add-Early-Queue-Merge-EQM-to-BFQ-v7r11-to-.patch @@ -27,12 +27,11 @@ pkgbase = linux-rt-bfq source = config source = config.x86_64 source = fix-race-in-PRT-wait-for-completion-simple-wait-code_Nvidia-RT-160319.patch - source = fix-CVE-2016-5195.patch sha512sums = a48a065f21e1c7c4de4cf8ca47b8b8d9a70f86b64e7cfa6e01be490f78895745b9c8790734b1d22182cf1f930fb87eaaa84e62ec8cc1f64ac4be9b949e7c0358 sha512sums = SKIP - sha512sums = 378ee4d328169b6e2475177bef31596d9f586b08ba87eb170c1943e3a1d43749d7b101b6f39886d50bbf1abf0ca8720a567f30a6ac9f5c66afe1f657d4899d25 + sha512sums = 8a3c9bbba1bb8fc49b073509320fedec085b5de0507826baced59a2acfd0bef9b3a79a2510ccffa6bf1e21098bb13efff028f87ea239b19047e9afa61c149558 sha512sums = SKIP - sha512sums = dd8e7102d86f6e751c394e6853aa95f81674d3931819c17e2bbd198693cfb50e4f6477d5a8de317658599e717a40c2dfdc4fb15b2967d1338254e57d9736915d + sha512sums = 38ee3539300ea4e2104e96ee753aa21ba5256a22e4802b953fbbddb436b7dd900f8e63d8a4020016fb131fd037e91e16a4511da776f735fce50c5b3d58fe9321 sha512sums = SKIP sha512sums = 95a7b9dc5a6c378b19e199285b5c1c397ca0ca0cf03c42d185b57da68329e59d59294d1879998f4020a0dee10d36c550acf30f28970c82adb2e7604c86424178 sha512sums = dc0649dfe2a5ce8e8879a62df29a4a1959eb1a84e5d896a9cb119d6a85a9bad1b17135371799e0be96532e17c66043d298e4a14b18fad3078a1f425108f888c9 @@ -44,7 +43,6 @@ pkgbase = linux-rt-bfq sha512sums = 3fba4c1c172aa823c58901656fcbd30241f7e60486619d1095447e4c902b94e4a9f568d68a124001951cff6e873ce55f338975808b30e3ba2ee2380561660133 sha512sums = a6200ad0c8bc44b97233c0cbd4c419c37727f06e735f2c6b60a28e94bfdc6d31d7f26d24f9f898c62fceefe08dfd3bdbd5d71acf2b5fcedbda8ea3881d284daa sha512sums = 86f717f596c613db3bc40624fd956ed379b8a2a20d1d99e076ae9061251fe9afba39cf536623eccd970258e124b8c2c05643e3d539f37bd910e02dc5dd498749 - sha512sums = 9f530a6bc3e6b1425d180a03c04e27f7fdbaa537180e08636ce345d128fe2051ed31764b5d5bdb8c00deaeaab4098826055e4ce98dff639ee6fbaaadd263c0f1 pkgname = linux-rt-bfq pkgdesc = Linux Kernel and modules with the RT patch and the BFQ scheduler. @@ -52,8 +52,8 @@ pkgbase=linux-rt-bfq pkgname=('linux-rt-bfq' 'linux-rt-bfq-headers' 'linux-rt-bfq-docs') _kernelname=-rt-bfq _srcname=linux-4.8 -_pkgver=4.8.2 -_rtpatchver=rt3 +_pkgver=4.8.6 +_rtpatchver=rt5 pkgver=${_pkgver}_${_rtpatchver} pkgrel=1 arch=('i686' 'x86_64') @@ -81,8 +81,7 @@ source=("http://www.kernel.org/pub/linux/kernel/v4.x/${_srcname}.tar.xz" 'linux-rt-bfq.preset' 'change-default-console-loglevel.patch' 'config' 'config.x86_64' - 'fix-race-in-PRT-wait-for-completion-simple-wait-code_Nvidia-RT-160319.patch' - 'fix-CVE-2016-5195.patch') + 'fix-race-in-PRT-wait-for-completion-simple-wait-code_Nvidia-RT-160319.patch') prepare() { cd ${_srcname} @@ -100,10 +99,6 @@ prepare() { msg "Fix-race-in-PRT-wait-for-completion-simple-wait-code_Nvidia-RT.patch" patch -p1 -i "${srcdir}/fix-race-in-PRT-wait-for-completion-simple-wait-code_Nvidia-RT-160319.patch" - ### Fix CVE-2016-5195.patch - msg "CVE-2016-5195.patch" - patch -p1 -i "${srcdir}/fix-CVE-2016-5195.patch" - ### set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param) # remove this when a Kconfig knob is made available by upstream # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227) @@ -464,9 +459,9 @@ package_linux-rt-bfq-docs() { sha512sums=('a48a065f21e1c7c4de4cf8ca47b8b8d9a70f86b64e7cfa6e01be490f78895745b9c8790734b1d22182cf1f930fb87eaaa84e62ec8cc1f64ac4be9b949e7c0358' 'SKIP' - '378ee4d328169b6e2475177bef31596d9f586b08ba87eb170c1943e3a1d43749d7b101b6f39886d50bbf1abf0ca8720a567f30a6ac9f5c66afe1f657d4899d25' + '8a3c9bbba1bb8fc49b073509320fedec085b5de0507826baced59a2acfd0bef9b3a79a2510ccffa6bf1e21098bb13efff028f87ea239b19047e9afa61c149558' 'SKIP' - 'dd8e7102d86f6e751c394e6853aa95f81674d3931819c17e2bbd198693cfb50e4f6477d5a8de317658599e717a40c2dfdc4fb15b2967d1338254e57d9736915d' + '38ee3539300ea4e2104e96ee753aa21ba5256a22e4802b953fbbddb436b7dd900f8e63d8a4020016fb131fd037e91e16a4511da776f735fce50c5b3d58fe9321' 'SKIP' '95a7b9dc5a6c378b19e199285b5c1c397ca0ca0cf03c42d185b57da68329e59d59294d1879998f4020a0dee10d36c550acf30f28970c82adb2e7604c86424178' 'dc0649dfe2a5ce8e8879a62df29a4a1959eb1a84e5d896a9cb119d6a85a9bad1b17135371799e0be96532e17c66043d298e4a14b18fad3078a1f425108f888c9' @@ -477,8 +472,7 @@ sha512sums=('a48a065f21e1c7c4de4cf8ca47b8b8d9a70f86b64e7cfa6e01be490f78895745b9c 'd9d28e02e964704ea96645a5107f8b65cae5f4fb4f537e224e5e3d087fd296cb770c29ac76e0ce95d173bc420ea87fb8f187d616672a60a0cae618b0ef15b8c8' '3fba4c1c172aa823c58901656fcbd30241f7e60486619d1095447e4c902b94e4a9f568d68a124001951cff6e873ce55f338975808b30e3ba2ee2380561660133' 'a6200ad0c8bc44b97233c0cbd4c419c37727f06e735f2c6b60a28e94bfdc6d31d7f26d24f9f898c62fceefe08dfd3bdbd5d71acf2b5fcedbda8ea3881d284daa' - '86f717f596c613db3bc40624fd956ed379b8a2a20d1d99e076ae9061251fe9afba39cf536623eccd970258e124b8c2c05643e3d539f37bd910e02dc5dd498749' - '9f530a6bc3e6b1425d180a03c04e27f7fdbaa537180e08636ce345d128fe2051ed31764b5d5bdb8c00deaeaab4098826055e4ce98dff639ee6fbaaadd263c0f1') + '86f717f596c613db3bc40624fd956ed379b8a2a20d1d99e076ae9061251fe9afba39cf536623eccd970258e124b8c2c05643e3d539f37bd910e02dc5dd498749') validpgpkeys=( 'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds diff --git a/fix-CVE-2016-5195.patch b/fix-CVE-2016-5195.patch deleted file mode 100644 index 598af7f8d595..000000000000 --- a/fix-CVE-2016-5195.patch +++ /dev/null @@ -1,90 +0,0 @@ -author Linus Torvalds <torvalds@linux-foundation.org> 2016-10-13 20:07:36 (GMT) -committer Linus Torvalds <torvalds@linux-foundation.org> 2016-10-18 21:13:29 (GMT) -commit 19be0eaffa3ac7d8eb6784ad9bdbc7d67ed8e619 (patch) -tree 9ed601a5726b067beb3e29414c469f88c499a63b -parent 6b25e21fa6f26d0f0d45f161d169029411c84286 (diff) -mm: remove gup_flags FOLL_WRITE games from __get_user_pages() -This is an ancient bug that was actually attempted to be fixed once -(badly) by me eleven years ago in commit 4ceb5db9757a ("Fix -get_user_pages() race for write access") but that was then undone due to -problems on s390 by commit f33ea7f404e5 ("fix get_user_pages bug"). - -In the meantime, the s390 situation has long been fixed, and we can now -fix it by checking the pte_dirty() bit properly (and do it better). The -s390 dirty bit was implemented in abf09bed3cce ("s390/mm: implement -software dirty bits") which made it into v3.9. Earlier kernels will -have to look at the page state itself. - -Also, the VM has become more scalable, and what used a purely -theoretical race back then has become easier to trigger. - -To fix it, we introduce a new internal FOLL_COW flag to mark the "yes, -we already did a COW" rather than play racy games with FOLL_WRITE that -is very fundamental, and then use the pte dirty flag to validate that -the FOLL_COW flag is still valid. - -Reported-and-tested-by: Phil "not Paul" Oester <kernel@linuxace.com> -Acked-by: Hugh Dickins <hughd@google.com> -Reviewed-by: Michal Hocko <mhocko@suse.com> -Cc: Andy Lutomirski <luto@kernel.org> -Cc: Kees Cook <keescook@chromium.org> -Cc: Oleg Nesterov <oleg@redhat.com> -Cc: Willy Tarreau <w@1wt.eu> -Cc: Nick Piggin <npiggin@gmail.com> -Cc: Greg Thelen <gthelen@google.com> -Cc: stable@vger.kernel.org -Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> -Diffstat --rw-r--r-- include/linux/mm.h 1 --rw-r--r-- mm/gup.c 14 -2 files changed, 13 insertions, 2 deletions -diff --git a/include/linux/mm.h b/include/linux/mm.h -index e9caec6..ed85879 100644 ---- a/include/linux/mm.h -+++ b/include/linux/mm.h -@@ -2232,6 +2232,7 @@ static inline struct page *follow_page(struct vm_area_struct *vma, - #define FOLL_TRIED 0x800 /* a retry, previous pass started an IO */ - #define FOLL_MLOCK 0x1000 /* lock present pages */ - #define FOLL_REMOTE 0x2000 /* we are working on non-current tsk/mm */ -+#define FOLL_COW 0x4000 /* internal GUP flag */ - - typedef int (*pte_fn_t)(pte_t *pte, pgtable_t token, unsigned long addr, - void *data); -diff --git a/mm/gup.c b/mm/gup.c -index 96b2b2f..22cc22e 100644 ---- a/mm/gup.c -+++ b/mm/gup.c -@@ -60,6 +60,16 @@ static int follow_pfn_pte(struct vm_area_struct *vma, unsigned long address, - return -EEXIST; - } - -+/* -+ * FOLL_FORCE can write to even unwritable pte's, but only -+ * after we've gone through a COW cycle and they are dirty. -+ */ -+static inline bool can_follow_write_pte(pte_t pte, unsigned int flags) -+{ -+ return pte_write(pte) || -+ ((flags & FOLL_FORCE) && (flags & FOLL_COW) && pte_dirty(pte)); -+} -+ - static struct page *follow_page_pte(struct vm_area_struct *vma, - unsigned long address, pmd_t *pmd, unsigned int flags) - { -@@ -95,7 +105,7 @@ retry: - } - if ((flags & FOLL_NUMA) && pte_protnone(pte)) - goto no_page; -- if ((flags & FOLL_WRITE) && !pte_write(pte)) { -+ if ((flags & FOLL_WRITE) && !can_follow_write_pte(pte, flags)) { - pte_unmap_unlock(ptep, ptl); - return NULL; - } -@@ -412,7 +422,7 @@ static int faultin_page(struct task_struct *tsk, struct vm_area_struct *vma, - * reCOWed by userspace write). - */ - if ((ret & VM_FAULT_WRITE) && !(vma->vm_flags & VM_WRITE)) -- *flags &= ~FOLL_WRITE; -+ *flags |= FOLL_COW; - return 0; - } |