diff --git a/debian/changelog b/debian/changelog index e5f9c3999..03683d33a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -linux (4.19.14-1) UNRELEASED; urgency=medium +linux (4.19.15-1) UNRELEASED; urgency=medium * New upstream stable update: https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.14 @@ -74,6 +74,66 @@ linux (4.19.14-1) UNRELEASED; urgency=medium - [arm*] KVM: arm/arm64: vgic-v2: Set active_source to 0 when restoring state - [arm*] KVM: arm/arm64: vgic: Fix off-by-one bug in vgic_get_irq() + https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.15 + - IB/core: Fix oops in netdev_next_upper_dev_rcu() + - xfrm: Fix NULL pointer dereference in xfrm_input when skb_dst_force + clears the dst_entry. + - ieee802154: hwsim: fix off-by-one in parse nested + - netfilter: seqadj: re-load tcp header pointer after possible head + reallocation + - scsi: bnx2fc: Fix NULL dereference in error handling + - [ppc64el] ibmvnic: Convert reset work item mutex to spin lock + - [ppc64el] ibmvnic: Fix non-atomic memory allocation in IRQ context + - [x86] x86/mm: Fix guard hole handling + - i40e: fix mac filter delete when setting mac address + - ixgbe: Fix race when the VF driver does a reset + - netfilter: nat: can't use dst_hold on noref dst + - bnx2x: Clear fip MAC when fcoe offload support is disabled + - bnx2x: Remove configured vlans as part of unload sequence. + - bnx2x: Send update-svid ramrod with retry/poll flags enabled + - mt76: fix potential NULL pointer dereference in mt76_stop_tx_queues + - [x86] x86, hyperv: remove PCI dependency + - [arm64] net: hns: All ports can not work when insmod hns ko after rmmod. + - [arm64] net: hns: Fixed bug that netdev was opened twice + - [arm64] net: hns: Clean rx fbd when ae stopped. + - [arm64] net: hns: Avoid net reset caused by pause frames storm + - [arm64] net: hns: Add mac pcs config when enable|disable mac + - [arm64] net: hns: Fix ping failed when use net bridge and send multicast + - mac80211: fix a kernel panic when TXing after TXQ teardown + - [arm64,riscv64] net: macb: fix random memory corruption on RX with + 64-bit DMA + - [arm64.risvv64] net: macb: fix dropped RX frames due to a race + - lan78xx: Resolve issue with changing MAC address + - [s390x] scsi: zfcp: fix posting too many status read buffers leading to + adapter shutdown + - fork: record start_time late + - zram: fix double free backing device + - hwpoison, memory_hotplug: allow hwpoisoned pages to be offlined + - mm, devm_memremap_pages: kill mapping "System RAM" support + - memcg, oom: notify on oom killer invocation from the charge path + - mt76x0: init hw capabilities + - [amd64] media: cx23885: only reset DMA on problematic CPUs + - ALSA: cs46xx: Potential NULL dereference in probe + - ALSA: usb-audio: Avoid access before bLength check in + build_audio_procunit() + - ALSA: usb-audio: Check mixer unit descriptors more strictly + - ALSA: usb-audio: Fix an out-of-bound read in create_composite_quirks + - ALSA: usb-audio: Always check descriptor sizes in parser code + - Fix failure path in alloc_pid() + - block: deactivate blk_stat timer in wbt_disable_default() + - gfs2: Get rid of potential double-freeing in gfs2_create_inode + - gfs2: Fix loop in gfs2_rbm_find + - b43: Fix error in cordic routine + - nfsd4: zero-length WRITE should succeed + - [ppc*] powerpc/tm: Set MSR[TS] just prior to recheckpoint + - RDMA/srpt: Fix a use-after-free in the channel release code + - sched/fair: Fix infinite loop in update_blocked_averages() by reverting + a9e7f6544b9c + - [s390x] genwqe: Fix size check + - [x86] intel_th: msu: Fix an off-by-one in attribute store + - [armhf,arm64] drm/rockchip: psr: do not dereference encoder before it is + null checked. + - bnx2x: Fix NULL pointer dereference in bnx2x_del_all_vlans() on some hw [ John Paul Adrian Glaubitz ] * [m68k] Add patch to build with -ffreestanding to fix FTBFS diff --git a/debian/patches/bugfix/arm/gpio-mvebu-only-fail-on-missing-clk-if-pwm-is-actual.patch b/debian/patches/bugfix/arm/gpio-mvebu-only-fail-on-missing-clk-if-pwm-is-actual.patch deleted file mode 100644 index 9c7ddc955..000000000 --- a/debian/patches/bugfix/arm/gpio-mvebu-only-fail-on-missing-clk-if-pwm-is-actual.patch +++ /dev/null @@ -1,41 +0,0 @@ -From: Uwe Kleine-König -Date: Mon, 17 Dec 2018 09:30:10 +0100 -Subject: gpio: mvebu: only fail on missing clk if pwm is actually to be used -Origin: http://lists.infradead.org/pipermail/linux-arm-kernel/2018-December/621248.html - -The gpio IP on Armada 370 at offset 0x18180 has neither a clk nor pwm -registers. So there is no need for a clk as the pwm isn't used anyhow. -So only check for the clk in the presence of the pwm registers. This fixes -a failure to probe the gpio driver for the above mentioned gpio device. - -Fixes: 757642f9a584 ("gpio: mvebu: Add limited PWM support") -Signed-off-by: Uwe Kleine-König -Reviewed-by: Gregory CLEMENT ---- - drivers/gpio/gpio-mvebu.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/drivers/gpio/gpio-mvebu.c b/drivers/gpio/gpio-mvebu.c -index 6e02148c208b..adc768f908f1 100644 ---- a/drivers/gpio/gpio-mvebu.c -+++ b/drivers/gpio/gpio-mvebu.c -@@ -773,9 +773,6 @@ static int mvebu_pwm_probe(struct platform_device *pdev, - "marvell,armada-370-gpio")) - return 0; - -- if (IS_ERR(mvchip->clk)) -- return PTR_ERR(mvchip->clk); -- - /* - * There are only two sets of PWM configuration registers for - * all the GPIO lines on those SoCs which this driver reserves -@@ -786,6 +783,9 @@ static int mvebu_pwm_probe(struct platform_device *pdev, - if (!res) - return 0; - -+ if (IS_ERR(mvchip->clk)) -+ return PTR_ERR(mvchip->clk); -+ - /* - * Use set A for lines of GPIO chip with id 0, B for GPIO chip - * with id 1. Don't allow further GPIO chips to be used for PWM. diff --git a/debian/patches/bugfix/powerpc/powerpc-fix-mcpu-options-for-spe-only-compiler.patch b/debian/patches/bugfix/powerpc/powerpc-fix-mcpu-options-for-spe-only-compiler.patch index 14ff8bbd3..fd7b2e9c5 100644 --- a/debian/patches/bugfix/powerpc/powerpc-fix-mcpu-options-for-spe-only-compiler.patch +++ b/debian/patches/bugfix/powerpc/powerpc-fix-mcpu-options-for-spe-only-compiler.patch @@ -38,5 +38,5 @@ Signed-off-by: Ben Hutchings endif +endif - ifdef CONFIG_MPROFILE_KERNEL - CC_FLAGS_FTRACE := -pg -mprofile-kernel + ifdef CONFIG_FUNCTION_TRACER + CC_FLAGS_FTRACE := -pg diff --git a/debian/patches/bugfix/x86/x86-mm-Fix-guard-hole-handling.patch b/debian/patches/bugfix/x86/x86-mm-Fix-guard-hole-handling.patch deleted file mode 100644 index e92a47b40..000000000 --- a/debian/patches/bugfix/x86/x86-mm-Fix-guard-hole-handling.patch +++ /dev/null @@ -1,114 +0,0 @@ -From: "Kirill A. Shutemov" -Date: Fri, 30 Nov 2018 23:23:27 +0300 -Subject: x86/mm: Fix guard hole handling -Origin: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/commit/?id=16877a5570e0c5f4270d5b17f9bab427bcae9514 - -There is a guard hole at the beginning of the kernel address space, also -used by hypervisors. It occupies 16 PGD entries. - -This reserved range is not defined explicitely, it is calculated relative -to other entities: direct mapping and user space ranges. - -The calculation got broken by recent changes of the kernel memory layout: -LDT remap range is now mapped before direct mapping and makes the -calculation invalid. - -The breakage leads to crash on Xen dom0 boot[1]. - -Define the reserved range explicitely. It's part of kernel ABI (hypervisors -expect it to be stable) and must not depend on changes in the rest of -kernel memory layout. - -[1] https://lists.xenproject.org/archives/html/xen-devel/2018-11/msg03313.html - -Fixes: d52888aa2753 ("x86/mm: Move LDT remap out of KASLR region on 5-level paging") -Reported-by: Hans van Kranenburg -Signed-off-by: Kirill A. Shutemov -Signed-off-by: Thomas Gleixner -Tested-by: Hans van Kranenburg -Reviewed-by: Juergen Gross -Cc: bp@alien8.de -Cc: hpa@zytor.com -Cc: dave.hansen@linux.intel.com -Cc: luto@kernel.org -Cc: peterz@infradead.org -Cc: boris.ostrovsky@oracle.com -Cc: bhe@redhat.com -Cc: linux-mm@kvack.org -Cc: xen-devel@lists.xenproject.org -Link: https://lkml.kernel.org/r/20181130202328.65359-2-kirill.shutemov@linux.intel.com ---- - arch/x86/include/asm/pgtable_64_types.h | 5 +++++ - arch/x86/mm/dump_pagetables.c | 8 ++++---- - arch/x86/xen/mmu_pv.c | 11 ++++++----- - 3 files changed, 15 insertions(+), 9 deletions(-) - -diff --git a/arch/x86/include/asm/pgtable_64_types.h b/arch/x86/include/asm/pgtable_64_types.h -index 84bd9bdc1987..88bca456da99 100644 ---- a/arch/x86/include/asm/pgtable_64_types.h -+++ b/arch/x86/include/asm/pgtable_64_types.h -@@ -111,6 +111,11 @@ extern unsigned int ptrs_per_p4d; - */ - #define MAXMEM (1UL << MAX_PHYSMEM_BITS) - -+#define GUARD_HOLE_PGD_ENTRY -256UL -+#define GUARD_HOLE_SIZE (16UL << PGDIR_SHIFT) -+#define GUARD_HOLE_BASE_ADDR (GUARD_HOLE_PGD_ENTRY << PGDIR_SHIFT) -+#define GUARD_HOLE_END_ADDR (GUARD_HOLE_BASE_ADDR + GUARD_HOLE_SIZE) -+ - #define LDT_PGD_ENTRY -240UL - #define LDT_BASE_ADDR (LDT_PGD_ENTRY << PGDIR_SHIFT) - #define LDT_END_ADDR (LDT_BASE_ADDR + PGDIR_SIZE) -diff --git a/arch/x86/mm/dump_pagetables.c b/arch/x86/mm/dump_pagetables.c -index fc37bbd23eb8..dad153e5a427 100644 ---- a/arch/x86/mm/dump_pagetables.c -+++ b/arch/x86/mm/dump_pagetables.c -@@ -512,11 +512,11 @@ static inline bool is_hypervisor_range(int idx) - { - #ifdef CONFIG_X86_64 - /* -- * ffff800000000000 - ffff87ffffffffff is reserved for -- * the hypervisor. -+ * A hole in the beginning of kernel address space reserved -+ * for a hypervisor. - */ -- return (idx >= pgd_index(__PAGE_OFFSET) - 16) && -- (idx < pgd_index(__PAGE_OFFSET)); -+ return (idx >= pgd_index(GUARD_HOLE_BASE_ADDR)) && -+ (idx < pgd_index(GUARD_HOLE_END_ADDR)); - #else - return false; - #endif -diff --git a/arch/x86/xen/mmu_pv.c b/arch/x86/xen/mmu_pv.c -index a5d7ed125337..0f4fe206dcc2 100644 ---- a/arch/x86/xen/mmu_pv.c -+++ b/arch/x86/xen/mmu_pv.c -@@ -648,19 +648,20 @@ static int __xen_pgd_walk(struct mm_struct *mm, pgd_t *pgd, - unsigned long limit) - { - int i, nr, flush = 0; -- unsigned hole_low, hole_high; -+ unsigned hole_low = 0, hole_high = 0; - - /* The limit is the last byte to be touched */ - limit--; - BUG_ON(limit >= FIXADDR_TOP); - -+#ifdef CONFIG_X86_64 - /* - * 64-bit has a great big hole in the middle of the address -- * space, which contains the Xen mappings. On 32-bit these -- * will end up making a zero-sized hole and so is a no-op. -+ * space, which contains the Xen mappings. - */ -- hole_low = pgd_index(USER_LIMIT); -- hole_high = pgd_index(PAGE_OFFSET); -+ hole_low = pgd_index(GUARD_HOLE_BASE_ADDR); -+ hole_high = pgd_index(GUARD_HOLE_END_ADDR); -+#endif - - nr = pgd_index(limit) + 1; - for (i = 0; i < nr; i++) { --- -2.19.2 - diff --git a/debian/patches/debian/revert-objtool-fix-config_stack_validation-y-warning.patch b/debian/patches/debian/revert-objtool-fix-config_stack_validation-y-warning.patch index 3997617df..c62113c8c 100644 --- a/debian/patches/debian/revert-objtool-fix-config_stack_validation-y-warning.patch +++ b/debian/patches/debian/revert-objtool-fix-config_stack_validation-y-warning.patch @@ -12,7 +12,7 @@ a pre-built objtool. --- a/Makefile +++ b/Makefile -@@ -923,22 +923,6 @@ mod_sign_cmd = true +@@ -949,17 +949,6 @@ mod_sign_cmd = true endif export mod_sign_cmd @@ -22,11 +22,6 @@ a pre-built objtool. - ifeq ($(has_libelf),1) - objtool_target := tools/objtool FORCE - else -- ifdef CONFIG_UNWINDER_ORC -- $(error "Cannot generate ORC metadata for CONFIG_UNWINDER_ORC=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel") -- else -- $(warning "Cannot use CONFIG_STACK_VALIDATION=y, please install libelf-dev, libelf-devel or elfutils-libelf-devel") -- endif - SKIP_STACK_VALIDATION := 1 - export SKIP_STACK_VALIDATION - endif @@ -35,7 +30,7 @@ a pre-built objtool. ifeq ($(KBUILD_EXTMOD),) core-y += kernel/ certs/ mm/ fs/ ipc/ security/ crypto/ block/ -@@ -1075,6 +1059,22 @@ uapi-asm-generic: +@@ -1110,6 +1099,22 @@ uapi-asm-generic: $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.asm-generic \ src=uapi/asm obj=arch/$(SRCARCH)/include/generated/uapi/asm @@ -57,4 +52,4 @@ a pre-built objtool. + PHONY += prepare-objtool prepare-objtool: $(objtool_target) - + ifeq ($(SKIP_STACK_VALIDATION),1) diff --git a/debian/patches/series b/debian/patches/series index b12a608fb..d3d0265c7 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -77,8 +77,6 @@ bugfix/arm/arm-mm-export-__sync_icache_dcache-for-xen-privcmd.patch bugfix/powerpc/powerpc-boot-fix-missing-crc32poly.h-when-building-with-kernel_xz.patch bugfix/arm64/arm64-acpi-Add-fixup-for-HPE-m400-quirks.patch bugfix/x86/x86-32-disable-3dnow-in-generic-config.patch -bugfix/x86/x86-mm-Fix-guard-hole-handling.patch -bugfix/arm/gpio-mvebu-only-fail-on-missing-clk-if-pwm-is-actual.patch bugfix/powerpc/powerpc-fix-mcpu-options-for-spe-only-compiler.patch bugfix/m68k/m68k-build-with-ffreestanding.patch