This is the start of the stable review cycle for the 6.5.11 release.
There are 88 patches in this series, all will be posted as a response
to this one. If anyone has any issues with these being applied, please
let me know.
Responses should be made by Wed, 08 Nov 2023 13:02:46 +0000.
Anything received after that time might be too late.
The whole patch series can be found in one patch at:
https://www.kernel.org/pub/linux/kernel/v6.x/stable-review/patch-6.5.11-rc1…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-6.5.y
and the diffstat can be found below.
thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:
Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Linux 6.5.11-rc1
Mark Hasemeyer <markhas(a)chromium.org>
ASoC: SOF: sof-pci-dev: Fix community key quirk detection
Mark Hasemeyer <markhas(a)chromium.org>
ALSA: hda: intel-dsp-config: Fix JSL Chromebook quirk detection
Tony Lindgren <tony(a)atomide.com>
serial: core: Fix runtime PM handling for pending tx
Siddharth Vadapalli <s-vadapalli(a)ti.com>
misc: pci_endpoint_test: Add deviceID for J721S2 PCIe EP device support
Francesco Dolcini <francesco.dolcini(a)toradex.com>
dt-bindings: serial: rs485: Add rs485-rts-active-high
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Add Brainboxes Oxford Semiconductor-based quirks
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Add support for Intashield IX cards
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Add support for additional Brainboxes PX cards
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Fix up PX-803/PX-857
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Fix port count of PX-257
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Add support for Intashield IS-100
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Add support for Brainboxes UP cards
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Add support for additional Brainboxes UC cards
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Remove UC-257 and UC-431
Daniel Starke <daniel.starke(a)siemens.com>
tty: n_gsm: fix race condition in status line change on dead connections
Janne Grunau <j(a)jannau.net>
Bluetooth: hci_bcm4377: Mark bcm4378/bcm4387 as BROKEN_LE_CODED
Andrey Konovalov <andreyknvl(a)gmail.com>
usb: raw-gadget: properly handle interrupted requests
Jimmy Hu <hhhuuu(a)google.com>
usb: typec: tcpm: Fix NULL pointer dereference in tcpm_pd_svdm()
Badhri Jagan Sridharan <badhri(a)google.com>
usb: typec: tcpm: Add additional checks for contaminant
LihaSika <lihasika(a)gmail.com>
usb: storage: set 1.50 as the lower bcdDevice for older "Super Top" compatibility
Vicki Pfau <vi(a)endrift.com>
PCI: Prevent xHCI driver from claiming AMD VanGogh USB3 DRD device
Max McCarthy <mmccarthy(a)mcintoshlabs.com>
ALSA: usb-audio: add quirk flag to enable native DSD for McIntosh devices
Liam R. Howlett <Liam.Howlett(a)oracle.com>
mmap: fix error paths with dup_anon_vma()
Liam R. Howlett <Liam.Howlett(a)oracle.com>
mmap: fix vma_iterator in error path of vma_merge()
Ian Rogers <irogers(a)google.com>
perf evlist: Avoid frequency mode for the dummy event
Kai-Heng Feng <kai.heng.feng(a)canonical.com>
power: supply: core: Use blocking_notifier_call_chain to avoid RCU complaint
Benno Lossin <benno.lossin(a)proton.me>
rust: types: make `Opaque` be `!Unpin`
Alice Ryhl <aliceryhl(a)google.com>
rust: make `UnsafeCell` the outer type in `Opaque`
Nicholas Kazlauskas <nicholas.kazlauskas(a)amd.com>
drm/amd/display: Don't use fsleep for PSR exit waits
Al Viro <viro(a)zeniv.linux.org.uk>
ceph_wait_on_conflict_unlink(): grab reference before dropping ->d_lock
Al Viro <viro(a)zeniv.linux.org.uk>
io_uring: kiocb_done() should *not* trust ->ki_pos if ->{read,write}_iter() failed
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/mm: Fix boot crash with FLATMEM
Douglas Anderson <dianders(a)chromium.org>
r8152: Check for unplug in r8153b_ups_en() / r8153c_ups_en()
Douglas Anderson <dianders(a)chromium.org>
r8152: Check for unplug in rtl_phy_patch_request()
Su Hui <suhui(a)nfschina.com>
net: chelsio: cxgb4: add an error code check in t4_load_phy_fw
Jisheng Zhang <jszhang(a)kernel.org>
riscv: dts: thead: set dma-noncoherent to soc bus
Felix Kuehling <Felix.Kuehling(a)amd.com>
drm/amdgpu: Reserve fences for VM update
Liming Sun <limings(a)nvidia.com>
platform/mellanox: mlxbf-tmfifo: Fix a warning message
Phil Sutter <phil(a)nwl.cc>
netfilter: nf_tables: audit log object reset once per table
Icenowy Zheng <uwu(a)icenowy.me>
LoongArch: Disable WUC for pgprot_writecombine() like ioremap_wc()
Huacai Chen <chenhuacai(a)kernel.org>
LoongArch: Replace kmap_atomic() with kmap_local_page() in copy_user_highpage()
Huacai Chen <chenhuacai(a)kernel.org>
LoongArch: Export symbol invalid_pud_table for modules building
Tiezhu Yang <yangtiezhu(a)loongson.cn>
LoongArch: Use SYM_CODE_* to annotate exception handlers
Luben Tuikov <luben.tuikov(a)amd.com>
gpu/drm: Eliminate DRM_SCHED_PRIORITY_UNSET
Luben Tuikov <luben.tuikov(a)amd.com>
drm/amdgpu: Unset context priority is now invalid
David Rau <David.Rau.opensource(a)dm.renesas.com>
ASoC: da7219: Correct the process of setting up Gnd switch in AAD
Tomas Henzl <thenzl(a)redhat.com>
scsi: mpt3sas: Fix in error path
Jorge Maidana <jorgem.linux(a)gmail.com>
fbdev: uvesafb: Call cn_del_callback() at the end of uvesafb_exit()
Dan Carpenter <dan.carpenter(a)linaro.org>
fbdev: omapfb: fix some error codes
Karolina Stolarek <karolina.stolarek(a)intel.com>
drm/ttm: Reorder sys manager cleanup step
Vasily Gorbik <gor(a)linux.ibm.com>
s390/kasan: handle DCSS mapping in memory holes
Roy Chateau <roy.chateau(a)mep-info.com>
ASoC: codecs: tas2780: Fix log of failed reset via I2C.
Shuming Fan <shumingf(a)realtek.com>
ASoC: rt5650: fix the wrong result of key button
Kuan-Wei Chiu <visitorckw(a)gmail.com>
efi: fix memory leak in krealloc failure handling
Nikolay Borisov <nik.borisov(a)suse.com>
x86/efistub: Don't try to print after ExitBootService()
Vlad Buslov <vladbu(a)nvidia.com>
net/mlx5: Bridge, fix peer entry ageing in LAG mode
Florian Westphal <fw(a)strlen.de>
netfilter: nfnetlink_log: silence bogus compiler warning
Krzysztof Kozlowski <krzysztof.kozlowski(a)linaro.org>
ASoC: soc-dapm: Add helper for comparing widget name
William A. Kennington III <william(a)wkennington.com>
spi: npcm-fiu: Fix UMA reads when dummy.nbytes == 0
Su Hui <suhui(a)nfschina.com>
fs/ntfs3: Avoid possible memory leak
Gabriel Marcano <gabemarcano(a)yahoo.com>
fs/ntfs3: Fix directory element type detection
Konstantin Komarov <almaz.alexandrovich(a)paragon-software.com>
fs/ntfs3: Fix NULL pointer dereference on error in attr_allocate_frame()
Konstantin Komarov <almaz.alexandrovich(a)paragon-software.com>
fs/ntfs3: Fix possible NULL-ptr-deref in ni_readpage_cmpr()
Konstantin Komarov <almaz.alexandrovich(a)paragon-software.com>
fs/ntfs3: Do not allow to change label if volume is read-only
Konstantin Komarov <almaz.alexandrovich(a)paragon-software.com>
fs/ntfs3: Add more info into /proc/fs/ntfs3/<dev>/volinfo
Konstantin Komarov <almaz.alexandrovich(a)paragon-software.com>
fs/ntfs3: Fix alternative boot searching
Konstantin Komarov <almaz.alexandrovich(a)paragon-software.com>
fs/ntfs3: Add more attributes checks in mi_enum_attr()
Konstantin Komarov <almaz.alexandrovich(a)paragon-software.com>
fs/ntfs3: Use kvmalloc instead of kmalloc(... __GFP_NOWARN)
Konstantin Komarov <almaz.alexandrovich(a)paragon-software.com>
fs/ntfs3: Write immediately updated ntfs state
Konstantin Komarov <almaz.alexandrovich(a)paragon-software.com>
fs/ntfs3: Add ckeck in ni_update_parent()
Arnd Bergmann <arnd(a)arndb.de>
fbdev: atyfb: only use ioremap_uc() on i386 and ia64
Dmitry Torokhov <dmitry.torokhov(a)gmail.com>
Input: synaptics-rmi4 - handle reset delay when using SMBus trsnsport
Ondrej Jirman <megi(a)xff.cz>
media: i2c: ov8858: Don't set fwnode in the driver
Christophe Leroy <christophe.leroy(a)csgroup.eu>
powerpc/85xx: Fix math emulation exception
Ondrej Zary <linux(a)zary.sk>
ata: pata_parport: fit3: implement IDE command set registers
Ondrej Zary <linux(a)zary.sk>
ata: pata_parport: add custom version of wait_after_reset
Zhang Shurong <zhang_shurong(a)foxmail.com>
dmaengine: ste_dma40: Fix PM disable depth imbalance in d40_probe
Ben Wolsieffer <ben.wolsieffer(a)hefring.com>
irqchip/stm32-exti: add missing DT IRQ flag translation
Anup Patel <apatel(a)ventanamicro.com>
irqchip/riscv-intc: Mark all INTC nodes as initialized
Haibo Chen <haibo.chen(a)nxp.com>
can: flexcan: remove the auto stop mode for IMX93
Haibo Chen <haibo.chen(a)nxp.com>
arm64: dts: imx93: add the Flex-CAN stop mode by GPR
Gustavo A. R. Silva <gustavoars(a)kernel.org>
net: sched: cls_u32: Fix allocation size in u32_init()
Antoine Gennart <gennartan(a)disroot.org>
ASoC: tlv320adc3xxx: BUG: Correct micbias setting
Amadeusz Sławiński <amadeuszx.slawinski(a)linux.intel.com>
ASoC: core: Do not call link_exit() on uninitialized rtd objects
Shengjiu Wang <shengjiu.wang(a)nxp.com>
ASoC: fsl-asoc-card: use integer type for fll_id and pll_id
Suzuki K Poulose <suzuki.poulose(a)arm.com>
coresight: tmc-etr: Disable warnings for allocation failures
Kuninori Morimoto <kuninori.morimoto.gx(a)renesas.com>
ASoC: simple-card: fixup asoc_simple_probe() error handling
Pierre-Louis Bossart <pierre-louis.bossart(a)linux.intel.com>
ASoC: Intel: sof_sdw: add support for SKU 0B14
-------------
Diffstat:
.../devicetree/bindings/serial/rs485.yaml | 4 +
Makefile | 4 +-
arch/arm64/boot/dts/freescale/imx93.dtsi | 4 +-
arch/loongarch/include/asm/io.h | 5 +-
arch/loongarch/include/asm/linkage.h | 8 +
arch/loongarch/include/asm/pgtable-bits.h | 4 +-
arch/loongarch/kernel/entry.S | 4 +-
arch/loongarch/kernel/genex.S | 16 +-
arch/loongarch/kernel/setup.c | 10 +-
arch/loongarch/mm/init.c | 9 +-
arch/loongarch/mm/tlbex.S | 36 +--
arch/powerpc/kernel/head_85xx.S | 2 +-
arch/powerpc/kernel/setup-common.c | 2 +
arch/powerpc/mm/mem.c | 1 -
arch/riscv/boot/dts/thead/th1520.dtsi | 1 +
arch/s390/boot/vmem.c | 7 +-
drivers/ata/pata_parport/fit3.c | 14 +-
drivers/ata/pata_parport/pata_parport.c | 68 ++++-
drivers/bluetooth/hci_bcm4377.c | 5 +
drivers/dma/ste_dma40.c | 1 +
drivers/firmware/efi/efi.c | 8 +-
drivers/firmware/efi/libstub/x86-stub.c | 5 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c | 5 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c | 5 +-
drivers/gpu/drm/amd/display/dc/dce/dce_dmcu.c | 3 +-
drivers/gpu/drm/amd/display/dc/dce/dmub_psr.c | 3 +-
drivers/gpu/drm/ttm/ttm_device.c | 8 +-
drivers/hwtracing/coresight/coresight-tmc-etr.c | 3 +-
drivers/input/mouse/synaptics.c | 1 +
drivers/input/rmi4/rmi_smbus.c | 50 ++--
drivers/irqchip/irq-riscv-intc.c | 10 +-
drivers/irqchip/irq-stm32-exti.c | 1 +
drivers/media/i2c/ov8858.c | 10 +-
drivers/misc/pci_endpoint_test.c | 4 +
drivers/net/can/flexcan/flexcan-core.c | 46 +--
drivers/net/can/flexcan/flexcan.h | 2 -
drivers/net/ethernet/chelsio/cxgb4/t4_hw.c | 2 +
.../ethernet/mellanox/mlx5/core/en/rep/bridge.c | 11 +
.../net/ethernet/mellanox/mlx5/core/esw/bridge.c | 25 +-
.../net/ethernet/mellanox/mlx5/core/esw/bridge.h | 3 +
.../ethernet/mellanox/mlx5/core/esw/bridge_priv.h | 1 +
drivers/net/usb/r8152.c | 7 +
drivers/pci/quirks.c | 8 +-
drivers/platform/mellanox/mlxbf-tmfifo.c | 21 +-
drivers/power/supply/power_supply_core.c | 8 +-
drivers/scsi/mpt3sas/mpt3sas_scsih.c | 4 +-
drivers/spi/spi-npcm-fiu.c | 5 +-
drivers/tty/n_gsm.c | 2 +
drivers/tty/serial/8250/8250_pci.c | 327 ++++++++++++++++++++-
drivers/tty/serial/serial_core.c | 2 +-
drivers/usb/gadget/legacy/raw_gadget.c | 26 +-
drivers/usb/storage/unusual_cypress.h | 2 +-
drivers/usb/typec/tcpm/tcpm.c | 5 +
drivers/video/fbdev/aty/atyfb_base.c | 4 +
drivers/video/fbdev/omap/omapfb_main.c | 4 +-
drivers/video/fbdev/uvesafb.c | 2 +-
fs/ceph/mds_client.c | 2 +-
fs/ntfs3/attrib.c | 6 +-
fs/ntfs3/attrlist.c | 15 +-
fs/ntfs3/bitmap.c | 3 +-
fs/ntfs3/dir.c | 6 +-
fs/ntfs3/frecord.c | 8 +-
fs/ntfs3/fslog.c | 6 +-
fs/ntfs3/fsntfs.c | 13 +-
fs/ntfs3/record.c | 68 ++++-
fs/ntfs3/super.c | 33 ++-
include/drm/gpu_scheduler.h | 3 +-
include/linux/pci_ids.h | 1 +
include/linux/power_supply.h | 2 +-
include/sound/soc-dapm.h | 1 +
include/sound/soc.h | 2 +
io_uring/rw.c | 2 +-
mm/mmap.c | 40 ++-
net/netfilter/nf_tables_api.c | 50 ++--
net/netfilter/nfnetlink_log.c | 2 +-
net/sched/cls_u32.c | 2 +-
rust/kernel/types.rs | 21 +-
sound/hda/intel-dsp-config.c | 6 +
sound/soc/codecs/da7219-aad.c | 11 +-
sound/soc/codecs/rt5645.c | 2 +
sound/soc/codecs/tas2780.c | 2 +-
sound/soc/codecs/tlv320adc3xxx.c | 4 +-
sound/soc/fsl/fsl-asoc-card.c | 12 +-
sound/soc/generic/simple-card.c | 6 +-
sound/soc/intel/boards/sof_sdw.c | 10 +
sound/soc/soc-component.c | 1 +
sound/soc/soc-core.c | 20 +-
sound/soc/soc-dapm.c | 12 +
sound/soc/sof/sof-pci-dev.c | 7 +
sound/usb/quirks.c | 2 +
tools/perf/util/evlist.c | 5 +-
tools/testing/selftests/netfilter/nft_audit.sh | 46 +++
92 files changed, 973 insertions(+), 297 deletions(-)
This is the start of the stable review cycle for the 6.1.62 release.
There are 62 patches in this series, all will be posted as a response
to this one. If anyone has any issues with these being applied, please
let me know.
Responses should be made by Wed, 08 Nov 2023 13:02:46 +0000.
Anything received after that time might be too late.
The whole patch series can be found in one patch at:
https://www.kernel.org/pub/linux/kernel/v6.x/stable-review/patch-6.1.62-rc1…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-6.1.y
and the diffstat can be found below.
thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:
Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Linux 6.1.62-rc1
Mark Hasemeyer <markhas(a)chromium.org>
ASoC: SOF: sof-pci-dev: Fix community key quirk detection
Mark Hasemeyer <markhas(a)chromium.org>
ALSA: hda: intel-dsp-config: Fix JSL Chromebook quirk detection
Siddharth Vadapalli <s-vadapalli(a)ti.com>
misc: pci_endpoint_test: Add deviceID for J721S2 PCIe EP device support
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Add Brainboxes Oxford Semiconductor-based quirks
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Add support for Intashield IX cards
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Add support for additional Brainboxes PX cards
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Fix up PX-803/PX-857
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Fix port count of PX-257
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Add support for Intashield IS-100
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Add support for Brainboxes UP cards
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Add support for additional Brainboxes UC cards
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Remove UC-257 and UC-431
Daniel Starke <daniel.starke(a)siemens.com>
tty: n_gsm: fix race condition in status line change on dead connections
Andrey Konovalov <andreyknvl(a)gmail.com>
usb: raw-gadget: properly handle interrupted requests
Jimmy Hu <hhhuuu(a)google.com>
usb: typec: tcpm: Fix NULL pointer dereference in tcpm_pd_svdm()
LihaSika <lihasika(a)gmail.com>
usb: storage: set 1.50 as the lower bcdDevice for older "Super Top" compatibility
Vicki Pfau <vi(a)endrift.com>
PCI: Prevent xHCI driver from claiming AMD VanGogh USB3 DRD device
Max McCarthy <mmccarthy(a)mcintoshlabs.com>
ALSA: usb-audio: add quirk flag to enable native DSD for McIntosh devices
Liam R. Howlett <Liam.Howlett(a)oracle.com>
mmap: fix error paths with dup_anon_vma()
Liam R. Howlett <Liam.Howlett(a)oracle.com>
mm/mempolicy: fix set_mempolicy_home_node() previous VMA pointer
Maxim Levitsky <mlevitsk(a)redhat.com>
x86: KVM: SVM: always update the x2avic msr interception
Ian Rogers <irogers(a)google.com>
perf evlist: Avoid frequency mode for the dummy event
Kai-Heng Feng <kai.heng.feng(a)canonical.com>
power: supply: core: Use blocking_notifier_call_chain to avoid RCU complaint
Al Viro <viro(a)zeniv.linux.org.uk>
ceph_wait_on_conflict_unlink(): grab reference before dropping ->d_lock
Al Viro <viro(a)zeniv.linux.org.uk>
io_uring: kiocb_done() should *not* trust ->ki_pos if ->{read,write}_iter() failed
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/mm: Fix boot crash with FLATMEM
Douglas Anderson <dianders(a)chromium.org>
r8152: Check for unplug in r8153b_ups_en() / r8153c_ups_en()
Douglas Anderson <dianders(a)chromium.org>
r8152: Check for unplug in rtl_phy_patch_request()
Su Hui <suhui(a)nfschina.com>
net: chelsio: cxgb4: add an error code check in t4_load_phy_fw
Felix Kuehling <Felix.Kuehling(a)amd.com>
drm/amdgpu: Reserve fences for VM update
Liming Sun <limings(a)nvidia.com>
platform/mellanox: mlxbf-tmfifo: Fix a warning message
Phil Sutter <phil(a)nwl.cc>
netfilter: nf_tables: audit log object reset once per table
Huacai Chen <chenhuacai(a)kernel.org>
LoongArch: Replace kmap_atomic() with kmap_local_page() in copy_user_highpage()
Huacai Chen <chenhuacai(a)kernel.org>
LoongArch: Export symbol invalid_pud_table for modules building
Luben Tuikov <luben.tuikov(a)amd.com>
gpu/drm: Eliminate DRM_SCHED_PRIORITY_UNSET
Luben Tuikov <luben.tuikov(a)amd.com>
drm/amdgpu: Unset context priority is now invalid
Tomas Henzl <thenzl(a)redhat.com>
scsi: mpt3sas: Fix in error path
Jorge Maidana <jorgem.linux(a)gmail.com>
fbdev: uvesafb: Call cn_del_callback() at the end of uvesafb_exit()
Dan Carpenter <dan.carpenter(a)linaro.org>
fbdev: omapfb: fix some error codes
Karolina Stolarek <karolina.stolarek(a)intel.com>
drm/ttm: Reorder sys manager cleanup step
Roy Chateau <roy.chateau(a)mep-info.com>
ASoC: codecs: tas2780: Fix log of failed reset via I2C.
Shuming Fan <shumingf(a)realtek.com>
ASoC: rt5650: fix the wrong result of key button
Kuan-Wei Chiu <visitorckw(a)gmail.com>
efi: fix memory leak in krealloc failure handling
Florian Westphal <fw(a)strlen.de>
netfilter: nfnetlink_log: silence bogus compiler warning
William A. Kennington III <william(a)wkennington.com>
spi: npcm-fiu: Fix UMA reads when dummy.nbytes == 0
Su Hui <suhui(a)nfschina.com>
fs/ntfs3: Avoid possible memory leak
Gabriel Marcano <gabemarcano(a)yahoo.com>
fs/ntfs3: Fix directory element type detection
Konstantin Komarov <almaz.alexandrovich(a)paragon-software.com>
fs/ntfs3: Fix NULL pointer dereference on error in attr_allocate_frame()
Konstantin Komarov <almaz.alexandrovich(a)paragon-software.com>
fs/ntfs3: Fix possible NULL-ptr-deref in ni_readpage_cmpr()
Konstantin Komarov <almaz.alexandrovich(a)paragon-software.com>
fs/ntfs3: Use kvmalloc instead of kmalloc(... __GFP_NOWARN)
Konstantin Komarov <almaz.alexandrovich(a)paragon-software.com>
fs/ntfs3: Write immediately updated ntfs state
Konstantin Komarov <almaz.alexandrovich(a)paragon-software.com>
fs/ntfs3: Add ckeck in ni_update_parent()
Arnd Bergmann <arnd(a)arndb.de>
fbdev: atyfb: only use ioremap_uc() on i386 and ia64
Dmitry Torokhov <dmitry.torokhov(a)gmail.com>
Input: synaptics-rmi4 - handle reset delay when using SMBus trsnsport
Christophe Leroy <christophe.leroy(a)csgroup.eu>
powerpc/85xx: Fix math emulation exception
Zhang Shurong <zhang_shurong(a)foxmail.com>
dmaengine: ste_dma40: Fix PM disable depth imbalance in d40_probe
Ben Wolsieffer <ben.wolsieffer(a)hefring.com>
irqchip/stm32-exti: add missing DT IRQ flag translation
Anup Patel <apatel(a)ventanamicro.com>
irqchip/riscv-intc: Mark all INTC nodes as initialized
Gustavo A. R. Silva <gustavoars(a)kernel.org>
net: sched: cls_u32: Fix allocation size in u32_init()
Antoine Gennart <gennartan(a)disroot.org>
ASoC: tlv320adc3xxx: BUG: Correct micbias setting
Suzuki K Poulose <suzuki.poulose(a)arm.com>
coresight: tmc-etr: Disable warnings for allocation failures
Kuninori Morimoto <kuninori.morimoto.gx(a)renesas.com>
ASoC: simple-card: fixup asoc_simple_probe() error handling
-------------
Diffstat:
Makefile | 4 +-
arch/loongarch/mm/init.c | 9 +-
arch/powerpc/kernel/head_85xx.S | 2 +-
arch/powerpc/kernel/setup-common.c | 2 +
arch/powerpc/mm/mem.c | 1 -
arch/x86/kvm/svm/svm.c | 3 +-
drivers/dma/ste_dma40.c | 1 +
drivers/firmware/efi/efi.c | 8 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c | 5 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c | 5 +-
drivers/gpu/drm/ttm/ttm_device.c | 8 +-
drivers/hwtracing/coresight/coresight-tmc-etr.c | 3 +-
drivers/input/mouse/synaptics.c | 1 +
drivers/input/rmi4/rmi_smbus.c | 50 ++--
drivers/irqchip/irq-riscv-intc.c | 10 +-
drivers/irqchip/irq-stm32-exti.c | 1 +
drivers/misc/pci_endpoint_test.c | 4 +
drivers/net/ethernet/chelsio/cxgb4/t4_hw.c | 2 +
drivers/net/usb/r8152.c | 7 +
drivers/pci/quirks.c | 8 +-
drivers/platform/mellanox/mlxbf-tmfifo.c | 21 +-
drivers/power/supply/power_supply_core.c | 8 +-
drivers/scsi/mpt3sas/mpt3sas_scsih.c | 4 +-
drivers/spi/spi-npcm-fiu.c | 5 +-
drivers/tty/n_gsm.c | 2 +
drivers/tty/serial/8250/8250_pci.c | 327 +++++++++++++++++++++++-
drivers/usb/gadget/legacy/raw_gadget.c | 26 +-
drivers/usb/storage/unusual_cypress.h | 2 +-
drivers/usb/typec/tcpm/tcpm.c | 3 +
drivers/video/fbdev/aty/atyfb_base.c | 4 +
drivers/video/fbdev/omap/omapfb_main.c | 4 +-
drivers/video/fbdev/uvesafb.c | 2 +-
fs/ceph/mds_client.c | 2 +-
fs/ntfs3/attrib.c | 6 +-
fs/ntfs3/attrlist.c | 15 +-
fs/ntfs3/bitmap.c | 3 +-
fs/ntfs3/dir.c | 6 +-
fs/ntfs3/frecord.c | 8 +-
fs/ntfs3/fslog.c | 6 +-
fs/ntfs3/fsntfs.c | 13 +-
fs/ntfs3/super.c | 2 +-
include/drm/gpu_scheduler.h | 3 +-
include/linux/pci_ids.h | 1 +
include/linux/power_supply.h | 2 +-
io_uring/rw.c | 2 +-
mm/mempolicy.c | 4 +-
mm/mmap.c | 15 +-
net/netfilter/nf_tables_api.c | 50 ++--
net/netfilter/nfnetlink_log.c | 2 +-
net/sched/cls_u32.c | 2 +-
sound/hda/intel-dsp-config.c | 6 +
sound/soc/codecs/rt5645.c | 2 +
sound/soc/codecs/tas2780.c | 2 +-
sound/soc/codecs/tlv320adc3xxx.c | 4 +-
sound/soc/generic/simple-card.c | 6 +-
sound/soc/sof/sof-pci-dev.c | 7 +
sound/usb/quirks.c | 2 +
tools/perf/util/evlist.c | 5 +-
tools/testing/selftests/netfilter/nft_audit.sh | 46 ++++
59 files changed, 620 insertions(+), 144 deletions(-)
This is the start of the stable review cycle for the 5.4.260 release.
There are 74 patches in this series, all will be posted as a response
to this one. If anyone has any issues with these being applied, please
let me know.
Responses should be made by Wed, 08 Nov 2023 13:02:46 +0000.
Anything received after that time might be too late.
The whole patch series can be found in one patch at:
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.4.260-rc…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.4.y
and the diffstat can be found below.
thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:
Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Linux 5.4.260-rc1
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Add support for Intashield IS-100
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Add support for Brainboxes UP cards
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Add support for additional Brainboxes UC cards
Cameron Williams <cang1(a)live.co.uk>
tty: 8250: Remove UC-257 and UC-431
LihaSika <lihasika(a)gmail.com>
usb: storage: set 1.50 as the lower bcdDevice for older "Super Top" compatibility
Vicki Pfau <vi(a)endrift.com>
PCI: Prevent xHCI driver from claiming AMD VanGogh USB3 DRD device
Matthias Schiffer <matthias.schiffer(a)ew.tq-group.com>
Revert "ARM: dts: Move am33xx and am43xx mmc nodes to sdhci-omap driver"
Sagi Grimberg <sagi(a)grimberg.me>
nvmet-tcp: Fix a possible UAF in queue intialization setup
Sagi Grimberg <sagi(a)grimberg.me>
nvmet-tcp: move send/recv error handling in the send/recv methods instead of call-sites
Christoph Hellwig <hch(a)lst.de>
remove the sx8 block driver
Arnd Bergmann <arnd(a)arndb.de>
ata: ahci: fix enum constants for gcc-13
Su Hui <suhui(a)nfschina.com>
net: chelsio: cxgb4: add an error code check in t4_load_phy_fw
Liming Sun <limings(a)nvidia.com>
platform/mellanox: mlxbf-tmfifo: Fix a warning message
Hans de Goede <hdegoede(a)redhat.com>
platform/x86: asus-wmi: Change ASUS_WMI_BRN_DOWN code from 0x20 to 0x2e
Tomas Henzl <thenzl(a)redhat.com>
scsi: mpt3sas: Fix in error path
Jorge Maidana <jorgem.linux(a)gmail.com>
fbdev: uvesafb: Call cn_del_callback() at the end of uvesafb_exit()
Shuming Fan <shumingf(a)realtek.com>
ASoC: rt5650: fix the wrong result of key button
Florian Westphal <fw(a)strlen.de>
netfilter: nfnetlink_log: silence bogus compiler warning
William A. Kennington III <william(a)wkennington.com>
spi: npcm-fiu: Fix UMA reads when dummy.nbytes == 0
Arnd Bergmann <arnd(a)arndb.de>
fbdev: atyfb: only use ioremap_uc() on i386 and ia64
Dmitry Torokhov <dmitry.torokhov(a)gmail.com>
Input: synaptics-rmi4 - handle reset delay when using SMBus trsnsport
Zhang Shurong <zhang_shurong(a)foxmail.com>
dmaengine: ste_dma40: Fix PM disable depth imbalance in d40_probe
Ben Wolsieffer <ben.wolsieffer(a)hefring.com>
irqchip/stm32-exti: add missing DT IRQ flag translation
Szilard Fabian <szfabian(a)bluemarch.art>
Input: i8042 - add Fujitsu Lifebook E5411 to i8042 quirk table
Juergen Gross <jgross(a)suse.com>
x86: Fix .brk attribute in linker script
Hangyu Hua <hbh25y(a)gmail.com>
rpmsg: Fix possible refcount leak in rpmsg_register_device_override()
Bjorn Andersson <quic_bjorande(a)quicinc.com>
rpmsg: glink: Release driver_override
Krzysztof Kozlowski <krzysztof.kozlowski(a)linaro.org>
rpmsg: Fix calling device_lock() on non-initialized device
Krzysztof Kozlowski <krzysztof.kozlowski(a)linaro.org>
rpmsg: Fix kfree() of static memory on setting driver_override
Krzysztof Kozlowski <krzysztof.kozlowski(a)linaro.org>
rpmsg: Constify local variable in field store macro
Krzysztof Kozlowski <krzysztof.kozlowski(a)linaro.org>
driver: platform: Add helper for safer setting of driver_override
Baokun Li <libaokun1(a)huawei.com>
ext4: fix BUG in ext4_mb_new_inode_pa() due to overflow
Baokun Li <libaokun1(a)huawei.com>
ext4: avoid overlapping preallocations due to overflow
Baokun Li <libaokun1(a)huawei.com>
ext4: add two helper functions extent_logical_end() and pa_logical_end()
Josh Poimboeuf <jpoimboe(a)kernel.org>
x86/mm: Fix RESERVE_BRK() for older binutils
Josh Poimboeuf <jpoimboe(a)redhat.com>
x86/mm: Simplify RESERVE_BRK()
Al Viro <viro(a)zeniv.linux.org.uk>
nfsd: lock_rename() needs both directories to live on the same fs
Chao Yu <chao(a)kernel.org>
f2fs: fix to do sanity check on inode type during garbage collection
Steve French <stfrench(a)microsoft.com>
smbdirect: missing rc checks while waiting for rdma events
Wang Hai <wanghai38(a)huawei.com>
kobject: Fix slab-out-of-bounds in fill_kobj_path()
Jinjie Ruan <ruanjinjie(a)huawei.com>
arm64: fix a concurrency issue in emulation_proc_handler()
Lukasz Majczak <lma(a)semihalf.com>
drm/dp_mst: Fix NULL deref in get_mst_branch_device_by_guid_helper()
Thomas Gleixner <tglx(a)linutronix.de>
x86/i8259: Skip probing when ACPI/MADT advertises PCAT compatibility
Ivan Vecera <ivecera(a)redhat.com>
i40e: Fix wrong check for I40E_TXR_FLAGS_WB_ON_ITR
Alessandro Carminati <alessandro.carminati(a)gmail.com>
clk: Sanitize possible_parent_show to Handle Return Value of of_clk_get_parent_name
Peter Zijlstra <peterz(a)infradead.org>
perf/core: Fix potential NULL deref
Peng Fan <peng.fan(a)nxp.com>
nvmem: imx: correct nregs for i.MX6UL
Peng Fan <peng.fan(a)nxp.com>
nvmem: imx: correct nregs for i.MX6SLL
Peng Fan <peng.fan(a)nxp.com>
nvmem: imx: correct nregs for i.MX6ULL
Jian Zhang <zhangjian.3032(a)bytedance.com>
i2c: aspeed: Fix i2c bus hang in slave read
Alain Volmat <alain.volmat(a)foss.st.com>
i2c: stm32f7: Fix PEC handling in case of SMBUS transfers
Herve Codina <herve.codina(a)bootlin.com>
i2c: muxes: i2c-demux-pinctrl: Use of_get_i2c_adapter_by_node()
Herve Codina <herve.codina(a)bootlin.com>
i2c: muxes: i2c-mux-gpmux: Use of_get_i2c_adapter_by_node()
Herve Codina <herve.codina(a)bootlin.com>
i2c: muxes: i2c-mux-pinctrl: Use of_get_i2c_adapter_by_node()
Marek Szyprowski <m.szyprowski(a)samsung.com>
iio: exynos-adc: request second interupt only when touchscreen mode is used
Pablo Neira Ayuso <pablo(a)netfilter.org>
gtp: fix fragmentation needed check with gso
Pablo Neira Ayuso <pablo(a)netfilter.org>
gtp: uapi: fix GTPA_MAX
Fred Chen <fred.chenchen03(a)gmail.com>
tcp: fix wrong RTO timeout when received SACK reneging
Douglas Anderson <dianders(a)chromium.org>
r8152: Cancel hw_phy_work if we have an error in probe
Douglas Anderson <dianders(a)chromium.org>
r8152: Run the unload routine if we have errors during probe
Douglas Anderson <dianders(a)chromium.org>
r8152: Increase USB control msg timeout to 5000ms as per spec
Christophe JAILLET <christophe.jaillet(a)wanadoo.fr>
net: ieee802154: adf7242: Fix some potential buffer overflow in adf7242_stats_show()
Sasha Neftin <sasha.neftin(a)intel.com>
igc: Fix ambiguity in the ethtool advertising
Eric Dumazet <edumazet(a)google.com>
neighbour: fix various data-races
Mateusz Palczewski <mateusz.palczewski(a)intel.com>
igb: Fix potential memory leak in igb_add_ethtool_nfc_entry
Kunwu Chan <chentao(a)kylinos.cn>
treewide: Spelling fix in comment
Mirsad Goran Todorovac <mirsad.todorovac(a)alu.unizg.hr>
r8169: fix the KCSAN reported data race in rtl_rx while reading desc->opts1
Mirsad Goran Todorovac <mirsad.todorovac(a)alu.unizg.hr>
r8169: fix the KCSAN reported data-race in rtl_tx while reading TxDescArray[entry].opts1
Maximilian Heyne <mheyne(a)amazon.de>
virtio-mmio: fix memory leak of vm_dev
Gavin Shan <gshan(a)redhat.com>
virtio_balloon: Fix endless deflation and inflation on arm64
Rodríguez Barbarin, José Javier <JoseJavier.Rodriguez(a)duagon.com>
mcb-lpc: Reallocate memory region to avoid memory overlapping
Rodríguez Barbarin, José Javier <JoseJavier.Rodriguez(a)duagon.com>
mcb: Return actual parsed size when reading chameleon table
Francis Laniel <flaniel(a)linux.microsoft.com>
selftests/ftrace: Add new test case which checks non unique symbol
Miquel Raynal <miquel.raynal(a)bootlin.com>
mtd: rawnand: marvell: Ensure program page operations are successful
-------------
Diffstat:
Makefile | 4 +-
arch/arm/boot/dts/am335x-baltos.dtsi | 2 +-
arch/arm/boot/dts/am335x-boneblack-common.dtsi | 1 -
arch/arm/boot/dts/am335x-boneblack-wireless.dts | 1 +
arch/arm/boot/dts/am335x-boneblue.dts | 1 +
arch/arm/boot/dts/am335x-bonegreen-wireless.dts | 1 +
arch/arm/boot/dts/am335x-evm.dts | 3 +-
arch/arm/boot/dts/am335x-evmsk.dts | 2 +-
arch/arm/boot/dts/am335x-lxm.dts | 2 +-
arch/arm/boot/dts/am335x-moxa-uc-2100-common.dtsi | 2 +-
arch/arm/boot/dts/am335x-moxa-uc-8100-me-t.dts | 2 +-
arch/arm/boot/dts/am335x-pepper.dts | 4 +-
arch/arm/boot/dts/am335x-phycore-som.dtsi | 2 +-
arch/arm/boot/dts/am33xx-l4.dtsi | 6 +-
arch/arm/boot/dts/am33xx.dtsi | 3 +-
arch/arm/boot/dts/am4372.dtsi | 3 +-
arch/arm/boot/dts/am437x-cm-t43.dts | 2 +-
arch/arm/boot/dts/am437x-gp-evm.dts | 4 +-
arch/arm/boot/dts/am437x-l4.dtsi | 5 +-
arch/arm/boot/dts/am437x-sk-evm.dts | 2 +-
arch/arm64/kernel/armv8_deprecated.c | 6 +-
arch/x86/include/asm/i8259.h | 2 +
arch/x86/include/asm/setup.h | 46 +-
arch/x86/kernel/acpi/boot.c | 3 +
arch/x86/kernel/i8259.c | 38 +-
arch/x86/kernel/vmlinux.lds.S | 2 +-
drivers/ata/ahci.h | 241 +--
drivers/base/driver.c | 69 +
drivers/base/platform.c | 28 +-
drivers/block/Kconfig | 9 -
drivers/block/Makefile | 2 -
drivers/block/sx8.c | 1586 --------------------
drivers/clk/clk.c | 21 +-
drivers/dma/ste_dma40.c | 1 +
drivers/gpu/drm/drm_dp_mst_topology.c | 6 +-
drivers/i2c/busses/i2c-aspeed.c | 3 +-
drivers/i2c/busses/i2c-stm32f7.c | 9 +-
drivers/i2c/muxes/i2c-demux-pinctrl.c | 2 +-
drivers/i2c/muxes/i2c-mux-gpmux.c | 2 +-
drivers/i2c/muxes/i2c-mux-pinctrl.c | 2 +-
drivers/iio/adc/exynos_adc.c | 24 +-
drivers/input/mouse/synaptics.c | 1 +
drivers/input/rmi4/rmi_smbus.c | 50 +-
drivers/input/serio/i8042-x86ia64io.h | 8 +
drivers/irqchip/irq-stm32-exti.c | 1 +
drivers/mcb/mcb-lpc.c | 35 +-
drivers/mcb/mcb-parse.c | 15 +-
drivers/mtd/nand/raw/marvell_nand.c | 23 +-
drivers/net/ethernet/chelsio/cxgb4/t4_hw.c | 2 +
drivers/net/ethernet/intel/i40e/i40e_txrx.c | 2 +-
drivers/net/ethernet/intel/igb/igb_ethtool.c | 6 +-
drivers/net/ethernet/intel/igc/igc_ethtool.c | 35 +-
drivers/net/ethernet/realtek/r8169_main.c | 4 +-
drivers/net/ethernet/toshiba/ps3_gelic_wireless.c | 2 +-
drivers/net/gtp.c | 5 +-
drivers/net/ieee802154/adf7242.c | 5 +-
drivers/net/usb/r8152.c | 10 +-
drivers/nvme/target/tcp.c | 50 +-
drivers/nvmem/imx-ocotp.c | 6 +-
drivers/pci/quirks.c | 8 +-
drivers/platform/mellanox/mlxbf-tmfifo.c | 21 +-
drivers/platform/x86/asus-wmi.h | 2 +-
drivers/rpmsg/qcom_glink_native.c | 1 +
drivers/rpmsg/rpmsg_core.c | 37 +-
drivers/rpmsg/rpmsg_internal.h | 5 +-
drivers/scsi/mpt3sas/mpt3sas_scsih.c | 4 +-
drivers/spi/spi-npcm-fiu.c | 5 +-
drivers/tty/serial/8250/8250_pci.c | 122 +-
drivers/usb/storage/unusual_cypress.h | 2 +-
drivers/video/fbdev/aty/atyfb_base.c | 4 +
drivers/video/fbdev/uvesafb.c | 2 +-
drivers/virtio/virtio_balloon.c | 6 +-
drivers/virtio/virtio_mmio.c | 19 +-
fs/cifs/smbdirect.c | 14 +-
fs/ext4/mballoc.c | 51 +-
fs/ext4/mballoc.h | 14 +
fs/f2fs/gc.c | 3 +-
fs/nfsd/vfs.c | 12 +-
include/linux/device.h | 2 +
include/linux/pci_ids.h | 1 +
include/linux/platform_device.h | 6 +-
include/linux/rpmsg.h | 14 +-
include/uapi/linux/gtp.h | 2 +-
kernel/events/core.c | 3 +-
lib/kobject.c | 12 +-
net/core/neighbour.c | 67 +-
net/ipv4/tcp_input.c | 9 +-
net/netfilter/nfnetlink_log.c | 2 +-
sound/soc/codecs/rt5645.c | 2 +
.../ftrace/test.d/kprobe/kprobe_non_uniq_symbol.tc | 13 +
90 files changed, 850 insertions(+), 2029 deletions(-)
The patch titled
Subject: mm: kmem: drop __GFP_NOFAIL when allocating objcg vectors
has been added to the -mm mm-hotfixes-unstable branch. Its filename is
cgroups-warning-for-metadata-allocation-with-gfp_nofail-was-re-folio_alloc_buffers-doing-allocations-order-1-with-gfp_nofail.patch
This patch will shortly appear at
https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patche…
This patch will later appear in the mm-hotfixes-unstable branch at
git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next via the mm-everything
branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
and is updated there every 2-3 working days
------------------------------------------------------
From: Roman Gushchin <roman.gushchin(a)linux.dev>
Subject: mm: kmem: drop __GFP_NOFAIL when allocating objcg vectors
Date: Tue, 7 Nov 2023 09:18:02 -0800
Objcg vectors attached to slab pages to store slab object ownership
information are allocated using gfp flags for the original slab
allocation. Depending on slab page order and the size of slab objects,
objcg vector can take several pages.
If the original allocation was done with the __GFP_NOFAIL flag, it
triggered a warning in the page allocation code. Indeed, order > 1 pages
should not been allocated with the __GFP_NOFAIL flag.
Fix this by simply dropping the __GFP_NOFAIL flag when allocating the
objcg vector. It effectively allows to skip the accounting of a single
slab object under a heavy memory pressure.
An alternative would be to implement the mechanism to fallback to order-0
allocations for accounting metadata, which is also not perfect because it
will increase performance penalty and memory footprint of the kernel
memory accounting under memory pressure.
Link: https://lkml.kernel.org/r/ZUp8ZFGxwmCx4ZFr@P9FQF9L96D.corp.robot.car
Signed-off-by: Roman Gushchin <roman.gushchin(a)linux.dev>
Reported-by: Christoph Lameter <cl(a)linux.com>
Closes: https://lkml.kernel.org/r/6b42243e-f197-600a-5d22-56bd728a5ad8@gentwo.org
Acked-by: Shakeel Butt <shakeelb(a)google.com>
Cc: Matthew Wilcox <willy(a)infradead.org>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/memcontrol.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
--- a/mm/memcontrol.c~cgroups-warning-for-metadata-allocation-with-gfp_nofail-was-re-folio_alloc_buffers-doing-allocations-order-1-with-gfp_nofail
+++ a/mm/memcontrol.c
@@ -2936,7 +2936,8 @@ void mem_cgroup_commit_charge(struct fol
* Moreover, it should not come from DMA buffer and is not readily
* reclaimable. So those GFP bits should be masked off.
*/
-#define OBJCGS_CLEAR_MASK (__GFP_DMA | __GFP_RECLAIMABLE | __GFP_ACCOUNT)
+#define OBJCGS_CLEAR_MASK (__GFP_DMA | __GFP_RECLAIMABLE | \
+ __GFP_ACCOUNT | __GFP_NOFAIL)
/*
* mod_objcg_mlstate() may be called with irq enabled, so
_
Patches currently in -mm which might be from roman.gushchin(a)linux.dev are
cgroups-warning-for-metadata-allocation-with-gfp_nofail-was-re-folio_alloc_buffers-doing-allocations-order-1-with-gfp_nofail.patch
From: Lu Jialin <lujialin4(a)huawei.com>
[ Upstream commit 8f4f68e788c3a7a696546291258bfa5fdb215523 ]
We found a hungtask bug in test_aead_vec_cfg as follows:
INFO: task cryptomgr_test:391009 blocked for more than 120 seconds.
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Call trace:
__switch_to+0x98/0xe0
__schedule+0x6c4/0xf40
schedule+0xd8/0x1b4
schedule_timeout+0x474/0x560
wait_for_common+0x368/0x4e0
wait_for_completion+0x20/0x30
wait_for_completion+0x20/0x30
test_aead_vec_cfg+0xab4/0xd50
test_aead+0x144/0x1f0
alg_test_aead+0xd8/0x1e0
alg_test+0x634/0x890
cryptomgr_test+0x40/0x70
kthread+0x1e0/0x220
ret_from_fork+0x10/0x18
Kernel panic - not syncing: hung_task: blocked tasks
For padata_do_parallel, when the return err is 0 or -EBUSY, it will call
wait_for_completion(&wait->completion) in test_aead_vec_cfg. In normal
case, aead_request_complete() will be called in pcrypt_aead_serial and the
return err is 0 for padata_do_parallel. But, when pinst->flags is
PADATA_RESET, the return err is -EBUSY for padata_do_parallel, and it
won't call aead_request_complete(). Therefore, test_aead_vec_cfg will
hung at wait_for_completion(&wait->completion), which will cause
hungtask.
The problem comes as following:
(padata_do_parallel) |
rcu_read_lock_bh(); |
err = -EINVAL; | (padata_replace)
| pinst->flags |= PADATA_RESET;
err = -EBUSY |
if (pinst->flags & PADATA_RESET) |
rcu_read_unlock_bh() |
return err
In order to resolve the problem, we replace the return err -EBUSY with
-EAGAIN, which means parallel_data is changing, and the caller should call
it again.
v3:
remove retry and just change the return err.
v2:
introduce padata_try_do_parallel() in pcrypt_aead_encrypt and
pcrypt_aead_decrypt to solve the hungtask.
Signed-off-by: Lu Jialin <lujialin4(a)huawei.com>
Signed-off-by: Guo Zihua <guozihua(a)huawei.com>
Signed-off-by: Herbert Xu <herbert(a)gondor.apana.org.au>
Signed-off-by: Sasha Levin <sashal(a)kernel.org>
---
crypto/pcrypt.c | 4 ++++
kernel/padata.c | 2 +-
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/crypto/pcrypt.c b/crypto/pcrypt.c
index 62e11835f220e..1e9de81ef84fa 100644
--- a/crypto/pcrypt.c
+++ b/crypto/pcrypt.c
@@ -174,6 +174,8 @@ static int pcrypt_aead_encrypt(struct aead_request *req)
err = pcrypt_do_parallel(padata, &ctx->cb_cpu, &pencrypt);
if (!err)
return -EINPROGRESS;
+ if (err == -EBUSY)
+ return -EAGAIN;
return err;
}
@@ -218,6 +220,8 @@ static int pcrypt_aead_decrypt(struct aead_request *req)
err = pcrypt_do_parallel(padata, &ctx->cb_cpu, &pdecrypt);
if (!err)
return -EINPROGRESS;
+ if (err == -EBUSY)
+ return -EAGAIN;
return err;
}
diff --git a/kernel/padata.c b/kernel/padata.c
index f56ec63f60ba8..82f6d5bf5cb45 100644
--- a/kernel/padata.c
+++ b/kernel/padata.c
@@ -120,7 +120,7 @@ int padata_do_parallel(struct padata_instance *pinst,
if (!cpumask_test_cpu(cb_cpu, pd->cpumask.cbcpu))
goto out;
- err = -EBUSY;
+ err = -EBUSY;
if ((pinst->flags & PADATA_RESET))
goto out;
--
2.42.0
From: Lu Jialin <lujialin4(a)huawei.com>
[ Upstream commit 8f4f68e788c3a7a696546291258bfa5fdb215523 ]
We found a hungtask bug in test_aead_vec_cfg as follows:
INFO: task cryptomgr_test:391009 blocked for more than 120 seconds.
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Call trace:
__switch_to+0x98/0xe0
__schedule+0x6c4/0xf40
schedule+0xd8/0x1b4
schedule_timeout+0x474/0x560
wait_for_common+0x368/0x4e0
wait_for_completion+0x20/0x30
wait_for_completion+0x20/0x30
test_aead_vec_cfg+0xab4/0xd50
test_aead+0x144/0x1f0
alg_test_aead+0xd8/0x1e0
alg_test+0x634/0x890
cryptomgr_test+0x40/0x70
kthread+0x1e0/0x220
ret_from_fork+0x10/0x18
Kernel panic - not syncing: hung_task: blocked tasks
For padata_do_parallel, when the return err is 0 or -EBUSY, it will call
wait_for_completion(&wait->completion) in test_aead_vec_cfg. In normal
case, aead_request_complete() will be called in pcrypt_aead_serial and the
return err is 0 for padata_do_parallel. But, when pinst->flags is
PADATA_RESET, the return err is -EBUSY for padata_do_parallel, and it
won't call aead_request_complete(). Therefore, test_aead_vec_cfg will
hung at wait_for_completion(&wait->completion), which will cause
hungtask.
The problem comes as following:
(padata_do_parallel) |
rcu_read_lock_bh(); |
err = -EINVAL; | (padata_replace)
| pinst->flags |= PADATA_RESET;
err = -EBUSY |
if (pinst->flags & PADATA_RESET) |
rcu_read_unlock_bh() |
return err
In order to resolve the problem, we replace the return err -EBUSY with
-EAGAIN, which means parallel_data is changing, and the caller should call
it again.
v3:
remove retry and just change the return err.
v2:
introduce padata_try_do_parallel() in pcrypt_aead_encrypt and
pcrypt_aead_decrypt to solve the hungtask.
Signed-off-by: Lu Jialin <lujialin4(a)huawei.com>
Signed-off-by: Guo Zihua <guozihua(a)huawei.com>
Signed-off-by: Herbert Xu <herbert(a)gondor.apana.org.au>
Signed-off-by: Sasha Levin <sashal(a)kernel.org>
---
crypto/pcrypt.c | 4 ++++
kernel/padata.c | 2 +-
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/crypto/pcrypt.c b/crypto/pcrypt.c
index 62e11835f220e..1e9de81ef84fa 100644
--- a/crypto/pcrypt.c
+++ b/crypto/pcrypt.c
@@ -174,6 +174,8 @@ static int pcrypt_aead_encrypt(struct aead_request *req)
err = pcrypt_do_parallel(padata, &ctx->cb_cpu, &pencrypt);
if (!err)
return -EINPROGRESS;
+ if (err == -EBUSY)
+ return -EAGAIN;
return err;
}
@@ -218,6 +220,8 @@ static int pcrypt_aead_decrypt(struct aead_request *req)
err = pcrypt_do_parallel(padata, &ctx->cb_cpu, &pdecrypt);
if (!err)
return -EINPROGRESS;
+ if (err == -EBUSY)
+ return -EAGAIN;
return err;
}
diff --git a/kernel/padata.c b/kernel/padata.c
index 7f2b6d369fd47..a9e14183e1884 100644
--- a/kernel/padata.c
+++ b/kernel/padata.c
@@ -121,7 +121,7 @@ int padata_do_parallel(struct padata_instance *pinst,
if (!cpumask_test_cpu(cb_cpu, pd->cpumask.cbcpu))
goto out;
- err = -EBUSY;
+ err = -EBUSY;
if ((pinst->flags & PADATA_RESET))
goto out;
--
2.42.0