diff options
-rw-r--r-- | .SRCINFO | 20 | ||||
-rw-r--r-- | 0004-xhci-Fix-USB3-NULL-pointer-dereference-at-logical-di.patch | 63 | ||||
-rw-r--r-- | PKGBUILD | 17 | ||||
-rw-r--r-- | config | 4 |
4 files changed, 17 insertions, 87 deletions
@@ -1,7 +1,7 @@ # Generated by mksrcinfo v8 -# Fri May 18 20:40:12 UTC 2018 +# Tue May 22 19:19:03 UTC 2018 pkgbase = linux-rc - pkgver = 4.16.10rc1 + pkgver = 4.16.11rc1 pkgrel = 1 url = https://www.kernel.org/ arch = x86_64 @@ -13,10 +13,10 @@ pkgbase = linux-rc options = !strip source = https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.16.tar.xz source = https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.16.tar.sign - source = https://www.kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.16.10-rc1.xz - source = https://www.kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.16.10-rc1.sign - source = http://www.kernel.org/pub/linux/kernel/v4.x/patch-4.16.9.xz - source = https://www.kernel.org/pub/linux/kernel/v4.x/patch-4.16.9.sign + source = https://www.kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.16.11-rc1.xz + source = https://www.kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.16.11-rc1.sign + source = http://www.kernel.org/pub/linux/kernel/v4.x/patch-4.16.10.xz + source = https://www.kernel.org/pub/linux/kernel/v4.x/patch-4.16.10.sign source = config source = 60-linux.hook source = 90-linux.hook @@ -24,21 +24,19 @@ pkgbase = linux-rc source = 0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch source = 0002-drm-i915-edp-Only-use-the-alternate-fixed-mode-if-it.patch source = 0003-Partially-revert-swiotlb-remove-various-exports.patch - source = 0004-xhci-Fix-USB3-NULL-pointer-dereference-at-logical-di.patch sha256sums = 63f6dc8e3c9f3a0273d5d6f4dca38a2413ca3a5f689329d05b750e4c87bb21b9 sha256sums = SKIP - sha256sums = 16a5e7f08d590ca6fc8177265086a7a97da3c817c0dce86f1aff89c6f83dbf0c + sha256sums = 6e9d46718a34695a3f85f9cb5195e9f446e666e545c18fdfc6e3001bc947cbcb sha256sums = SKIP - sha256sums = 299b45a4f16f763ecf654e6642c020b6e9e461601d056ef44ecb21b54d736cbf + sha256sums = 9fe6093be401fe0ff3f6cb3d428f137119a7befaf86d70f18c7e88871c1852d6 sha256sums = SKIP - sha256sums = 66e44d128ddbc6ca30127d7fca3947f0200146b451bf3d7376fc2ef985a4a89b + sha256sums = 8fe49fc7b6fa3083c878c94e1362bdd6e95965bf6d5ff969c95d4b0e5b6abf61 sha256sums = ae2e95db94ef7176207c690224169594d49445e04249d2499e9d2fbc117a0b21 sha256sums = 75f99f5239e03238f88d1a834c50043ec32b1dc568f2cc291b07d04718483919 sha256sums = ad6344badc91ad0630caacde83f7f9b97276f80d26a20619a87952be65492c65 sha256sums = 69241df4bd7897eb04db90e4d0a82c6e0b99b806019ba96bb885278ca8da89df sha256sums = 10728f672a83a515af540cafafde62346e9ccc2d14bf74e417fd2693865b1293 sha256sums = a81b612369e78d142ff80ec3adda36b3f94503e5a68d54282c508a112cc8dae0 - sha256sums = 052a39582f84c52b027c261fcec90325493f4d46f15647c274a58e39145deced pkgname = linux-rc pkgdesc = The release candidate kernel and modules diff --git a/0004-xhci-Fix-USB3-NULL-pointer-dereference-at-logical-di.patch b/0004-xhci-Fix-USB3-NULL-pointer-dereference-at-logical-di.patch deleted file mode 100644 index 009251cb3e6e..000000000000 --- a/0004-xhci-Fix-USB3-NULL-pointer-dereference-at-logical-di.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 005c2f4576d9bab5ff97dac4b3d27aafa2f1f153 Mon Sep 17 00:00:00 2001 -Message-Id: <005c2f4576d9bab5ff97dac4b3d27aafa2f1f153.1526520264.git.jan.steffens@gmail.com> -In-Reply-To: <1d8e17daf031e219d904ef93718081534c9e8cea.1526520263.git.jan.steffens@gmail.com> -References: <1d8e17daf031e219d904ef93718081534c9e8cea.1526520263.git.jan.steffens@gmail.com> -From: Mathias Nyman <mathias.nyman@linux.intel.com> -Date: Mon, 14 May 2018 11:57:23 +0300 -Subject: [PATCH 4/4] xhci: Fix USB3 NULL pointer dereference at logical - disconnect. - -Hub driver will try to disable a USB3 device twice at logical disconnect, -racing with xhci_free_dev() callback from the first port disable. - -This can be triggered with "udisksctl power-off --block-device <disk>" -or by writing "1" to the "remove" sysfs file for a USB3 device -in 4.17-rc4. - -USB3 devices don't have a similar disabled link state as USB2 devices, -and use a U3 suspended link state instead. In this state the port -is still enabled and connected. - -hub_port_connect() first disconnects the device, then later it notices -that device is still enabled (due to U3 states) it will try to disable -the port again (set to U3). - -The xhci_free_dev() called during device disable is async, so checking -for existing xhci->devs[i] when setting link state to U3 the second time -was successful, even if device was being freed. - -The regression was caused by, and whole thing revealed by, -Commit 44a182b9d177 ("xhci: Fix use-after-free in xhci_free_virt_device") -which sets xhci->devs[i]->udev to NULL before xhci_virt_dev() returned. -and causes a NULL pointer dereference the second time we try to set U3. - -Fix this by checking xhci->devs[i]->udev exists before setting link state. - -The original patch went to stable so this fix needs to be applied there as -well. - -Fixes: 44a182b9d177 ("xhci: Fix use-after-free in xhci_free_virt_device") -Cc: <stable@vger.kernel.org> -Reported-by: Jordan Glover <Golden_Miller83@protonmail.ch> -Tested-by: Jordan Glover <Golden_Miller83@protonmail.ch> -Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com> ---- - drivers/usb/host/xhci-hub.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/drivers/usb/host/xhci-hub.c b/drivers/usb/host/xhci-hub.c -index 72ebbc908e19..32cd52ca8318 100644 ---- a/drivers/usb/host/xhci-hub.c -+++ b/drivers/usb/host/xhci-hub.c -@@ -354,7 +354,7 @@ int xhci_find_slot_id_by_port(struct usb_hcd *hcd, struct xhci_hcd *xhci, - - slot_id = 0; - for (i = 0; i < MAX_HC_SLOTS; i++) { -- if (!xhci->devs[i]) -+ if (!xhci->devs[i] || !xhci->devs[i]->udev) - continue; - speed = xhci->devs[i]->udev->speed; - if (((speed >= USB_SPEED_SUPER) == (hcd->speed >= HCD_USB3)) --- -2.17.0 - @@ -5,8 +5,8 @@ pkgbase=linux-rc pkgrel=1 _srcname=linux-4.16 -_stable=4.16.9 -_patchver=4.16.10 +_stable=4.16.10 +_patchver=4.16.11 _rcver=1 pkgver=${_patchver}rc${_rcver} _rcpatch=patch-${_patchver}-rc${_rcver} @@ -29,7 +29,6 @@ source=( 0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch 0002-drm-i915-edp-Only-use-the-alternate-fixed-mode-if-it.patch 0003-Partially-revert-swiotlb-remove-various-exports.patch - 0004-xhci-Fix-USB3-NULL-pointer-dereference-at-logical-di.patch ) validpgpkeys=( 'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds @@ -37,18 +36,17 @@ validpgpkeys=( ) sha256sums=('63f6dc8e3c9f3a0273d5d6f4dca38a2413ca3a5f689329d05b750e4c87bb21b9' 'SKIP' - '16a5e7f08d590ca6fc8177265086a7a97da3c817c0dce86f1aff89c6f83dbf0c' + '6e9d46718a34695a3f85f9cb5195e9f446e666e545c18fdfc6e3001bc947cbcb' 'SKIP' - '299b45a4f16f763ecf654e6642c020b6e9e461601d056ef44ecb21b54d736cbf' + '9fe6093be401fe0ff3f6cb3d428f137119a7befaf86d70f18c7e88871c1852d6' 'SKIP' - '66e44d128ddbc6ca30127d7fca3947f0200146b451bf3d7376fc2ef985a4a89b' + '8fe49fc7b6fa3083c878c94e1362bdd6e95965bf6d5ff969c95d4b0e5b6abf61' 'ae2e95db94ef7176207c690224169594d49445e04249d2499e9d2fbc117a0b21' '75f99f5239e03238f88d1a834c50043ec32b1dc568f2cc291b07d04718483919' 'ad6344badc91ad0630caacde83f7f9b97276f80d26a20619a87952be65492c65' '69241df4bd7897eb04db90e4d0a82c6e0b99b806019ba96bb885278ca8da89df' '10728f672a83a515af540cafafde62346e9ccc2d14bf74e417fd2693865b1293' - 'a81b612369e78d142ff80ec3adda36b3f94503e5a68d54282c508a112cc8dae0' - '052a39582f84c52b027c261fcec90325493f4d46f15647c274a58e39145deced') + 'a81b612369e78d142ff80ec3adda36b3f94503e5a68d54282c508a112cc8dae0') _kernelname=${pkgbase#linux} @@ -74,9 +72,6 @@ prepare() { # NVIDIA driver compat patch -Np1 -i ../0003-Partially-revert-swiotlb-remove-various-exports.patch - # https://bugs.archlinux.org/task/58237 - patch -Np1 -i ../0004-xhci-Fix-USB3-NULL-pointer-dereference-at-logical-di.patch - cat ../config - >.config <<END CONFIG_LOCALVERSION="${_kernelname}" CONFIG_LOCALVERSION_AUTO=n @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 4.16.9-1 Kernel Configuration +# Linux/x86 4.16.11-1 Kernel Configuration # CONFIG_64BIT=y CONFIG_X86_64=y @@ -6203,7 +6203,7 @@ CONFIG_SND_HDA_CODEC_CA0132_DSP=y CONFIG_SND_HDA_CODEC_CMEDIA=m CONFIG_SND_HDA_CODEC_SI3054=m CONFIG_SND_HDA_GENERIC=m -CONFIG_SND_HDA_POWER_SAVE_DEFAULT=10 +CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 CONFIG_SND_HDA_CORE=m CONFIG_SND_HDA_DSP_LOADER=y CONFIG_SND_HDA_I915=y |