diff options
-rw-r--r-- | libre/linux-libre/0001-quirk-asm_volatile_goto.patch | 51 | ||||
-rw-r--r-- | libre/linux-libre/PKGBUILD | 15 |
2 files changed, 5 insertions, 61 deletions
diff --git a/libre/linux-libre/0001-quirk-asm_volatile_goto.patch b/libre/linux-libre/0001-quirk-asm_volatile_goto.patch deleted file mode 100644 index c9ee40400..000000000 --- a/libre/linux-libre/0001-quirk-asm_volatile_goto.patch +++ /dev/null @@ -1,51 +0,0 @@ -From a9f180345f5378ac87d80ed0bea55ba421d83859 Mon Sep 17 00:00:00 2001 -From: Steven Noonan <steven@uplinklabs.net> -Date: Thu, 13 Feb 2014 07:01:07 +0000 -Subject: compiler/gcc4: Make quirk for asm_volatile_goto() unconditional - -I started noticing problems with KVM guest destruction on Linux -3.12+, where guest memory wasn't being cleaned up. I bisected it -down to the commit introducing the new 'asm goto'-based atomics, -and found this quirk was later applied to those. - -Unfortunately, even with GCC 4.8.2 (which ostensibly fixed the -known 'asm goto' bug) I am still getting some kind of -miscompilation. If I enable the asm_volatile_goto quirk for my -compiler, KVM guests are destroyed correctly and the memory is -cleaned up. - -So make the quirk unconditional for now, until bug is found -and fixed. - -Suggested-by: Linus Torvalds <torvalds@linux-foundation.org> -Signed-off-by: Steven Noonan <steven@uplinklabs.net> -Cc: Peter Zijlstra <peterz@infradead.org> -Cc: Steven Rostedt <rostedt@goodmis.org> -Cc: Jakub Jelinek <jakub@redhat.com> -Cc: Richard Henderson <rth@twiddle.net> -Cc: Andrew Morton <akpm@linux-foundation.org> -Cc: Oleg Nesterov <oleg@redhat.com> -Cc: <stable@vger.kernel.org> -Link: http://lkml.kernel.org/r/1392274867-15236-1-git-send-email-steven@uplinklabs.net -Link: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670 -Signed-off-by: Ingo Molnar <mingo@kernel.org> ---- -diff --git a/include/linux/compiler-gcc4.h b/include/linux/compiler-gcc4.h -index ded4299..2507fd2 100644 ---- a/include/linux/compiler-gcc4.h -+++ b/include/linux/compiler-gcc4.h -@@ -75,11 +75,7 @@ - * - * (asm goto is automatically volatile - the naming reflects this.) - */ --#if GCC_VERSION <= 40801 --# define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0) --#else --# define asm_volatile_goto(x...) do { asm goto(x); } while (0) --#endif -+#define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0) - - #ifdef CONFIG_ARCH_USE_BUILTIN_BSWAP - #if GCC_VERSION >= 40400 --- -cgit v0.9.2 diff --git a/libre/linux-libre/PKGBUILD b/libre/linux-libre/PKGBUILD index 77251bc07..bb154c453 100644 --- a/libre/linux-libre/PKGBUILD +++ b/libre/linux-libre/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 206177 2014-02-20 22:43:41Z thomas $ +# $Id: PKGBUILD 206252 2014-02-22 22:54:25Z thomas $ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> # Maintainer: Thomas Baechler <thomas@archlinux.org> # Maintainer (Parabola): André Silva <emulatorman@parabola.nu> @@ -10,10 +10,10 @@ pkgbase=linux-libre # Build stock -LIBRE kernel #pkgbase=linux-libre-custom # Build kernel with a different name _basekernel=3.13 -_sublevel=4 +_sublevel=5 pkgver=${_basekernel}.${_sublevel} pkgrel=1 -_lxopkgver=${_basekernel}.3 # nearly always the same as pkgver +_lxopkgver=${_basekernel}.4 # nearly always the same as pkgver arch=('i686' 'x86_64' 'mips64el') url="http://linux-libre.fsfla.org/" license=('GPL2') @@ -38,11 +38,10 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn '0006-rpc_pipe-fix-cleanup-of-dummy-gssd-directory-when-no.patch' '0001-SUNRPC-Ensure-that-gss_auth-isn-t-freed-before-its-u.patch' '0001-syscalls.h-use-gcc-alias-instead-of-assembler-aliase.patch' - '0001-quirk-asm_volatile_goto.patch' 'i8042-fix-aliases.patch' "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.xz") md5sums=('98a8e803e0ed08557f3cdd4d56b0ddc1' - '3659d30b1d06dd5b7874ae04c946863b' + '6e59a1e4b891ca5fa8b03d488fa64e04' 'b6a3a3f9cac1be38384241ad58d45d46' '3740951ae165b89a2139d45ae7d82173' 'e49ac236dfeef709f91a3d993ea7b62c' @@ -60,8 +59,7 @@ md5sums=('98a8e803e0ed08557f3cdd4d56b0ddc1' '1ae4ec847f41fa1b6d488f956e94c893' 'e6fa278c092ad83780e2dd0568e24ca6' '6baa312bc166681f48e972824f3f6649' - '93dbf73af819b77f03453a9c6de2bb47' - 'ac92b702b8497d2be14f96e077a7f48f') + '0dba32ae551acd285da1c1dcfee5b966') if [ "$CARCH" != "mips64el" ]; then # don't use the Loongson-specific patches on non-mips64el arches. unset source[${#source[@]}-1] @@ -117,9 +115,6 @@ prepare() { # Fix i8042 aliases patch -p1 -i "${srcdir}/i8042-fix-aliases.patch" - # Fix compile issues - # http://git.kernel.org/cgit/linux/kernel/git/tip/tip.git/patch/?id=a9f180345f5378ac87d80ed0bea55ba421d83859 - patch -Np1 -i "${srcdir}/0001-quirk-asm_volatile_goto.patch" if [ "$CARCH" == "mips64el" ]; then sed -i "s|^EXTRAVERSION.*|EXTRAVERSION =-libre|" Makefile |