[linux] 01/01: Update to 4.9.6
debian-kernel at lists.debian.org
debian-kernel at lists.debian.org
Thu Jan 26 19:24:59 UTC 2017
This is an automated email from the git hooks/post-receive script.
benh pushed a commit to branch sid
in repository linux.
commit a873a1d79d5ae1996d19b84ef2516f872003ac28
Author: Ben Hutchings <ben at decadent.org.uk>
Date: Thu Jan 26 19:24:33 2017 +0000
Update to 4.9.6
Drop patches which are included in it.
---
debian/changelog | 102 ++++++++++++++-
.../all/HID-corsair-fix-DMA-buffers-on-stack.patch | 144 ---------------------
...atusb-do-not-use-the-stack-for-buffers-to.patch | 99 --------------
...pfs-clear-S_ISGID-when-setting-posix-ACLs.patch | 45 -------
debian/patches/series | 3 -
5 files changed, 95 insertions(+), 298 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index 1532202..4eaa196 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-linux (4.9.5-1) UNRELEASED; urgency=medium
+linux (4.9.6-1) UNRELEASED; urgency=medium
* New upstream stable update:
https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.3
@@ -344,6 +344,100 @@ linux (4.9.5-1) UNRELEASED; urgency=medium
- [arm64] hugetlb: remove the wrong pmd check in find_num_contig()
- [arm64] hugetlb: fix the wrong return value for
huge_ptep_set_access_flags
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.6
+ - IB/core: Release allocated memory in cache setup failure
+ - IB/rxe: Increase max number of completions to 32k
+ - IB/rxe: avoid putting a large struct rxe_qp on stack
+ - IB/mlx5: Avoid system crash when enabling many VFs
+ - IB/mlx5: Fix reported max SGE calculation
+ - IB/mlx5: Assign SRQ type earlier
+ - IB/mlx5: Wait for all async command completions to complete
+ - IB/mlx4: Set traffic class in AH
+ - IB/mlx4: Fix out-of-range array index in destroy qp flow
+ - IB/mlx4: Handle well-known-gid in mad_demux processing
+ - IB/mlx4: Fix port query for 56Gb Ethernet links
+ - IB/mlx4: When no DMFS for IPoIB, don't allow NET_IF QPs
+ - IB/mlx4: Check if GRH is available before using it
+ - IB/IPoIB: Remove can't use GFP_NOIO warning
+ - perf trace: Use the syscall raw_syscalls:sys_enter timestamp
+ - perf mem: Fix --all-user/--all-kernel options
+ - perf trace: Check if MAP_32BIT is defined (again)
+ - perf diff: Do not overwrite valid build id
+ - perf callchain: Fixup help/config for no-unwinding
+ - perf scripting: Avoid leaking the scripting_context variable
+ - perf jit: Enable jitdump support without dwarf
+ - [armhf] dts: bcm283x: fix typo in mailbox address
+ - [armhf] dts: imx6q-cm-fx6: fix fec pinctrl
+ - [armhf] dts: omap3: Add DTS for Logic PD SOM-LV 37xx Dev Kit
+ - tmpfs: clear S_ISGID when setting posix ACLs (CVE-2017-5551)
+ - [x86] PCI: Ignore _CRS on Supermicro X8DTH-i/6/iF/6F
+ - rcu: Narrow early boot window of illegal synchronous grace periods
+ - sunrpc: don't call sleeping functions from the notifier block callbacks
+ - svcrpc: don't leak contexts on PROC_DESTROY
+ - libnvdimm, namespace: fix pmem namespace leak, delete when size set to
+ zero
+ - fuse: clear FR_PENDING flag when moving requests out of pending queue
+ - fuse: fix time_to_jiffies nsec sanity check
+ - PCI: Enumerate switches below PCI-to-PCIe bridges
+ - HID: corsair: fix DMA buffers on stack (CVE-2017-5547)
+ - HID: corsair: fix control-transfer error handling
+ - mmc: sdhci-acpi: Only powered up enabled acpi child devices
+ - ieee802154: atusb: do not use the stack for buffers to make them DMA able
+ (CVE-2017-5548)
+ - [s390x] KVM: do not expose random data via facility bitmap
+ - [armhf,arm64] KVM: vgic: Fix deadlock on error handling
+ - [powerpc*] icp-opal: Fix missing KVM case and harden replay
+ - [powerpc*] perf: Fix PM_BRU_CMPL event code for power9
+ - [powerpc*] ptrace: Preserve previous fprs/vsrs on short regset write
+ - [powerpc*] ptrace: Preserve previous TM fprs/vsrs on short regset write
+ - [powerpc*] Ignore reserved field in DCSR and PVR reads and writes
+ - [x86] ioapic: Restore IO-APIC irq_chip retrigger callback
+ - qla2xxx: Fix crash due to null pointer access
+ - mac80211: implement multicast forwarding on fast-RX path
+ - ubifs: Fix journal replay wrt. xattr nodes
+ - [armhf] clocksource/exynos_mct: Clear interrupt when cpu is shut down
+ - svcrdma: avoid duplicate dma unmapping during error recovery
+ - ceph: fix bad endianness handling in parse_reply_info_extra
+ - [armhf] dts: OMAP5 / DRA7: indicate that SATA port 0 is available.
+ - [arm64] avoid returning from bad_mode
+ - [arm64] ptrace: Preserve previous registers for short regset write
+ - [arm64] ptrace: Avoid uninitialised struct padding in fpr_set()
+ - [arm64] ptrace: Reject attempts to set incomplete hardware breakpoint
+ fields
+ - Input: ALPS - fix TrackStick support for SS5 hardware
+ - libceph: ceph_x_encrypt_buflen() takes in_len
+ - libceph: old_key in process_one_ticket() is redundant
+ - libceph: introduce ceph_x_encrypt_offset()
+ - libceph: introduce ceph_crypt() for in-place en/decryption
+ - libceph: rename and align ceph_x_authorizer::reply_buf
+ - libceph: tweak calcu_signature() a little
+ - libceph: switch ceph_x_encrypt() to ceph_crypt()
+ - libceph: switch ceph_x_decrypt() to ceph_crypt()
+ - libceph: remove now unused ceph_*{en,de}crypt*() functions
+ - [armhf] dts: Add an empty chosen node to top level DTSI
+ - [armel,armhf] 8613/1: Fix the uaccess crash on PB11MPCore
+ - ceph: fix scheduler warning due to nested blocking
+ - ceph: fix ceph_get_caps() interruption
+ - ceph: fix endianness of getattr mask in ceph_d_revalidate
+ - ceph: fix endianness bug in frag_tree_split_cmp
+ - libceph: make sure ceph_aes_crypt() IV is aligned
+ - xprtrdma: Make FRWR send queue entry accounting more accurate
+ - xprtrdma: Squelch "max send, max recv" messages at connect time
+ - [arm64] mm: avoid name clash in __page_to_voff()
+ - [arm64] Fix swiotlb fallback allocation
+ - swiotlb: Convert swiotlb_force from int to enum
+ - swiotlb: Add swiotlb=noforce debug option
+ - scsi: ses: Fix SAS device detection in enclosure
+ - scsi: mpt3sas: fix hang on ata passthrough commands
+ - [armhf] PM / devfreq: exynos-bus: Fix the wrong return value
+ - PM / devfreq: Fix the bug of devfreq_add_device when governor is NULL
+ - mtd: spi-nor: Off by one in cqspi_setup_flash()
+ - mtd: spi-nor: Fix some error codes in cqspi_setup_flash()
+ - [x86] ite-cir: initialize use_demodulator before using it
+ - [armhf] dmaengine: pl330: Fix runtime PM support for terminated transfers
+ - [armhf] soc: ti: wkup_m3_ipc: Fix error return code in wkup_m3_ipc_probe()
+ - libceph: uninline ceph_crypto_key_destroy()
+ - libceph: stop allocating a new cipher on every crypto request
[ Ben Hutchings ]
* [armel,armhf,s390x,x86] linux-headers: Fix regression of multilib compiler
@@ -365,12 +459,6 @@ linux (4.9.5-1) UNRELEASED; urgency=medium
* fs: Disable LOGFS, as it is unmaintained and will be removed in 4.10
* [rt] genpatch.py: Verify tag and tarball signatures
- [ Salvatore Bonaccorso ]
- * tmpfs: clear S_ISGID when setting posix ACLs (CVE-2017-5551)
- * HID: corsair: fix DMA buffers on stack (CVE-2017-5547)
- * ieee802154: atusb: do not use the stack for buffers to make them DMA able
- (CVE-2017-5548)
-
[ Roger Shimizu ]
* [armel] Add DT support of Buffalo Linkstation Live v3 (LS-CHL)
* drivers/input: Enable TOUCHSCREEN_GOODIX as module (Closes: #851821).
diff --git a/debian/patches/bugfix/all/HID-corsair-fix-DMA-buffers-on-stack.patch b/debian/patches/bugfix/all/HID-corsair-fix-DMA-buffers-on-stack.patch
deleted file mode 100644
index a2240bd..0000000
--- a/debian/patches/bugfix/all/HID-corsair-fix-DMA-buffers-on-stack.patch
+++ /dev/null
@@ -1,144 +0,0 @@
-From: Johan Hovold <johan at kernel.org>
-Date: Thu, 12 Jan 2017 18:17:42 +0100
-Subject: HID: corsair: fix DMA buffers on stack
-Origin: https://git.kernel.org/linus/6d104af38b570d37aa32a5803b04c354f8ed513d
-
-Not all platforms support DMA to the stack, and specifically since v4.9
-this is no longer supported on x86 with VMAP_STACK either.
-
-Note that the macro-mode buffer was larger than necessary.
-
-Fixes: 6f78193ee9ea ("HID: corsair: Add Corsair Vengeance K90 driver")
-Cc: stable <stable at vger.kernel.org>
-Signed-off-by: Johan Hovold <johan at kernel.org>
-Signed-off-by: Jiri Kosina <jkosina at suse.cz>
----
- drivers/hid/hid-corsair.c | 54 ++++++++++++++++++++++++++++++++++++-----------
- 1 file changed, 42 insertions(+), 12 deletions(-)
-
-diff --git a/drivers/hid/hid-corsair.c b/drivers/hid/hid-corsair.c
-index 717704e..5971907 100644
---- a/drivers/hid/hid-corsair.c
-+++ b/drivers/hid/hid-corsair.c
-@@ -148,7 +148,11 @@ static enum led_brightness k90_backlight_get(struct led_classdev *led_cdev)
- struct usb_interface *usbif = to_usb_interface(dev->parent);
- struct usb_device *usbdev = interface_to_usbdev(usbif);
- int brightness;
-- char data[8];
-+ char *data;
-+
-+ data = kmalloc(8, GFP_KERNEL);
-+ if (!data)
-+ return -ENOMEM;
-
- ret = usb_control_msg(usbdev, usb_rcvctrlpipe(usbdev, 0),
- K90_REQUEST_STATUS,
-@@ -158,16 +162,22 @@ static enum led_brightness k90_backlight_get(struct led_classdev *led_cdev)
- if (ret < 0) {
- dev_warn(dev, "Failed to get K90 initial state (error %d).\n",
- ret);
-- return -EIO;
-+ ret = -EIO;
-+ goto out;
- }
- brightness = data[4];
- if (brightness < 0 || brightness > 3) {
- dev_warn(dev,
- "Read invalid backlight brightness: %02hhx.\n",
- data[4]);
-- return -EIO;
-+ ret = -EIO;
-+ goto out;
- }
-- return brightness;
-+ ret = brightness;
-+out:
-+ kfree(data);
-+
-+ return ret;
- }
-
- static enum led_brightness k90_record_led_get(struct led_classdev *led_cdev)
-@@ -253,7 +263,11 @@ static ssize_t k90_show_macro_mode(struct device *dev,
- struct usb_interface *usbif = to_usb_interface(dev->parent);
- struct usb_device *usbdev = interface_to_usbdev(usbif);
- const char *macro_mode;
-- char data[8];
-+ char *data;
-+
-+ data = kmalloc(2, GFP_KERNEL);
-+ if (!data)
-+ return -ENOMEM;
-
- ret = usb_control_msg(usbdev, usb_rcvctrlpipe(usbdev, 0),
- K90_REQUEST_GET_MODE,
-@@ -263,7 +277,8 @@ static ssize_t k90_show_macro_mode(struct device *dev,
- if (ret < 0) {
- dev_warn(dev, "Failed to get K90 initial mode (error %d).\n",
- ret);
-- return -EIO;
-+ ret = -EIO;
-+ goto out;
- }
-
- switch (data[0]) {
-@@ -277,10 +292,15 @@ static ssize_t k90_show_macro_mode(struct device *dev,
- default:
- dev_warn(dev, "K90 in unknown mode: %02hhx.\n",
- data[0]);
-- return -EIO;
-+ ret = -EIO;
-+ goto out;
- }
-
-- return snprintf(buf, PAGE_SIZE, "%s\n", macro_mode);
-+ ret = snprintf(buf, PAGE_SIZE, "%s\n", macro_mode);
-+out:
-+ kfree(data);
-+
-+ return ret;
- }
-
- static ssize_t k90_store_macro_mode(struct device *dev,
-@@ -320,7 +340,11 @@ static ssize_t k90_show_current_profile(struct device *dev,
- struct usb_interface *usbif = to_usb_interface(dev->parent);
- struct usb_device *usbdev = interface_to_usbdev(usbif);
- int current_profile;
-- char data[8];
-+ char *data;
-+
-+ data = kmalloc(8, GFP_KERNEL);
-+ if (!data)
-+ return -ENOMEM;
-
- ret = usb_control_msg(usbdev, usb_rcvctrlpipe(usbdev, 0),
- K90_REQUEST_STATUS,
-@@ -330,16 +354,22 @@ static ssize_t k90_show_current_profile(struct device *dev,
- if (ret < 0) {
- dev_warn(dev, "Failed to get K90 initial state (error %d).\n",
- ret);
-- return -EIO;
-+ ret = -EIO;
-+ goto out;
- }
- current_profile = data[7];
- if (current_profile < 1 || current_profile > 3) {
- dev_warn(dev, "Read invalid current profile: %02hhx.\n",
- data[7]);
-- return -EIO;
-+ ret = -EIO;
-+ goto out;
- }
-
-- return snprintf(buf, PAGE_SIZE, "%d\n", current_profile);
-+ ret = snprintf(buf, PAGE_SIZE, "%d\n", current_profile);
-+out:
-+ kfree(data);
-+
-+ return ret;
- }
-
- static ssize_t k90_store_current_profile(struct device *dev,
---
-2.1.4
-
diff --git a/debian/patches/bugfix/all/ieee802154-atusb-do-not-use-the-stack-for-buffers-to.patch b/debian/patches/bugfix/all/ieee802154-atusb-do-not-use-the-stack-for-buffers-to.patch
deleted file mode 100644
index 7fe5415..0000000
--- a/debian/patches/bugfix/all/ieee802154-atusb-do-not-use-the-stack-for-buffers-to.patch
+++ /dev/null
@@ -1,99 +0,0 @@
-From: Stefan Schmidt <stefan at osg.samsung.com>
-Date: Thu, 15 Dec 2016 18:40:14 +0100
-Subject: ieee802154: atusb: do not use the stack for buffers to make them DMA
- able
-Origin: https://git.kernel.org/linus/05a974efa4bdf6e2a150e3f27dc6fcf0a9ad5655
-
-From 4.9 we should really avoid using the stack here as this will not be DMA
-able on various platforms. This changes the buffers already being present in
-time of 4.9 being released. This should go into stable as well.
-
-Reported-by: Dan Carpenter <dan.carpenter at oracle.com>
-Cc: stable at vger.kernel.org
-Signed-off-by: Stefan Schmidt <stefan at osg.samsung.com>
-Signed-off-by: Marcel Holtmann <marcel at holtmann.org>
----
- drivers/net/ieee802154/atusb.c | 31 +++++++++++++++++++++++++++----
- 1 file changed, 27 insertions(+), 4 deletions(-)
-
-diff --git a/drivers/net/ieee802154/atusb.c b/drivers/net/ieee802154/atusb.c
-index 1253f86..fa3e8c3 100644
---- a/drivers/net/ieee802154/atusb.c
-+++ b/drivers/net/ieee802154/atusb.c
-@@ -117,13 +117,26 @@ static int atusb_read_reg(struct atusb *atusb, uint8_t reg)
- {
- struct usb_device *usb_dev = atusb->usb_dev;
- int ret;
-+ uint8_t *buffer;
- uint8_t value;
-
-+ buffer = kmalloc(1, GFP_KERNEL);
-+ if (!buffer)
-+ return -ENOMEM;
-+
- dev_dbg(&usb_dev->dev, "atusb: reg = 0x%x\n", reg);
- ret = atusb_control_msg(atusb, usb_rcvctrlpipe(usb_dev, 0),
- ATUSB_REG_READ, ATUSB_REQ_FROM_DEV,
-- 0, reg, &value, 1, 1000);
-- return ret >= 0 ? value : ret;
-+ 0, reg, buffer, 1, 1000);
-+
-+ if (ret >= 0) {
-+ value = buffer[0];
-+ kfree(buffer);
-+ return value;
-+ } else {
-+ kfree(buffer);
-+ return ret;
-+ }
- }
-
- static int atusb_write_subreg(struct atusb *atusb, uint8_t reg, uint8_t mask,
-@@ -608,9 +621,13 @@ static const struct ieee802154_ops atusb_ops = {
- static int atusb_get_and_show_revision(struct atusb *atusb)
- {
- struct usb_device *usb_dev = atusb->usb_dev;
-- unsigned char buffer[3];
-+ unsigned char *buffer;
- int ret;
-
-+ buffer = kmalloc(3, GFP_KERNEL);
-+ if (!buffer)
-+ return -ENOMEM;
-+
- /* Get a couple of the ATMega Firmware values */
- ret = atusb_control_msg(atusb, usb_rcvctrlpipe(usb_dev, 0),
- ATUSB_ID, ATUSB_REQ_FROM_DEV, 0, 0,
-@@ -631,15 +648,20 @@ static int atusb_get_and_show_revision(struct atusb *atusb)
- dev_info(&usb_dev->dev, "Please update to version 0.2 or newer");
- }
-
-+ kfree(buffer);
- return ret;
- }
-
- static int atusb_get_and_show_build(struct atusb *atusb)
- {
- struct usb_device *usb_dev = atusb->usb_dev;
-- char build[ATUSB_BUILD_SIZE + 1];
-+ char *build;
- int ret;
-
-+ build = kmalloc(ATUSB_BUILD_SIZE + 1, GFP_KERNEL);
-+ if (!build)
-+ return -ENOMEM;
-+
- ret = atusb_control_msg(atusb, usb_rcvctrlpipe(usb_dev, 0),
- ATUSB_BUILD, ATUSB_REQ_FROM_DEV, 0, 0,
- build, ATUSB_BUILD_SIZE, 1000);
-@@ -648,6 +670,7 @@ static int atusb_get_and_show_build(struct atusb *atusb)
- dev_info(&usb_dev->dev, "Firmware: build %s\n", build);
- }
-
-+ kfree(build);
- return ret;
- }
-
---
-2.1.4
-
diff --git a/debian/patches/bugfix/all/tmpfs-clear-S_ISGID-when-setting-posix-ACLs.patch b/debian/patches/bugfix/all/tmpfs-clear-S_ISGID-when-setting-posix-ACLs.patch
deleted file mode 100644
index faec91e..0000000
--- a/debian/patches/bugfix/all/tmpfs-clear-S_ISGID-when-setting-posix-ACLs.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From: Gu Zheng <guzheng1 at huawei.com>
-Date: Mon, 9 Jan 2017 09:34:48 +0800
-Subject: tmpfs: clear S_ISGID when setting posix ACLs
-Origin: https://git.kernel.org/linus/497de07d89c1410d76a15bec2bb41f24a2a89f31
-
-This change was missed the tmpfs modification in In CVE-2016-7097
-commit 073931017b49 ("posix_acl: Clear SGID bit when setting
-file permissions")
-It can test by xfstest generic/375, which failed to clear
-setgid bit in the following test case on tmpfs:
-
- touch $testfile
- chown 100:100 $testfile
- chmod 2755 $testfile
- _runas -u 100 -g 101 -- setfacl -m u::rwx,g::rwx,o::rwx $testfile
-
-Signed-off-by: Gu Zheng <guzheng1 at huawei.com>
-Signed-off-by: Al Viro <viro at zeniv.linux.org.uk>
----
- fs/posix_acl.c | 9 ++++-----
- 1 file changed, 4 insertions(+), 5 deletions(-)
-
-diff --git a/fs/posix_acl.c b/fs/posix_acl.c
-index 5955220..c9d48dc 100644
---- a/fs/posix_acl.c
-+++ b/fs/posix_acl.c
-@@ -922,11 +922,10 @@ int simple_set_acl(struct inode *inode, struct posix_acl *acl, int type)
- int error;
-
- if (type == ACL_TYPE_ACCESS) {
-- error = posix_acl_equiv_mode(acl, &inode->i_mode);
-- if (error < 0)
-- return 0;
-- if (error == 0)
-- acl = NULL;
-+ error = posix_acl_update_mode(inode,
-+ &inode->i_mode, &acl);
-+ if (error)
-+ return error;
- }
-
- inode->i_ctime = current_time(inode);
---
-2.1.4
-
diff --git a/debian/patches/series b/debian/patches/series
index 79657e6..2f7f984 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -99,9 +99,6 @@ features/all/securelevel/arm64-add-kernel-config-option-to-set-securelevel-wh.pa
# Security fixes
debian/i386-686-pae-pci-set-pci-nobios-by-default.patch
-bugfix/all/tmpfs-clear-S_ISGID-when-setting-posix-ACLs.patch
-bugfix/all/HID-corsair-fix-DMA-buffers-on-stack.patch
-bugfix/all/ieee802154-atusb-do-not-use-the-stack-for-buffers-to.patch
# Fix exported symbol versions
bugfix/ia64/revert-ia64-move-exports-to-definitions.patch
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/kernel/linux.git
More information about the Kernel-svn-changes
mailing list