2022-09-13 16:31:16

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 000/192] 5.19.9-rc1 review

This is the start of the stable review cycle for the 5.19.9 release.
There are 192 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 Thu, 15 Sep 2022 14:03:27 +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.19.9-rc1.gz
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.19.y
and the diffstat can be found below.

thanks,

greg k-h

-------------
Pseudo-Shortlog of commits:

Greg Kroah-Hartman <[email protected]>
Linux 5.19.9-rc1

Saaem Rizvi <[email protected]>
drm/amd/display: Removing assert statements for Linux

Saaem Rizvi <[email protected]>
drm/amd/display: Add SMU logging code

Jason Gunthorpe <[email protected]>
iommu: Fix false ownership failure on AMD systems with PASID activated

Jean-Philippe Brucker <[email protected]>
iommu/virtio: Fix interaction with VFIO

Lu Baolu <[email protected]>
iommu/vt-d: Correctly calculate sagaw value of IOMMU

Mark Brown <[email protected]>
arm64/bti: Disable in kernel BTI when cross section thunks are broken

Eugene Shalygin <[email protected]>
hwmon: (asus-ec-sensors) autoload module via DMI data

Urs Schroffenegger <[email protected]>
hwmon: (asus-ec-sensors) add definitions for ROG ZENITH II EXTREME

Eugene Shalygin <[email protected]>
hwmon: (asus-ec-sensors) add missing sensors for X570-I GAMING

Michael Carns <[email protected]>
hwmon: (asus-ec-sensors) add support for Maximus XI Hero

Shady Nawara <[email protected]>
hwmon: (asus-ec-sensors) add support for Strix Z690-a D4

Sasha Levin <[email protected]>
Revert "arm64: kasan: Revert "arm64: mte: reset the page tag in page->flags""

Zhengjun Xing <[email protected]>
perf stat: Fix L2 Topdown metrics disappear for raw events

Kan Liang <[email protected]>
perf evlist: Always use arch_evlist__add_default_attrs()

Lu Baolu <[email protected]>
iommu/vt-d: Fix possible recursive locking in intel_iommu_init()

Eliav Farber <[email protected]>
hwmon: (mr75203) enable polling for all VM channels

Eliav Farber <[email protected]>
hwmon: (mr75203) fix multi-channel voltage reading

Eliav Farber <[email protected]>
hwmon: (mr75203) fix voltage equation for negative source input

Eliav Farber <[email protected]>
hwmon: (mr75203) update pvt->v_num and vm_num to the actual number of used sensors

Eliav Farber <[email protected]>
hwmon: (mr75203) fix VM sensor allocation when "intel,vm-map" not defined

Vladimir Oltean <[email protected]>
net: dsa: felix: tc-taprio intervals smaller than MTU should send at least one packet

Vladimir Oltean <[email protected]>
time64.h: consolidate uses of PSEC_PER_NSEC

Alexander Gordeev <[email protected]>
s390/boot: fix absolute zero lowcore corruption on boot

John Sperbeck <[email protected]>
iommu/amd: use full 64-bit value in build_completion_wait()

Chao Gao <[email protected]>
swiotlb: avoid potential left shift overflow

Hangbin Liu <[email protected]>
bonding: accept unsolicited NA message

Vladimir Oltean <[email protected]>
net: bonding: replace dev_trans_start() with the jiffies of the last ARP/NS

Przemyslaw Patynowski <[email protected]>
i40e: Fix ADQ rate limiting for PF

Przemyslaw Patynowski <[email protected]>
i40e: Refactor tc mqprio checks

Masahiro Yamada <[email protected]>
kbuild: disable header exports for UML in a straightforward way

Yang Ling <[email protected]>
MIPS: loongson32: ls1c: Fix hang during startup

Casey Schaufler <[email protected]>
Smack: Provide read control for io_uring_cmd

Paul Moore <[email protected]>
selinux: implement the security_uring_cmd() LSM hook

Luis Chamberlain <[email protected]>
lsm,io_uring: add LSM hooks for the new uring_cmd file op

Nathan Chancellor <[email protected]>
ASoC: mchp-spdiftx: Fix clang -Wbitfield-constant-conversion

Claudiu Beznea <[email protected]>
ASoC: mchp-spdiftx: remove references to mchp_i2s_caps

Alexandru Gagniuc <[email protected]>
hwmon: (tps23861) fix byte order in resistance register

Adrian Hunter <[email protected]>
perf record: Fix synthesis failure warnings

Zhengjun Xing <[email protected]>
perf script: Fix Cannot print 'iregs' field for hybrid systems

Adrian Hunter <[email protected]>
perf dlfilter dlfilter-show-cycles: Fix types for print format

Adrian Hunter <[email protected]>
libperf evlist: Fix per-thread mmaps for multi-threaded targets

Toke Høiland-Jørgensen <[email protected]>
sch_sfb: Also store skb len before calling child enqueue

Arun Ramadoss <[email protected]>
net: phy: lan87xx: change interrupt src of link_up to comm_ready

Pavel Begunkov <[email protected]>
io_uring: recycle kbuf recycle on tw requeue

Yacan Liu <[email protected]>
net/smc: Fix possible access to freed memory in link clear

Lorenzo Bianconi <[email protected]>
net: ethernet: mtk_eth_soc: check max allowed hash in mtk_ppe_check_skb

Lorenzo Bianconi <[email protected]>
net: ethernet: mtk_eth_soc: fix typo in __mtk_foe_entry_clear

Vladimir Oltean <[email protected]>
net: dsa: felix: access QSYS_TAG_CONFIG under tas_lock in vsc9959_sched_speed_set

Vladimir Oltean <[email protected]>
net: dsa: felix: disable cut-through forwarding for frames oversized for tc-taprio

Sindhu-Devale <[email protected]>
RDMA/irdma: Report RNR NAK generation in device caps

Sindhu-Devale <[email protected]>
RDMA/irdma: Return correct WC error for bind operation failure

Sindhu-Devale <[email protected]>
RDMA/irdma: Return error on MR deregister CQP failure

Sindhu-Devale <[email protected]>
RDMA/irdma: Report the correct max cqes from query device

Dennis Maisenbacher <[email protected]>
nvmet: fix mar and mor off-by-one errors

Qu Wenruo <[email protected]>
btrfs: fix the max chunk size and stripe length calculation

Neal Cardwell <[email protected]>
tcp: fix early ETIMEDOUT after spurious non-SACK RTO

Sagi Grimberg <[email protected]>
nvme-tcp: fix regression that causes sporadic requests to time out

Sagi Grimberg <[email protected]>
nvme-tcp: fix UAF when detecting digest errors

Gao Xiang <[email protected]>
erofs: fix pcluster use-after-free on UP platforms

Sun Ke <[email protected]>
erofs: fix error return code in erofs_fscache_{meta_,}read_folio

Johannes Thumshirn <[email protected]>
btrfs: zoned: fix mounting with conventional zones

Chris Mi <[email protected]>
RDMA/mlx5: Set local port to one when accessing counters

Yishai Hadas <[email protected]>
IB/core: Fix a nested dead lock as part of ODP flow

David Lebrun <[email protected]>
ipv6: sr: fix out-of-bounds read when setting HMAC data.

Hangbin Liu <[email protected]>
bonding: add all node mcast address when slave up

Hangbin Liu <[email protected]>
bonding: use unspecified address if no available link local address

Linus Walleij <[email protected]>
RDMA/siw: Pass a pointer to virt_to_page()

Ming Lei <[email protected]>
block: don't add partitions if GD_SUPPRESS_PART_SCAN is set

Paul Durrant <[email protected]>
xen-netback: only remove 'hotplug-status' when the vif is actually destroyed

Csókás Bence <[email protected]>
net: fec: Use a spinlock to guard `fep->ptp_clk_on`

Ivan Vecera <[email protected]>
iavf: Detach device during reset task

Ivan Vecera <[email protected]>
i40e: Fix kernel crash during module removal

Michal Swiatkowski <[email protected]>
ice: use bitmap_free instead of devm_kfree

Przemyslaw Patynowski <[email protected]>
ice: Fix DMA mappings leak

Eric Dumazet <[email protected]>
tcp: TX zerocopy should not sense pfmemalloc status

Pavel Begunkov <[email protected]>
net: introduce __skb_fill_page_desc_noacc

Dan Carpenter <[email protected]>
tipc: fix shift wrapping bug in map_get()

Toke Høiland-Jørgensen <[email protected]>
sch_sfb: Don't assume the skb is still around after enqueueing to child

Heiner Kallweit <[email protected]>
Revert "net: phy: meson-gxl: improve link-up behavior"

Sander Vanheule <[email protected]>
kunit: fix assert_type for comparison macros

David Howells <[email protected]>
afs: Use the operation issue time instead of the reply time for callbacks

David Howells <[email protected]>
rxrpc: Fix an insufficiently large sglist in rxkad_verify_packet_2()

David Howells <[email protected]>
rxrpc: Fix ICMP/ICMP6 error handling

Takashi Iwai <[email protected]>
ALSA: usb-audio: Register card again for iface over delayed_register option

Takashi Iwai <[email protected]>
ALSA: usb-audio: Inform the delayed registration more properly

[email protected] <[email protected]>
RDMA/srp: Set scmnd->result only when scmnd is not NULL

David Leadbeater <[email protected]>
netfilter: nf_conntrack_irc: Fix forged IP logic

Conor Dooley <[email protected]>
riscv: dts: microchip: use an mpfs specific l2 compatible

Pablo Neira Ayuso <[email protected]>
netfilter: nf_tables: clean up hook list when offload flags check fails

Harsh Modi <[email protected]>
netfilter: br_netfilter: Drop dst references before setting.

Claudiu Beznea <[email protected]>
ARM: dts: at91: sama5d2_icp: don't keep vdd_other enabled all the time

Claudiu Beznea <[email protected]>
ARM: dts: at91: sama5d27_wlsom1: don't keep ldo2 enabled all the time

Claudiu Beznea <[email protected]>
ARM: dts: at91: sama7g5ek: specify proper regulator output ranges

Claudiu Beznea <[email protected]>
ARM: dts: at91: sama5d2_icp: specify proper regulator output ranges

Claudiu Beznea <[email protected]>
ARM: dts: at91: sama5d27_wlsom1: specify proper regulator output ranges

Claudiu Beznea <[email protected]>
ARM: at91: pm: fix DDR recalibration when resuming from backup and self-refresh

Claudiu Beznea <[email protected]>
ARM: at91: pm: fix self-refresh for sama7g5

[email protected] <[email protected]>
wifi: wilc1000: fix DMA on stack objects

Yixing Liu <[email protected]>
RDMA/hns: Remove the num_qpc_timer variable

Wenpeng Liang <[email protected]>
RDMA/hns: Fix wrong fixed value of qp->rq.wqe_shift

Chengchang Tang <[email protected]>
RDMA/hns: Fix supported page size

Liang He <[email protected]>
soc: brcmstb: pm-arm: Fix refcount leak and __iomem leak bugs

Michael Guralnik <[email protected]>
RDMA/cma: Fix arguments order in net device validation

Geert Uytterhoeven <[email protected]>
arm64: dts: renesas: r8a779g0: Fix HSCIF0 interrupt number

Shiraz Saleem <[email protected]>
RDMA/irdma: Fix drain SQ hang with no completion

Jens Wiklander <[email protected]>
tee: fix compiler warning in tee_shm_register()

Peter Ujfalusi <[email protected]>
ASoC: SOF: Kconfig: Make IPC_MESSAGE_INJECTOR depend on SND_SOC_SOF

Peter Ujfalusi <[email protected]>
ASoC: SOF: Kconfig: Make IPC_FLOOD_TEST depend on SND_SOC_SOF

Andrew Halaney <[email protected]>
regulator: core: Clean up on enable failure

Marcel Ziswiler <[email protected]>
arm64: dts: freescale: verdin-imx8mp: fix atmel_mxt_ts reset polarity

Marcel Ziswiler <[email protected]>
arm64: dts: freescale: verdin-imx8mm: fix atmel_mxt_ts reset polarity

Tim Harvey <[email protected]>
arm64: dts: imx8mm-venice-gw7901: fix port/phy validation

Philippe Schenker <[email protected]>
arm64: dts: verdin-imx8mm: add otg2 pd to usbphy

Marek Vasut <[email protected]>
soc: imx: gpcv2: Assert reset before ungating clock

Vladimir Oltean <[email protected]>
arm64: dts: ls1028a-qds-65bb: don't use in-band autoneg for 2500base-x

Marco Felsch <[email protected]>
ARM: dts: imx6qdl-kontron-samx6i: fix spi-flash compatible

Marco Felsch <[email protected]>
ARM: dts: imx6qdl-kontron-samx6i: remove duplicated node

David Jander <[email protected]>
ARM: dts: imx6qdl-vicut1.dtsi: Fix node name backlight_led

Jack Wang <[email protected]>
RDMA/rtrs-srv: Pass the correct number of entries for dma mapped SGL

Jack Wang <[email protected]>
RDMA/rtrs-clt: Use the right sg_cnt after ib_dma_map_sg

Alexander Stein <[email protected]>
arm64: dts: imx8mq-tqma8mq: Remove superfluous interrupt-names

Peng Fan <[email protected]>
arm64: dts: imx8mp-venice-gw74xx: fix sai2 pin settings

Cristian Ciocaltea <[email protected]>
regmap: spi: Reserve space for register address/padding

Srinivas Kandagatla <[email protected]>
ASoC: qcom: sm8250: add missing module owner

Andrejs Cainikovs <[email protected]>
arm64: dts: imx8mm-verdin: use level interrupt for mcp251xfd

Andrejs Cainikovs <[email protected]>
arm64: dts: imx8mm-verdin: update CAN clock to 40MHz

Marco Felsch <[email protected]>
Revert "soc: imx: imx8m-blk-ctrl: set power device name"

Richard Fitzgerald <[email protected]>
ASoC: cs42l42: Only report button state if there was a button interrupt

Robin Murphy <[email protected]>
spi: bitbang: Fix lsb-first Rx

David Howells <[email protected]>
smb3: missing inode locks in zero range

Enzo Matsumiya <[email protected]>
cifs: remove useless parameter 'is_fsctl' from SMB2_ioctl()

Tejun Heo <[email protected]>
cgroup: Fix threadgroup_rwsem <-> cpus_read_lock() deadlock

Tejun Heo <[email protected]>
cgroup: Elide write-locking threadgroup_rwsem when updating csses on an empty subtree

Yang Yingliang <[email protected]>
scsi: lpfc: Add missing destroy_workqueue() in error path

Sreekanth Reddy <[email protected]>
scsi: mpt3sas: Fix use-after-free warning

Ville Syrjälä <[email protected]>
drm/i915: Implement WaEdpLinkRateDataReload

Rodrigo Vivi <[email protected]>
drm/i915/slpc: Let's fix the PCODE min freq table setup for SLPC

Ville Syrjälä <[email protected]>
drm/i915/bios: Copy the whole MIPI sequence block

Bart Van Assche <[email protected]>
nvmet: fix a use-after-free

Greg Kroah-Hartman <[email protected]>
driver core: fix driver_set_override() issue with empty strings

Greg Kroah-Hartman <[email protected]>
drm/amd/display: fix memory leak when using debugfs_lookup()

Greg Kroah-Hartman <[email protected]>
sched/debug: fix dentry leak in update_sched_domain_debugfs

Greg Kroah-Hartman <[email protected]>
debugfs: add debugfs_lookup_and_remove()

Sergey Matyukevich <[email protected]>
perf: RISC-V: fix access beyond allocated array

Christian A. Ehrhardt <[email protected]>
kprobes: Prohibit probes in gate area

Alex Williamson <[email protected]>
vfio/type1: Unpin zero pages

Naohiro Aota <[email protected]>
btrfs: zoned: fix API misuse of zone finish waiting

Shin'ichiro Kawasaki <[email protected]>
btrfs: zoned: set pseudo max append zone limit in zone emulation mode

Masami Hiramatsu (Google) <[email protected]>
tracing: Fix to check event_mutex is held while accessing trigger list

Yipeng Zou <[email protected]>
tracing: hold caller_addr to hardirq_{enable,disable}_ip

Brian Norris <[email protected]>
tracefs: Only clobber mode/uid/gid on remount if asked

Dongxiang Ke <[email protected]>
ALSA: usb-audio: Fix an out-of-bounds bug in __snd_usb_parse_audio_interface()

Takashi Iwai <[email protected]>
ALSA: usb-audio: Clear fixed clock rate at closing EP

Takashi Iwai <[email protected]>
ALSA: usb-audio: Split endpoint setups for hw_params and prepare

Pattara Teerapong <[email protected]>
ALSA: aloop: Fix random zeros in capture data when using jiffies timer

Takashi Iwai <[email protected]>
ALSA: hda: Once again fix regression of page allocations with IOMMU

Tasos Sahanidis <[email protected]>
ALSA: emu10k1: Fix out of bounds access in snd_emu10k1_pcm_channel_alloc()

Takashi Iwai <[email protected]>
ALSA: pcm: oss: Fix race at SNDCTL_DSP_SYNC

Qu Huang <[email protected]>
drm/amdgpu: mmVM_L2_CNTL3 register not initialized correctly

Tim Huang <[email protected]>
drm/amdgpu: add sdma instance check for gfx11 CGCG

Borislav Petkov <[email protected]>
x86/sev: Mark snp_abort() noreturn

Yang Yingliang <[email protected]>
fbdev: chipsfb: Add missing pci_disable_device() in chipsfb_pci_init()

Shigeru Yoshida <[email protected]>
fbdev: fbcon: Destroy mutex on freeing struct fb_info

Yu Zhe <[email protected]>
fbdev: omapfb: Fix tests for platform_get_irq() failure

David Sloan <[email protected]>
md: Flush workqueue md_rdev_misc_wq in md_alloc()

lily <[email protected]>
net/core/skbuff: Check the return value of skb_copy_bits()

Lukasz Luba <[email protected]>
cpufreq: check only freq_table in __resolve_freq()

Lee, Chun-Yi <[email protected]>
thermal/int340x_thermal: handle data_vault when the value is ZERO_SIZE_PTR

Florian Westphal <[email protected]>
netfilter: conntrack: work around exceeded receive window

Mark Brown <[email protected]>
arm64/signal: Raise limit on stack frames

Ionela Voinescu <[email protected]>
arm64: errata: add detection for AMEVCNTR01 incrementing incorrectly

Helge Deller <[email protected]>
parisc: Add runtime check to prevent PA2.0 kernels on PA1.x machines

Li Qiong <[email protected]>
parisc: ccio-dma: Handle kmalloc failure in ccio_init_resources()

Helge Deller <[email protected]>
Revert "parisc: Show error if wrong 32/64-bit compiler is being used"

Bart Van Assche <[email protected]>
scsi: ufs: core: Reduce the power mode change timeout

Zhenneng Li <[email protected]>
drm/radeon: add a force flush to delay work when radeon

shaoyunl <[email protected]>
drm/amdgpu: Remove the additional kfd pre reset call for sriov

Candice Li <[email protected]>
drm/amdgpu: Check num_gfx_rings for gfx v9_0 rb setup.

YiPeng Chai <[email protected]>
drm/amdgpu: fix hive reference leak when adding xgmi device

YiPeng Chai <[email protected]>
drm/amdgpu: Move psp_xgmi_terminate call from amdgpu_xgmi_remove_device to psp_hw_fini

Jeffy Chen <[email protected]>
drm/gem: Fix GEM handle release errors

Guixin Liu <[email protected]>
scsi: megaraid_sas: Fix double kfree()

Brian Bunker <[email protected]>
scsi: core: Allow the ALUA transitioning state enough time

Tony Battersby <[email protected]>
scsi: qla2xxx: Disable ATIO interrupt coalesce for quad port ISP27XX

Yee Lee <[email protected]>
Revert "mm: kmemleak: take a full lowmem check in kmemleak_*_phys()"

Mathew McBride <[email protected]>
soc: fsl: select FSL_GUTS driver for DPIO

Linus Torvalds <[email protected]>
fs: only do a memory barrier for the first set_buffer_uptodate()

Greg Kroah-Hartman <[email protected]>
net: mvpp2: debugfs: fix memory leak when using debugfs_lookup()

Stanislaw Gruszka <[email protected]>
wifi: iwlegacy: 4965: corrected fix for potential off-by-one overflow in il4965_rs_fill_link_cmd()

Deren Wu <[email protected]>
wifi: mt76: mt7921e: fix crash in chip reset fail

Hyunwoo Kim <[email protected]>
efi: capsule-loader: Fix use-after-free in efi_capsule_write

Ard Biesheuvel <[email protected]>
efi: libstub: Disable struct randomization


-------------

Diffstat:

Documentation/arm64/silicon-errata.rst | 2 +
Documentation/hwmon/asus_ec_sensors.rst | 4 +
Makefile | 7 +-
arch/arm/boot/dts/at91-sama5d27_wlsom1.dtsi | 21 +-
arch/arm/boot/dts/at91-sama5d2_icp.dts | 21 +-
arch/arm/boot/dts/at91-sama7g5ek.dts | 18 +-
arch/arm/boot/dts/imx6qdl-kontron-samx6i.dtsi | 12 +-
arch/arm/boot/dts/imx6qdl-vicut1.dtsi | 2 +-
arch/arm/mach-at91/pm.c | 36 +-
arch/arm/mach-at91/pm_suspend.S | 24 +-
arch/arm64/Kconfig | 19 +
.../boot/dts/freescale/fsl-ls1028a-qds-65bb.dts | 1 -
.../boot/dts/freescale/imx8mm-venice-gw7901.dts | 4 +
arch/arm64/boot/dts/freescale/imx8mm-verdin.dtsi | 11 +-
.../boot/dts/freescale/imx8mp-venice-gw74xx.dts | 8 +-
arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi | 4 +-
arch/arm64/boot/dts/freescale/imx8mq-tqma8mq.dtsi | 1 -
arch/arm64/boot/dts/renesas/r8a779g0.dtsi | 2 +-
arch/arm64/kernel/cpu_errata.c | 10 +
arch/arm64/kernel/cpufeature.c | 5 +-
arch/arm64/kernel/hibernate.c | 5 +
arch/arm64/kernel/mte.c | 9 +
arch/arm64/kernel/signal.c | 2 +-
arch/arm64/kernel/topology.c | 32 +-
arch/arm64/mm/copypage.c | 9 +
arch/arm64/mm/mteswap.c | 9 +
arch/arm64/tools/cpucaps | 1 +
arch/mips/loongson32/ls1c/board.c | 1 -
arch/parisc/include/asm/bitops.h | 8 -
arch/parisc/kernel/head.S | 43 +-
arch/riscv/boot/dts/microchip/mpfs.dtsi | 2 +-
arch/s390/kernel/nmi.c | 2 +-
arch/s390/kernel/setup.c | 1 +
arch/x86/include/asm/sev.h | 2 +-
arch/x86/kernel/sev.c | 2 +-
block/partitions/core.c | 3 +
drivers/base/driver.c | 6 +
drivers/base/regmap/regmap-spi.c | 8 +
drivers/cpufreq/cpufreq.c | 2 +-
drivers/firmware/efi/capsule-loader.c | 31 +-
drivers/firmware/efi/libstub/Makefile | 7 +
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 4 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 3 +
drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 2 +-
drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c | 18 +-
drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 3 +-
drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.c | 1 +
.../drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 2 +-
.../dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c | 18 +-
.../drm/amd/display/dc/clk_mgr/dcn301/dcn301_smu.c | 17 +
.../drm/amd/display/dc/clk_mgr/dcn31/dcn31_smu.c | 14 +-
.../drm/amd/display/dc/clk_mgr/dcn315/dcn315_smu.c | 14 +-
.../drm/amd/display/dc/clk_mgr/dcn316/dcn316_smu.c | 14 +-
drivers/gpu/drm/drm_gem.c | 17 +-
drivers/gpu/drm/drm_internal.h | 4 +-
drivers/gpu/drm/drm_prime.c | 20 +-
drivers/gpu/drm/i915/display/intel_bios.c | 7 +
.../gpu/drm/i915/display/intel_dp_link_training.c | 22 +
drivers/gpu/drm/i915/gt/intel_llc.c | 19 +-
drivers/gpu/drm/i915/gt/intel_rps.c | 50 +++
drivers/gpu/drm/i915/gt/intel_rps.h | 2 +
drivers/gpu/drm/radeon/radeon_device.c | 3 +
drivers/hwmon/asus-ec-sensors.c | 446 ++++++++++++++-------
drivers/hwmon/mr75203.c | 72 +++-
drivers/hwmon/tps23861.c | 10 +-
drivers/infiniband/core/cma.c | 4 +-
drivers/infiniband/core/umem_odp.c | 2 +-
drivers/infiniband/hw/hns/hns_roce_device.h | 1 -
drivers/infiniband/hw/hns/hns_roce_hw_v2.c | 3 +-
drivers/infiniband/hw/hns/hns_roce_hw_v2.h | 4 +-
drivers/infiniband/hw/hns/hns_roce_main.c | 2 +-
drivers/infiniband/hw/hns/hns_roce_qp.c | 7 +-
drivers/infiniband/hw/irdma/uk.c | 4 +-
drivers/infiniband/hw/irdma/utils.c | 15 +-
drivers/infiniband/hw/irdma/verbs.c | 13 +-
drivers/infiniband/hw/mlx5/mad.c | 6 +
drivers/infiniband/sw/siw/siw_qp_tx.c | 18 +-
drivers/infiniband/ulp/rtrs/rtrs-clt.c | 9 +-
drivers/infiniband/ulp/rtrs/rtrs-srv.c | 14 +-
drivers/infiniband/ulp/srp/ib_srp.c | 3 +-
drivers/iommu/amd/iommu.c | 3 +-
drivers/iommu/amd/iommu_v2.c | 2 +
drivers/iommu/intel/dmar.c | 7 +
drivers/iommu/intel/iommu.c | 55 ++-
drivers/iommu/iommu.c | 21 +-
drivers/iommu/virtio-iommu.c | 11 +
drivers/md/md.c | 1 +
drivers/net/bonding/bond_main.c | 55 ++-
drivers/net/dsa/ocelot/felix_vsc9959.c | 162 +++++---
drivers/net/ethernet/freescale/fec.h | 1 -
drivers/net/ethernet/freescale/fec_main.c | 17 +-
drivers/net/ethernet/freescale/fec_ptp.c | 28 +-
drivers/net/ethernet/intel/i40e/i40e.h | 14 +
drivers/net/ethernet/intel/i40e/i40e_client.c | 5 +-
drivers/net/ethernet/intel/i40e/i40e_ethtool.c | 2 +-
drivers/net/ethernet/intel/i40e/i40e_main.c | 23 +-
drivers/net/ethernet/intel/i40e/i40e_txrx.c | 3 +-
drivers/net/ethernet/intel/iavf/iavf_main.c | 14 +-
drivers/net/ethernet/intel/ice/ice_base.c | 17 -
drivers/net/ethernet/intel/ice/ice_main.c | 10 +-
drivers/net/ethernet/intel/ice/ice_xsk.c | 63 +++
drivers/net/ethernet/intel/ice/ice_xsk.h | 8 +
drivers/net/ethernet/marvell/mvpp2/mvpp2_debugfs.c | 4 +-
drivers/net/ethernet/mediatek/mtk_ppe.c | 2 +-
drivers/net/ethernet/mediatek/mtk_ppe.h | 3 +
drivers/net/phy/meson-gxl.c | 8 +-
drivers/net/phy/microchip_t1.c | 58 ++-
drivers/net/wireless/intel/iwlegacy/4965-rs.c | 5 +-
.../net/wireless/mediatek/mt76/mt7921/pci_mac.c | 2 +-
drivers/net/wireless/microchip/wilc1000/netdev.h | 1 +
drivers/net/wireless/microchip/wilc1000/sdio.c | 39 +-
drivers/net/wireless/microchip/wilc1000/wlan.c | 15 +-
drivers/net/xen-netback/xenbus.c | 2 +-
drivers/nvme/host/tcp.c | 7 +-
drivers/nvme/target/core.c | 6 +-
drivers/nvme/target/zns.c | 17 +-
drivers/parisc/ccio-dma.c | 11 +-
drivers/perf/riscv_pmu_sbi.c | 2 +-
drivers/regulator/core.c | 9 +-
drivers/scsi/lpfc/lpfc_init.c | 5 +-
drivers/scsi/megaraid/megaraid_sas_fusion.c | 1 -
drivers/scsi/mpt3sas/mpt3sas_scsih.c | 2 +-
drivers/scsi/qla2xxx/qla_target.c | 10 +-
drivers/scsi/scsi_lib.c | 44 +-
drivers/soc/bcm/brcmstb/pm/pm-arm.c | 50 ++-
drivers/soc/fsl/Kconfig | 1 +
drivers/soc/imx/gpcv2.c | 5 +-
drivers/soc/imx/imx8m-blk-ctrl.c | 1 -
drivers/spi/spi-bitbang-txrx.h | 6 +-
drivers/tee/tee_shm.c | 1 +
.../intel/int340x_thermal/int3400_thermal.c | 9 +-
drivers/ufs/core/ufshcd.c | 9 +-
drivers/vfio/vfio_iommu_type1.c | 12 +
drivers/video/fbdev/chipsfb.c | 1 +
drivers/video/fbdev/core/fbsysfs.c | 4 +
drivers/video/fbdev/omap/omapfb_main.c | 4 +-
fs/afs/flock.c | 2 +-
fs/afs/fsclient.c | 2 +-
fs/afs/internal.h | 3 +-
fs/afs/rxrpc.c | 7 +-
fs/afs/yfsclient.c | 3 +-
fs/btrfs/ctree.h | 2 -
fs/btrfs/disk-io.c | 1 -
fs/btrfs/inode.c | 7 +-
fs/btrfs/space-info.c | 2 +-
fs/btrfs/volumes.c | 3 +
fs/btrfs/zoned.c | 99 ++---
fs/cifs/smb2file.c | 1 -
fs/cifs/smb2ops.c | 88 ++--
fs/cifs/smb2pdu.c | 20 +-
fs/cifs/smb2proto.h | 4 +-
fs/debugfs/inode.c | 22 +
fs/erofs/fscache.c | 8 +-
fs/erofs/internal.h | 29 --
fs/tracefs/inode.c | 31 +-
include/kunit/test.h | 6 +-
include/linux/buffer_head.h | 11 +
include/linux/debugfs.h | 6 +
include/linux/dmar.h | 4 +-
include/linux/lsm_hook_defs.h | 1 +
include/linux/lsm_hooks.h | 3 +
include/linux/security.h | 5 +
include/linux/skbuff.h | 49 ++-
include/linux/time64.h | 3 +
include/linux/udp.h | 1 +
include/net/bonding.h | 13 +-
include/net/udp_tunnel.h | 4 +
include/soc/at91/sama7-ddr.h | 8 +
io_uring/io_uring.c | 5 +
kernel/cgroup/cgroup.c | 85 +++-
kernel/cgroup/cpuset.c | 3 +-
kernel/dma/swiotlb.c | 5 +-
kernel/fork.c | 1 +
kernel/kprobes.c | 1 +
kernel/sched/debug.c | 2 +-
kernel/trace/trace_events_trigger.c | 3 +-
kernel/trace/trace_preemptirq.c | 4 +-
mm/kmemleak.c | 8 +-
net/bridge/br_netfilter_hooks.c | 2 +
net/bridge/br_netfilter_ipv6.c | 1 +
net/core/datagram.c | 2 +-
net/core/skbuff.c | 5 +-
net/ipv4/tcp.c | 2 +-
net/ipv4/tcp_input.c | 25 +-
net/ipv4/udp.c | 2 +
net/ipv4/udp_tunnel_core.c | 1 +
net/ipv6/addrconf.c | 8 +-
net/ipv6/seg6.c | 5 +
net/ipv6/udp.c | 5 +-
net/netfilter/nf_conntrack_irc.c | 5 +-
net/netfilter/nf_conntrack_proto_tcp.c | 31 ++
net/netfilter/nf_tables_api.c | 4 +-
net/rxrpc/ar-internal.h | 1 +
net/rxrpc/local_object.c | 1 +
net/rxrpc/peer_event.c | 293 ++++++++++++--
net/rxrpc/rxkad.c | 2 +-
net/sched/sch_sfb.c | 13 +-
net/sched/sch_taprio.c | 5 +-
net/smc/smc_core.c | 1 +
net/smc/smc_core.h | 2 +
net/smc/smc_wr.c | 5 +
net/smc/smc_wr.h | 5 +
net/tipc/monitor.c | 2 +-
security/security.c | 4 +
security/selinux/hooks.c | 24 ++
security/selinux/include/classmap.h | 2 +-
security/smack/smack_lsm.c | 32 ++
sound/core/memalloc.c | 9 +-
sound/core/oss/pcm_oss.c | 6 +-
sound/drivers/aloop.c | 7 +-
sound/pci/emu10k1/emupcm.c | 2 +-
sound/pci/hda/hda_intel.c | 2 +-
sound/soc/atmel/mchp-spdiftx.c | 10 +-
sound/soc/codecs/cs42l42.c | 13 +-
sound/soc/qcom/sm8250.c | 1 +
sound/soc/sof/Kconfig | 2 +
sound/usb/card.c | 2 +-
sound/usb/endpoint.c | 25 +-
sound/usb/endpoint.h | 6 +-
sound/usb/pcm.c | 14 +-
sound/usb/quirks.c | 2 +-
sound/usb/stream.c | 9 +-
tools/lib/perf/evlist.c | 50 +++
tools/objtool/check.c | 34 +-
tools/perf/arch/x86/util/evlist.c | 7 +-
tools/perf/builtin-record.c | 8 +-
tools/perf/builtin-script.c | 3 +
tools/perf/builtin-stat.c | 11 +-
tools/perf/dlfilters/dlfilter-show-cycles.c | 4 +-
tools/perf/util/evlist.c | 9 +-
tools/perf/util/evlist.h | 7 +-
231 files changed, 2460 insertions(+), 1000 deletions(-)



2022-09-13 16:31:46

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 142/192] RDMA/irdma: Return correct WC error for bind operation failure

From: Sindhu-Devale <[email protected]>

[ Upstream commit dcb23bbb1de7e009875fdfac2b8a9808a9319cc6 ]

When a QP and a MR on a local host are in different PDs, the HW generates
an asynchronous event (AE). The same AE is generated when a QP and a MW
are in different PDs during a bind operation. Return the more appropriate
IBV_WC_MW_BIND_ERR for the latter case by checking the OP type from the
CQE in error.

Fixes: 551c46edc769 ("RDMA/irdma: Add user/kernel shared libraries")
Signed-off-by: Sindhu-Devale <[email protected]>
Signed-off-by: Shiraz Saleem <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Leon Romanovsky <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
drivers/infiniband/hw/irdma/uk.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/infiniband/hw/irdma/uk.c b/drivers/infiniband/hw/irdma/uk.c
index daeab5daed5bc..d003ad864ee44 100644
--- a/drivers/infiniband/hw/irdma/uk.c
+++ b/drivers/infiniband/hw/irdma/uk.c
@@ -1005,6 +1005,7 @@ int irdma_uk_cq_poll_cmpl(struct irdma_cq_uk *cq,
int ret_code;
bool move_cq_head = true;
u8 polarity;
+ u8 op_type;
bool ext_valid;
__le64 *ext_cqe;

@@ -1187,7 +1188,6 @@ int irdma_uk_cq_poll_cmpl(struct irdma_cq_uk *cq,
do {
__le64 *sw_wqe;
u64 wqe_qword;
- u8 op_type;
u32 tail;

tail = qp->sq_ring.tail;
@@ -1204,6 +1204,8 @@ int irdma_uk_cq_poll_cmpl(struct irdma_cq_uk *cq,
break;
}
} while (1);
+ if (op_type == IRDMA_OP_TYPE_BIND_MW && info->minor_err == FLUSH_PROT_ERR)
+ info->minor_err = FLUSH_MW_BIND_ERR;
qp->sq_flush_seen = true;
if (!IRDMA_RING_MORE_WORK(qp->sq_ring))
qp->sq_flush_complete = true;
--
2.35.1



2022-09-13 16:31:55

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 123/192] net: fec: Use a spinlock to guard `fep->ptp_clk_on`

From: Csókás Bence <[email protected]>

[ Upstream commit b353b241f1eb9b6265358ffbe2632fdcb563354f ]

Mutexes cannot be taken in a non-preemptible context,
causing a panic in `fec_ptp_save_state()`. Replacing
`ptp_clk_mutex` by `tmreg_lock` fixes this.

Fixes: 6a4d7234ae9a ("net: fec: ptp: avoid register access when ipg clock is disabled")
Fixes: f79959220fa5 ("fec: Restart PPS after link state change")
Reported-by: Marc Kleine-Budde <[email protected]>
Link: https://lore.kernel.org/all/[email protected]/
Signed-off-by: Csókás Bence <[email protected]>
Tested-by: Francesco Dolcini <[email protected]> # Toradex Apalis iMX6
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Jakub Kicinski <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
drivers/net/ethernet/freescale/fec.h | 1 -
drivers/net/ethernet/freescale/fec_main.c | 17 +++++++-------
drivers/net/ethernet/freescale/fec_ptp.c | 28 ++++++++---------------
3 files changed, 19 insertions(+), 27 deletions(-)

diff --git a/drivers/net/ethernet/freescale/fec.h b/drivers/net/ethernet/freescale/fec.h
index ed7301b691694..939720a75f87c 100644
--- a/drivers/net/ethernet/freescale/fec.h
+++ b/drivers/net/ethernet/freescale/fec.h
@@ -557,7 +557,6 @@ struct fec_enet_private {
struct clk *clk_2x_txclk;

bool ptp_clk_on;
- struct mutex ptp_clk_mutex;
unsigned int num_tx_queues;
unsigned int num_rx_queues;

diff --git a/drivers/net/ethernet/freescale/fec_main.c b/drivers/net/ethernet/freescale/fec_main.c
index a90275143d873..8538ea31ca803 100644
--- a/drivers/net/ethernet/freescale/fec_main.c
+++ b/drivers/net/ethernet/freescale/fec_main.c
@@ -1994,6 +1994,7 @@ static void fec_enet_phy_reset_after_clk_enable(struct net_device *ndev)
static int fec_enet_clk_enable(struct net_device *ndev, bool enable)
{
struct fec_enet_private *fep = netdev_priv(ndev);
+ unsigned long flags;
int ret;

if (enable) {
@@ -2002,15 +2003,15 @@ static int fec_enet_clk_enable(struct net_device *ndev, bool enable)
return ret;

if (fep->clk_ptp) {
- mutex_lock(&fep->ptp_clk_mutex);
+ spin_lock_irqsave(&fep->tmreg_lock, flags);
ret = clk_prepare_enable(fep->clk_ptp);
if (ret) {
- mutex_unlock(&fep->ptp_clk_mutex);
+ spin_unlock_irqrestore(&fep->tmreg_lock, flags);
goto failed_clk_ptp;
} else {
fep->ptp_clk_on = true;
}
- mutex_unlock(&fep->ptp_clk_mutex);
+ spin_unlock_irqrestore(&fep->tmreg_lock, flags);
}

ret = clk_prepare_enable(fep->clk_ref);
@@ -2025,10 +2026,10 @@ static int fec_enet_clk_enable(struct net_device *ndev, bool enable)
} else {
clk_disable_unprepare(fep->clk_enet_out);
if (fep->clk_ptp) {
- mutex_lock(&fep->ptp_clk_mutex);
+ spin_lock_irqsave(&fep->tmreg_lock, flags);
clk_disable_unprepare(fep->clk_ptp);
fep->ptp_clk_on = false;
- mutex_unlock(&fep->ptp_clk_mutex);
+ spin_unlock_irqrestore(&fep->tmreg_lock, flags);
}
clk_disable_unprepare(fep->clk_ref);
clk_disable_unprepare(fep->clk_2x_txclk);
@@ -2041,10 +2042,10 @@ static int fec_enet_clk_enable(struct net_device *ndev, bool enable)
clk_disable_unprepare(fep->clk_ref);
failed_clk_ref:
if (fep->clk_ptp) {
- mutex_lock(&fep->ptp_clk_mutex);
+ spin_lock_irqsave(&fep->tmreg_lock, flags);
clk_disable_unprepare(fep->clk_ptp);
fep->ptp_clk_on = false;
- mutex_unlock(&fep->ptp_clk_mutex);
+ spin_unlock_irqrestore(&fep->tmreg_lock, flags);
}
failed_clk_ptp:
clk_disable_unprepare(fep->clk_enet_out);
@@ -3873,7 +3874,7 @@ fec_probe(struct platform_device *pdev)
}

fep->ptp_clk_on = false;
- mutex_init(&fep->ptp_clk_mutex);
+ spin_lock_init(&fep->tmreg_lock);

/* clk_ref is optional, depends on board */
fep->clk_ref = devm_clk_get_optional(&pdev->dev, "enet_clk_ref");
diff --git a/drivers/net/ethernet/freescale/fec_ptp.c b/drivers/net/ethernet/freescale/fec_ptp.c
index 3dc3c0b626c21..af20aa2379640 100644
--- a/drivers/net/ethernet/freescale/fec_ptp.c
+++ b/drivers/net/ethernet/freescale/fec_ptp.c
@@ -365,21 +365,19 @@ static int fec_ptp_adjtime(struct ptp_clock_info *ptp, s64 delta)
*/
static int fec_ptp_gettime(struct ptp_clock_info *ptp, struct timespec64 *ts)
{
- struct fec_enet_private *adapter =
+ struct fec_enet_private *fep =
container_of(ptp, struct fec_enet_private, ptp_caps);
u64 ns;
unsigned long flags;

- mutex_lock(&adapter->ptp_clk_mutex);
+ spin_lock_irqsave(&fep->tmreg_lock, flags);
/* Check the ptp clock */
- if (!adapter->ptp_clk_on) {
- mutex_unlock(&adapter->ptp_clk_mutex);
+ if (!fep->ptp_clk_on) {
+ spin_unlock_irqrestore(&fep->tmreg_lock, flags);
return -EINVAL;
}
- spin_lock_irqsave(&adapter->tmreg_lock, flags);
- ns = timecounter_read(&adapter->tc);
- spin_unlock_irqrestore(&adapter->tmreg_lock, flags);
- mutex_unlock(&adapter->ptp_clk_mutex);
+ ns = timecounter_read(&fep->tc);
+ spin_unlock_irqrestore(&fep->tmreg_lock, flags);

*ts = ns_to_timespec64(ns);

@@ -404,10 +402,10 @@ static int fec_ptp_settime(struct ptp_clock_info *ptp,
unsigned long flags;
u32 counter;

- mutex_lock(&fep->ptp_clk_mutex);
+ spin_lock_irqsave(&fep->tmreg_lock, flags);
/* Check the ptp clock */
if (!fep->ptp_clk_on) {
- mutex_unlock(&fep->ptp_clk_mutex);
+ spin_unlock_irqrestore(&fep->tmreg_lock, flags);
return -EINVAL;
}

@@ -417,11 +415,9 @@ static int fec_ptp_settime(struct ptp_clock_info *ptp,
*/
counter = ns & fep->cc.mask;

- spin_lock_irqsave(&fep->tmreg_lock, flags);
writel(counter, fep->hwp + FEC_ATIME);
timecounter_init(&fep->tc, &fep->cc, ns);
spin_unlock_irqrestore(&fep->tmreg_lock, flags);
- mutex_unlock(&fep->ptp_clk_mutex);
return 0;
}

@@ -518,13 +514,11 @@ static void fec_time_keep(struct work_struct *work)
struct fec_enet_private *fep = container_of(dwork, struct fec_enet_private, time_keep);
unsigned long flags;

- mutex_lock(&fep->ptp_clk_mutex);
+ spin_lock_irqsave(&fep->tmreg_lock, flags);
if (fep->ptp_clk_on) {
- spin_lock_irqsave(&fep->tmreg_lock, flags);
timecounter_read(&fep->tc);
- spin_unlock_irqrestore(&fep->tmreg_lock, flags);
}
- mutex_unlock(&fep->ptp_clk_mutex);
+ spin_unlock_irqrestore(&fep->tmreg_lock, flags);

schedule_delayed_work(&fep->time_keep, HZ);
}
@@ -599,8 +593,6 @@ void fec_ptp_init(struct platform_device *pdev, int irq_idx)
}
fep->ptp_inc = NSEC_PER_SEC / fep->cycle_speed;

- spin_lock_init(&fep->tmreg_lock);
-
fec_ptp_start_cyclecounter(ndev);

INIT_DELAYED_WORK(&fep->time_keep, fec_time_keep);
--
2.35.1



2022-09-13 16:31:59

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 044/192] tracing: Fix to check event_mutex is held while accessing trigger list

From: Masami Hiramatsu (Google) <[email protected]>

commit cecf8e128ec69149fe53c9a7bafa505a4bee25d9 upstream.

Since the check_user_trigger() is called outside of RCU
read lock, this list_for_each_entry_rcu() caused a suspicious
RCU usage warning.

# echo hist:keys=pid > events/sched/sched_stat_runtime/trigger
# cat events/sched/sched_stat_runtime/trigger
[ 43.167032]
[ 43.167418] =============================
[ 43.167992] WARNING: suspicious RCU usage
[ 43.168567] 5.19.0-rc5-00029-g19ebe4651abf #59 Not tainted
[ 43.169283] -----------------------------
[ 43.169863] kernel/trace/trace_events_trigger.c:145 RCU-list traversed in non-reader section!!
...

However, this file->triggers list is safe when it is accessed
under event_mutex is held.
To fix this warning, adds a lockdep_is_held check to the
list_for_each_entry_rcu().

Link: https://lkml.kernel.org/r/166226474977.223837.1992182913048377113.stgit@devnote2

Cc: [email protected]
Fixes: 7491e2c44278 ("tracing: Add a probe that attaches to trace events")
Signed-off-by: Masami Hiramatsu (Google) <[email protected]>
Signed-off-by: Steven Rostedt (Google) <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
kernel/trace/trace_events_trigger.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

--- a/kernel/trace/trace_events_trigger.c
+++ b/kernel/trace/trace_events_trigger.c
@@ -142,7 +142,8 @@ static bool check_user_trigger(struct tr
{
struct event_trigger_data *data;

- list_for_each_entry_rcu(data, &file->triggers, list) {
+ list_for_each_entry_rcu(data, &file->triggers, list,
+ lockdep_is_held(&event_mutex)) {
if (data->flags & EVENT_TRIGGER_FL_PROBE)
continue;
return true;


2022-09-13 16:32:06

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 164/192] i40e: Refactor tc mqprio checks

From: Przemyslaw Patynowski <[email protected]>

[ Upstream commit 2313e69c84c024a85d017a60ae925085de47530a ]

Refactor bitwise checks for whether TC MQPRIO is enabled
into one single method for improved readability.

Signed-off-by: Przemyslaw Patynowski <[email protected]>
Signed-off-by: Jan Sokolowski <[email protected]>
Tested-by: Bharathi Sreenivas <[email protected]>
Signed-off-by: Tony Nguyen <[email protected]>
Stable-dep-of: 45bb006d3c92 ("i40e: Fix ADQ rate limiting for PF")
Signed-off-by: Sasha Levin <[email protected]>
---
drivers/net/ethernet/intel/i40e/i40e.h | 14 +++++++++++++
.../net/ethernet/intel/i40e/i40e_ethtool.c | 2 +-
drivers/net/ethernet/intel/i40e/i40e_main.c | 20 +++++++++----------
3 files changed, 25 insertions(+), 11 deletions(-)

diff --git a/drivers/net/ethernet/intel/i40e/i40e.h b/drivers/net/ethernet/intel/i40e/i40e.h
index 407fe8f340a06..c5b61bc80f783 100644
--- a/drivers/net/ethernet/intel/i40e/i40e.h
+++ b/drivers/net/ethernet/intel/i40e/i40e.h
@@ -1291,4 +1291,18 @@ int i40e_add_del_cloud_filter(struct i40e_vsi *vsi,
int i40e_add_del_cloud_filter_big_buf(struct i40e_vsi *vsi,
struct i40e_cloud_filter *filter,
bool add);
+
+/**
+ * i40e_is_tc_mqprio_enabled - check if TC MQPRIO is enabled on PF
+ * @pf: pointer to a pf.
+ *
+ * Check and return value of flag I40E_FLAG_TC_MQPRIO.
+ *
+ * Return: I40E_FLAG_TC_MQPRIO set state.
+ **/
+static inline u32 i40e_is_tc_mqprio_enabled(struct i40e_pf *pf)
+{
+ return pf->flags & I40E_FLAG_TC_MQPRIO;
+}
+
#endif /* _I40E_H_ */
diff --git a/drivers/net/ethernet/intel/i40e/i40e_ethtool.c b/drivers/net/ethernet/intel/i40e/i40e_ethtool.c
index 22a61802a4027..ed9984f1e1b9f 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_ethtool.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_ethtool.c
@@ -4931,7 +4931,7 @@ static int i40e_set_channels(struct net_device *dev,
/* We do not support setting channels via ethtool when TCs are
* configured through mqprio
*/
- if (pf->flags & I40E_FLAG_TC_MQPRIO)
+ if (i40e_is_tc_mqprio_enabled(pf))
return -EINVAL;

/* verify they are not requesting separate vectors */
diff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c b/drivers/net/ethernet/intel/i40e/i40e_main.c
index 71a8e1698ed48..45c56832c14fd 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_main.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_main.c
@@ -5339,7 +5339,7 @@ static u8 i40e_pf_get_num_tc(struct i40e_pf *pf)
u8 num_tc = 0;
struct i40e_dcbx_config *dcbcfg = &hw->local_dcbx_config;

- if (pf->flags & I40E_FLAG_TC_MQPRIO)
+ if (i40e_is_tc_mqprio_enabled(pf))
return pf->vsi[pf->lan_vsi]->mqprio_qopt.qopt.num_tc;

/* If neither MQPRIO nor DCB is enabled, then always use single TC */
@@ -5371,7 +5371,7 @@ static u8 i40e_pf_get_num_tc(struct i40e_pf *pf)
**/
static u8 i40e_pf_get_tc_map(struct i40e_pf *pf)
{
- if (pf->flags & I40E_FLAG_TC_MQPRIO)
+ if (i40e_is_tc_mqprio_enabled(pf))
return i40e_mqprio_get_enabled_tc(pf);

/* If neither MQPRIO nor DCB is enabled for this PF then just return
@@ -5468,7 +5468,7 @@ static int i40e_vsi_configure_bw_alloc(struct i40e_vsi *vsi, u8 enabled_tc,
int i;

/* There is no need to reset BW when mqprio mode is on. */
- if (pf->flags & I40E_FLAG_TC_MQPRIO)
+ if (i40e_is_tc_mqprio_enabled(pf))
return 0;
if (!vsi->mqprio_qopt.qopt.hw && !(pf->flags & I40E_FLAG_DCB_ENABLED)) {
ret = i40e_set_bw_limit(vsi, vsi->seid, 0);
@@ -5540,7 +5540,7 @@ static void i40e_vsi_config_netdev_tc(struct i40e_vsi *vsi, u8 enabled_tc)
vsi->tc_config.tc_info[i].qoffset);
}

- if (pf->flags & I40E_FLAG_TC_MQPRIO)
+ if (i40e_is_tc_mqprio_enabled(pf))
return;

/* Assign UP2TC map for the VSI */
@@ -5701,7 +5701,7 @@ static int i40e_vsi_config_tc(struct i40e_vsi *vsi, u8 enabled_tc)
ctxt.vf_num = 0;
ctxt.uplink_seid = vsi->uplink_seid;
ctxt.info = vsi->info;
- if (vsi->back->flags & I40E_FLAG_TC_MQPRIO) {
+ if (i40e_is_tc_mqprio_enabled(pf)) {
ret = i40e_vsi_setup_queue_map_mqprio(vsi, &ctxt, enabled_tc);
if (ret)
goto out;
@@ -6425,7 +6425,7 @@ int i40e_create_queue_channel(struct i40e_vsi *vsi,
pf->flags |= I40E_FLAG_VEB_MODE_ENABLED;

if (vsi->type == I40E_VSI_MAIN) {
- if (pf->flags & I40E_FLAG_TC_MQPRIO)
+ if (i40e_is_tc_mqprio_enabled(pf))
i40e_do_reset(pf, I40E_PF_RESET_FLAG, true);
else
i40e_do_reset_safe(pf, I40E_PF_RESET_FLAG);
@@ -7819,7 +7819,7 @@ static void *i40e_fwd_add(struct net_device *netdev, struct net_device *vdev)
netdev_info(netdev, "Macvlans are not supported when DCB is enabled\n");
return ERR_PTR(-EINVAL);
}
- if ((pf->flags & I40E_FLAG_TC_MQPRIO)) {
+ if (i40e_is_tc_mqprio_enabled(pf)) {
netdev_info(netdev, "Macvlans are not supported when HW TC offload is on\n");
return ERR_PTR(-EINVAL);
}
@@ -8072,7 +8072,7 @@ static int i40e_setup_tc(struct net_device *netdev, void *type_data)
/* Quiesce VSI queues */
i40e_quiesce_vsi(vsi);

- if (!hw && !(pf->flags & I40E_FLAG_TC_MQPRIO))
+ if (!hw && !i40e_is_tc_mqprio_enabled(pf))
i40e_remove_queue_channels(vsi);

/* Configure VSI for enabled TCs */
@@ -8096,7 +8096,7 @@ static int i40e_setup_tc(struct net_device *netdev, void *type_data)
"Setup channel (id:%u) utilizing num_queues %d\n",
vsi->seid, vsi->tc_config.tc_info[0].qcount);

- if (pf->flags & I40E_FLAG_TC_MQPRIO) {
+ if (i40e_is_tc_mqprio_enabled(pf)) {
if (vsi->mqprio_qopt.max_rate[0]) {
u64 max_tx_rate = vsi->mqprio_qopt.max_rate[0];

@@ -10750,7 +10750,7 @@ static void i40e_rebuild(struct i40e_pf *pf, bool reinit, bool lock_acquired)
* unless I40E_FLAG_TC_MQPRIO was enabled or DCB
* is not supported with new link speed
*/
- if (pf->flags & I40E_FLAG_TC_MQPRIO) {
+ if (i40e_is_tc_mqprio_enabled(pf)) {
i40e_aq_set_dcb_parameters(hw, false, NULL);
} else {
if (I40E_IS_X710TL_DEVICE(hw->device_id) &&
--
2.35.1



2022-09-13 16:32:13

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 163/192] kbuild: disable header exports for UML in a straightforward way

From: Masahiro Yamada <[email protected]>

[ Upstream commit 1b620d539ccc18a1aca1613d9ff078115a7891a1 ]

Previously 'make ARCH=um headers' stopped because of missing
arch/um/include/uapi/asm/Kbuild.

The error is not shown since commit ed102bf2afed ("um: Fix W=1
missing-include-dirs warnings") added arch/um/include/uapi/asm/Kbuild.

Hard-code the unsupported architecture, so it works like before.

Fixes: ed102bf2afed ("um: Fix W=1 missing-include-dirs warnings")
Signed-off-by: Masahiro Yamada <[email protected]>
Acked-by: Richard Weinberger <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
Makefile | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/Makefile b/Makefile
index e361c6230e9e5..2acd87dd62591 100644
--- a/Makefile
+++ b/Makefile
@@ -1286,8 +1286,7 @@ hdr-inst := -f $(srctree)/scripts/Makefile.headersinst obj

PHONY += headers
headers: $(version_h) scripts_unifdef uapi-asm-generic archheaders archscripts
- $(if $(wildcard $(srctree)/arch/$(SRCARCH)/include/uapi/asm/Kbuild),, \
- $(error Headers not exportable for the $(SRCARCH) architecture))
+ $(if $(filter um, $(SRCARCH)), $(error Headers not exportable for UML))
$(Q)$(MAKE) $(hdr-inst)=include/uapi
$(Q)$(MAKE) $(hdr-inst)=arch/$(SRCARCH)/include/uapi

--
2.35.1



2022-09-13 16:32:25

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 135/192] nvme-tcp: fix UAF when detecting digest errors

From: Sagi Grimberg <[email protected]>

[ Upstream commit 160f3549a907a50e51a8518678ba2dcf2541abea ]

We should also bail from the io_work loop when we set rd_enabled to true,
so we don't attempt to read data from the socket when the TCP stream is
already out-of-sync or corrupted.

Fixes: 3f2304f8c6d6 ("nvme-tcp: add NVMe over TCP host driver")
Reported-by: Daniel Wagner <[email protected]>
Signed-off-by: Sagi Grimberg <[email protected]>
Reviewed-by: Daniel Wagner <[email protected]>
Signed-off-by: Christoph Hellwig <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
drivers/nvme/host/tcp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/nvme/host/tcp.c b/drivers/nvme/host/tcp.c
index 7a9e6ffa23429..40bd68ba1040a 100644
--- a/drivers/nvme/host/tcp.c
+++ b/drivers/nvme/host/tcp.c
@@ -1227,7 +1227,7 @@ static void nvme_tcp_io_work(struct work_struct *w)
else if (unlikely(result < 0))
return;

- if (!pending)
+ if (!pending || !queue->rd_enabled)
return;

} while (!time_after(jiffies, deadline)); /* quota is exhausted */
--
2.35.1



2022-09-13 16:32:56

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 023/192] arm64/signal: Raise limit on stack frames

From: Mark Brown <[email protected]>

[ Upstream commit 7ddcaf78e93c9282b4d92184f511b4d5bee75355 ]

The signal code has a limit of 64K on the size of a stack frame that it
will generate, if this limit is exceeded then a process will be killed if
it receives a signal. Unfortunately with the advent of SME this limit is
too small - the maximum possible size of the ZA register alone is 64K. This
is not an issue for practical systems at present but is easily seen using
virtual platforms.

Raise the limit to 256K, this is substantially more than could be used by
any current architecture extension.

Signed-off-by: Mark Brown <[email protected]>
Acked-by: Catalin Marinas <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Will Deacon <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
arch/arm64/kernel/signal.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/kernel/signal.c b/arch/arm64/kernel/signal.c
index 8bb631bf9464c..e8e1f46d383da 100644
--- a/arch/arm64/kernel/signal.c
+++ b/arch/arm64/kernel/signal.c
@@ -91,7 +91,7 @@ static size_t sigframe_size(struct rt_sigframe_user_layout const *user)
* not taken into account. This limit is not a guarantee and is
* NOT ABI.
*/
-#define SIGFRAME_MAXSZ SZ_64K
+#define SIGFRAME_MAXSZ SZ_256K

static int __sigframe_alloc(struct rt_sigframe_user_layout *user,
unsigned long *offset, size_t size, bool extend)
--
2.35.1



2022-09-13 16:32:57

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 181/192] Revert "arm64: kasan: Revert "arm64: mte: reset the page tag in page->flags""

This reverts commit add4bc9281e8704e5ab15616b429576c84f453a2.

On Mon, Sep 12, 2022 at 10:52:45AM +0100, Catalin Marinas wrote:
>I missed this (holidays) and it looks like it's in stable already. On
>its own it will likely break kasan_hw if used together with user-space
>MTE as this change relies on two previous commits:
>
>70c248aca9e7 ("mm: kasan: Skip unpoisoning of user pages")
>6d05141a3930 ("mm: kasan: Skip page unpoisoning only if __GFP_SKIP_KASAN_UNPOISON")
>
>The reason I did not cc stable is that there are other dependencies in
>this area. The potential issues without the above commits were rather
>theoretical, so take these patches rather as clean-ups/refactoring than
>fixes.

Signed-off-by: Sasha Levin <[email protected]>
---
arch/arm64/kernel/hibernate.c | 5 +++++
arch/arm64/kernel/mte.c | 9 +++++++++
arch/arm64/mm/copypage.c | 9 +++++++++
arch/arm64/mm/mteswap.c | 9 +++++++++
4 files changed, 32 insertions(+)

diff --git a/arch/arm64/kernel/hibernate.c b/arch/arm64/kernel/hibernate.c
index af5df48ba915b..2e248342476ea 100644
--- a/arch/arm64/kernel/hibernate.c
+++ b/arch/arm64/kernel/hibernate.c
@@ -300,6 +300,11 @@ static void swsusp_mte_restore_tags(void)
unsigned long pfn = xa_state.xa_index;
struct page *page = pfn_to_online_page(pfn);

+ /*
+ * It is not required to invoke page_kasan_tag_reset(page)
+ * at this point since the tags stored in page->flags are
+ * already restored.
+ */
mte_restore_page_tags(page_address(page), tags);

mte_free_tag_storage(tags);
diff --git a/arch/arm64/kernel/mte.c b/arch/arm64/kernel/mte.c
index b2b730233274b..f6b00743c3994 100644
--- a/arch/arm64/kernel/mte.c
+++ b/arch/arm64/kernel/mte.c
@@ -48,6 +48,15 @@ static void mte_sync_page_tags(struct page *page, pte_t old_pte,
if (!pte_is_tagged)
return;

+ page_kasan_tag_reset(page);
+ /*
+ * We need smp_wmb() in between setting the flags and clearing the
+ * tags because if another thread reads page->flags and builds a
+ * tagged address out of it, there is an actual dependency to the
+ * memory access, but on the current thread we do not guarantee that
+ * the new page->flags are visible before the tags were updated.
+ */
+ smp_wmb();
mte_clear_page_tags(page_address(page));
}

diff --git a/arch/arm64/mm/copypage.c b/arch/arm64/mm/copypage.c
index 24913271e898c..0dea80bf6de46 100644
--- a/arch/arm64/mm/copypage.c
+++ b/arch/arm64/mm/copypage.c
@@ -23,6 +23,15 @@ void copy_highpage(struct page *to, struct page *from)

if (system_supports_mte() && test_bit(PG_mte_tagged, &from->flags)) {
set_bit(PG_mte_tagged, &to->flags);
+ page_kasan_tag_reset(to);
+ /*
+ * We need smp_wmb() in between setting the flags and clearing the
+ * tags because if another thread reads page->flags and builds a
+ * tagged address out of it, there is an actual dependency to the
+ * memory access, but on the current thread we do not guarantee that
+ * the new page->flags are visible before the tags were updated.
+ */
+ smp_wmb();
mte_copy_page_tags(kto, kfrom);
}
}
diff --git a/arch/arm64/mm/mteswap.c b/arch/arm64/mm/mteswap.c
index 4334dec93bd44..a9e50e930484a 100644
--- a/arch/arm64/mm/mteswap.c
+++ b/arch/arm64/mm/mteswap.c
@@ -53,6 +53,15 @@ bool mte_restore_tags(swp_entry_t entry, struct page *page)
if (!tags)
return false;

+ page_kasan_tag_reset(page);
+ /*
+ * We need smp_wmb() in between setting the flags and clearing the
+ * tags because if another thread reads page->flags and builds a
+ * tagged address out of it, there is an actual dependency to the
+ * memory access, but on the current thread we do not guarantee that
+ * the new page->flags are visible before the tags were updated.
+ */
+ smp_wmb();
mte_restore_page_tags(page_address(page), tags);

return true;
--
2.35.1



2022-09-13 16:32:59

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 083/192] arm64: dts: freescale: verdin-imx8mp: fix atmel_mxt_ts reset polarity

From: Marcel Ziswiler <[email protected]>

[ Upstream commit 8f143b9f3849828870bb2a7f28288095ad9a329d ]

Fix reset GPIO polarity in-line with the following commit feedaacdadfc
("Input: atmel_mxt_ts - fix up inverted RESET handler").

Fixes: a39ed23bdf6e ("arm64: dts: freescale: add initial support for verdin imx8m plus")
Signed-off-by: Marcel Ziswiler <[email protected]>
Signed-off-by: Shawn Guo <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi b/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi
index fb17e329cd370..f5323291a9b24 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mp-verdin.dtsi
@@ -620,7 +620,7 @@
interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
reg = <0x4a>;
/* Verdin GPIO_2 (SODIMM 208) */
- reset-gpios = <&gpio1 1 GPIO_ACTIVE_HIGH>;
+ reset-gpios = <&gpio1 1 GPIO_ACTIVE_LOW>;
status = "disabled";
};
};
@@ -697,7 +697,7 @@
pinctrl-0 = <&pinctrl_gpio_9_dsi>, <&pinctrl_i2s_2_bclk_touch_reset>;
reg = <0x4a>;
/* Verdin I2S_2_BCLK (TOUCH_RESET#, SODIMM 42) */
- reset-gpios = <&gpio5 0 GPIO_ACTIVE_HIGH>;
+ reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
status = "disabled";
};

--
2.35.1



2022-09-13 16:33:03

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 002/192] efi: capsule-loader: Fix use-after-free in efi_capsule_write

From: Hyunwoo Kim <[email protected]>

commit 9cb636b5f6a8cc6d1b50809ec8f8d33ae0c84c95 upstream.

A race condition may occur if the user calls close() on another thread
during a write() operation on the device node of the efi capsule.

This is a race condition that occurs between the efi_capsule_write() and
efi_capsule_flush() functions of efi_capsule_fops, which ultimately
results in UAF.

So, the page freeing process is modified to be done in
efi_capsule_release() instead of efi_capsule_flush().

Cc: <[email protected]> # v4.9+
Signed-off-by: Hyunwoo Kim <[email protected]>
Link: https://lore.kernel.org/all/20220907102920.GA88602@ubuntu/
Signed-off-by: Ard Biesheuvel <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
drivers/firmware/efi/capsule-loader.c | 31 +++++++------------------------
1 file changed, 7 insertions(+), 24 deletions(-)

--- a/drivers/firmware/efi/capsule-loader.c
+++ b/drivers/firmware/efi/capsule-loader.c
@@ -243,29 +243,6 @@ failed:
}

/**
- * efi_capsule_flush - called by file close or file flush
- * @file: file pointer
- * @id: not used
- *
- * If a capsule is being partially uploaded then calling this function
- * will be treated as upload termination and will free those completed
- * buffer pages and -ECANCELED will be returned.
- **/
-static int efi_capsule_flush(struct file *file, fl_owner_t id)
-{
- int ret = 0;
- struct capsule_info *cap_info = file->private_data;
-
- if (cap_info->index > 0) {
- pr_err("capsule upload not complete\n");
- efi_free_all_buff_pages(cap_info);
- ret = -ECANCELED;
- }
-
- return ret;
-}
-
-/**
* efi_capsule_release - called by file close
* @inode: not used
* @file: file pointer
@@ -277,6 +254,13 @@ static int efi_capsule_release(struct in
{
struct capsule_info *cap_info = file->private_data;

+ if (cap_info->index > 0 &&
+ (cap_info->header.headersize == 0 ||
+ cap_info->count < cap_info->total_size)) {
+ pr_err("capsule upload not complete\n");
+ efi_free_all_buff_pages(cap_info);
+ }
+
kfree(cap_info->pages);
kfree(cap_info->phys);
kfree(file->private_data);
@@ -324,7 +308,6 @@ static const struct file_operations efi_
.owner = THIS_MODULE,
.open = efi_capsule_open,
.write = efi_capsule_write,
- .flush = efi_capsule_flush,
.release = efi_capsule_release,
.llseek = no_llseek,
};


2022-09-13 16:33:14

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 161/192] Smack: Provide read control for io_uring_cmd

From: Casey Schaufler <[email protected]>

commit dd9373402280cf4715fdc8fd5070f7d039e43511 upstream.

Limit io_uring "cmd" options to files for which the caller has
Smack read access. There may be cases where the cmd option may
be closer to a write access than a read, but there is no way
to make that determination.

Cc: [email protected]
Fixes: ee692a21e9bf ("fs,io_uring: add infrastructure for uring-cmd")
Signed-off-by: Casey Schaufler <[email protected]>
Signed-off-by: Paul Moore <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
security/smack/smack_lsm.c | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)

--- a/security/smack/smack_lsm.c
+++ b/security/smack/smack_lsm.c
@@ -42,6 +42,7 @@
#include <linux/fs_context.h>
#include <linux/fs_parser.h>
#include <linux/watch_queue.h>
+#include <linux/io_uring.h>
#include "smack.h"

#define TRANS_TRUE "TRUE"
@@ -4739,6 +4740,36 @@ static int smack_uring_sqpoll(void)
return -EPERM;
}

+/**
+ * smack_uring_cmd - check on file operations for io_uring
+ * @ioucmd: the command in question
+ *
+ * Make a best guess about whether a io_uring "command" should
+ * be allowed. Use the same logic used for determining if the
+ * file could be opened for read in the absence of better criteria.
+ */
+static int smack_uring_cmd(struct io_uring_cmd *ioucmd)
+{
+ struct file *file = ioucmd->file;
+ struct smk_audit_info ad;
+ struct task_smack *tsp;
+ struct inode *inode;
+ int rc;
+
+ if (!file)
+ return -EINVAL;
+
+ tsp = smack_cred(file->f_cred);
+ inode = file_inode(file);
+
+ smk_ad_init(&ad, __func__, LSM_AUDIT_DATA_PATH);
+ smk_ad_setfield_u_fs_path(&ad, file->f_path);
+ rc = smk_tskacc(tsp, smk_of_inode(inode), MAY_READ, &ad);
+ rc = smk_bu_credfile(file->f_cred, file, MAY_READ, rc);
+
+ return rc;
+}
+
#endif /* CONFIG_IO_URING */

struct lsm_blob_sizes smack_blob_sizes __lsm_ro_after_init = {
@@ -4896,6 +4927,7 @@ static struct security_hook_list smack_h
#ifdef CONFIG_IO_URING
LSM_HOOK_INIT(uring_override_creds, smack_uring_override_creds),
LSM_HOOK_INIT(uring_sqpoll, smack_uring_sqpoll),
+ LSM_HOOK_INIT(uring_cmd, smack_uring_cmd),
#endif
};



2022-09-13 16:33:31

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 052/192] drm/amd/display: fix memory leak when using debugfs_lookup()

From: Greg Kroah-Hartman <[email protected]>

commit cbfac7fa491651c57926c99edeb7495c6c1aeac2 upstream.

When calling debugfs_lookup() the result must have dput() called on it,
otherwise the memory will leak over time. Fix this up by properly
calling dput().

Cc: Harry Wentland <[email protected]>
Cc: Leo Li <[email protected]>
Cc: Rodrigo Siqueira <[email protected]>
Cc: Alex Deucher <[email protected]>
Cc: "Christian König" <[email protected]>
Cc: "Pan, Xinhui" <[email protected]>
Cc: David Airlie <[email protected]>
Cc: Daniel Vetter <[email protected]>
Cc: Wayne Lin <[email protected]>
Cc: hersen wu <[email protected]>
Cc: Wenjing Liu <[email protected]>
Cc: Patrik Jakobsson <[email protected]>
Cc: Thelford Williams <[email protected]>
Cc: Fangzhi Zuo <[email protected]>
Cc: Yongzhi Liu <[email protected]>
Cc: Mikita Lipski <[email protected]>
Cc: Jiapeng Chong <[email protected]>
Cc: Bhanuprakash Modem <[email protected]>
Cc: Sean Paul <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Reviewed-by: Rodrigo Siqueira <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
Signed-off-by: Rodrigo Siqueira <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c
@@ -3188,7 +3188,7 @@ void crtc_debugfs_init(struct drm_crtc *
&crc_win_y_end_fops);
debugfs_create_file_unsafe("crc_win_update", 0644, dir, crtc,
&crc_win_update_fops);
-
+ dput(dir);
}
#endif
/*


2022-09-13 16:33:48

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 143/192] RDMA/irdma: Report RNR NAK generation in device caps

From: Sindhu-Devale <[email protected]>

[ Upstream commit a261786fdc0a5bed2e5f994dcc0ffeeeb0d662c7 ]

Report RNR NAK generation when device capabilities are queried

Fixes: b48c24c2d710 ("RDMA/irdma: Implement device supported verb APIs")
Signed-off-by: Sindhu-Devale <[email protected]>
Signed-off-by: Shiraz Saleem <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Leon Romanovsky <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
drivers/infiniband/hw/irdma/verbs.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/infiniband/hw/irdma/verbs.c b/drivers/infiniband/hw/irdma/verbs.c
index e7120d7a5b4c6..ab73d1715f991 100644
--- a/drivers/infiniband/hw/irdma/verbs.c
+++ b/drivers/infiniband/hw/irdma/verbs.c
@@ -46,8 +46,11 @@ static int irdma_query_device(struct ib_device *ibdev,
props->max_sge_rd = hw_attrs->uk_attrs.max_hw_read_sges;
props->max_qp_rd_atom = hw_attrs->max_hw_ird;
props->max_qp_init_rd_atom = hw_attrs->max_hw_ord;
- if (rdma_protocol_roce(ibdev, 1))
+ if (rdma_protocol_roce(ibdev, 1)) {
+ props->device_cap_flags |= IB_DEVICE_RC_RNR_NAK_GEN;
props->max_pkeys = IRDMA_PKEY_TBL_SZ;
+ }
+
props->max_ah = rf->max_ah;
props->max_mcast_grp = rf->max_mcg;
props->max_mcast_qp_attach = IRDMA_MAX_MGS_PER_CTX;
--
2.35.1



2022-09-13 16:34:00

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 046/192] btrfs: zoned: fix API misuse of zone finish waiting

From: Naohiro Aota <[email protected]>

commit d5b81ced74afded85619ffbbe9c32ba9d82c9b1e upstream.

The commit 2ce543f47843 ("btrfs: zoned: wait until zone is finished when
allocation didn't progress") implemented a zone finish waiting mechanism
to the write path of zoned mode. However, using
wait_var_event()/wake_up_all() on fs_info->zone_finish_wait is wrong and
wait_var_event() just hangs because no one ever wakes it up once it goes
into sleep.

Instead, we can simply use wait_on_bit_io() and clear_and_wake_up_bit()
on fs_info->flags with a proper barrier installed.

Fixes: 2ce543f47843 ("btrfs: zoned: wait until zone is finished when allocation didn't progress")
CC: [email protected] # 5.16+
Signed-off-by: Naohiro Aota <[email protected]>
Signed-off-by: David Sterba <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
fs/btrfs/ctree.h | 2 --
fs/btrfs/disk-io.c | 1 -
fs/btrfs/inode.c | 7 +++----
fs/btrfs/zoned.c | 3 +--
4 files changed, 4 insertions(+), 9 deletions(-)

--- a/fs/btrfs/ctree.h
+++ b/fs/btrfs/ctree.h
@@ -1065,8 +1065,6 @@ struct btrfs_fs_info {

spinlock_t zone_active_bgs_lock;
struct list_head zone_active_bgs;
- /* Waiters when BTRFS_FS_NEED_ZONE_FINISH is set */
- wait_queue_head_t zone_finish_wait;

#ifdef CONFIG_BTRFS_FS_REF_VERIFY
spinlock_t ref_verify_lock;
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
@@ -3173,7 +3173,6 @@ void btrfs_init_fs_info(struct btrfs_fs_
init_waitqueue_head(&fs_info->transaction_blocked_wait);
init_waitqueue_head(&fs_info->async_submit_wait);
init_waitqueue_head(&fs_info->delayed_iputs_wait);
- init_waitqueue_head(&fs_info->zone_finish_wait);

/* Usable values until the real ones are cached from the superblock */
fs_info->nodesize = 4096;
--- a/fs/btrfs/inode.c
+++ b/fs/btrfs/inode.c
@@ -1643,10 +1643,9 @@ static noinline int run_delalloc_zoned(s
done_offset = end;

if (done_offset == start) {
- struct btrfs_fs_info *info = inode->root->fs_info;
-
- wait_var_event(&info->zone_finish_wait,
- !test_bit(BTRFS_FS_NEED_ZONE_FINISH, &info->flags));
+ wait_on_bit_io(&inode->root->fs_info->flags,
+ BTRFS_FS_NEED_ZONE_FINISH,
+ TASK_UNINTERRUPTIBLE);
continue;
}

--- a/fs/btrfs/zoned.c
+++ b/fs/btrfs/zoned.c
@@ -2016,8 +2016,7 @@ static int do_zone_finish(struct btrfs_b
/* For active_bg_list */
btrfs_put_block_group(block_group);

- clear_bit(BTRFS_FS_NEED_ZONE_FINISH, &fs_info->flags);
- wake_up_all(&fs_info->zone_finish_wait);
+ clear_and_wake_up_bit(BTRFS_FS_NEED_ZONE_FINISH, &fs_info->flags);

return 0;
}


2022-09-13 16:34:01

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 149/192] io_uring: recycle kbuf recycle on tw requeue

From: Pavel Begunkov <[email protected]>

[ Upstream commit 336d28a8f38013a069f2d46e73aaa1880ef17a47 ]

When we queue a request via tw for execution it's not going to be
executed immediately, so when io_queue_async() hits IO_APOLL_READY
and queues a tw but doesn't try to recycle/consume the buffer some other
request may try to use the the buffer.

Fixes: c7fb19428d67 ("io_uring: add support for ring mapped supplied buffers")
Signed-off-by: Pavel Begunkov <[email protected]>
Link: https://lore.kernel.org/r/a19bc9e211e3184215a58e129b62f440180e9212.1662480490.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
io_uring/io_uring.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/io_uring/io_uring.c b/io_uring/io_uring.c
index cd155b7e1346d..effe3570a051f 100644
--- a/io_uring/io_uring.c
+++ b/io_uring/io_uring.c
@@ -8260,6 +8260,7 @@ static void io_queue_async(struct io_kiocb *req, int ret)

switch (io_arm_poll_handler(req, 0)) {
case IO_APOLL_READY:
+ io_kbuf_recycle(req, 0);
io_req_task_queue(req);
break;
case IO_APOLL_ABORTED:
--
2.35.1



2022-09-13 16:34:13

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 008/192] Revert "mm: kmemleak: take a full lowmem check in kmemleak_*_phys()"

From: Yee Lee <[email protected]>

This reverts commit 23c2d497de21f25898fbea70aeb292ab8acc8c94.

Commit 23c2d497de21 ("mm: kmemleak: take a full lowmem check in
kmemleak_*_phys()") brought false leak alarms on some archs like arm64
that does not init pfn boundary in early booting. The final solution
lands on linux-6.0: commit 0c24e061196c ("mm: kmemleak: add rbtree and
store physical address for objects allocated with PA").

Revert this commit before linux-6.0. The original issue of invalid PA
can be mitigated by additional check in devicetree.

The false alarm report is as following: Kmemleak output: (Qemu/arm64)
unreferenced object 0xffff0000c0170a00 (size 128):
comm "swapper/0", pid 1, jiffies 4294892404 (age 126.208s)
hex dump (first 32 bytes):
62 61 73 65 00 00 00 00 00 00 00 00 00 00 00 00 base............
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
backtrace:
[<(____ptrval____)>] __kmalloc_track_caller+0x1b0/0x2e4
[<(____ptrval____)>] kstrdup_const+0x8c/0xc4
[<(____ptrval____)>] kvasprintf_const+0xbc/0xec
[<(____ptrval____)>] kobject_set_name_vargs+0x58/0xe4
[<(____ptrval____)>] kobject_add+0x84/0x100
[<(____ptrval____)>] __of_attach_node_sysfs+0x78/0xec
[<(____ptrval____)>] of_core_init+0x68/0x104
[<(____ptrval____)>] driver_init+0x28/0x48
[<(____ptrval____)>] do_basic_setup+0x14/0x28
[<(____ptrval____)>] kernel_init_freeable+0x110/0x178
[<(____ptrval____)>] kernel_init+0x20/0x1a0
[<(____ptrval____)>] ret_from_fork+0x10/0x20

This pacth is also applicable to linux-5.17.y/linux-5.18.y/linux-5.19.y

Cc: <[email protected]>
Signed-off-by: Yee Lee <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
mm/kmemleak.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

--- a/mm/kmemleak.c
+++ b/mm/kmemleak.c
@@ -1132,7 +1132,7 @@ EXPORT_SYMBOL(kmemleak_no_scan);
void __ref kmemleak_alloc_phys(phys_addr_t phys, size_t size, int min_count,
gfp_t gfp)
{
- if (PHYS_PFN(phys) >= min_low_pfn && PHYS_PFN(phys) < max_low_pfn)
+ if (!IS_ENABLED(CONFIG_HIGHMEM) || PHYS_PFN(phys) < max_low_pfn)
kmemleak_alloc(__va(phys), size, min_count, gfp);
}
EXPORT_SYMBOL(kmemleak_alloc_phys);
@@ -1146,7 +1146,7 @@ EXPORT_SYMBOL(kmemleak_alloc_phys);
*/
void __ref kmemleak_free_part_phys(phys_addr_t phys, size_t size)
{
- if (PHYS_PFN(phys) >= min_low_pfn && PHYS_PFN(phys) < max_low_pfn)
+ if (!IS_ENABLED(CONFIG_HIGHMEM) || PHYS_PFN(phys) < max_low_pfn)
kmemleak_free_part(__va(phys), size);
}
EXPORT_SYMBOL(kmemleak_free_part_phys);
@@ -1158,7 +1158,7 @@ EXPORT_SYMBOL(kmemleak_free_part_phys);
*/
void __ref kmemleak_not_leak_phys(phys_addr_t phys)
{
- if (PHYS_PFN(phys) >= min_low_pfn && PHYS_PFN(phys) < max_low_pfn)
+ if (!IS_ENABLED(CONFIG_HIGHMEM) || PHYS_PFN(phys) < max_low_pfn)
kmemleak_not_leak(__va(phys));
}
EXPORT_SYMBOL(kmemleak_not_leak_phys);
@@ -1170,7 +1170,7 @@ EXPORT_SYMBOL(kmemleak_not_leak_phys);
*/
void __ref kmemleak_ignore_phys(phys_addr_t phys)
{
- if (PHYS_PFN(phys) >= min_low_pfn && PHYS_PFN(phys) < max_low_pfn)
+ if (!IS_ENABLED(CONFIG_HIGHMEM) || PHYS_PFN(phys) < max_low_pfn)
kmemleak_ignore(__va(phys));
}
EXPORT_SYMBOL(kmemleak_ignore_phys);


2022-09-13 17:21:48

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 145/192] net: dsa: felix: access QSYS_TAG_CONFIG under tas_lock in vsc9959_sched_speed_set

From: Vladimir Oltean <[email protected]>

[ Upstream commit a4bb481aeb9d84cb53112a478e6db4705b794c34 ]

The read-modify-write of QSYS_TAG_CONFIG from vsc9959_sched_speed_set()
runs unlocked with respect to the other functions that access it, which
are vsc9959_tas_guard_bands_update(), vsc9959_qos_port_tas_set() and
vsc9959_tas_clock_adjust(). All the others are under ocelot->tas_lock,
so move the vsc9959_sched_speed_set() access under that lock as well, to
resolve the concurrency.

Fixes: 55a515b1f5a9 ("net: dsa: felix: drop oversized frames with tc-taprio instead of hanging the port")
Signed-off-by: Vladimir Oltean <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
drivers/net/dsa/ocelot/felix_vsc9959.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/dsa/ocelot/felix_vsc9959.c b/drivers/net/dsa/ocelot/felix_vsc9959.c
index 2a5822c619ef3..f1767a6b9271c 100644
--- a/drivers/net/dsa/ocelot/felix_vsc9959.c
+++ b/drivers/net/dsa/ocelot/felix_vsc9959.c
@@ -1664,13 +1664,13 @@ static void vsc9959_sched_speed_set(struct ocelot *ocelot, int port,
break;
}

+ mutex_lock(&ocelot->tas_lock);
+
ocelot_rmw_rix(ocelot,
QSYS_TAG_CONFIG_LINK_SPEED(tas_speed),
QSYS_TAG_CONFIG_LINK_SPEED_M,
QSYS_TAG_CONFIG, port);

- mutex_lock(&ocelot->tas_lock);
-
if (ocelot_port->taprio)
vsc9959_tas_guard_bands_update(ocelot, port);

--
2.35.1



2022-09-13 18:00:07

by Ronald Warsow

[permalink] [raw]
Subject: Re: [PATCH 5.19 000/192] 5.19.9-rc1 review

hallo Greg

5.19.9-rc1

compiles, boots and runs here on x86_64
(Intel i5-11400, Fedora 37 Beta)

Thanks

Tested-by: Ronald Warsow <[email protected]>

2022-09-13 18:01:22

by Greg KH

[permalink] [raw]
Subject: [PATCH 5.19 155/192] perf record: Fix synthesis failure warnings

From: Adrian Hunter <[email protected]>

[ Upstream commit faf59ec8c3c3708c64ff76b50e6f757c6b4a1054 ]

Some calls to synthesis functions set err < 0 but only warn about the
failure and continue. However they do not set err back to zero, relying
on subsequent code to do that.

That changed with the introduction of option --synth. When --synth=no
subsequent functions that set err back to zero are not called.

Fix by setting err = 0 in those cases.

Example:

Before:

$ perf record --no-bpf-event --synth=all -o /tmp/huh uname
Couldn't synthesize bpf events.
Linux
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.014 MB /tmp/huh (7 samples) ]
$ perf record --no-bpf-event --synth=no -o /tmp/huh uname
Couldn't synthesize bpf events.

After:

$ perf record --no-bpf-event --synth=no -o /tmp/huh uname
Couldn't synthesize bpf events.
Linux
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.014 MB /tmp/huh (7 samples) ]

Fixes: 41b740b6e8a994e5 ("perf record: Add --synth option")
Signed-off-by: Adrian Hunter <[email protected]>
Acked-by: Namhyung Kim <[email protected]>
Cc: Ian Rogers <[email protected]>
Cc: Jiri Olsa <[email protected]>
Cc: Namhyung Kim <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
Signed-off-by: Sasha Levin <[email protected]>
---
tools/perf/builtin-record.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c
index 9a71f0330137e..68c878b4e5e4c 100644
--- a/tools/perf/builtin-record.c
+++ b/tools/perf/builtin-record.c
@@ -1892,14 +1892,18 @@ static int record__synthesize(struct record *rec, bool tail)

err = perf_event__synthesize_bpf_events(session, process_synthesized_event,
machine, opts);
- if (err < 0)
+ if (err < 0) {
pr_warning("Couldn't synthesize bpf events.\n");
+ err = 0;
+ }

if (rec->opts.synth & PERF_SYNTH_CGROUP) {
err = perf_event__synthesize_cgroups(tool, process_synthesized_event,
machine);
- if (err < 0)
+ if (err < 0) {
pr_warning("Couldn't synthesize cgroup events.\n");
+ err = 0;
+ }
}

if (rec->opts.nr_threads_synthesize > 1) {
--
2.35.1



2022-09-14 09:42:26

by Naresh Kamboju

[permalink] [raw]
Subject: Re: [PATCH 5.19 000/192] 5.19.9-rc1 review

On Tue, 13 Sept 2022 at 19:38, Greg Kroah-Hartman
<[email protected]> wrote:
>
> This is the start of the stable review cycle for the 5.19.9 release.
> There are 192 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 Thu, 15 Sep 2022 14:03:27 +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.19.9-rc1.gz
> or in the git tree and branch at:
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.19.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h


Results from Linaro's test farm.
No regressions on arm64, arm, x86_64, and i386.

Tested-by: Linux Kernel Functional Testing <[email protected]>

NOTE:
Following Warning noticed on bcm2711-rpi-4-b while running LTP fs iogen01 tests
and this kernel built with 64k Page size with NFS mounted file system.
- CONFIG_ARM64_64K_PAGES=y

This warning is not always reproducible.

[ 1152.014544] ------------[ cut here ]------------
[ 1152.019249] WARNING: CPU: 3 PID: 56 at net/sunrpc/clnt.c:2521
call_decode+0x210/0x240
[ 1152.027211] Modules linked in: algif_hash aes_neon_bs aes_neon_blk
xhci_pci xhci_pci_renesas snd_soc_hdmi_codec raspberrypi_cpufreq
hci_uart brcmfmac btqca brcmutil btbcm bluetooth cfg80211 vc4
raspberrypi_hwmon rfkill cec reset_raspberrypi clk_raspberrypi
bcm2711_thermal iproc_rng200 rng_core drm_display_helper i2c_bcm2835
drm_cma_helper pwm_bcm2835 drm_kms_helper pcie_brcmstb crct10dif_ce
fuse drm
[ 1152.063204] CPU: 3 PID: 56 Comm: kworker/u8:3 Not tainted 5.19.9-rc1 #1
[ 1152.069920] Hardware name: Raspberry Pi 4 Model B (DT)
[ 1152.075131] Workqueue: rpciod rpc_async_schedule
[ 1152.079826] pstate: 00000005 (nzcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 1152.086894] pc : call_decode+0x210/0x240
[ 1152.090874] lr : call_decode+0xd8/0x240
[ 1152.094766] sp : ffff80000bcefca0
[ 1152.098123] x29: ffff80000bcefca0 x28: ffff800009285500 x27: ffff80000aa78a70
[ 1152.105378] x26: 0000000004248160 x25: ffff80000a110008 x24: 0000000000000001
[ 1152.112630] x23: ffff80000a110008 x22: ffff80000aa78000 x21: ffff00004ca1c050
[ 1152.119880] x20: ffff00004ca1c000 x19: ffff00004d270f90 x18: 0000000000000000
[ 1152.127129] x17: 00d0070000000000 x16: 0000000000000000 x15: ffff0000fba2b000
[ 1152.134378] x14: 0000000000000000 x13: 0000000000000002 x12: 0000000000000000
[ 1152.141626] x11: 0000000000000000 x10: 0000000000000be0 x9 : ffff8000092a15ec
[ 1152.148874] x8 : fefefefefefefeff x7 : 0000000000000018 x6 : ffff00004d271238
[ 1152.156123] x5 : 800aad4b0000ffff x4 : ffff00004d271238 x3 : 0000000000000000
[ 1152.163371] x2 : 0000000000000008 x1 : ffff00004ca1c160 x0 : 00000000ffffffff
[ 1152.170620] Call trace:
[ 1152.173098] call_decode+0x210/0x240
[ 1152.176725] __rpc_execute+0xac/0x6a4
[ 1152.180443] rpc_async_schedule+0x34/0x5c
[ 1152.184512] process_one_work+0x1dc/0x450
[ 1152.188583] worker_thread+0x154/0x450
[ 1152.192385] kthread+0xfc/0x110
[ 1152.195578] ret_from_fork+0x10/0x20
[ 1152.199207] ---[ end trace 0000000000000000 ]---

https://lkft.validation.linaro.org/scheduler/job/5525031#L1343
https://qa-reports.linaro.org/lkft/linux-stable-rc-linux-5.19.y/build/v5.19.8-193-g318d4f28213a/testrun/11883336/suite/log-parser-test/tests/

## Build
* kernel: 5.19.9-rc1
* git: https://gitlab.com/Linaro/lkft/mirrors/stable/linux-stable-rc
* git branch: linux-5.19.y
* git commit: 318d4f28213a0b7494405e08920cdd5e649199eb
* git describe: v5.19.8-193-g318d4f28213a
* test details:
https://qa-reports.linaro.org/lkft/linux-stable-rc-linux-5.19.y/build/v5.19.8-193-g318d4f28213a

## No test Regressions (compared to v5.19.8)

## No metric Regressions (compared to v5.19.8)

## No test Fixes (compared to v5.19.8)

## No metric Fixes (compared to v5.19.8)


## Test result summary
total: 113663, pass: 100760, fail: 903, skip: 11686, xfail: 314

## Build Summary
* arc: 10 total, 10 passed, 0 failed
* arm: 333 total, 333 passed, 0 failed
* arm64: 65 total, 63 passed, 2 failed
* i386: 55 total, 53 passed, 2 failed
* mips: 56 total, 56 passed, 0 failed
* parisc: 12 total, 12 passed, 0 failed
* powerpc: 69 total, 63 passed, 6 failed
* riscv: 27 total, 22 passed, 5 failed
* s390: 21 total, 21 passed, 0 failed
* sh: 24 total, 24 passed, 0 failed
* sparc: 12 total, 12 passed, 0 failed
* x86_64: 58 total, 56 passed, 2 failed

## Test suites summary
* fwts
* igt-gpu-tools
* kselftest-android
* kselftest-arm64
* kselftest-arm64/arm64.btitest.bti_c_func
* kselftest-arm64/arm64.btitest.bti_j_func
* kselftest-arm64/arm64.btitest.bti_jc_func
* kselftest-arm64/arm64.btitest.bti_none_func
* kselftest-arm64/arm64.btitest.nohint_func
* kselftest-arm64/arm64.btitest.paciasp_func
* kselftest-arm64/arm64.nobtitest.bti_c_func
* kselftest-arm64/arm64.nobtitest.bti_j_func
* kselftest-arm64/arm64.nobtitest.bti_jc_func
* kselftest-arm64/arm64.nobtitest.bti_none_func
* kselftest-arm64/arm64.nobtitest.nohint_func
* kselftest-arm64/arm64.nobtitest.paciasp_func
* kselftest-breakpoints
* kselftest-capabilities
* kselftest-cgroup
* kselftest-clone3
* kselftest-core
* kselftest-cpu-hotplug
* kselftest-cpufreq
* kselftest-drivers-dma-buf
* kselftest-efivarfs
* kselftest-filesystems
* kselftest-filesystems-binderfs
* kselftest-firmware
* kselftest-fpu
* kselftest-futex
* kselftest-gpio
* kselftest-intel_pstate
* kselftest-ipc
* kselftest-ir
* kselftest-kcmp
* kselftest-kexec
* kselftest-kvm
* kselftest-lib
* kselftest-livepatch
* kselftest-membarrier
* kselftest-memfd
* kselftest-memory-hotplug
* kselftest-mincore
* kselftest-mount
* kselftest-mqueue
* kselftest-netfilter
* kselftest-nsfs
* kselftest-openat2
* kselftest-pid_namespace
* kselftest-pidfd
* kselftest-proc
* kselftest-pstore
* kselftest-ptrace
* kselftest-rseq
* kselftest-rtc
* kselftest-seccomp
* kselftest-sigaltstack
* kselftest-size
* kselftest-splice
* kselftest-static_keys
* kselftest-sync
* kselftest-sysctl
* kselftest-tc-testing
* kselftest-timens
* kselftest-timers
* kselftest-tmpfs
* kselftest-tpm2
* kselftest-user
* kselftest-vm
* kselftest-x86
* kselftest-zram
* kunit
* kvm-unit-tests
* libgpiod
* libhugetlbfs
* log-parser-boot
* log-parser-test
* ltp-cap_bounds
* ltp-commands
* ltp-containers
* ltp-controllers
* ltp-cpuhotplug
* ltp-crypto
* ltp-cve
* ltp-dio
* ltp-fcntl-locktests
* ltp-filecaps
* ltp-fs
* ltp-fs_bind
* ltp-fs_perms_simple
* ltp-fsx
* ltp-hugetlb
* ltp-io
* ltp-ipc
* ltp-math
* ltp-mm
* ltp-nptl
* ltp-open-posix-tests
* ltp-pty
* ltp-sched
* ltp-securebits
* ltp-smoke
* ltp-syscalls
* ltp-tracing
* network-basic-tests
* packetdrill
* perf
* perf/Zstd-perf.data-compression
* rcutorture
* v4l2-compliance
* vdso

--
Linaro LKFT
https://lkft.linaro.org

2022-09-14 09:48:23

by Sudip Mukherjee

[permalink] [raw]
Subject: Re: [PATCH 5.19 000/192] 5.19.9-rc1 review

Hi Greg,

On Tue, Sep 13, 2022 at 04:01:46PM +0200, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 5.19.9 release.
> There are 192 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 Thu, 15 Sep 2022 14:03:27 +0000.
> Anything received after that time might be too late.

Build test (gcc version 12.2.1 20220819):
mips: 59 configs -> no failure
arm: 99 configs -> no failure
arm64: 3 configs -> no failure
x86_64: 4 configs -> no failure
alpha allmodconfig -> no failure
csky allmodconfig -> no failure
powerpc allmodconfig -> no failure
riscv allmodconfig -> no failure
s390 allmodconfig -> no failure
xtensa allmodconfig -> no failure

Boot test:
x86_64: Booted on my test laptop. No regression.
x86_64: Booted on qemu. No regression. [1]
arm64: Booted on rpi4b (4GB model). No regression. [2]
mips: Booted on ci20 board. No regression. [3]

[1]. https://openqa.qa.codethink.co.uk/tests/1821
[2]. https://openqa.qa.codethink.co.uk/tests/1826
[3]. https://openqa.qa.codethink.co.uk/tests/1828

Tested-by: Sudip Mukherjee <[email protected]>

--
Regards
Sudip

2022-09-14 10:23:04

by Bagas Sanjaya

[permalink] [raw]
Subject: Re: [PATCH 5.19 000/192] 5.19.9-rc1 review

On Tue, Sep 13, 2022 at 04:01:46PM +0200, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 5.19.9 release.
> There are 192 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.
>

Successfully cross-compiled for arm64 (bcm2711_defconfig, GCC 10.2.0) and
powerpc (ps3_defconfig, GCC 12.1.0).

Tested-by: Bagas Sanjaya <[email protected]>

--
An old man doll... just what I always wanted! - Clara


Attachments:
(No filename) (538.00 B)
signature.asc (235.00 B)
Download all attachments

2022-09-14 11:02:22

by Ron Economos

[permalink] [raw]
Subject: Re: [PATCH 5.19 000/192] 5.19.9-rc1 review

On 9/13/22 7:01 AM, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 5.19.9 release.
> There are 192 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 Thu, 15 Sep 2022 14:03:27 +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.19.9-rc1.gz
> or in the git tree and branch at:
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.19.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h

Built and booted successfully on RISC-V RV64 (HiFive Unmatched).

Tested-by: Ron Economos <[email protected]>

2022-09-14 15:31:53

by Guenter Roeck

[permalink] [raw]
Subject: Re: [PATCH 5.19 000/192] 5.19.9-rc1 review

On Tue, Sep 13, 2022 at 04:01:46PM +0200, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 5.19.9 release.
> There are 192 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 Thu, 15 Sep 2022 14:03:27 +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.19.9-rc1.gz
> or in the git tree and branch at:
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.19.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h
>
> -------------
> Pseudo-Shortlog of commits:
>
[ ... ]
> Cs?k?s Bence <[email protected]>
> net: fec: Use a spinlock to guard `fep->ptp_clk_on`
>

This commit is broken, will be reverted upstream, and should not be
applied to any stable releases.

Guenter

2022-09-14 16:08:33

by Greg KH

[permalink] [raw]
Subject: Re: [PATCH 5.19 000/192] 5.19.9-rc1 review

On Wed, Sep 14, 2022 at 07:28:43AM -0700, Guenter Roeck wrote:
> On Tue, Sep 13, 2022 at 04:01:46PM +0200, Greg Kroah-Hartman wrote:
> > This is the start of the stable review cycle for the 5.19.9 release.
> > There are 192 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 Thu, 15 Sep 2022 14:03:27 +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.19.9-rc1.gz
> > or in the git tree and branch at:
> > git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.19.y
> > and the diffstat can be found below.
> >
> > thanks,
> >
> > greg k-h
> >
> > -------------
> > Pseudo-Shortlog of commits:
> >
> [ ... ]
> > Cs?k?s Bence <[email protected]>
> > net: fec: Use a spinlock to guard `fep->ptp_clk_on`
> >
>
> This commit is broken, will be reverted upstream, and should not be
> applied to any stable releases.

Already dropped from all queues, thanks.

greg k-h

2022-09-14 21:48:33

by Florian Fainelli

[permalink] [raw]
Subject: Re: [PATCH 5.19 000/192] 5.19.9-rc1 review

On 9/13/22 07:01, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 5.19.9 release.
> There are 192 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 Thu, 15 Sep 2022 14:03:27 +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.19.9-rc1.gz
> or in the git tree and branch at:
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.19.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h

On ARCH_BRCMSTB using 32-bit and 64-bit ARM kernels, build tested on
BMIPS_GENERIC:

Tested-by: Florian Fainelli <[email protected]>
--
Florian

2022-09-15 00:34:21

by Guenter Roeck

[permalink] [raw]
Subject: Re: [PATCH 5.19 000/192] 5.19.9-rc1 review

On Tue, Sep 13, 2022 at 04:01:46PM +0200, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 5.19.9 release.
> There are 192 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 Thu, 15 Sep 2022 14:03:27 +0000.
> Anything received after that time might be too late.
>

Build results:
total: 150 pass: 150 fail: 0
Qemu test results:
total: 490 pass: 490 fail: 0

New runtime warning

BUG: sleeping function called from invalid context at drivers/clk/imx/clk-pllv3.c:68

thanks to:

> Cs?k?s Bence <[email protected]>
> net: fec: Use a spinlock to guard `fep->ptp_clk_on`

In the assumption that this patch will be dropped

Tested-by: Guenter Roeck <[email protected]>

Guenter

2022-09-15 02:55:08

by Florian Fainelli

[permalink] [raw]
Subject: Re: [PATCH 5.19 000/192] 5.19.9-rc1 review



On 9/14/2022 5:09 PM, Guenter Roeck wrote:
> On Tue, Sep 13, 2022 at 04:01:46PM +0200, Greg Kroah-Hartman wrote:
>> This is the start of the stable review cycle for the 5.19.9 release.
>> There are 192 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 Thu, 15 Sep 2022 14:03:27 +0000.
>> Anything received after that time might be too late.
>>
>
> Build results:
> total: 150 pass: 150 fail: 0
> Qemu test results:
> total: 490 pass: 490 fail: 0
>
> New runtime warning
>
> BUG: sleeping function called from invalid context at drivers/clk/imx/clk-pllv3.c:68
>
> thanks to:
>
>> Csókás Bence <[email protected]>
>> net: fec: Use a spinlock to guard `fep->ptp_clk_on`
>
> In the assumption that this patch will be dropped
>
> Tested-by: Guenter Roeck <[email protected]>

It is being reverted upstream:

https://lore.kernel.org/netdev/[email protected]/

So probably best to just drop that patch.
--
Florian

2022-09-15 05:50:25

by Jiri Slaby

[permalink] [raw]
Subject: Re: [PATCH 5.19 000/192] 5.19.9-rc1 review

On 13. 09. 22, 16:01, Greg Kroah-Hartman wrote:
> This is the start of the stable review cycle for the 5.19.9 release.
> There are 192 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 Thu, 15 Sep 2022 14:03:27 +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.19.9-rc1.gz
> or in the git tree and branch at:
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.19.y
> and the diffstat can be found below.

openSUSE configs¹⁾ all green.

Tested-by: Jiri Slaby <[email protected]>

¹⁾ armv6hl armv7hl arm64 i386 ppc64 ppc64le riscv64 s390x x86_64

--
js
suse labs

2022-09-15 07:44:38

by Greg KH

[permalink] [raw]
Subject: Re: [PATCH 5.19 000/192] 5.19.9-rc1 review

On Wed, Sep 14, 2022 at 07:24:42PM -0700, Florian Fainelli wrote:
>
>
> On 9/14/2022 5:09 PM, Guenter Roeck wrote:
> > On Tue, Sep 13, 2022 at 04:01:46PM +0200, Greg Kroah-Hartman wrote:
> > > This is the start of the stable review cycle for the 5.19.9 release.
> > > There are 192 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 Thu, 15 Sep 2022 14:03:27 +0000.
> > > Anything received after that time might be too late.
> > >
> >
> > Build results:
> > total: 150 pass: 150 fail: 0
> > Qemu test results:
> > total: 490 pass: 490 fail: 0
> >
> > New runtime warning
> >
> > BUG: sleeping function called from invalid context at drivers/clk/imx/clk-pllv3.c:68
> >
> > thanks to:
> >
> > > Cs?k?s Bence <[email protected]>
> > > net: fec: Use a spinlock to guard `fep->ptp_clk_on`
> >
> > In the assumption that this patch will be dropped
> >
> > Tested-by: Guenter Roeck <[email protected]>
>
> It is being reverted upstream:
>
> https://lore.kernel.org/netdev/[email protected]/
>
> So probably best to just drop that patch.

It is already dropped, thanks.

greg k-h