Re: Linux 4.4.86
diff --git a/Makefile b/Makefile index 0f3d843f42a7..1207bf6a0e7a 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ VERSION = 4 PATCHLEVEL = 4 -SUBLEVEL = 85 +SUBLEVEL = 86 EXTRAVERSION = NAME = Blurry Fish Butt diff --git a/arch/arm64/kernel/fpsimd.c b/arch/arm64/kernel/fpsimd.c index 4c46c54a3ad7..6638903f0cb9 100644 --- a/arch/arm64/kernel/fpsimd.c +++ b/arch/arm64/kernel/fpsimd.c @@ -157,9 +157,11 @@ void fpsimd_thread_switch(struct task_struct *next) void fpsimd_flush_thread(void) { + preempt_disable(); memset(>thread.fpsimd_state, 0, sizeof(struct fpsimd_state)); fpsimd_flush_task_state(current); set_thread_flag(TIF_FOREIGN_FPSTATE); + preempt_enable(); } /* diff --git a/arch/arm64/mm/fault.c b/arch/arm64/mm/fault.c index a4b466424a32..7fabf49f2aeb 100644 --- a/arch/arm64/mm/fault.c +++ b/arch/arm64/mm/fault.c @@ -313,8 +313,11 @@ retry: * signal first. We do not need to release the mmap_sem because it * would already be released in __lock_page_or_retry in mm/filemap.c. */ - if ((fault & VM_FAULT_RETRY) && fatal_signal_pending(current)) + if ((fault & VM_FAULT_RETRY) && fatal_signal_pending(current)) { + if (!user_mode(regs)) + goto no_context; return 0; + } /* * Major/minor page fault accounting is only done on the initial diff --git a/arch/x86/include/asm/io.h b/arch/x86/include/asm/io.h index de25aad07853..9016b4b70375 100644 --- a/arch/x86/include/asm/io.h +++ b/arch/x86/include/asm/io.h @@ -304,13 +304,13 @@ static inline unsigned type in##bwl##_p(int port) \ static inline void outs##bwl(int port, const void *addr, unsigned long count) \ { \ asm volatile("rep; outs" #bwl \ -: "+S"(addr), "+c"(count) : "d"(port));\ +: "+S"(addr), "+c"(count) : "d"(port) : "memory"); \ } \ \ static inline void ins##bwl(int port, void *addr, unsigned long count) \ { \ asm volatile("rep; ins" #bwl\ -: "+D"(addr), "+c"(count) : "d"(port));\ +: "+D"(addr), "+c"(count) : "d"(port) : "memory"); \ } BUILDIO(b, b, char) diff --git a/drivers/gpu/drm/i915/intel_uncore.c b/drivers/gpu/drm/i915/intel_uncore.c index cc91ae832ffb..6fd7b50c5747 100644 --- a/drivers/gpu/drm/i915/intel_uncore.c +++ b/drivers/gpu/drm/i915/intel_uncore.c @@ -635,7 +635,8 @@ hsw_unclaimed_reg_detect(struct drm_i915_private *dev_priv) "enabling oneshot unclaimed register reporting. " "Please use i915.mmio_debug=N for more information.\n"); __raw_i915_write32(dev_priv, FPGA_DBG, FPGA_DBG_RM_NOCLAIM); - i915.mmio_debug = mmio_debug_once--; + i915.mmio_debug = mmio_debug_once; + mmio_debug_once = false; } } diff --git a/drivers/i2c/busses/i2c-jz4780.c b/drivers/i2c/busses/i2c-jz4780.c index f325663c27c5..4b58e8aaf5c5 100644 --- a/drivers/i2c/busses/i2c-jz4780.c +++ b/drivers/i2c/busses/i2c-jz4780.c @@ -786,10 +786,6 @@ static int jz4780_i2c_probe(struct platform_device *pdev) jz4780_i2c_writew(i2c, JZ4780_I2C_INTM, 0x0); - i2c->cmd = 0; - memset(i2c->cmd_buf, 0, BUFSIZE); - memset(i2c->data_buf, 0, BUFSIZE); - i2c->irq = platform_get_irq(pdev, 0); ret = devm_request_irq(>dev, i2c->irq, jz4780_i2c_irq, 0, dev_name(>dev), i2c); diff --git a/drivers/net/wireless/p54/fwio.c b/drivers/net/wireless/p54/fwio.c index 257a9eadd595..4ac6764f4897 100644 --- a/drivers/net/wireless/p54/fwio.c +++ b/drivers/net/wireless/p54/fwio.c @@ -488,7 +488,7 @@ int p54_scan(struct p54_common *priv, u16 mode, u16 dwell) entry += sizeof(__le16); chan->pa_points_per_curve = 8; - memset(chan->curve_data, 0, sizeof(*chan->curve_data)); + memset(chan->curve_data, 0, sizeof(chan->curve_data)); memcpy(chan->curve_data, entry, sizeof(struct p54_pa_curve_data_sample) * min((u8)8, curve_data->points_per_channel)); diff --git a/drivers/scsi/isci/remote_node_context.c b/drivers/scsi/isci/remote_node_context.c index 1910100638a2..00602abec0ea 100644 --- a/drivers/scsi/isci/remote_node_context.c +++ b/drivers/scsi/isci/remote_node_context.c @@ -66,6 +66,9 @@ const char *rnc_state_name(enum scis_sds_remote_node_context_states state) { static const char *
Linux 4.4.86
I'm announcing the release of the 4.4.86 kernel. All users of the 4.4 kernel series must upgrade. The updated 4.4.y git tree can be found at: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-4.4.y and can be browsed at the normal kernel.org git web browser: http://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary thanks, greg k-h Makefile|2 - arch/arm64/kernel/fpsimd.c |2 + arch/arm64/mm/fault.c |5 ++- arch/x86/include/asm/io.h |4 +- drivers/gpu/drm/i915/intel_uncore.c |3 + drivers/i2c/busses/i2c-jz4780.c |4 -- drivers/net/wireless/p54/fwio.c |2 - drivers/scsi/isci/remote_node_context.c |3 + drivers/scsi/lpfc/lpfc_els.c|5 ++- drivers/scsi/sg.c | 49 ++-- fs/btrfs/volumes.c |2 - include/linux/lightnvm.h|1 kernel/gcov/base.c |6 +++ kernel/gcov/gcc_4_7.c |4 +- sound/pci/au88x0/au88x0_core.c | 14 +++-- 15 files changed, 63 insertions(+), 43 deletions(-) Arnd Bergmann (2): scsi: isci: avoid array subscript warning x86/io: Add "memory" clobber to insb/insw/insl/outsb/outsw/outsl Colin Ian King (1): btrfs: remove duplicate const specifier Dave Martin (1): arm64: fpsimd: Prevent registers leaking across exec Florian Meier (1): gcov: add support for gcc version >= 6 Greg Kroah-Hartman (2): drm/i915: fix compiler warning in drivers/gpu/drm/i915/intel_uncore.c Linux 4.4.86 Hannes Reinecke (2): scsi: sg: protect accesses to 'reserved' page array scsi: sg: reset 'res_in_use' after unlinking reserved array James Smart (1): lpfc: Fix Device discovery failures during switch reboot test. Javier González (1): lightnvm: initialize ppa_addr in dev_to_generic_addr() Jiri Slaby (1): p54: memset(0) whole array Mark Rutland (1): arm64: mm: abort uaccess retries upon fatal signal Martin Liska (1): gcov: support GCC 7.1 Takashi Iwai (1): ALSA: au88x0: Fix zero clear of stream->resources Wolfram Sang (1): i2c: jz4780: drop superfluous init signature.asc Description: PGP signature
Re: Linux 4.4.86
diff --git a/Makefile b/Makefile index 0f3d843f42a7..1207bf6a0e7a 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ VERSION = 4 PATCHLEVEL = 4 -SUBLEVEL = 85 +SUBLEVEL = 86 EXTRAVERSION = NAME = Blurry Fish Butt diff --git a/arch/arm64/kernel/fpsimd.c b/arch/arm64/kernel/fpsimd.c index 4c46c54a3ad7..6638903f0cb9 100644 --- a/arch/arm64/kernel/fpsimd.c +++ b/arch/arm64/kernel/fpsimd.c @@ -157,9 +157,11 @@ void fpsimd_thread_switch(struct task_struct *next) void fpsimd_flush_thread(void) { + preempt_disable(); memset(>thread.fpsimd_state, 0, sizeof(struct fpsimd_state)); fpsimd_flush_task_state(current); set_thread_flag(TIF_FOREIGN_FPSTATE); + preempt_enable(); } /* diff --git a/arch/arm64/mm/fault.c b/arch/arm64/mm/fault.c index a4b466424a32..7fabf49f2aeb 100644 --- a/arch/arm64/mm/fault.c +++ b/arch/arm64/mm/fault.c @@ -313,8 +313,11 @@ retry: * signal first. We do not need to release the mmap_sem because it * would already be released in __lock_page_or_retry in mm/filemap.c. */ - if ((fault & VM_FAULT_RETRY) && fatal_signal_pending(current)) + if ((fault & VM_FAULT_RETRY) && fatal_signal_pending(current)) { + if (!user_mode(regs)) + goto no_context; return 0; + } /* * Major/minor page fault accounting is only done on the initial diff --git a/arch/x86/include/asm/io.h b/arch/x86/include/asm/io.h index de25aad07853..9016b4b70375 100644 --- a/arch/x86/include/asm/io.h +++ b/arch/x86/include/asm/io.h @@ -304,13 +304,13 @@ static inline unsigned type in##bwl##_p(int port) \ static inline void outs##bwl(int port, const void *addr, unsigned long count) \ { \ asm volatile("rep; outs" #bwl \ -: "+S"(addr), "+c"(count) : "d"(port));\ +: "+S"(addr), "+c"(count) : "d"(port) : "memory"); \ } \ \ static inline void ins##bwl(int port, void *addr, unsigned long count) \ { \ asm volatile("rep; ins" #bwl\ -: "+D"(addr), "+c"(count) : "d"(port));\ +: "+D"(addr), "+c"(count) : "d"(port) : "memory"); \ } BUILDIO(b, b, char) diff --git a/drivers/gpu/drm/i915/intel_uncore.c b/drivers/gpu/drm/i915/intel_uncore.c index cc91ae832ffb..6fd7b50c5747 100644 --- a/drivers/gpu/drm/i915/intel_uncore.c +++ b/drivers/gpu/drm/i915/intel_uncore.c @@ -635,7 +635,8 @@ hsw_unclaimed_reg_detect(struct drm_i915_private *dev_priv) "enabling oneshot unclaimed register reporting. " "Please use i915.mmio_debug=N for more information.\n"); __raw_i915_write32(dev_priv, FPGA_DBG, FPGA_DBG_RM_NOCLAIM); - i915.mmio_debug = mmio_debug_once--; + i915.mmio_debug = mmio_debug_once; + mmio_debug_once = false; } } diff --git a/drivers/i2c/busses/i2c-jz4780.c b/drivers/i2c/busses/i2c-jz4780.c index f325663c27c5..4b58e8aaf5c5 100644 --- a/drivers/i2c/busses/i2c-jz4780.c +++ b/drivers/i2c/busses/i2c-jz4780.c @@ -786,10 +786,6 @@ static int jz4780_i2c_probe(struct platform_device *pdev) jz4780_i2c_writew(i2c, JZ4780_I2C_INTM, 0x0); - i2c->cmd = 0; - memset(i2c->cmd_buf, 0, BUFSIZE); - memset(i2c->data_buf, 0, BUFSIZE); - i2c->irq = platform_get_irq(pdev, 0); ret = devm_request_irq(>dev, i2c->irq, jz4780_i2c_irq, 0, dev_name(>dev), i2c); diff --git a/drivers/net/wireless/p54/fwio.c b/drivers/net/wireless/p54/fwio.c index 257a9eadd595..4ac6764f4897 100644 --- a/drivers/net/wireless/p54/fwio.c +++ b/drivers/net/wireless/p54/fwio.c @@ -488,7 +488,7 @@ int p54_scan(struct p54_common *priv, u16 mode, u16 dwell) entry += sizeof(__le16); chan->pa_points_per_curve = 8; - memset(chan->curve_data, 0, sizeof(*chan->curve_data)); + memset(chan->curve_data, 0, sizeof(chan->curve_data)); memcpy(chan->curve_data, entry, sizeof(struct p54_pa_curve_data_sample) * min((u8)8, curve_data->points_per_channel)); diff --git a/drivers/scsi/isci/remote_node_context.c b/drivers/scsi/isci/remote_node_context.c index 1910100638a2..00602abec0ea 100644 --- a/drivers/scsi/isci/remote_node_context.c +++ b/drivers/scsi/isci/remote_node_context.c @@ -66,6 +66,9 @@ const char *rnc_state_name(enum scis_sds_remote_node_context_states state) { static const char *
Linux 4.4.86
I'm announcing the release of the 4.4.86 kernel. All users of the 4.4 kernel series must upgrade. The updated 4.4.y git tree can be found at: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-4.4.y and can be browsed at the normal kernel.org git web browser: http://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary thanks, greg k-h Makefile|2 - arch/arm64/kernel/fpsimd.c |2 + arch/arm64/mm/fault.c |5 ++- arch/x86/include/asm/io.h |4 +- drivers/gpu/drm/i915/intel_uncore.c |3 + drivers/i2c/busses/i2c-jz4780.c |4 -- drivers/net/wireless/p54/fwio.c |2 - drivers/scsi/isci/remote_node_context.c |3 + drivers/scsi/lpfc/lpfc_els.c|5 ++- drivers/scsi/sg.c | 49 ++-- fs/btrfs/volumes.c |2 - include/linux/lightnvm.h|1 kernel/gcov/base.c |6 +++ kernel/gcov/gcc_4_7.c |4 +- sound/pci/au88x0/au88x0_core.c | 14 +++-- 15 files changed, 63 insertions(+), 43 deletions(-) Arnd Bergmann (2): scsi: isci: avoid array subscript warning x86/io: Add "memory" clobber to insb/insw/insl/outsb/outsw/outsl Colin Ian King (1): btrfs: remove duplicate const specifier Dave Martin (1): arm64: fpsimd: Prevent registers leaking across exec Florian Meier (1): gcov: add support for gcc version >= 6 Greg Kroah-Hartman (2): drm/i915: fix compiler warning in drivers/gpu/drm/i915/intel_uncore.c Linux 4.4.86 Hannes Reinecke (2): scsi: sg: protect accesses to 'reserved' page array scsi: sg: reset 'res_in_use' after unlinking reserved array James Smart (1): lpfc: Fix Device discovery failures during switch reboot test. Javier González (1): lightnvm: initialize ppa_addr in dev_to_generic_addr() Jiri Slaby (1): p54: memset(0) whole array Mark Rutland (1): arm64: mm: abort uaccess retries upon fatal signal Martin Liska (1): gcov: support GCC 7.1 Takashi Iwai (1): ALSA: au88x0: Fix zero clear of stream->resources Wolfram Sang (1): i2c: jz4780: drop superfluous init signature.asc Description: PGP signature