From dd1408c66d58f0467652cabe7f1beca491eb28ab Mon Sep 17 00:00:00 2001 From: Salvatore Bonaccorso Date: Sat, 27 May 2017 14:33:17 +0200 Subject: [PATCH] Update to 4.9.28 --- debian/changelog | 98 ++++++++++++++- ...ynamically-allocate-space-for-sglist.patch | 117 ------------------ ...bo-frequency-reporting-for-pre-sandy.patch | 31 ----- debian/patches/series | 2 - 4 files changed, 97 insertions(+), 151 deletions(-) delete mode 100644 debian/patches/bugfix/all/macsec-dynamically-allocate-space-for-sglist.patch delete mode 100644 debian/patches/bugfix/x86/cpupower-fix-turbo-frequency-reporting-for-pre-sandy.patch diff --git a/debian/changelog b/debian/changelog index ade238351..a73a4a35d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -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. diff --git a/debian/patches/bugfix/all/macsec-dynamically-allocate-space-for-sglist.patch b/debian/patches/bugfix/all/macsec-dynamically-allocate-space-for-sglist.patch deleted file mode 100644 index da947b78a..000000000 --- a/debian/patches/bugfix/all/macsec-dynamically-allocate-space-for-sglist.patch +++ /dev/null @@ -1,117 +0,0 @@ -From: "Jason A. Donenfeld" -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 -Acked-by: Sabrina Dubroca -Signed-off-by: David S. Miller ---- - 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 - diff --git a/debian/patches/bugfix/x86/cpupower-fix-turbo-frequency-reporting-for-pre-sandy.patch b/debian/patches/bugfix/x86/cpupower-fix-turbo-frequency-reporting-for-pre-sandy.patch deleted file mode 100644 index d130de483..000000000 --- a/debian/patches/bugfix/x86/cpupower-fix-turbo-frequency-reporting-for-pre-sandy.patch +++ /dev/null @@ -1,31 +0,0 @@ -From: Ben Hutchings -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 -Tested-by: GSR -References: https://bugs.debian.org/859978 -Fixes: 8fb2e440b223 ("cpupower: Show Intel turbo ratio support via ...") -Signed-off-by: Ben Hutchings ---- - 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 */ diff --git a/debian/patches/series b/debian/patches/series index 6559add96..40dc4abf7 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -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