This is the start of the stable review cycle for the 6.1.100 release.
There are 96 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, 18 Jul 2024 15:27:21 +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.100-rc…
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.100-rc1
Dan Carpenter <dan.carpenter(a)linaro.org>
i2c: rcar: fix error code in probe()
Nathan Chancellor <nathan(a)kernel.org>
kbuild: Make ld-version.sh more robust against version string changes
Alexandre Chartre <alexandre.chartre(a)oracle.com>
x86/bhi: Avoid warning in #DB handler due to BHI mitigation
Brian Gerst <brgerst(a)gmail.com>
x86/entry/64: Remove obsolete comment on tracing vs. SYSRET
Wolfram Sang <wsa+renesas(a)sang-engineering.com>
i2c: rcar: clear NO_RXDMA flag after resetting
Wolfram Sang <wsa+renesas(a)sang-engineering.com>
i2c: testunit: avoid re-issued work after read message
Wolfram Sang <wsa+renesas(a)sang-engineering.com>
i2c: rcar: ensure Gen3+ reset does not disturb local targets
Wolfram Sang <wsa+renesas(a)sang-engineering.com>
i2c: rcar: introduce Gen4 devices
Wolfram Sang <wsa+renesas(a)sang-engineering.com>
i2c: rcar: reset controller is mandatory for Gen3+
Wolfram Sang <wsa+renesas(a)sang-engineering.com>
i2c: mark HostNotify target address as used
Wolfram Sang <wsa+renesas(a)sang-engineering.com>
i2c: rcar: bring hardware to known state when probing
John Stultz <jstultz(a)google.com>
sched: Move psi_account_irqtime() out of update_rq_clock_task() hotpath
Ryusuke Konishi <konishi.ryusuke(a)gmail.com>
nilfs2: fix kernel bug on rename operation of broken directory
Eduard Zingerman <eddyz87(a)gmail.com>
bpf: Allow reads from uninit stack
Paulo Alcantara <pc(a)manguebit.com>
cifs: avoid dup prefix path in dfs_get_automount_devname()
Paulo Alcantara <pc(a)cjr.nz>
cifs: use origin fullpath for automounts
Jim Mattson <jmattson(a)google.com>
x86/retpoline: Move a NOENDBR annotation to the SRSO dummy return thunk
Ekansh Gupta <quic_ekangupt(a)quicinc.com>
misc: fastrpc: Copy the complete capability structure to user
Ekansh Gupta <quic_ekangupt(a)quicinc.com>
misc: fastrpc: Avoid updating PD type for capability request
Ekansh Gupta <quic_ekangupt(a)quicinc.com>
misc: fastrpc: Fix DSP capabilities request
Jason A. Donenfeld <Jason(a)zx2c4.com>
wireguard: send: annotate intentional data race in checking empty queue
Jason A. Donenfeld <Jason(a)zx2c4.com>
wireguard: queueing: annotate intentional data race in cpu round robin
Helge Deller <deller(a)kernel.org>
wireguard: allowedips: avoid unaligned 64-bit memory accesses
Jason A. Donenfeld <Jason(a)zx2c4.com>
wireguard: selftests: use acpi=off instead of -no-acpi for recent QEMU
Kuan-Wei Chiu <visitorckw(a)gmail.com>
ACPI: processor_idle: Fix invalid comparison with insertion sort for latency
Ilya Dryomov <idryomov(a)gmail.com>
libceph: fix race between delayed_work() and ceph_monc_stop()
Audra Mitchell <audra(a)redhat.com>
Fix userfaultfd_api to return EINVAL as expected
Edson Juliano Drosdeck <edson.drosdeck(a)gmail.com>
ALSA: hda/realtek: Limit mic boost on VAIO PRO PX
Nazar Bilinskyi <nbilinskyi(a)gmail.com>
ALSA: hda/realtek: Enable Mute LED on HP 250 G7
Michał Kopeć <michal.kopec(a)3mdeb.com>
ALSA: hda/realtek: add quirk for Clevo V5[46]0TU
Armin Wolf <W_Armin(a)gmx.de>
platform/x86: toshiba_acpi: Fix array out-of-bounds access
Thomas Weißschuh <linux(a)weissschuh.net>
nvmem: core: only change name to fram for current attribute
Joy Chakraborty <joychakr(a)google.com>
nvmem: meson-efuse: Fix return value of nvmem callbacks
Joy Chakraborty <joychakr(a)google.com>
nvmem: rmem: Fix return value of rmem_read()
Hobin Woo <hobin.woo(a)samsung.com>
ksmbd: discard write access to the directory open
Mathias Nyman <mathias.nyman(a)linux.intel.com>
xhci: always resume roothubs if xHC was reset during resume
He Zhe <zhe.he(a)windriver.com>
hpet: Support 32-bit userspace
Alan Stern <stern(a)rowland.harvard.edu>
USB: core: Fix duplicate endpoint bug by clearing reserved bits in the descriptor
Lee Jones <lee(a)kernel.org>
usb: gadget: configfs: Prevent OOB read/write in usb_string_copy()
WangYuli <wangyuli(a)uniontech.com>
USB: Add USB_QUIRK_NO_SET_INTF quirk for START BP-850k
Dmitry Smirnov <d.smirnov(a)inbox.lv>
USB: serial: mos7840: fix crash on resume
Vanillan Wang <vanillanwang(a)163.com>
USB: serial: option: add Rolling RW350-GL variants
Mank Wang <mank.wang(a)netprisma.us>
USB: serial: option: add Netprisma LCUK54 series modules
Slark Xiao <slark_xiao(a)163.com>
USB: serial: option: add support for Foxconn T99W651
Bjørn Mork <bjorn(a)mork.no>
USB: serial: option: add Fibocom FM350-GL
Daniele Palmas <dnlplm(a)gmail.com>
USB: serial: option: add Telit FN912 rmnet compositions
Daniele Palmas <dnlplm(a)gmail.com>
USB: serial: option: add Telit generic core-dump composition
Ronald Wahl <ronald.wahl(a)raritan.com>
net: ks8851: Fix potential TX stall after interface reopen
Ronald Wahl <ronald.wahl(a)raritan.com>
net: ks8851: Fix deadlock with the SPI chip variant
Eric Dumazet <edumazet(a)google.com>
tcp: avoid too many retransmit packets
Eric Dumazet <edumazet(a)google.com>
tcp: use signed arithmetic in tcp_rtx_probe0_timed_out()
Josh Don <joshdon(a)google.com>
Revert "sched/fair: Make sure to try to detach at least one movable task"
Steve French <stfrench(a)microsoft.com>
cifs: fix setting SecurityFlags to true
Satheesh Paul <psatheesh(a)marvell.com>
octeontx2-af: fix issue with IPv4 match for RSS
Kiran Kumar K <kirankumark(a)marvell.com>
octeontx2-af: fix issue with IPv6 ext match for RSS
Kiran Kumar K <kirankumark(a)marvell.com>
octeontx2-af: extend RSS supported offload types
Michal Mazur <mmazur2(a)marvell.com>
octeontx2-af: fix detection of IP layer
Srujana Challa <schalla(a)marvell.com>
octeontx2-af: fix a issue with cpt_lf_alloc mailbox
Srujana Challa <schalla(a)marvell.com>
octeontx2-af: update cpt lf alloc mailbox
Nithin Dabilpuram <ndabilpuram(a)marvell.com>
octeontx2-af: replace cpt slot with lf id on reg write
Chen Ni <nichen(a)iscas.ac.cn>
ARM: davinci: Convert comma to semicolon
Richard Fitzgerald <rf(a)opensource.cirrus.com>
firmware: cs_dsp: Use strnlen() on name fields in V1 wmfw files
Richard Fitzgerald <rf(a)opensource.cirrus.com>
firmware: cs_dsp: Prevent buffer overrun when processing V2 alg headers
Richard Fitzgerald <rf(a)opensource.cirrus.com>
firmware: cs_dsp: Validate payload length before processing block
Richard Fitzgerald <rf(a)opensource.cirrus.com>
firmware: cs_dsp: Return error if block header overflows file
Richard Fitzgerald <rf(a)opensource.cirrus.com>
firmware: cs_dsp: Fix overflow checking of wmfw header
Sven Schnelle <svens(a)linux.ibm.com>
s390: Mark psw in __load_psw_mask() as __unitialized
Daniel Borkmann <daniel(a)iogearbox.net>
net, sunrpc: Remap EPERM in case of connection failure in xs_tcp_setup_socket
Chengen Du <chengen.du(a)canonical.com>
net/sched: Fix UAF when resolving a clash
Kuniyuki Iwashima <kuniyu(a)amazon.com>
udp: Set SOCK_RCU_FREE earlier in udp_lib_get_port().
Oleksij Rempel <linux(a)rempel-privat.de>
ethtool: netlink: do not return SQI value if link is down
Dmitry Antipov <dmantipov(a)yandex.ru>
ppp: reject claimed-as-LCP but actually malformed packets
Jian Hui Lee <jianhui.lee(a)canonical.com>
net: ethernet: mtk-star-emac: set mac_managed_pm when probing
Mohammad Shehar Yaar Tausif <sheharyaar48(a)gmail.com>
bpf: fix order of args in call to bpf_map_kvcalloc
Martin KaFai Lau <martin.lau(a)kernel.org>
bpf: Remove __bpf_local_storage_map_alloc
Yafang Shao <laoar.shao(a)gmail.com>
bpf: use bpf_map_kvcalloc in bpf_local_storage
Martin KaFai Lau <martin.lau(a)kernel.org>
bpf: Reduce smap->elem_size
Yonghong Song <yhs(a)fb.com>
bpf: Refactor some inode/task/sk storage functions for reuse
Aleksander Jan Bajkowski <olek2(a)wp.pl>
net: ethernet: lantiq_etop: fix double free in detach
Michal Kubiak <michal.kubiak(a)intel.com>
i40e: Fix XDP program unloading while removing the driver
Hugh Dickins <hughd(a)google.com>
net: fix rc7's __skb_datagram_iter()
Aleksandr Mishin <amishin(a)t-argos.ru>
octeontx2-af: Fix incorrect value output on error path in rvu_check_rsrc_availability()
Geliang Tang <tanggeliang(a)kylinos.cn>
skmsg: Skip zero length skb in sk_msg_recvmsg
Oleksij Rempel <linux(a)rempel-privat.de>
net: phy: microchip: lan87xx: reinit PHY after cable test
Neal Cardwell <ncardwell(a)google.com>
tcp: fix incorrect undo caused by DSACK of TLP retransmit
Brian Foster <bfoster(a)redhat.com>
vfs: don't mod negative dentry count when on shrinker list
linke li <lilinke99(a)qq.com>
fs/dcache: Re-use value stored to dentry->d_flags instead of re-reading
Jeff Layton <jlayton(a)kernel.org>
filelock: fix potential use-after-free in posix_lock_inode
Jingbo Xu <jefflexu(a)linux.alibaba.com>
cachefiles: add missing lock protection when polling
Baokun Li <libaokun1(a)huawei.com>
cachefiles: cyclic allocation of msg_id to avoid reuse
Hou Tao <houtao1(a)huawei.com>
cachefiles: wait for ondemand_object_worker to finish when dropping object
Baokun Li <libaokun1(a)huawei.com>
cachefiles: cancel all requests for the object that is being dropped
Baokun Li <libaokun1(a)huawei.com>
cachefiles: stop sending new request when dropping object
Jia Zhu <zhujia.zj(a)bytedance.com>
cachefiles: narrow the scope of triggering EPOLLIN events in ondemand mode
Baokun Li <libaokun1(a)huawei.com>
cachefiles: propagate errors from vfs_getxattr() to avoid infinite loop
Waiman Long <longman(a)redhat.com>
mm: prevent derefencing NULL ptr in pfn_section_valid()
-------------
Diffstat:
Documentation/admin-guide/cifs/usage.rst | 34 +--
Makefile | 4 +-
arch/arm/mach-davinci/pm.c | 2 +-
arch/s390/include/asm/processor.h | 2 +-
arch/x86/entry/entry_64.S | 19 +-
arch/x86/entry/entry_64_compat.S | 14 +-
arch/x86/lib/retpoline.S | 2 +-
drivers/acpi/processor_idle.c | 37 ++--
drivers/char/hpet.c | 34 ++-
drivers/firmware/cirrus/cs_dsp.c | 231 +++++++++++++++------
drivers/i2c/busses/i2c-rcar.c | 67 +++---
drivers/i2c/i2c-core-base.c | 1 +
drivers/i2c/i2c-slave-testunit.c | 7 +
drivers/misc/fastrpc.c | 14 +-
drivers/net/ethernet/intel/i40e/i40e_main.c | 9 +-
drivers/net/ethernet/lantiq_etop.c | 4 +-
drivers/net/ethernet/marvell/octeontx2/af/mbox.h | 10 +-
drivers/net/ethernet/marvell/octeontx2/af/npc.h | 8 +-
drivers/net/ethernet/marvell/octeontx2/af/rvu.c | 2 +-
.../net/ethernet/marvell/octeontx2/af/rvu_cpt.c | 33 ++-
.../net/ethernet/marvell/octeontx2/af/rvu_nix.c | 67 +++++-
drivers/net/ethernet/mediatek/mtk_star_emac.c | 7 +
drivers/net/ethernet/micrel/ks8851_common.c | 10 +-
drivers/net/ethernet/micrel/ks8851_spi.c | 4 +-
drivers/net/phy/microchip_t1.c | 2 +-
drivers/net/ppp/ppp_generic.c | 15 ++
drivers/net/wireguard/allowedips.c | 4 +-
drivers/net/wireguard/queueing.h | 4 +-
drivers/net/wireguard/send.c | 2 +-
drivers/nvmem/core.c | 5 +-
drivers/nvmem/meson-efuse.c | 14 +-
drivers/nvmem/rmem.c | 5 +-
drivers/platform/x86/toshiba_acpi.c | 1 +
drivers/usb/core/config.c | 18 +-
drivers/usb/core/quirks.c | 3 +
drivers/usb/gadget/configfs.c | 3 +
drivers/usb/host/xhci.c | 16 +-
drivers/usb/serial/mos7840.c | 45 ++++
drivers/usb/serial/option.c | 38 ++++
fs/cachefiles/daemon.c | 14 +-
fs/cachefiles/internal.h | 15 ++
fs/cachefiles/ondemand.c | 52 ++++-
fs/cachefiles/xattr.c | 5 +-
fs/dcache.c | 12 +-
fs/locks.c | 2 +-
fs/nilfs2/dir.c | 32 ++-
fs/smb/client/cifs_dfs_ref.c | 36 +++-
fs/smb/client/cifsglob.h | 4 +-
fs/smb/client/cifsproto.h | 36 ++++
fs/smb/client/dir.c | 21 +-
fs/smb/server/smb2pdu.c | 13 +-
fs/userfaultfd.c | 7 +-
include/linux/bpf.h | 8 +
include/linux/bpf_local_storage.h | 17 +-
include/linux/mmzone.h | 3 +-
kernel/bpf/bpf_inode_storage.c | 38 +---
kernel/bpf/bpf_local_storage.c | 199 +++++++++++-------
kernel/bpf/bpf_task_storage.c | 38 +---
kernel/bpf/syscall.c | 15 ++
kernel/bpf/verifier.c | 11 +-
kernel/sched/core.c | 7 +-
kernel/sched/fair.c | 12 +-
kernel/sched/psi.c | 21 +-
kernel/sched/sched.h | 1 +
kernel/sched/stats.h | 11 +-
net/ceph/mon_client.c | 14 +-
net/core/bpf_sk_storage.c | 35 +---
net/core/datagram.c | 3 +-
net/core/skmsg.c | 3 +-
net/ethtool/linkstate.c | 41 ++--
net/ipv4/tcp_input.c | 11 +-
net/ipv4/tcp_timer.c | 31 ++-
net/ipv4/udp.c | 4 +-
net/sched/act_ct.c | 8 +
net/sunrpc/xprtsock.c | 7 +
scripts/ld-version.sh | 8 +-
sound/pci/hda/patch_realtek.c | 4 +
.../selftests/bpf/progs/test_global_func10.c | 9 +-
tools/testing/selftests/bpf/verifier/calls.c | 13 +-
.../selftests/bpf/verifier/helper_access_var_len.c | 104 ++++++----
tools/testing/selftests/bpf/verifier/int_ptr.c | 9 +-
.../selftests/bpf/verifier/search_pruning.c | 13 +-
tools/testing/selftests/bpf/verifier/sock.c | 27 ---
tools/testing/selftests/bpf/verifier/spill_fill.c | 7 +-
tools/testing/selftests/bpf/verifier/var_off.c | 52 -----
tools/testing/selftests/wireguard/qemu/Makefile | 8 +-
86 files changed, 1204 insertions(+), 634 deletions(-)
This is the start of the stable review cycle for the 4.19.318 release.
There are 66 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, 18 Jul 2024 15:27:21 +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/v4.x/stable-review/patch-4.19.318-r…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.19.y
and the diffstat can be found below.
thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:
Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Linux 4.19.318-rc1
Wolfram Sang <wsa+renesas(a)sang-engineering.com>
i2c: rcar: bring hardware to known state when probing
Ryusuke Konishi <konishi.ryusuke(a)gmail.com>
nilfs2: fix kernel bug on rename operation of broken directory
felix <fuzhen5(a)huawei.com>
SUNRPC: Fix RPC client cleaned up the freed pipefs dentries
Eric Dumazet <edumazet(a)google.com>
tcp: avoid too many retransmit packets
Eric Dumazet <edumazet(a)google.com>
tcp: use signed arithmetic in tcp_rtx_probe0_timed_out()
Menglong Dong <imagedong(a)tencent.com>
net: tcp: fix unexcepted socket die when snd_wnd is 0
Eric Dumazet <edumazet(a)google.com>
tcp: refactor tcp_retransmit_timer()
Ilya Dryomov <idryomov(a)gmail.com>
libceph: fix race between delayed_work() and ceph_monc_stop()
He Zhe <zhe.he(a)windriver.com>
hpet: Support 32-bit userspace
Alan Stern <stern(a)rowland.harvard.edu>
USB: core: Fix duplicate endpoint bug by clearing reserved bits in the descriptor
Lee Jones <lee(a)kernel.org>
usb: gadget: configfs: Prevent OOB read/write in usb_string_copy()
WangYuli <wangyuli(a)uniontech.com>
USB: Add USB_QUIRK_NO_SET_INTF quirk for START BP-850k
Vanillan Wang <vanillanwang(a)163.com>
USB: serial: option: add Rolling RW350-GL variants
Mank Wang <mank.wang(a)netprisma.us>
USB: serial: option: add Netprisma LCUK54 series modules
Slark Xiao <slark_xiao(a)163.com>
USB: serial: option: add support for Foxconn T99W651
Bjørn Mork <bjorn(a)mork.no>
USB: serial: option: add Fibocom FM350-GL
Daniele Palmas <dnlplm(a)gmail.com>
USB: serial: option: add Telit FN912 rmnet compositions
Daniele Palmas <dnlplm(a)gmail.com>
USB: serial: option: add Telit generic core-dump composition
Chen Ni <nichen(a)iscas.ac.cn>
ARM: davinci: Convert comma to semicolon
Sven Schnelle <svens(a)linux.ibm.com>
s390: Mark psw in __load_psw_mask() as __unitialized
Dmitry Antipov <dmantipov(a)yandex.ru>
ppp: reject claimed-as-LCP but actually malformed packets
Aleksander Jan Bajkowski <olek2(a)wp.pl>
net: ethernet: lantiq_etop: fix double free in detach
Aleksander Jan Bajkowski <olek2(a)wp.pl>
net: lantiq_etop: add blank line after declaration
Neal Cardwell <ncardwell(a)google.com>
tcp: fix incorrect undo caused by DSACK of TLP retransmit
Daniele Ceraolo Spurio <daniele.ceraolospurio(a)intel.com>
drm/i915: make find_fw_domain work on intel_uncore
Ryusuke Konishi <konishi.ryusuke(a)gmail.com>
nilfs2: fix incorrect inode allocation from reserved inodes
Piotr Wojtaszczyk <piotr.wojtaszczyk(a)timesys.com>
i2c: pnx: Fix potential deadlock warning from del_timer_sync() call in isr
Mauro Carvalho Chehab <mchehab(a)kernel.org>
media: dw2102: fix a potential buffer overflow
Ghadi Elie Rahme <ghadi.rahme(a)canonical.com>
bnx2x: Fix multiple UBSAN array-index-out-of-bounds
Alex Deucher <alexander.deucher(a)amd.com>
drm/amdgpu/atomfirmware: silence UBSAN warning
Ma Ke <make24(a)iscas.ac.cn>
drm/nouveau: fix null pointer dereference in nouveau_connector_get_modes
Jan Kara <jack(a)suse.cz>
Revert "mm/writeback: fix possible divide-by-zero in wb_dirty_limits(), again"
Jan Kara <jack(a)suse.cz>
fsnotify: Do not generate events for O_PATH file descriptors
Jimmy Assarsson <extja(a)kvaser.com>
can: kvaser_usb: Explicitly initialize family in leafimx driver_info struct
Jaganath Kanakkassery <jaganath.k.os(a)gmail.com>
Bluetooth: Fix incorrect pointer arithmatic in ext_adv_report_evt
Jinliang Zheng <alexjlzheng(a)tencent.com>
mm: optimize the redundant loop of mm_update_owner_next()
Ryusuke Konishi <konishi.ryusuke(a)gmail.com>
nilfs2: add missing check for inode numbers on directory entries
Ryusuke Konishi <konishi.ryusuke(a)gmail.com>
nilfs2: fix inode number range checks
Shigeru Yoshida <syoshida(a)redhat.com>
inet_diag: Initialize pad field in struct inet_diag_req_v2
Zijian Zhang <zijianzhang(a)bytedance.com>
selftests: make order checking verbose in msg_zerocopy selftest
Zijian Zhang <zijianzhang(a)bytedance.com>
selftests: fix OOM in msg_zerocopy selftest
Sam Sun <samsun1006219(a)gmail.com>
bonding: Fix out-of-bounds read in bond_option_arp_ip_targets_set()
Jakub Kicinski <kuba(a)kernel.org>
tcp_metrics: validate source addr length
Neal Cardwell <ncardwell(a)google.com>
UPSTREAM: tcp: fix DSACK undo in fast recovery to call tcp_try_to_open()
Yuchung Cheng <ycheng(a)google.com>
net: tcp better handling of reordering then loss cases
Yousuk Seung <ysseung(a)google.com>
tcp: add ece_ack flag to reno sack functions
zhang kai <zhangkaiheb(a)126.com>
tcp: tcp_mark_head_lost is only valid for sack-tcp
Eric Dumazet <edumazet(a)google.com>
tcp: take care of compressed acks in tcp_add_reno_sack()
Holger Dengler <dengler(a)linux.ibm.com>
s390/pkey: Wipe sensitive data on failure
Wang Yong <wang.yong12(a)zte.com.cn>
jffs2: Fix potential illegal address access in jffs2_free_inode
Greg Kurz <groug(a)kaod.org>
powerpc/xmon: Check cpu id in commands "c#", "dp#" and "dx#"
Mike Marshall <hubcap(a)omnibond.com>
orangefs: fix out-of-bounds fsid access
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/64: Set _IO_BASE to POISON_POINTER_DELTA not 0 for CONFIG_PCI=n
Heiner Kallweit <hkallweit1(a)gmail.com>
i2c: i801: Annotate apanel_addr as __ro_after_init
Ricardo Ribalda <ribalda(a)chromium.org>
media: dvb-frontends: tda10048: Fix integer overflow
Ricardo Ribalda <ribalda(a)chromium.org>
media: s2255: Use refcount_t instead of atomic_t for num_channels
Ricardo Ribalda <ribalda(a)chromium.org>
media: dvb-frontends: tda18271c2dd: Remove casting during div
Simon Horman <horms(a)kernel.org>
net: dsa: mv88e6xxx: Correct check for empty list
Erick Archer <erick.archer(a)outlook.com>
Input: ff-core - prefer struct_size over open coded arithmetic
Jean Delvare <jdelvare(a)suse.de>
firmware: dmi: Stop decoding on broken entry
Erick Archer <erick.archer(a)outlook.com>
sctp: prefer struct_size over open coded arithmetic
Michael Bunk <micha(a)freedict.org>
media: dw2102: Don't translate i2c read into write
Alex Hung <alex.hung(a)amd.com>
drm/amd/display: Skip finding free audio for unknown engine_id
Michael Guralnik <michaelgur(a)nvidia.com>
IB/core: Implement a limit on UMAD receive List
Ricardo Ribalda <ribalda(a)chromium.org>
media: dvb-usb: dib0700_devices: Add missing release_firmware()
Ricardo Ribalda <ribalda(a)chromium.org>
media: dvb: as102-fe: Fix as10x_register_addr packing
-------------
Diffstat:
Makefile | 4 +-
arch/arm/mach-davinci/pm.c | 2 +-
arch/powerpc/include/asm/io.h | 2 +-
arch/powerpc/xmon/xmon.c | 6 +-
arch/s390/include/asm/processor.h | 2 +-
drivers/char/hpet.c | 34 ++++-
drivers/firmware/dmi_scan.c | 11 ++
drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 3 +
drivers/gpu/drm/amd/include/atomfirmware.h | 2 +-
drivers/gpu/drm/i915/intel_uncore.c | 20 +--
drivers/gpu/drm/nouveau/nouveau_connector.c | 3 +
drivers/i2c/busses/i2c-i801.c | 2 +-
drivers/i2c/busses/i2c-pnx.c | 48 ++-----
drivers/i2c/busses/i2c-rcar.c | 17 ++-
drivers/infiniband/core/user_mad.c | 21 ++-
drivers/input/ff-core.c | 7 +-
drivers/media/dvb-frontends/as102_fe_types.h | 2 +-
drivers/media/dvb-frontends/tda10048.c | 9 +-
drivers/media/dvb-frontends/tda18271c2dd.c | 4 +-
drivers/media/usb/dvb-usb/dib0700_devices.c | 18 ++-
drivers/media/usb/dvb-usb/dw2102.c | 120 +++++++++-------
drivers/media/usb/s2255/s2255drv.c | 20 +--
drivers/net/bonding/bond_options.c | 6 +-
drivers/net/can/usb/kvaser_usb/kvaser_usb_core.c | 1 +
drivers/net/dsa/mv88e6xxx/chip.c | 4 +-
drivers/net/ethernet/broadcom/bnx2x/bnx2x.h | 2 +-
drivers/net/ethernet/lantiq_etop.c | 5 +-
drivers/net/ppp/ppp_generic.c | 15 ++
drivers/s390/crypto/pkey_api.c | 4 +-
drivers/usb/core/config.c | 18 ++-
drivers/usb/core/quirks.c | 3 +
drivers/usb/gadget/configfs.c | 3 +
drivers/usb/serial/option.c | 38 ++++++
fs/jffs2/super.c | 1 +
fs/nilfs2/alloc.c | 18 ++-
fs/nilfs2/alloc.h | 4 +-
fs/nilfs2/dat.c | 2 +-
fs/nilfs2/dir.c | 38 +++++-
fs/nilfs2/ifile.c | 7 +-
fs/nilfs2/nilfs.h | 10 +-
fs/nilfs2/the_nilfs.c | 6 +
fs/nilfs2/the_nilfs.h | 2 +-
fs/orangefs/super.c | 3 +-
include/linux/fsnotify.h | 8 +-
include/linux/sunrpc/clnt.h | 1 +
kernel/exit.c | 2 +
mm/page-writeback.c | 2 +-
net/bluetooth/hci_event.c | 2 +-
net/ceph/mon_client.c | 14 +-
net/ipv4/inet_diag.c | 2 +
net/ipv4/tcp_input.c | 158 ++++++++++++----------
net/ipv4/tcp_metrics.c | 1 +
net/ipv4/tcp_timer.c | 45 +++++-
net/sctp/socket.c | 7 +-
net/sunrpc/clnt.c | 5 +-
tools/testing/selftests/net/msg_zerocopy.c | 14 +-
56 files changed, 544 insertions(+), 264 deletions(-)
The DCP trusted key type uses the wrong helper function to store
the blob's payload length which can lead to the wrong byte order
being used in case this would ever run on big endian architectures.
Fix by using correct helper function.
Cc: stable(a)vger.kernel.org # v6.10+
Fixes: 2e8a0f40a39c ("KEYS: trusted: Introduce NXP DCP-backed trusted keys")
Suggested-by: Richard Weinberger <richard(a)nod.at>
Reported-by: kernel test robot <lkp(a)intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202405240610.fj53EK0q-lkp@intel.com/
Signed-off-by: David Gstir <david(a)sigma-star.at>
Signed-off-by: Jarkko Sakkinen <jarkko(a)kernel.org>
---
v1 -> v2: fix ordering of commit tags, add s-o-b from Jarkko Sakkinen
security/keys/trusted-keys/trusted_dcp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/security/keys/trusted-keys/trusted_dcp.c b/security/keys/trusted-keys/trusted_dcp.c
index b5f81a05be36..b0947f072a98 100644
--- a/security/keys/trusted-keys/trusted_dcp.c
+++ b/security/keys/trusted-keys/trusted_dcp.c
@@ -222,7 +222,7 @@ static int trusted_dcp_seal(struct trusted_key_payload *p, char *datablob)
return ret;
}
- b->payload_len = get_unaligned_le32(&p->key_len);
+ put_unaligned_le32(p->key_len, &b->payload_len);
p->blob_len = blen;
return 0;
}
--
2.35.3
Calling ioctl TIOCSSERIAL with an invalid baud_base can
result in uartclk being zero, which will result in a
divide by zero error in uart_get_divisor(). The check for
uartclk being zero in uart_set_info() needs to be done
before other settings are made as subsequent calls to
ioctl TIOCSSERIAL for the same port would be impacted if
the uartclk check was done where uartclk gets set.
Oops: divide error: 0000 PREEMPT SMP KASAN PTI
RIP: 0010:uart_get_divisor (drivers/tty/serial/serial_core.c:580)
Call Trace:
<TASK>
serial8250_get_divisor (drivers/tty/serial/8250/8250_port.c:2576
drivers/tty/serial/8250/8250_port.c:2589)
serial8250_do_set_termios (drivers/tty/serial/8250/8250_port.c:502
drivers/tty/serial/8250/8250_port.c:2741)
serial8250_set_termios (drivers/tty/serial/8250/8250_port.c:2862)
uart_change_line_settings (./include/linux/spinlock.h:376
./include/linux/serial_core.h:608 drivers/tty/serial/serial_core.c:222)
uart_port_startup (drivers/tty/serial/serial_core.c:342)
uart_startup (drivers/tty/serial/serial_core.c:368)
uart_set_info (drivers/tty/serial/serial_core.c:1034)
uart_set_info_user (drivers/tty/serial/serial_core.c:1059)
tty_set_serial (drivers/tty/tty_io.c:2637)
tty_ioctl (drivers/tty/tty_io.c:2647 drivers/tty/tty_io.c:2791)
__x64_sys_ioctl (fs/ioctl.c:52 fs/ioctl.c:907
fs/ioctl.c:893 fs/ioctl.c:893)
do_syscall_64 (arch/x86/entry/common.c:52
(discriminator 1) arch/x86/entry/common.c:83 (discriminator 1))
entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130)
Reported-by: syzkaller <syzkaller(a)googlegroups.com>
Cc: stable(a)vger.kernel.org
Signed-off-by: George Kennedy <george.kennedy(a)oracle.com>
---
serial_struct baud_base=0x30000000 will cause the crash.
drivers/tty/serial/serial_core.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/tty/serial/serial_core.c b/drivers/tty/serial/serial_core.c
index 2a8006e3d687..9967444eae10 100644
--- a/drivers/tty/serial/serial_core.c
+++ b/drivers/tty/serial/serial_core.c
@@ -881,6 +881,14 @@ static int uart_set_info(struct tty_struct *tty, struct tty_port *port,
new_flags = (__force upf_t)new_info->flags;
old_custom_divisor = uport->custom_divisor;
+ if (!(uport->flags & UPF_FIXED_PORT)) {
+ unsigned int uartclk = new_info->baud_base * 16;
+ /* check needs to be done here before other settings made */
+ if (uartclk == 0) {
+ retval = -EINVAL;
+ goto exit;
+ }
+ }
if (!capable(CAP_SYS_ADMIN)) {
retval = -EPERM;
if (change_irq || change_port ||
--
2.39.3
tpm_buf_append_name() has the following snippet in the beginning:
if (!tpm2_chip_auth(chip)) {
tpm_buf_append_u32(buf, handle);
/* count the number of handles in the upper bits of flags */
buf->handles++;
return;
}
The claim in the comment is wrong, and the comment is in the wrong place
as alignment in this case should not anyway be a concern of the call
site. In essence the comment is lying about the code, and thus needs to
be adressed.
Further, 'handles' was incorrectly place to struct tpm_buf, as tpm-buf.c
does manage its state. It is easy to grep that only piece of code that
actually uses the field is tpm2-sessions.c.
Address the issues by moving the variable to struct tpm_chip.
Cc: stable(a)vger.kernel.org # v6.10+
Fixes: 699e3efd6c64 ("tpm: Add HMAC session start and end functions")
Signed-off-by: Jarkko Sakkinen <jarkko(a)kernel.org>
v3:
* Reset chip->handles in the beginning of tpm2_start_auth_session()
so that it shows correct value, when TCG_TPM2_HMAC is enabled but
tpm2_sessions_init() has never been called.
v2:
* Was a bit more broken than I first thought, as 'handles' is only
useful for tpm2-sessions.c and has zero relation to tpm-buf.c.
---
drivers/char/tpm/tpm-buf.c | 1 -
drivers/char/tpm/tpm2-cmd.c | 2 +-
drivers/char/tpm/tpm2-sessions.c | 7 ++++---
include/linux/tpm.h | 8 ++++----
4 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/drivers/char/tpm/tpm-buf.c b/drivers/char/tpm/tpm-buf.c
index cad0048bcc3c..d06e8e063151 100644
--- a/drivers/char/tpm/tpm-buf.c
+++ b/drivers/char/tpm/tpm-buf.c
@@ -44,7 +44,6 @@ void tpm_buf_reset(struct tpm_buf *buf, u16 tag, u32 ordinal)
head->tag = cpu_to_be16(tag);
head->length = cpu_to_be32(sizeof(*head));
head->ordinal = cpu_to_be32(ordinal);
- buf->handles = 0;
}
EXPORT_SYMBOL_GPL(tpm_buf_reset);
diff --git a/drivers/char/tpm/tpm2-cmd.c b/drivers/char/tpm/tpm2-cmd.c
index 1e856259219e..b781e4406fc2 100644
--- a/drivers/char/tpm/tpm2-cmd.c
+++ b/drivers/char/tpm/tpm2-cmd.c
@@ -776,7 +776,7 @@ int tpm2_auto_startup(struct tpm_chip *chip)
if (rc)
goto out;
- rc = tpm2_sessions_init(chip);
+ /* rc = tpm2_sessions_init(chip); */
out:
/*
diff --git a/drivers/char/tpm/tpm2-sessions.c b/drivers/char/tpm/tpm2-sessions.c
index d3521aadd43e..5e7c12d64ba8 100644
--- a/drivers/char/tpm/tpm2-sessions.c
+++ b/drivers/char/tpm/tpm2-sessions.c
@@ -238,8 +238,7 @@ void tpm_buf_append_name(struct tpm_chip *chip, struct tpm_buf *buf,
if (!tpm2_chip_auth(chip)) {
tpm_buf_append_u32(buf, handle);
- /* count the number of handles in the upper bits of flags */
- buf->handles++;
+ chip->handles++;
return;
}
@@ -310,7 +309,7 @@ void tpm_buf_append_hmac_session(struct tpm_chip *chip, struct tpm_buf *buf,
if (!tpm2_chip_auth(chip)) {
/* offset tells us where the sessions area begins */
- int offset = buf->handles * 4 + TPM_HEADER_SIZE;
+ int offset = chip->handles * 4 + TPM_HEADER_SIZE;
u32 len = 9 + passphrase_len;
if (tpm_buf_length(buf) != offset) {
@@ -963,6 +962,8 @@ int tpm2_start_auth_session(struct tpm_chip *chip)
int rc;
u32 null_key;
+ chip->handles = 0;
+
if (!auth) {
dev_warn_once(&chip->dev, "auth session is not active\n");
return 0;
diff --git a/include/linux/tpm.h b/include/linux/tpm.h
index e93ee8d936a9..b664f7556494 100644
--- a/include/linux/tpm.h
+++ b/include/linux/tpm.h
@@ -202,9 +202,9 @@ struct tpm_chip {
/* active locality */
int locality;
+ /* handle count for session: */
+ u8 handles;
#ifdef CONFIG_TCG_TPM2_HMAC
- /* details for communication security via sessions */
-
/* saved context for NULL seed */
u8 null_key_context[TPM2_MAX_CONTEXT_SIZE];
/* name of NULL seed */
@@ -377,7 +377,6 @@ struct tpm_buf {
u32 flags;
u32 length;
u8 *data;
- u8 handles;
};
enum tpm2_object_attributes {
@@ -517,7 +516,7 @@ static inline void tpm_buf_append_hmac_session_opt(struct tpm_chip *chip,
if (tpm2_chip_auth(chip)) {
tpm_buf_append_hmac_session(chip, buf, attributes, passphrase, passphraselen);
} else {
- offset = buf->handles * 4 + TPM_HEADER_SIZE;
+ offset = chip->handles * 4 + TPM_HEADER_SIZE;
head = (struct tpm_header *)buf->data;
/*
@@ -541,6 +540,7 @@ void tpm2_end_auth_session(struct tpm_chip *chip);
static inline int tpm2_start_auth_session(struct tpm_chip *chip)
{
+ chip->handles = 0;
return 0;
}
static inline void tpm2_end_auth_session(struct tpm_chip *chip)
--
2.45.2
v2:
- Updates commits with Johan's Review/Reported tags
- Adds Closes: https://lore.kernel.org/lkml/ZoVNHOTI0PKMNt4_@hovoldconsulting.com
- Cc's stable
- Adds in suggested kernel log to allow others to more easily match kernel
log to fixes
- Link to v1: https://lore.kernel.org/r/20240714-linux-next-24-07-13-camss-fixes-v1-0-8f8…
V1:
Dogfooding with SoftISP has uncovered two bugs in this series which I'm
posting fixes for.
- The first error:
A simple race condition which to be honest I'm surprised I haven't found
earlier nor has anybody else. Simply stated the order we typically
end up loading CAMSS on boot has masked out the pm_runtime_enable() race
condition that has been present in CAMSS for a long time.
If you blacklist qcom-camss in modules.d and then modprobe after boot,
the race condition shows up easily.
Moving the pm_runtime_enable prior to subdevice registration fixes the
problem.
The second error:
Nomenclature:
- CSIPHY: CSI Physical layer analogue to digital domain serialiser
- CSID: CSI Decoder
- VFE: Video Front End
- RDI: Raw Data Interface
- VC: Virtual Channel
In order to support streaming multiple virtual-channels on the same RDI a
V4L2 provided use_count variable is used to decide whether or not to actually
terminate streaming and release buffers for 'msm_vfe_rdiX'.
Unfortunately use_count indicates the number of times msm_vfe_rdiX has
been opened by user-space not the number of concurrent streams on
msm_vfe_rdiX.
Simply stated use_count and stream_count are two different things.
The silicon enabling code to select between VCs is valid but, a different
solution needs to be found to support _concurrent_ VC streams.
Right now the upstream use_count as-is is breaking the non concurrent VC
case and I don't believe there are upstream users of concurrent VCs on
CAMSS.
This series implements a revert for the invalid use_count check,
retaining the ability to select which VC is active on the RDI.
Dogfooding with libcamera's SoftISP in Hangouts, Zoom and multiple runs
of libcamera's "qcam" application is a very different test-case to the
simple capture of frames we previously did when validating the
'use_count' change.
A partial revert in expectation of a renewed push to fixup that
concurrent VC issue is included.
Signed-off-by: Bryan O'Donoghue <bryan.odonoghue(a)linaro.org>
---
Bryan O'Donoghue (2):
media: qcom: camss: Remove use_count guard in stop_streaming
media: qcom: camss: Fix ordering of pm_runtime_enable
drivers/media/platform/qcom/camss/camss-video.c | 6 ------
drivers/media/platform/qcom/camss/camss.c | 5 +++--
2 files changed, 3 insertions(+), 8 deletions(-)
---
base-commit: c6ce8f9ab92edc9726996a0130bfc1c408132d47
change-id: 20240713-linux-next-24-07-13-camss-fixes-fa98c0965a5d
Best regards,
--
Bryan O'Donoghue <bryan.odonoghue(a)linaro.org>