summaryrefslogtreecommitdiff
path: root/kernels
diff options
context:
space:
mode:
authorcoadde [Márcio Alexandre Silva Delgado] <coadde@parabola.nu>2014-03-09 23:23:54 -0300
committercoadde [Márcio Alexandre Silva Delgado] <coadde@parabola.nu>2014-03-09 23:23:54 -0300
commitb6e433006728abecb70346fe54ed8b1e633fc4ba (patch)
treed93ea05acfd3c2ecda8a7ec548a03b50148f7076 /kernels
parent3b3a05b26390c64a46295787202a910ec76e00a4 (diff)
parentbd835365437ce04744afa041008d389995fc396a (diff)
downloadabslibre-b6e433006728abecb70346fe54ed8b1e633fc4ba.tar.gz
abslibre-b6e433006728abecb70346fe54ed8b1e633fc4ba.tar.bz2
abslibre-b6e433006728abecb70346fe54ed8b1e633fc4ba.zip
Merge branch 'master' of ssh://projects.parabolagnulinux.org:1863/srv/git/abslibre
Diffstat (limited to 'kernels')
-rw-r--r--kernels/linux-libre-grsec/0001-Bluetooth-allocate-static-minor-for-vhci.patch76
-rw-r--r--kernels/linux-libre-grsec/PKGBUILD19
-rw-r--r--kernels/linux-libre-lts-knock/PKGBUILD10
-rw-r--r--kernels/linux-libre-pae/0001-Bluetooth-allocate-static-minor-for-vhci.patch76
-rw-r--r--kernels/linux-libre-pae/0001-SUNRPC-Ensure-that-gss_auth-isn-t-freed-before-its-u.patch82
-rw-r--r--kernels/linux-libre-pae/PKGBUILD15
-rw-r--r--kernels/linux-libre-xen/0001-Bluetooth-allocate-static-minor-for-vhci.patch76
-rw-r--r--kernels/linux-libre-xen/0001-SUNRPC-Ensure-that-gss_auth-isn-t-freed-before-its-u.patch82
-rw-r--r--kernels/linux-libre-xen/PKGBUILD15
9 files changed, 259 insertions, 192 deletions
diff --git a/kernels/linux-libre-grsec/0001-Bluetooth-allocate-static-minor-for-vhci.patch b/kernels/linux-libre-grsec/0001-Bluetooth-allocate-static-minor-for-vhci.patch
new file mode 100644
index 000000000..33a3fde88
--- /dev/null
+++ b/kernels/linux-libre-grsec/0001-Bluetooth-allocate-static-minor-for-vhci.patch
@@ -0,0 +1,76 @@
+From a62207820fb65f168c8a7f9c0abb71d736f3d7e0 Mon Sep 17 00:00:00 2001
+From: Lucas De Marchi <lucas.demarchi@intel.com>
+Date: Tue, 18 Feb 2014 02:19:26 -0300
+Subject: [PATCH] Bluetooth: allocate static minor for vhci
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Commit bfacbb9 (Bluetooth: Use devname:vhci module alias for virtual HCI
+driver) added the module alias to hci_vhci module so it's possible to
+create the /dev/vhci node. However creating an alias without
+specifying the minor doesn't allow us to create the node ahead,
+triggerring module auto-load when it's first accessed.
+
+Starting with depmod from kmod 16 we started to warn if there's a
+devname alias without specifying the major and minor.
+
+Let's do the same done for uhid, kvm, fuse and others, specifying a
+fixed minor. In systems with systemd as the init the following will
+happen: on early boot systemd will call "kmod static-nodes" to read
+/lib/modules/$(uname -r)/modules.devname and then create the nodes. When
+first accessed these "dead" nodes will trigger the module loading.
+
+Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
+Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
+---
+ Documentation/devices.txt | 1 +
+ drivers/bluetooth/hci_vhci.c | 3 ++-
+ include/linux/miscdevice.h | 1 +
+ 3 files changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/Documentation/devices.txt b/Documentation/devices.txt
+index 80b7241..fce9398 100644
+--- a/Documentation/devices.txt
++++ b/Documentation/devices.txt
+@@ -353,6 +353,7 @@ Your cooperation is appreciated.
+ 133 = /dev/exttrp External device trap
+ 134 = /dev/apm_bios Advanced Power Management BIOS
+ 135 = /dev/rtc Real Time Clock
++ 137 = /dev/vhci Bluetooth virtual HCI driver
+ 139 = /dev/openprom SPARC OpenBoot PROM
+ 140 = /dev/relay8 Berkshire Products Octal relay card
+ 141 = /dev/relay16 Berkshire Products ISO-16 relay card
+diff --git a/drivers/bluetooth/hci_vhci.c b/drivers/bluetooth/hci_vhci.c
+index 7b16738..59095e6 100644
+--- a/drivers/bluetooth/hci_vhci.c
++++ b/drivers/bluetooth/hci_vhci.c
+@@ -352,7 +352,7 @@ static const struct file_operations vhci_fops = {
+ static struct miscdevice vhci_miscdev= {
+ .name = "vhci",
+ .fops = &vhci_fops,
+- .minor = MISC_DYNAMIC_MINOR,
++ .minor = VHCI_MINOR,
+ };
+
+ static int __init vhci_init(void)
+@@ -378,3 +378,4 @@ MODULE_DESCRIPTION("Bluetooth virtual HCI driver ver " VERSION);
+ MODULE_VERSION(VERSION);
+ MODULE_LICENSE("GPL");
+ MODULE_ALIAS("devname:vhci");
++MODULE_ALIAS_MISCDEV(VHCI_MINOR);
+diff --git a/include/linux/miscdevice.h b/include/linux/miscdevice.h
+index f7eaf2d..e5db611 100644
+--- a/include/linux/miscdevice.h
++++ b/include/linux/miscdevice.h
+@@ -23,6 +23,7 @@
+ #define TEMP_MINOR 131 /* Temperature Sensor */
+ #define RTC_MINOR 135
+ #define EFI_RTC_MINOR 136 /* EFI Time services */
++#define VHCI_MINOR 137
+ #define SUN_OPENPROM_MINOR 139
+ #define DMAPI_MINOR 140 /* DMAPI */
+ #define NVRAM_MINOR 144
+--
+1.9.0
+
diff --git a/kernels/linux-libre-grsec/PKGBUILD b/kernels/linux-libre-grsec/PKGBUILD
index 8f83b01e3..b55ac3cc2 100644
--- a/kernels/linux-libre-grsec/PKGBUILD
+++ b/kernels/linux-libre-grsec/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 206252 2014-02-22 22:54:25Z thomas $
+# $Id: PKGBUILD 207134 2014-03-07 14:06:45Z thomas $
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
# Maintainer: Thomas Baechler <thomas@archlinux.org>
# Maintainer (Parabola): André Silva <emulatorman@parabola.nu>
@@ -10,12 +10,12 @@
pkgbase=linux-libre-grsec # Build stock -LIBRE-GRSEC kernel
#pkgbase=linux-libre-custom # Build kernel with a different name
_basekernel=3.13
-_sublevel=5
+_sublevel=6
_grsecver=3.0
-_timestamp=201402241943
+_timestamp=201403072241
pkgver=${_basekernel}.${_sublevel}
pkgrel=1
-_lxopkgver=${_basekernel}.5 # nearly always the same as pkgver
+_lxopkgver=${_basekernel}.6 # nearly always the same as pkgver
arch=('i686' 'x86_64' 'mips64el')
url="http://linux-libre.fsfla.org/"
license=('GPL2')
@@ -40,14 +40,15 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn
'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-syscalls.h-use-gcc-alias-instead-of-assembler-aliase.patch'
+ '0001-Bluetooth-allocate-static-minor-for-vhci.patch'
'i8042-fix-aliases.patch'
'module-blacklist.conf'
'sysctl.conf'
'known-exploit-detection.patch'
"http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.xz")
md5sums=('98a8e803e0ed08557f3cdd4d56b0ddc1'
- '6e59a1e4b891ca5fa8b03d488fa64e04'
- '810f3caa18b89eda5b41a2cff5821a4a'
+ 'bd937981937fd3c7a553fc770236e640'
+ 'dfb03774a36dc625b96a53feaa6efb3e'
'21da34d98cc007a78a11660863537c0d'
'd4b95575b9cc32b7ba4ad8624972ddf9'
'5f66bed97a5c37e48eb2f71b2d354b9a'
@@ -63,11 +64,12 @@ md5sums=('98a8e803e0ed08557f3cdd4d56b0ddc1'
'd5907a721b97299f0685c583499f7820'
'a724515b350b29c53f20e631c6cf9a14'
'e6fa278c092ad83780e2dd0568e24ca6'
+ '06f1751777e0772c18c3fa4fbae91aa5'
'93dbf73af819b77f03453a9c6de2bb47'
'f93ef6157fbb23820bd5ae08fd3f451e'
'0db7629711f4ed76bd1f9da9f97bc4ea'
'cb789bf97bc65fd4cf240d99df9c24c0'
- '5fcb6203b54aaf7dcbdf6e2c6f159b14')
+ '55af6fa41f01c22369175dbacd9ad7b0')
if [ "$CARCH" != "mips64el" ]; then
# don't use the Loongson-specific patches on non-mips64el arches.
unset source[${#source[@]}-1]
@@ -124,6 +126,9 @@ prepare() {
# Fix i8042 aliases
patch -p1 -i "${srcdir}/i8042-fix-aliases.patch"
+ # Fix vhci warning in kmod (to restore every kernel maintainer's sanity)
+ patch -p1 -i "${srcdir}/0001-Bluetooth-allocate-static-minor-for-vhci.patch"
+
# add known exploit detection patch
# http://lkml.org/lkml/2013/12/12/358
patch -Np1 -i "${srcdir}/known-exploit-detection.patch"
diff --git a/kernels/linux-libre-lts-knock/PKGBUILD b/kernels/linux-libre-lts-knock/PKGBUILD
index 83213341b..f3795d1b6 100644
--- a/kernels/linux-libre-lts-knock/PKGBUILD
+++ b/kernels/linux-libre-lts-knock/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 206261 2014-02-23 10:06:10Z andyrtr $
+# $Id: PKGBUILD 207131 2014-03-07 13:50:49Z bpiotrowski $
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
# Maintainer: Thomas Baechler <thomas@archlinux.org>
# Maintainer (Parabola): André Silva <emulatorman@parabola.nu>
@@ -10,11 +10,11 @@
pkgbase=linux-libre-lts-knock # Build stock -LIBRE-LTS-KNOCK kernel
#pkgbase=linux-libre-custom # Build kernel with a different name
_basekernel=3.10
-_sublevel=32
+_sublevel=33
_knockpatchver=${_basekernel}
pkgver=${_basekernel}.${_sublevel}
pkgrel=1
-_lxopkgver=${_basekernel}.31 # nearly always the same as pkgver
+_lxopkgver=${_basekernel}.33 # nearly always the same as pkgver
arch=('i686' 'x86_64' 'mips64el')
url="http://linux-libre.fsfla.org/"
license=('GPL2')
@@ -34,7 +34,7 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn
'criu-no-expert.patch'
"http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.xz")
md5sums=('d562fd52580a3b6b18b6eeb5921d1d5c'
- 'e344eea547efba42562dd8ff16593116'
+ 'dea9cb694f12a794604edcfac1d76add'
'26380d6f05471ef8e065a77d87588009'
'f22e0a6a7634902f5a00eb25ad677c65'
'6550ba0e23b7729cd9db2475bde8fac2'
@@ -44,7 +44,7 @@ md5sums=('d562fd52580a3b6b18b6eeb5921d1d5c'
'04b21c79df0a952c22d681dd4f4562df'
'f3def2cefdcbb954c21d8505d23cc83c'
'd50c1ac47394e9aec637002ef3392bd1'
- 'bfac14a0d1a3a0b0fbf09ba3a0ff6e88')
+ '441a56631bb3c96836061030e58ee1f2')
if [ "$CARCH" != "mips64el" ]; then
# don't use the Loongson-specific patches on non-mips64el arches.
unset source[${#source[@]}-1]
diff --git a/kernels/linux-libre-pae/0001-Bluetooth-allocate-static-minor-for-vhci.patch b/kernels/linux-libre-pae/0001-Bluetooth-allocate-static-minor-for-vhci.patch
new file mode 100644
index 000000000..33a3fde88
--- /dev/null
+++ b/kernels/linux-libre-pae/0001-Bluetooth-allocate-static-minor-for-vhci.patch
@@ -0,0 +1,76 @@
+From a62207820fb65f168c8a7f9c0abb71d736f3d7e0 Mon Sep 17 00:00:00 2001
+From: Lucas De Marchi <lucas.demarchi@intel.com>
+Date: Tue, 18 Feb 2014 02:19:26 -0300
+Subject: [PATCH] Bluetooth: allocate static minor for vhci
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Commit bfacbb9 (Bluetooth: Use devname:vhci module alias for virtual HCI
+driver) added the module alias to hci_vhci module so it's possible to
+create the /dev/vhci node. However creating an alias without
+specifying the minor doesn't allow us to create the node ahead,
+triggerring module auto-load when it's first accessed.
+
+Starting with depmod from kmod 16 we started to warn if there's a
+devname alias without specifying the major and minor.
+
+Let's do the same done for uhid, kvm, fuse and others, specifying a
+fixed minor. In systems with systemd as the init the following will
+happen: on early boot systemd will call "kmod static-nodes" to read
+/lib/modules/$(uname -r)/modules.devname and then create the nodes. When
+first accessed these "dead" nodes will trigger the module loading.
+
+Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
+Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
+---
+ Documentation/devices.txt | 1 +
+ drivers/bluetooth/hci_vhci.c | 3 ++-
+ include/linux/miscdevice.h | 1 +
+ 3 files changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/Documentation/devices.txt b/Documentation/devices.txt
+index 80b7241..fce9398 100644
+--- a/Documentation/devices.txt
++++ b/Documentation/devices.txt
+@@ -353,6 +353,7 @@ Your cooperation is appreciated.
+ 133 = /dev/exttrp External device trap
+ 134 = /dev/apm_bios Advanced Power Management BIOS
+ 135 = /dev/rtc Real Time Clock
++ 137 = /dev/vhci Bluetooth virtual HCI driver
+ 139 = /dev/openprom SPARC OpenBoot PROM
+ 140 = /dev/relay8 Berkshire Products Octal relay card
+ 141 = /dev/relay16 Berkshire Products ISO-16 relay card
+diff --git a/drivers/bluetooth/hci_vhci.c b/drivers/bluetooth/hci_vhci.c
+index 7b16738..59095e6 100644
+--- a/drivers/bluetooth/hci_vhci.c
++++ b/drivers/bluetooth/hci_vhci.c
+@@ -352,7 +352,7 @@ static const struct file_operations vhci_fops = {
+ static struct miscdevice vhci_miscdev= {
+ .name = "vhci",
+ .fops = &vhci_fops,
+- .minor = MISC_DYNAMIC_MINOR,
++ .minor = VHCI_MINOR,
+ };
+
+ static int __init vhci_init(void)
+@@ -378,3 +378,4 @@ MODULE_DESCRIPTION("Bluetooth virtual HCI driver ver " VERSION);
+ MODULE_VERSION(VERSION);
+ MODULE_LICENSE("GPL");
+ MODULE_ALIAS("devname:vhci");
++MODULE_ALIAS_MISCDEV(VHCI_MINOR);
+diff --git a/include/linux/miscdevice.h b/include/linux/miscdevice.h
+index f7eaf2d..e5db611 100644
+--- a/include/linux/miscdevice.h
++++ b/include/linux/miscdevice.h
+@@ -23,6 +23,7 @@
+ #define TEMP_MINOR 131 /* Temperature Sensor */
+ #define RTC_MINOR 135
+ #define EFI_RTC_MINOR 136 /* EFI Time services */
++#define VHCI_MINOR 137
+ #define SUN_OPENPROM_MINOR 139
+ #define DMAPI_MINOR 140 /* DMAPI */
+ #define NVRAM_MINOR 144
+--
+1.9.0
+
diff --git a/kernels/linux-libre-pae/0001-SUNRPC-Ensure-that-gss_auth-isn-t-freed-before-its-u.patch b/kernels/linux-libre-pae/0001-SUNRPC-Ensure-that-gss_auth-isn-t-freed-before-its-u.patch
deleted file mode 100644
index 93803d2e6..000000000
--- a/kernels/linux-libre-pae/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 <trond.myklebust@primarydata.com>
-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 <da_audiophile@yahoo.com>
-Reported-by: Borislav Petkov <bp@alien8.de>
-Cc: stable@vger.kernel.org # 3.12+
-Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
----
- 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-pae/PKGBUILD b/kernels/linux-libre-pae/PKGBUILD
index d672e376a..334af537c 100644
--- a/kernels/linux-libre-pae/PKGBUILD
+++ b/kernels/linux-libre-pae/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 206252 2014-02-22 22:54:25Z thomas $
+# $Id: PKGBUILD 207134 2014-03-07 14:06:45Z thomas $
# Contributor: Tobias Powalowski <tpowa@archlinux.org>
# Contributor: Thomas Baechler <thomas@archlinux.org>
# Maintainer (Parabola): André Silva <emulatorman@parabola.nu>
@@ -6,7 +6,7 @@
pkgbase=linux-libre-pae # Build stock -LIBRE-PAE kernel
#pkgbase=linux-libre-custom # Build kernel with a different name
_basekernel=3.13
-pkgver=${_basekernel}.5
+pkgver=${_basekernel}.6
pkgrel=1
arch=('i686')
url="http://linux-libre.fsfla.org/"
@@ -28,8 +28,8 @@ 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-Bluetooth-allocate-static-minor-for-vhci.patch'
'i8042-fix-aliases.patch')
md5sums=('98a8e803e0ed08557f3cdd4d56b0ddc1'
'6e59a1e4b891ca5fa8b03d488fa64e04'
@@ -44,8 +44,8 @@ md5sums=('98a8e803e0ed08557f3cdd4d56b0ddc1'
'10dbaf863e22b2437e68f9190d65c861'
'd5907a721b97299f0685c583499f7820'
'a724515b350b29c53f20e631c6cf9a14'
- '1ae4ec847f41fa1b6d488f956e94c893'
'e6fa278c092ad83780e2dd0568e24ca6'
+ '06f1751777e0772c18c3fa4fbae91aa5'
'93dbf73af819b77f03453a9c6de2bb47')
_kernelname=${pkgbase#linux-libre}
@@ -88,16 +88,15 @@ 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 vhci warning in kmod (to restore every kernel maintainer's sanity)
+ patch -p1 -i "${srcdir}/0001-Bluetooth-allocate-static-minor-for-vhci.patch"
+
cat "${srcdir}/config" > ./.config # simpler
if [ "${_kernelname}" != "" ]; then
diff --git a/kernels/linux-libre-xen/0001-Bluetooth-allocate-static-minor-for-vhci.patch b/kernels/linux-libre-xen/0001-Bluetooth-allocate-static-minor-for-vhci.patch
new file mode 100644
index 000000000..33a3fde88
--- /dev/null
+++ b/kernels/linux-libre-xen/0001-Bluetooth-allocate-static-minor-for-vhci.patch
@@ -0,0 +1,76 @@
+From a62207820fb65f168c8a7f9c0abb71d736f3d7e0 Mon Sep 17 00:00:00 2001
+From: Lucas De Marchi <lucas.demarchi@intel.com>
+Date: Tue, 18 Feb 2014 02:19:26 -0300
+Subject: [PATCH] Bluetooth: allocate static minor for vhci
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Commit bfacbb9 (Bluetooth: Use devname:vhci module alias for virtual HCI
+driver) added the module alias to hci_vhci module so it's possible to
+create the /dev/vhci node. However creating an alias without
+specifying the minor doesn't allow us to create the node ahead,
+triggerring module auto-load when it's first accessed.
+
+Starting with depmod from kmod 16 we started to warn if there's a
+devname alias without specifying the major and minor.
+
+Let's do the same done for uhid, kvm, fuse and others, specifying a
+fixed minor. In systems with systemd as the init the following will
+happen: on early boot systemd will call "kmod static-nodes" to read
+/lib/modules/$(uname -r)/modules.devname and then create the nodes. When
+first accessed these "dead" nodes will trigger the module loading.
+
+Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
+Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
+---
+ Documentation/devices.txt | 1 +
+ drivers/bluetooth/hci_vhci.c | 3 ++-
+ include/linux/miscdevice.h | 1 +
+ 3 files changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/Documentation/devices.txt b/Documentation/devices.txt
+index 80b7241..fce9398 100644
+--- a/Documentation/devices.txt
++++ b/Documentation/devices.txt
+@@ -353,6 +353,7 @@ Your cooperation is appreciated.
+ 133 = /dev/exttrp External device trap
+ 134 = /dev/apm_bios Advanced Power Management BIOS
+ 135 = /dev/rtc Real Time Clock
++ 137 = /dev/vhci Bluetooth virtual HCI driver
+ 139 = /dev/openprom SPARC OpenBoot PROM
+ 140 = /dev/relay8 Berkshire Products Octal relay card
+ 141 = /dev/relay16 Berkshire Products ISO-16 relay card
+diff --git a/drivers/bluetooth/hci_vhci.c b/drivers/bluetooth/hci_vhci.c
+index 7b16738..59095e6 100644
+--- a/drivers/bluetooth/hci_vhci.c
++++ b/drivers/bluetooth/hci_vhci.c
+@@ -352,7 +352,7 @@ static const struct file_operations vhci_fops = {
+ static struct miscdevice vhci_miscdev= {
+ .name = "vhci",
+ .fops = &vhci_fops,
+- .minor = MISC_DYNAMIC_MINOR,
++ .minor = VHCI_MINOR,
+ };
+
+ static int __init vhci_init(void)
+@@ -378,3 +378,4 @@ MODULE_DESCRIPTION("Bluetooth virtual HCI driver ver " VERSION);
+ MODULE_VERSION(VERSION);
+ MODULE_LICENSE("GPL");
+ MODULE_ALIAS("devname:vhci");
++MODULE_ALIAS_MISCDEV(VHCI_MINOR);
+diff --git a/include/linux/miscdevice.h b/include/linux/miscdevice.h
+index f7eaf2d..e5db611 100644
+--- a/include/linux/miscdevice.h
++++ b/include/linux/miscdevice.h
+@@ -23,6 +23,7 @@
+ #define TEMP_MINOR 131 /* Temperature Sensor */
+ #define RTC_MINOR 135
+ #define EFI_RTC_MINOR 136 /* EFI Time services */
++#define VHCI_MINOR 137
+ #define SUN_OPENPROM_MINOR 139
+ #define DMAPI_MINOR 140 /* DMAPI */
+ #define NVRAM_MINOR 144
+--
+1.9.0
+
diff --git a/kernels/linux-libre-xen/0001-SUNRPC-Ensure-that-gss_auth-isn-t-freed-before-its-u.patch b/kernels/linux-libre-xen/0001-SUNRPC-Ensure-that-gss_auth-isn-t-freed-before-its-u.patch
deleted file mode 100644
index 93803d2e6..000000000
--- a/kernels/linux-libre-xen/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 <trond.myklebust@primarydata.com>
-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 <da_audiophile@yahoo.com>
-Reported-by: Borislav Petkov <bp@alien8.de>
-Cc: stable@vger.kernel.org # 3.12+
-Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
----
- 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-xen/PKGBUILD b/kernels/linux-libre-xen/PKGBUILD
index 557eedd2a..9e32610fc 100644
--- a/kernels/linux-libre-xen/PKGBUILD
+++ b/kernels/linux-libre-xen/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 206252 2014-02-22 22:54:25Z thomas $
+# $Id: PKGBUILD 207134 2014-03-07 14:06:45Z thomas $
# Contributor: Tobias Powalowski <tpowa@archlinux.org>
# Contributor: Thomas Baechler <thomas@archlinux.org>
# Maintainer (Parabola): André Silva <emulatorman@parabola.nu>
@@ -6,7 +6,7 @@
pkgbase=linux-libre-xen # Build stock -LIBRE-XEN kernel
#pkgbase=linux-libre-custom # Build kernel with a different name
_basekernel=3.13
-pkgver=${_basekernel}.5
+pkgver=${_basekernel}.6
pkgrel=1
arch=('i686')
url="http://linux-libre.fsfla.org/"
@@ -28,8 +28,8 @@ 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-Bluetooth-allocate-static-minor-for-vhci.patch'
'i8042-fix-aliases.patch')
md5sums=('98a8e803e0ed08557f3cdd4d56b0ddc1'
'6e59a1e4b891ca5fa8b03d488fa64e04'
@@ -44,8 +44,8 @@ md5sums=('98a8e803e0ed08557f3cdd4d56b0ddc1'
'10dbaf863e22b2437e68f9190d65c861'
'd5907a721b97299f0685c583499f7820'
'a724515b350b29c53f20e631c6cf9a14'
- '1ae4ec847f41fa1b6d488f956e94c893'
'e6fa278c092ad83780e2dd0568e24ca6'
+ '06f1751777e0772c18c3fa4fbae91aa5'
'93dbf73af819b77f03453a9c6de2bb47')
_kernelname=${pkgbase#linux-libre}
@@ -88,16 +88,15 @@ 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 vhci warning in kmod (to restore every kernel maintainer's sanity)
+ patch -p1 -i "${srcdir}/0001-Bluetooth-allocate-static-minor-for-vhci.patch"
+
cat "${srcdir}/config" > ./.config # simpler
if [ "${_kernelname}" != "" ]; then