From 60cb72b622eebb3ba5878dc0f0fde86ded6cc732 Mon Sep 17 00:00:00 2001 From: André Fabian Silva Delgado Date: Mon, 24 Feb 2014 23:07:23 -0200 Subject: linux-libre-grsec: remove some patches because are included on grsec patch --- ...re-that-gss_auth-isn-t-freed-before-its-u.patch | 82 ---------------------- .../0001-quirk-asm_volatile_goto.patch | 51 -------------- kernels/linux-libre-grsec/PKGBUILD | 15 +--- kernels/linux-libre-grsec/config.i686 | 4 +- kernels/linux-libre-grsec/config.x86_64 | 4 +- 5 files changed, 8 insertions(+), 148 deletions(-) delete mode 100644 kernels/linux-libre-grsec/0001-SUNRPC-Ensure-that-gss_auth-isn-t-freed-before-its-u.patch delete mode 100644 kernels/linux-libre-grsec/0001-quirk-asm_volatile_goto.patch (limited to 'kernels') diff --git a/kernels/linux-libre-grsec/0001-SUNRPC-Ensure-that-gss_auth-isn-t-freed-before-its-u.patch b/kernels/linux-libre-grsec/0001-SUNRPC-Ensure-that-gss_auth-isn-t-freed-before-its-u.patch deleted file mode 100644 index 93803d2e6..000000000 --- a/kernels/linux-libre-grsec/0001-SUNRPC-Ensure-that-gss_auth-isn-t-freed-before-its-u.patch +++ /dev/null @@ -1,82 +0,0 @@ -From 2bd7c7b5f011b3d57e4f5625b561a6f3f2f34a81 Mon Sep 17 00:00:00 2001 -From: Trond Myklebust -Date: Sun, 16 Feb 2014 12:14:13 -0500 -Subject: [PATCH] SUNRPC: Ensure that gss_auth isn't freed before its upcall - messages - -Fix a race in which the RPC client is shutting down while the -gss daemon is processing a downcall. If the RPC client manages to -shut down before the gss daemon is done, then the struct gss_auth -used in gss_release_msg() may have already been freed. - -Link: http://lkml.kernel.org/r/1392494917.71728.YahooMailNeo@web140002.mail.bf1.yahoo.com -Reported-by: John -Reported-by: Borislav Petkov -Cc: stable@vger.kernel.org # 3.12+ -Signed-off-by: Trond Myklebust ---- - net/sunrpc/auth_gss/auth_gss.c | 13 +++++++++++-- - 1 file changed, 11 insertions(+), 2 deletions(-) - -diff --git a/net/sunrpc/auth_gss/auth_gss.c b/net/sunrpc/auth_gss/auth_gss.c -index 42fdfc6..a642fd616 100644 ---- a/net/sunrpc/auth_gss/auth_gss.c -+++ b/net/sunrpc/auth_gss/auth_gss.c -@@ -108,6 +108,7 @@ struct gss_auth { - static DEFINE_SPINLOCK(pipe_version_lock); - static struct rpc_wait_queue pipe_version_rpc_waitqueue; - static DECLARE_WAIT_QUEUE_HEAD(pipe_version_waitqueue); -+static void gss_put_auth(struct gss_auth *gss_auth); - - static void gss_free_ctx(struct gss_cl_ctx *); - static const struct rpc_pipe_ops gss_upcall_ops_v0; -@@ -320,6 +321,7 @@ gss_release_msg(struct gss_upcall_msg *gss_msg) - if (gss_msg->ctx != NULL) - gss_put_ctx(gss_msg->ctx); - rpc_destroy_wait_queue(&gss_msg->rpc_waitqueue); -+ gss_put_auth(gss_msg->auth); - kfree(gss_msg); - } - -@@ -500,6 +502,7 @@ gss_alloc_msg(struct gss_auth *gss_auth, - if (err) - goto err_free_msg; - }; -+ kref_get(&gss_auth->kref); - return gss_msg; - err_free_msg: - kfree(gss_msg); -@@ -1071,6 +1074,12 @@ gss_free_callback(struct kref *kref) - } - - static void -+gss_put_auth(struct gss_auth *gss_auth) -+{ -+ kref_put(&gss_auth->kref, gss_free_callback); -+} -+ -+static void - gss_destroy(struct rpc_auth *auth) - { - struct gss_auth *gss_auth = container_of(auth, -@@ -1091,7 +1100,7 @@ gss_destroy(struct rpc_auth *auth) - gss_auth->gss_pipe[1] = NULL; - rpcauth_destroy_credcache(auth); - -- kref_put(&gss_auth->kref, gss_free_callback); -+ gss_put_auth(gss_auth); - } - - /* -@@ -1262,7 +1271,7 @@ gss_destroy_nullcred(struct rpc_cred *cred) - call_rcu(&cred->cr_rcu, gss_free_cred_callback); - if (ctx) - gss_put_ctx(ctx); -- kref_put(&gss_auth->kref, gss_free_callback); -+ gss_put_auth(gss_auth); - } - - static void --- -1.9.0 - diff --git a/kernels/linux-libre-grsec/0001-quirk-asm_volatile_goto.patch b/kernels/linux-libre-grsec/0001-quirk-asm_volatile_goto.patch deleted file mode 100644 index c9ee40400..000000000 --- a/kernels/linux-libre-grsec/0001-quirk-asm_volatile_goto.patch +++ /dev/null @@ -1,51 +0,0 @@ -From a9f180345f5378ac87d80ed0bea55ba421d83859 Mon Sep 17 00:00:00 2001 -From: Steven Noonan -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 -Signed-off-by: Steven Noonan -Cc: Peter Zijlstra -Cc: Steven Rostedt -Cc: Jakub Jelinek -Cc: Richard Henderson -Cc: Andrew Morton -Cc: Oleg Nesterov -Cc: -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 ---- -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/kernels/linux-libre-grsec/PKGBUILD b/kernels/linux-libre-grsec/PKGBUILD index 28c6c1e8f..1bc252caf 100644 --- a/kernels/linux-libre-grsec/PKGBUILD +++ b/kernels/linux-libre-grsec/PKGBUILD @@ -39,16 +39,14 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn '0004-rpc_pipe-remove-the-clntXX-dir-if-creating-the-pipe-.patch' '0005-sunrpc-add-an-info-file-for-the-dummy-gssd-pipe.patch' '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' '0022d89a923e5e871ba53db1f969e46e' - 'a2718a1b47c6c3b0774ce786488d22c3' - 'cbe58a543b96ae282c674875b1940e59' + 'c7dae5d3fbb294ea14e67915ac86a37a' + 'd4b95575b9cc32b7ba4ad8624972ddf9' '5f66bed97a5c37e48eb2f71b2d354b9a' '2967cecc3af9f954ccc822fd63dca6ff' '8267264d9a8966e57fdacd1fa1fc65c4' @@ -61,9 +59,7 @@ md5sums=('98a8e803e0ed08557f3cdd4d56b0ddc1' '10dbaf863e22b2437e68f9190d65c861' 'd5907a721b97299f0685c583499f7820' 'a724515b350b29c53f20e631c6cf9a14' - '1ae4ec847f41fa1b6d488f956e94c893' 'e6fa278c092ad83780e2dd0568e24ca6' - '6baa312bc166681f48e972824f3f6649' '93dbf73af819b77f03453a9c6de2bb47' 'ac92b702b8497d2be14f96e077a7f48f') if [ "$CARCH" != "mips64el" ]; then @@ -116,18 +112,11 @@ prepare() { # http://git.linux-nfs.org/?p=trondmy/linux-nfs.git;a=commitdiff;h=23e66ba97127ff3b064d4c6c5138aa34eafc492f patch -p1 -i "${srcdir}/0006-rpc_pipe-fix-cleanup-of-dummy-gssd-directory-when-no.patch" - # Fix FS#38921 - # http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=9eb2ddb48ce3a7bd745c14a933112994647fa3cd - patch -p1 -i "${srcdir}/0001-SUNRPC-Ensure-that-gss_auth-isn-t-freed-before-its-u.patch" - # Fix symbols: Revert http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=83460ec8dcac14142e7860a01fa59c267ac4657c patch -Rp1 -i "${srcdir}/0001-syscalls.h-use-gcc-alias-instead-of-assembler-aliase.patch" # 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-grsec|" Makefile diff --git a/kernels/linux-libre-grsec/config.i686 b/kernels/linux-libre-grsec/config.i686 index 3d48a9b03..5bbdedd4a 100644 --- a/kernels/linux-libre-grsec/config.i686 +++ b/kernels/linux-libre-grsec/config.i686 @@ -5874,7 +5874,9 @@ CONFIG_JFFS2_FS_DEBUG=0 CONFIG_JFFS2_FS_WRITEBUFFER=y # CONFIG_JFFS2_FS_WBUF_VERIFY is not set # CONFIG_JFFS2_SUMMARY is not set -# CONFIG_JFFS2_FS_XATTR is not set +CONFIG_JFFS2_FS_XATTR=y +CONFIG_JFFS2_FS_POSIX_ACL=y +CONFIG_JFFS2_FS_SECURITY=y # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set CONFIG_JFFS2_ZLIB=y # CONFIG_JFFS2_LZO is not set diff --git a/kernels/linux-libre-grsec/config.x86_64 b/kernels/linux-libre-grsec/config.x86_64 index 0269c67cc..f89860f78 100644 --- a/kernels/linux-libre-grsec/config.x86_64 +++ b/kernels/linux-libre-grsec/config.x86_64 @@ -5662,7 +5662,9 @@ CONFIG_JFFS2_FS_DEBUG=0 CONFIG_JFFS2_FS_WRITEBUFFER=y # CONFIG_JFFS2_FS_WBUF_VERIFY is not set # CONFIG_JFFS2_SUMMARY is not set -# CONFIG_JFFS2_FS_XATTR is not set +CONFIG_JFFS2_FS_XATTR=y +CONFIG_JFFS2_FS_POSIX_ACL=y +CONFIG_JFFS2_FS_SECURITY=y # CONFIG_JFFS2_COMPRESSION_OPTIONS is not set CONFIG_JFFS2_ZLIB=y # CONFIG_JFFS2_LZO is not set -- cgit v1.2.3