Update to 4.9.28

This commit is contained in:
Salvatore Bonaccorso 2017-05-27 14:33:17 +02:00
parent 75d5d0e57f
commit dd1408c66d
4 changed files with 97 additions and 151 deletions

98
debian/changelog vendored
View File

@ -1,4 +1,4 @@
linux (4.9.27-1) UNRELEASED; urgency=medium
linux (4.9.28-1) UNRELEASED; urgency=medium
* New upstream stable update:
https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.26
@ -67,6 +67,102 @@ linux (4.9.27-1) UNRELEASED; urgency=medium
- ceph: try getting buffer capability for readahead/fadvise
- cpu/hotplug: Serialize callback invocations proper
- dm ioctl: prevent stack leak in dm ioctl call
https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.28
- 9p: fix a potential acl leak
- hwmon: (it87) Fix pwm4 detection for IT8620 and IT8628
- [x86] tpm: fix RC value check in tpm2_seal_trusted
- [x86] tmp: use pdev for parent device in tpm_chip_alloc
- cpupower: Fix turbo frequency reporting for pre-Sandy Bridge cores
- [powerpc*] mm: Fixup wrong LPCR_VRMASD value
- [powerpc*] powernv: Fix opal_exit tracepoint opcode
- [powerpc*] Correctly disable latent entropy GCC plugin on
prom_init.o
- [x86] perf/x86/intel/pt: Add format strings for PTWRITE and power
event tracing
- [arm64] dts: r8a7795: Mark EthernetAVB device node disabled
- [arm64] dts: qcom: Fix ipq board clock rates
- [arm64] Improve detection of user/non-user mappings in
set_pte(_at)
- [armhf] OMAP5 / DRA7: Fix HYP mode boot for thumb2 build
- [armhf] dts: sun7i: lamobo-r1: Fix CPU port RGMII settings
- mwifiex: debugfs: Fix (sometimes) off-by-1 SSID print
- mwifiex: remove redundant dma padding in AMSDU
- mwifiex: Avoid skipping WEP key deletion for AP
- iwlwifi: fix MODULE_FIRMWARE for 6030
- iwlwifi: mvm: don't restart HW if suspend fails with unified image
- iwlwifi: mvm: overwrite skb info later
- iwlwifi: pcie: don't increment / decrement a bool
- iwlwifi: pcie: trans: Remove unused 'shift_param'
- iwlwifi: pcie: fix the set of DMA memory mask
- iwlwifi: mvm: fix reorder timer re-arming
- iwlwifi: mvm: Use aux queue for offchannel frames in dqa
- iwlwifi: mvm/pcie: adjust A-MSDU tx_cmd length in PCIe
- iwlwifi: mvm: fix pending frame counter calculation
- iwlwifi: mvm: fix references to first_agg_queue in DQA mode
- iwlwifi: mvm: synchronize firmware DMA paging memory
- iwlwifi: mvm: writing zero bytes to debugfs causes a crash
- [x86] ioapic: Restore IO-APIC irq_chip retrigger callback
- [amd64] x86/pci-calgary: Fix iommu_free() comparison of unsigned
expression >= 0
- [x86] kprobes/x86: Fix kernel panic when certain exception-
handling addresses are probed
- [x86] platform/intel-mid: Correct MSI IRQ line for watchdog device
- [x86] KVM: nVMX: initialize PML fields in vmcs02
- [x86] KVM: nVMX: do not leak PML full vmexit to L1
- [arm64, armhf] usb: dwc2: host: use msleep() for long delay
- [armhf] usb: host: ehci-exynos: Decrese node refcount on
exynos_ehci_get_phy() error paths
- [armhf] usb: host: ohci-exynos: Decrese node refcount on
exynos_ehci_get_phy() error paths
- [arm64, armhf] usb: chipidea: Only read/write OTGSC from one place
- [arm64, armhf] usb: chipidea: Handle extcon events properly
- USB: serial: keyspan_pda: fix receive sanity checks
- USB: serial: digi_acceleport: fix incomplete rx sanity check
- USB: serial: ssu100: fix control-message error handling
- USB: serial: io_edgeport: fix epic-descriptor handling
- USB: serial: ti_usb_3410_5052: fix control-message error handling
- USB: serial: ark3116: fix open error handling
- USB: serial: ftdi_sio: fix latency-timer error handling
- USB: serial: quatech2: fix control-message error handling
- USB: serial: mct_u232: fix modem-status error handling
- USB: serial: io_edgeport: fix descriptor error handling
- [armhf] clk: rockchip: add "," to
mux_pll_src_apll_dpll_gpll_usb480m_p on rk3036
- phy: qcom-usb-hs: Add depends on EXTCON
- scsi: qla2xxx: Fix crash in qla2xxx_eh_abort on bad ptr
- scsi: mac_scsi: Fix MAC_SCSI=m option when SCSI=m
- scsi: smartpqi: fix time handling
- [mips*] R2-on-R6 MULTU/MADDU/MSUBU emulation bugfix
- brcmfmac: Ensure pointer correctly set if skb data location
changes
- brcmfmac: Make skb header writable before use
- [x86] staging/lustre/llite: move root_squash from sysfs to debugfs
- [x86] staging: wlan-ng: add missing byte order conversion
- ALSA: hda - Fix deadlock of controller device lock at unbinding
- [sparc64] fix fault handling in NGbzero.S and GENbzero.S
- macsec: dynamically allocate space for sglist
- tcp: do not underestimate skb->truesize in tcp_trim_head()
- bpf: enhance verifier to understand stack pointer arithmetic
- [arm64] bpf: fix jit branch offset related to ldimm64
- tcp: fix wraparound issue in tcp_lp
- net: ipv6: Do not duplicate DAD on link up
- net: usb: qmi_wwan: add Telit ME910 support
- tcp: do not inherit fastopen_req from parent
- ipv4, ipv6: ensure raw socket message is big enough to hold
an IP header
- rtnetlink: NUL-terminate IFLA_PHYS_PORT_NAME string
- ipv6: initialize route null entry in addrconf_init()
- ipv6: reorder ip6_route_dev_notifier after ipv6_dev_notf
- bnxt_en: allocate enough space for ->ntp_fltr_bmap
- bpf: don't let ldimm64 leak map addresses on unprivileged
(CVE-2017-9150)
- f2fs: sanity check segment count
- xen: Revert commits da72ff5bfcb0 and 72a9b186292d
- [arm64, armhf] wlcore: Pass win_size taken from
ieee80211_sta to FW
- [arm64, armhf] wlcore: Add RX_BA_WIN_SIZE_CHANGE_EVENT event
- drm/ttm: fix use-after-free races in vm fault handling
- block: get rid of blk_integrity_revalidate()
[ Aurelien Jarno ]
* [mips*/*-malta] Enable POWER_RESET and POWER_RESET_SYSCON.

View File

@ -1,117 +0,0 @@
From: "Jason A. Donenfeld" <Jason@zx2c4.com>
Date: Tue, 25 Apr 2017 19:08:18 +0200
Subject: macsec: dynamically allocate space for sglist
Origin: https://git.kernel.org/linus/5294b83086cc1c35b4efeca03644cf9d12282e5b
We call skb_cow_data, which is good anyway to ensure we can actually
modify the skb as such (another error from prior). Now that we have the
number of fragments required, we can safely allocate exactly that amount
of memory.
Fixes: c09440f7dcb3 ("macsec: introduce IEEE 802.1AE driver")
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Acked-by: Sabrina Dubroca <sd@queasysnail.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
---
drivers/net/macsec.c | 29 ++++++++++++++++++++++-------
1 file changed, 22 insertions(+), 7 deletions(-)
diff --git a/drivers/net/macsec.c b/drivers/net/macsec.c
index dbab05a..49ce4e9 100644
--- a/drivers/net/macsec.c
+++ b/drivers/net/macsec.c
@@ -617,7 +617,8 @@ static void macsec_encrypt_done(struct crypto_async_request *base, int err)
static struct aead_request *macsec_alloc_req(struct crypto_aead *tfm,
unsigned char **iv,
- struct scatterlist **sg)
+ struct scatterlist **sg,
+ int num_frags)
{
size_t size, iv_offset, sg_offset;
struct aead_request *req;
@@ -629,7 +630,7 @@ static struct aead_request *macsec_alloc_req(struct crypto_aead *tfm,
size = ALIGN(size, __alignof__(struct scatterlist));
sg_offset = size;
- size += sizeof(struct scatterlist) * (MAX_SKB_FRAGS + 1);
+ size += sizeof(struct scatterlist) * num_frags;
tmp = kmalloc(size, GFP_ATOMIC);
if (!tmp)
@@ -649,6 +650,7 @@ static struct sk_buff *macsec_encrypt(struct sk_buff *skb,
{
int ret;
struct scatterlist *sg;
+ struct sk_buff *trailer;
unsigned char *iv;
struct ethhdr *eth;
struct macsec_eth_header *hh;
@@ -723,7 +725,14 @@ static struct sk_buff *macsec_encrypt(struct sk_buff *skb,
return ERR_PTR(-EINVAL);
}
- req = macsec_alloc_req(tx_sa->key.tfm, &iv, &sg);
+ ret = skb_cow_data(skb, 0, &trailer);
+ if (unlikely(ret < 0)) {
+ macsec_txsa_put(tx_sa);
+ kfree_skb(skb);
+ return ERR_PTR(ret);
+ }
+
+ req = macsec_alloc_req(tx_sa->key.tfm, &iv, &sg, ret);
if (!req) {
macsec_txsa_put(tx_sa);
kfree_skb(skb);
@@ -732,7 +741,7 @@ static struct sk_buff *macsec_encrypt(struct sk_buff *skb,
macsec_fill_iv(iv, secy->sci, pn);
- sg_init_table(sg, MAX_SKB_FRAGS + 1);
+ sg_init_table(sg, ret);
skb_to_sgvec(skb, sg, 0, skb->len);
if (tx_sc->encrypt) {
@@ -917,6 +926,7 @@ static struct sk_buff *macsec_decrypt(struct sk_buff *skb,
{
int ret;
struct scatterlist *sg;
+ struct sk_buff *trailer;
unsigned char *iv;
struct aead_request *req;
struct macsec_eth_header *hdr;
@@ -927,7 +937,12 @@ static struct sk_buff *macsec_decrypt(struct sk_buff *skb,
if (!skb)
return ERR_PTR(-ENOMEM);
- req = macsec_alloc_req(rx_sa->key.tfm, &iv, &sg);
+ ret = skb_cow_data(skb, 0, &trailer);
+ if (unlikely(ret < 0)) {
+ kfree_skb(skb);
+ return ERR_PTR(ret);
+ }
+ req = macsec_alloc_req(rx_sa->key.tfm, &iv, &sg, ret);
if (!req) {
kfree_skb(skb);
return ERR_PTR(-ENOMEM);
@@ -936,7 +951,7 @@ static struct sk_buff *macsec_decrypt(struct sk_buff *skb,
hdr = (struct macsec_eth_header *)skb->data;
macsec_fill_iv(iv, sci, ntohl(hdr->packet_number));
- sg_init_table(sg, MAX_SKB_FRAGS + 1);
+ sg_init_table(sg, ret);
skb_to_sgvec(skb, sg, 0, skb->len);
if (hdr->tci_an & MACSEC_TCI_E) {
@@ -2716,7 +2731,7 @@ static netdev_tx_t macsec_start_xmit(struct sk_buff *skb,
}
#define MACSEC_FEATURES \
- (NETIF_F_SG | NETIF_F_HIGHDMA)
+ (NETIF_F_SG | NETIF_F_HIGHDMA | NETIF_F_FRAGLIST)
static struct lock_class_key macsec_netdev_addr_lock_key;
static int macsec_dev_init(struct net_device *dev)
--
2.1.4

View File

@ -1,31 +0,0 @@
From: Ben Hutchings <ben@decadent.org.uk>
Date: Mon, 10 Apr 2017 17:44:13 +0100
Subject: cpupower: Fix turbo frequency reporting for pre-Sandy Bridge cores
Bug-Debian: https://bugs.debian.org/859978
Forwarded: https://marc.info/?l=linux-pm&m=149186698809229&w=2
The switch that conditionally sets CPUPOWER_CAP_HAS_TURBO_RATIO and
CPUPOWER_CAP_IS_SNB flags is missing a break, so all cores get both
flags set and an assumed base clock of 100 MHz for turbo values.
Reported-by: GSR <gsr.bugs@infernal-iceberg.com>
Tested-by: GSR <gsr.bugs@infernal-iceberg.com>
References: https://bugs.debian.org/859978
Fixes: 8fb2e440b223 ("cpupower: Show Intel turbo ratio support via ...")
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
tools/power/cpupower/utils/helpers/cpuid.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/power/cpupower/utils/helpers/cpuid.c b/tools/power/cpupower/utils/helpers/cpuid.c
index 93b0aa74ca03..39c2c7d067bb 100644
--- a/tools/power/cpupower/utils/helpers/cpuid.c
+++ b/tools/power/cpupower/utils/helpers/cpuid.c
@@ -156,6 +156,7 @@ int get_cpu_info(unsigned int cpu, struct cpupower_cpu_info *cpu_info)
*/
case 0x2C: /* Westmere EP - Gulftown */
cpu_info->caps |= CPUPOWER_CAP_HAS_TURBO_RATIO;
+ break;
case 0x2A: /* SNB */
case 0x2D: /* SNB Xeon */
case 0x3A: /* IVB */

View File

@ -105,7 +105,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
debian/time-mark-timer_stats-as-broken.patch
bugfix/all/macsec-dynamically-allocate-space-for-sglist.patch
# Fix exported symbol versions
bugfix/ia64/revert-ia64-move-exports-to-definitions.patch
@ -142,4 +141,3 @@ bugfix/all/liblockdep-enable-wall-by-default.patch
bugfix/all/liblockdep-fix-unused-value-warnings.patch
bugfix/all/liblockdep-fix-set-but-not-used-warnings.patch
bugfix/all/liblockdep-fix-defined-but-not-used-warning-for-init.patch
bugfix/x86/cpupower-fix-turbo-frequency-reporting-for-pre-sandy.patch