This is the start of the stable review cycle for the 5.4.253 release.
There are 154 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 Fri, 11 Aug 2023 10:36:10 +0000.
Anything received after that time might be too late.
The whole patch series can be found in one patch at:
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.4.253-rc…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.4.y
and the diffstat can be found below.
thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:
Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Linux 5.4.253-rc1
Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Revert "driver core: Annotate dev_err_probe() with __must_check"
Mauro Carvalho Chehab <mchehab+huawei(a)kernel.org>
drivers: core: fix kernel-doc markup for dev_err_probe()
Michał Mirosław <mirq-linux(a)rere.qmqm.pl>
driver code: print symbolic error code
Andy Shevchenko <andriy.shevchenko(a)linux.intel.com>
driver core: Annotate dev_err_probe() with __must_check
Xu Yang <xu.yang_2(a)nxp.com>
ARM: dts: nxp/imx6sll: fix wrong property name in usbphy node
Andreas Kemnade <andreas(a)kemnade.info>
ARM: dts: imx6sll: fixup of operating points
Peng Fan <peng.fan(a)nxp.com>
ARM: dts: imx: add usb alias
Krzysztof Kozlowski <krzk(a)kernel.org>
ARM: dts: imx: Align L2 cache-controller nodename with dtschema
Shengjiu Wang <shengjiu.wang(a)nxp.com>
ARM: dts: imx6sll: Make ssi node name same as other platforms
Dinh Nguyen <dinguyen(a)kernel.org>
arm64: dts: stratix10: fix incorrect I2C property for SCL signal
Xiubo Li <xiubli(a)redhat.com>
ceph: defer stopping mdsc delayed_work
Jeff Layton <jlayton(a)kernel.org>
ceph: use kill_anon_super helper
Jeff Layton <jlayton(a)kernel.org>
ceph: show tasks waiting on caps in debugfs caps file
Johan Hovold <johan+linaro(a)kernel.org>
PM: sleep: wakeirq: fix wake irq arming
Chunfeng Yun <chunfeng.yun(a)mediatek.com>
PM / wakeirq: support enabling wake-up irq after runtime_suspend called
Sean Christopherson <seanjc(a)google.com>
selftests/rseq: Play nice with binaries statically linked against glibc 2.35+
Michael Jeanson <mjeanson(a)efficios.com>
selftests/rseq: check if libc rseq support is registered
Aneesh Kumar K.V <aneesh.kumar(a)linux.ibm.com>
powerpc/mm/altmap: Fix altmap boundary check
Roger Quadros <rogerq(a)kernel.org>
mtd: rawnand: omap_elm: Fix incorrect type in assignment
Mirsad Goran Todorovac <mirsad.todorovac(a)alu.unizg.hr>
test_firmware: return ENOMEM instead of ENOSPC on failed memory allocation
Mirsad Goran Todorovac <mirsad.todorovac(a)alu.unizg.hr>
test_firmware: prevent race conditions by a correct implementation of locking
Jan Kara <jack(a)suse.cz>
ext2: Drop fragment support
Jan Kara <jack(a)suse.cz>
fs: Protect reconfiguration of sb read-write from racing writes
Alan Stern <stern(a)rowland.harvard.edu>
net: usbnet: Fix WARNING in usbnet_start_xmit/usb_submit_urb
Sungwoo Kim <iam(a)sung-woo.kim>
Bluetooth: L2CAP: Fix use-after-free in l2cap_sock_ready_cb
Prince Kumar Maurya <princekumarmaurya06(a)gmail.com>
fs/sysv: Null check to prevent null-ptr-deref bug
Laszlo Ersek <lersek(a)redhat.com>
net: tap_open(): set sk_uid from current_fsuid()
Laszlo Ersek <lersek(a)redhat.com>
net: tun_chr_open(): set sk_uid from current_fsuid()
Arseniy Krasnov <AVKrasnov(a)sberdevices.ru>
mtd: rawnand: meson: fix OOB available bytes for ECC
Olivier Maignial <olivier.maignial(a)hotmail.fr>
mtd: spinand: toshiba: Fix ecc_get_status
Ross Maynard <bids.7405(a)bigpond.com>
USB: zaurus: Add ID for A-300/B-500/C-700
Ilya Dryomov <idryomov(a)gmail.com>
libceph: fix potential hang in ceph_osdc_notify()
Steffen Maier <maier(a)linux.ibm.com>
scsi: zfcp: Defer fc_rport blocking until after ADISC response
Eric Dumazet <edumazet(a)google.com>
tcp_metrics: fix data-race in tcpm_suck_dst() vs fastopen
Eric Dumazet <edumazet(a)google.com>
tcp_metrics: annotate data-races around tm->tcpm_net
Eric Dumazet <edumazet(a)google.com>
tcp_metrics: annotate data-races around tm->tcpm_vals[]
Eric Dumazet <edumazet(a)google.com>
tcp_metrics: annotate data-races around tm->tcpm_lock
Eric Dumazet <edumazet(a)google.com>
tcp_metrics: annotate data-races around tm->tcpm_stamp
Eric Dumazet <edumazet(a)google.com>
tcp_metrics: fix addr_same() helper
Yue Haibing <yuehaibing(a)huawei.com>
ip6mr: Fix skb_under_panic in ip6mr_cache_report()
Lin Ma <linma(a)zju.edu.cn>
net: dcb: choose correct policy to parse DCB_ATTR_BCN
Dan Carpenter <dan.carpenter(a)linaro.org>
net: ll_temac: fix error checking of irq_of_parse_and_map()
Yang Yingliang <yangyingliang(a)huawei.com>
net: ll_temac: Switch to use dev_err_probe() helper
Andrzej Hajda <a.hajda(a)samsung.com>
driver core: add device probe log helper
Tomas Glozar <tglozar(a)redhat.com>
bpf: sockmap: Remove preempt_disable in sock_map_sk_acquire
valis <sec(a)valis.email>
net/sched: cls_route: No longer copy tcf_result on update to avoid use-after-free
valis <sec(a)valis.email>
net/sched: cls_fw: No longer copy tcf_result on update to avoid use-after-free
valis <sec(a)valis.email>
net/sched: cls_u32: No longer copy tcf_result on update to avoid use-after-free
Eric Dumazet <edumazet(a)google.com>
net: add missing data-race annotation for sk_ll_usec
Eric Dumazet <edumazet(a)google.com>
net: add missing data-race annotations around sk->sk_peek_off
Eric Dumazet <edumazet(a)google.com>
net: add missing READ_ONCE(sk->sk_rcvbuf) annotation
Eric Dumazet <edumazet(a)google.com>
net: add missing READ_ONCE(sk->sk_sndbuf) annotation
Eric Dumazet <edumazet(a)google.com>
net: add missing READ_ONCE(sk->sk_rcvlowat) annotation
Eric Dumazet <edumazet(a)google.com>
net: annotate data-races around sk->sk_max_pacing_rate
Chengfeng Ye <dg573847474(a)gmail.com>
mISDN: hfcpci: Fix potential deadlock on &hc->lock
Jamal Hadi Salim <jhs(a)mojatatu.com>
net: sched: cls_u32: Fix match key mis-addressing
Georg Müller <georgmueller(a)gmx.net>
perf test uprobe_from_different_cu: Skip if there is no gcc
Lin Ma <linma(a)zju.edu.cn>
rtnetlink: let rtnl_bridge_setlink checks IFLA_BRIDGE_MODE length
Yuanjun Gong <ruc_gongyuanjun(a)163.com>
net/mlx5e: fix return value check in mlx5e_ipsec_remove_trailer()
Zhengchao Shao <shaozhengchao(a)huawei.com>
net/mlx5: DR, fix memory leak in mlx5dr_cmd_create_reformat_ctx
Heiko Carstens <hca(a)linux.ibm.com>
KVM: s390: fix sthyi error handling
ndesaulniers(a)google.com <ndesaulniers(a)google.com>
word-at-a-time: use the same return type for has_zero regardless of endianness
Bart Van Assche <bvanassche(a)acm.org>
loop: Select I/O scheduler 'none' from inside add_disk()
Peter Zijlstra <peterz(a)infradead.org>
perf: Fix function pointer case
D Scott Phillips <scott(a)os.amperecomputing.com>
arm64: Fix bit-shifting UB in the MIDR_CPU_MODEL() macro
D Scott Phillips <scott(a)os.amperecomputing.com>
arm64: Add AMPERE1 to the Spectre-BHB affected list
Thomas Petazzoni <thomas.petazzoni(a)bootlin.com>
ASoC: cs42l51: fix driver to properly autoload with automatic module loading
Pedro Tammela <pctammela(a)mojatatu.com>
net/sched: sch_qfq: account for stab overhead in qfq_enqueue
Filipe Manana <fdmanana(a)suse.com>
btrfs: fix race between quota disable and quota assign ioctls
Marcos Paulo de Souza <mpdesouza(a)suse.com>
btrfs: qgroup: return ENOTCONN instead of EINVAL when quotas are not enabled
Marcos Paulo de Souza <mpdesouza(a)suse.com>
btrfs: qgroup: remove one-time use variables for quota_root checks
Rafael J. Wysocki <rafael.j.wysocki(a)intel.com>
cpufreq: intel_pstate: Drop ACPI _PSS states table patching
Rafael J. Wysocki <rafael.j.wysocki(a)intel.com>
ACPI: processor: perflib: Avoid updating frequency QoS unnecessarily
Rafael J. Wysocki <rafael.j.wysocki(a)intel.com>
ACPI: processor: perflib: Use the "no limit" frequency QoS
Joe Thornber <ejt(a)redhat.com>
dm cache policy smq: ensure IO doesn't prevent cleaner policy progress
Mark Brown <broonie(a)kernel.org>
ASoC: wm8904: Fill the cache for WM8904_ADC_TEST_0 register
Stefan Haberland <sth(a)linux.ibm.com>
s390/dasd: fix hanging device after quiesce/resume
Jason Wang <jasowang(a)redhat.com>
virtio-net: fix race between set queues and probe
Filipe Manana <fdmanana(a)suse.com>
btrfs: check if the transaction was aborted at btrfs_wait_for_commit()
Jonas Gorski <jonas.gorski(a)gmail.com>
irq-bcm6345-l1: Do not assume a fixed block to cpu mapping
Alexander Steffen <Alexander.Steffen(a)infineon.com>
tpm_tis: Explicitly check for error code
Filipe Manana <fdmanana(a)suse.com>
btrfs: check for commit error at btrfs_attach_transaction_barrier()
Gilles Buloz <Gilles.Buloz(a)kontron.com>
hwmon: (nct7802) Fix for temp6 (PECI1) processed even if PECI1 disabled
Zhang Shurong <zhang_shurong(a)foxmail.com>
staging: ks7010: potential buffer overflow in ks_wlan_set_encode_ext()
Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Documentation: security-bugs.rst: clarify CVE handling
Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Documentation: security-bugs.rst: update preferences when dealing with the linux-distros group
Dan Carpenter <dan.carpenter(a)linaro.org>
Revert "usb: xhci: tegra: Fix error check"
Ricardo Ribalda <ribalda(a)chromium.org>
usb: xhci-mtk: set the dma max_seg_size
Łukasz Bartosik <lb(a)semihalf.com>
USB: quirks: add quirk for Focusrite Scarlett
Guiting Shen <aarongt.shen(a)gmail.com>
usb: ohci-at91: Fix the unhandle interrupt when resume
Jisheng Zhang <jszhang(a)kernel.org>
usb: dwc3: don't reset device side if dwc3 was configured as host-only
Gratian Crisan <gratian.crisan(a)ni.com>
usb: dwc3: pci: skip BYT GPIO lookup table for hardwired phy
Jakub Vanek <linuxtardis(a)gmail.com>
Revert "usb: dwc3: core: Enable AutoRetry feature in the controller"
Marc Kleine-Budde <mkl(a)pengutronix.de>
can: gs_usb: gs_can_close(): add missing set of CAN state to CAN_STATE_STOPPED
Johan Hovold <johan(a)kernel.org>
USB: serial: simple: sort driver entries
Oliver Neukum <oneukum(a)suse.com>
USB: serial: simple: add Kaufmann RKS+CAN VCP
Mohsen Tahmasebi <moh53n(a)moh53n.ir>
USB: serial: option: add Quectel EC200A module support
Jerry Meng <jerry-meng(a)foxmail.com>
USB: serial: option: support Quectel EM060K_128
Samuel Holland <samuel.holland(a)sifive.com>
serial: sifive: Fix sifive_serial_console_setup() section
Ruihong Luo <colorsu1922(a)gmail.com>
serial: 8250_dw: Preserve original value of DLF register
Zheng Yejian <zhengyejian1(a)huawei.com>
tracing: Fix warning in trace_buffered_event_disable()
Zheng Yejian <zhengyejian1(a)huawei.com>
ring-buffer: Fix wrong stat of cpu_buffer->read
Arnd Bergmann <arnd(a)arndb.de>
ata: pata_ns87415: mark ns87560_tf_read static
Yu Kuai <yukuai3(a)huawei.com>
dm raid: fix missing reconfig_mutex unlock in raid_ctr() error paths
Bart Van Assche <bvanassche(a)acm.org>
block: Fix a source code comment in include/uapi/linux/blkzoned.h
Matus Gajdos <matuszpd(a)gmail.com>
ASoC: fsl_spdif: Silence output on stop
Gaosheng Cui <cuigaosheng1(a)huawei.com>
drm/msm: Fix IS_ERR_OR_NULL() vs NULL check in a5xx_submit_in_rb()
Rob Clark <robdclark(a)chromium.org>
drm/msm/adreno: Fix snapshot BINDLESS_DATA size
Dmitry Baryshkov <dmitry.baryshkov(a)linaro.org>
drm/msm/dpu: drop enum dpu_core_perf_data_bus_id
Dan Carpenter <dan.carpenter(a)linaro.org>
RDMA/mlx4: Make check for invalid flags stricter
Yuanjun Gong <ruc_gongyuanjun(a)163.com>
benet: fix return value check in be_lancer_xmit_workarounds()
Lin Ma <linma(a)zju.edu.cn>
net/sched: mqprio: Add length check for TCA_MQPRIO_{MAX/MIN}_RATE64
Vladimir Oltean <vladimir.oltean(a)nxp.com>
net/sched: mqprio: add extack to mqprio_parse_nlattr()
Vladimir Oltean <vladimir.oltean(a)nxp.com>
net/sched: mqprio: refactor nlattr parsing to a separate function
Maxim Mikityanskiy <maxtram95(a)gmail.com>
platform/x86: msi-laptop: Fix rfkill out-of-sync on MSI Wind U100
Hangbin Liu <liuhangbin(a)gmail.com>
team: reset team's flags when down link is P2P device
Hangbin Liu <liuhangbin(a)gmail.com>
bonding: reset bond's flags when down link is P2P device
Stewart Smith <trawets(a)amazon.com>
tcp: Reduce chance of collisions in inet6_hashfn().
Maciej Żenczykowski <maze(a)google.com>
ipv6 addrconf: fix bug where deleting a mngtmpaddr can create a new temporary address
Yuanjun Gong <ruc_gongyuanjun(a)163.com>
ethernet: atheros: fix return value check in atl1e_tso_csum()
Harshit Mogalapalli <harshit.m.mogalapalli(a)oracle.com>
phy: hisilicon: Fix an out of bounds check in hisi_inno_phy_probe()
Jiri Benc <jbenc(a)redhat.com>
vxlan: calculate correct header length for GPE
Wang Ming <machel(a)vivo.com>
i40e: Fix an NULL vs IS_ERR() bug for debugfs_create_dir()
Chao Yu <chao(a)kernel.org>
ext4: fix to check return value of freeze_bdev() in ext4_shutdown()
Petr Pavlu <petr.pavlu(a)suse.com>
keys: Fix linking a duplicate key to a keyring's assoc_array
David Howells <dhowells(a)redhat.com>
uapi: General notification queue definitions
Nilesh Javali <njavali(a)marvell.com>
scsi: qla2xxx: Array index may go out of bound
Ye Bin <yebin10(a)huawei.com>
scsi: qla2xxx: Fix inconsistent format argument type in qla_os.c
Heiner Kallweit <hkallweit1(a)gmail.com>
pwm: meson: fix handling of period/duty if greater than UINT_MAX
Uwe Kleine-König <u.kleine-koenig(a)pengutronix.de>
pwm: meson: Simplify duplicated per-channel tracking
Colin Ian King <colin.king(a)canonical.com>
pwm: meson: Remove redundant assignment to variable fin_freq
Zheng Yejian <zhengyejian1(a)huawei.com>
ftrace: Fix possible warning on checking all pages used in ftrace_process_locs()
Linus Torvalds <torvalds(a)linux-foundation.org>
ftrace: Store the order of pages allocated in ftrace_page
Steven Rostedt (VMware) <rostedt(a)goodmis.org>
ftrace: Check if pages were allocated before calling free_pages()
Steven Rostedt (VMware) <rostedt(a)goodmis.org>
ftrace: Add information on number of page groups allocated
Alexander Aring <aahringo(a)redhat.com>
fs: dlm: interrupt posix locks only when process is killed
Alexander Aring <aahringo(a)redhat.com>
dlm: rearrange async condition return
Alexander Aring <aahringo(a)redhat.com>
dlm: cleanup plock_op vs plock_xop
Ilpo Järvinen <ilpo.jarvinen(a)linux.intel.com>
PCI/ASPM: Avoid link retraining race
Ilpo Järvinen <ilpo.jarvinen(a)linux.intel.com>
PCI/ASPM: Factor out pcie_wait_for_retrain()
Bjorn Helgaas <bhelgaas(a)google.com>
PCI/ASPM: Return 0 or -ETIMEDOUT from pcie_retrain_link()
Zhihao Cheng <chengzhihao1(a)huawei.com>
ext4: Fix reusing stale buffer heads from last failed mounting
Chunguang Xu <brookxu(a)tencent.com>
ext4: rename journal_dev to s_journal_dev inside ext4_sb_info
Filipe Manana <fdmanana(a)suse.com>
btrfs: fix extent buffer leak after tree mod log failure at split_node()
Filipe Manana <fdmanana(a)suse.com>
btrfs: fix race between quota disable and relocation
Qu Wenruo <wqu(a)suse.com>
btrfs: qgroup: catch reserved space leaks at unmount time
Zheng Wang <zyytlz.wz(a)163.com>
bcache: Fix __bch_btree_node_alloc to make the failure behavior consistent
Coly Li <colyli(a)suse.de>
bcache: remove 'int n' from parameter list of bch_bucket_alloc_set()
Hans de Goede <hdegoede(a)redhat.com>
gpio: tps68470: Make tps68470_gpio_output() always set the initial value
Zhihao Cheng <chengzhihao1(a)huawei.com>
jbd2: Fix wrongly judgement for buffer head removing while doing checkpoint
Zhang Yi <yi.zhang(a)huawei.com>
jbd2: recheck chechpointing non-dirty buffer
Zhang Yi <yi.zhang(a)huawei.com>
jbd2: remove redundant buffer io error checks
Mauro Carvalho Chehab <mchehab+huawei(a)kernel.org>
jbd2: fix kernel-doc markups
Xianting Tian <xianting_tian(a)126.com>
jbd2: fix incorrect code style
-------------
Diffstat:
Documentation/admin-guide/security-bugs.rst | 37 +++---
Makefile | 4 +-
arch/arm/boot/dts/imx35.dtsi | 2 +-
arch/arm/boot/dts/imx6qdl.dtsi | 6 +-
arch/arm/boot/dts/imx6sl.dtsi | 5 +-
arch/arm/boot/dts/imx6sll.dtsi | 34 ++---
arch/arm/boot/dts/imx6sx.dtsi | 5 +-
arch/arm/boot/dts/imx6ul.dtsi | 2 +
arch/arm/boot/dts/imx7d.dtsi | 6 +
arch/arm/boot/dts/imx7s.dtsi | 2 +
.../boot/dts/altera/socfpga_stratix10_socdk.dts | 2 +-
arch/arm64/include/asm/cputype.h | 6 +-
arch/arm64/kernel/cpu_errata.c | 6 +
arch/powerpc/include/asm/word-at-a-time.h | 2 +-
arch/powerpc/mm/init_64.c | 3 +-
arch/s390/kernel/sthyi.c | 6 +-
arch/s390/kvm/intercept.c | 9 +-
drivers/acpi/processor_perflib.c | 42 ++++--
drivers/ata/pata_ns87415.c | 2 +-
drivers/base/core.c | 44 +++++++
drivers/base/power/power.h | 8 +-
drivers/base/power/runtime.c | 6 +-
drivers/base/power/wakeirq.c | 111 ++++++++++++----
drivers/block/loop.c | 2 +-
drivers/char/tpm/tpm_tis_core.c | 10 +-
drivers/cpufreq/intel_pstate.c | 14 --
drivers/gpio/gpio-tps68470.c | 6 +-
drivers/gpu/drm/msm/adreno/a5xx_gpu.c | 2 +-
drivers/gpu/drm/msm/adreno/a6xx_gpu_state.h | 2 +-
drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.h | 13 --
drivers/hwmon/nct7802.c | 2 +-
drivers/infiniband/hw/mlx4/qp.c | 18 +--
drivers/irqchip/irq-bcm6345-l1.c | 14 +-
drivers/isdn/hardware/mISDN/hfcpci.c | 10 +-
drivers/md/bcache/alloc.c | 35 +++--
drivers/md/bcache/bcache.h | 4 +-
drivers/md/bcache/btree.c | 6 +-
drivers/md/bcache/super.c | 2 +-
drivers/md/dm-cache-policy-smq.c | 28 ++--
drivers/md/dm-raid.c | 9 +-
drivers/mtd/nand/raw/meson_nand.c | 3 +-
drivers/mtd/nand/raw/omap_elm.c | 24 ++--
drivers/mtd/nand/spi/toshiba.c | 4 +-
drivers/net/bonding/bond_main.c | 5 +
drivers/net/can/usb/gs_usb.c | 2 +
drivers/net/ethernet/atheros/atl1e/atl1e_main.c | 7 +-
drivers/net/ethernet/emulex/benet/be_main.c | 3 +-
drivers/net/ethernet/intel/i40e/i40e_debugfs.c | 2 +-
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 2 +-
.../mellanox/mlx5/core/en_accel/ipsec_rxtx.c | 4 +-
.../ethernet/mellanox/mlx5/core/steering/dr_cmd.c | 5 +-
drivers/net/ethernet/xilinx/ll_temac_main.c | 16 +--
drivers/net/tap.c | 2 +-
drivers/net/team/team.c | 9 ++
drivers/net/tun.c | 2 +-
drivers/net/usb/cdc_ether.c | 21 +++
drivers/net/usb/usbnet.c | 6 +
drivers/net/usb/zaurus.c | 21 +++
drivers/net/virtio_net.c | 4 +-
drivers/net/vxlan.c | 22 ++--
drivers/pci/pcie/aspm.c | 55 +++++---
drivers/phy/hisilicon/phy-hisi-inno-usb2.c | 2 +-
drivers/platform/x86/msi-laptop.c | 8 +-
drivers/pwm/pwm-meson.c | 27 ++--
drivers/s390/block/dasd_ioctl.c | 1 +
drivers/s390/scsi/zfcp_fc.c | 6 +-
drivers/scsi/qla2xxx/qla_os.c | 5 +-
drivers/staging/ks7010/ks_wlan_net.c | 6 +-
drivers/tty/serial/8250/8250_dwlib.c | 6 +-
drivers/tty/serial/sifive.c | 2 +-
drivers/usb/core/quirks.c | 4 +
drivers/usb/dwc3/core.c | 20 +--
drivers/usb/dwc3/core.h | 3 -
drivers/usb/dwc3/dwc3-pci.c | 6 +-
drivers/usb/host/ohci-at91.c | 8 +-
drivers/usb/host/xhci-mtk.c | 1 +
drivers/usb/host/xhci-tegra.c | 8 +-
drivers/usb/serial/option.c | 6 +
drivers/usb/serial/usb-serial-simple.c | 73 ++++++-----
fs/btrfs/ctree.c | 2 +
fs/btrfs/disk-io.c | 5 +
fs/btrfs/ioctl.c | 2 +
fs/btrfs/qgroup.c | 116 ++++++++++++-----
fs/btrfs/qgroup.h | 1 +
fs/btrfs/transaction.c | 10 +-
fs/ceph/caps.c | 17 +++
fs/ceph/debugfs.c | 13 ++
fs/ceph/mds_client.c | 5 +-
fs/ceph/mds_client.h | 14 ++
fs/ceph/super.c | 14 +-
fs/dlm/plock.c | 100 ++++++++------
fs/ext2/ext2.h | 12 --
fs/ext2/super.c | 23 +---
fs/ext4/ext4.h | 2 +-
fs/ext4/fsmap.c | 8 +-
fs/ext4/ioctl.c | 5 +-
fs/ext4/super.c | 25 ++--
fs/jbd2/checkpoint.c | 137 ++++++--------------
fs/jbd2/journal.c | 42 +++---
fs/jbd2/transaction.c | 31 ++---
fs/super.c | 11 +-
fs/sysv/itree.c | 4 +
include/asm-generic/word-at-a-time.h | 2 +-
include/linux/device.h | 3 +
include/linux/jbd2.h | 2 +-
include/linux/pm_wakeirq.h | 9 +-
include/net/ipv6.h | 8 +-
include/net/vxlan.h | 13 +-
include/uapi/linux/blkzoned.h | 10 +-
include/uapi/linux/watch_queue.h | 55 ++++++++
kernel/events/core.c | 8 +-
kernel/trace/ftrace.c | 75 ++++++++---
kernel/trace/ring_buffer.c | 22 ++--
kernel/trace/trace.c | 21 ++-
kernel/trace/trace.h | 2 +
kernel/trace/trace_events.c | 14 +-
lib/test_firmware.c | 49 ++++---
net/bluetooth/l2cap_sock.c | 2 +
net/ceph/osd_client.c | 20 ++-
net/core/rtnetlink.c | 8 +-
net/core/sock.c | 21 +--
net/core/sock_map.c | 2 -
net/dcb/dcbnl.c | 2 +-
net/ipv4/tcp_metrics.c | 70 ++++++----
net/ipv6/addrconf.c | 14 +-
net/ipv6/ip6mr.c | 2 +-
net/sched/cls_fw.c | 1 -
net/sched/cls_route.c | 1 -
net/sched/cls_u32.c | 57 +++++++-
net/sched/sch_mqprio.c | 144 +++++++++++++--------
net/sched/sch_qfq.c | 7 +-
net/unix/af_unix.c | 2 +-
security/keys/request_key.c | 35 +++--
sound/soc/codecs/cs42l51-i2c.c | 6 +
sound/soc/codecs/cs42l51.c | 7 -
sound/soc/codecs/cs42l51.h | 1 -
sound/soc/codecs/wm8904.c | 3 +
sound/soc/fsl/fsl_spdif.c | 2 +
.../tests/shell/test_uprobe_from_different_cu.sh | 8 +-
tools/testing/selftests/rseq/rseq.c | 31 ++++-
140 files changed, 1444 insertions(+), 832 deletions(-)
Currently the ExpressKey Remote battery will persist indefinitely in
/sys/class/power_supply. Remove the battery when we stop getting
reports from the device.
Also remove some unneccessary code and make an EKR struct name more
descriptive.
Only the bugfix in the first patch will be sent to stable.
Aaron Armstrong Skomra (3):
HID: wacom: remove the battery when the EKR is off
HID: wacom: remove unnecessary 'connected' variable from EKR
HID: wacom: struct name cleanup
drivers/hid/wacom.h | 1 +
drivers/hid/wacom_sys.c | 44 +++++++++++++++++++++++++++++------------
drivers/hid/wacom_wac.c | 7 +++----
drivers/hid/wacom_wac.h | 4 ++--
4 files changed, 37 insertions(+), 19 deletions(-)
--
2.34.1
The following commit has been merged into the x86/urgent branch of tip:
Commit-ID: ba5ca5e5e6a1d55923e88b4a83da452166f5560e
Gitweb: https://git.kernel.org/tip/ba5ca5e5e6a1d55923e88b4a83da452166f5560e
Author: Sean Christopherson <seanjc(a)google.com>
AuthorDate: Fri, 11 Aug 2023 08:52:55 -07:00
Committer: Borislav Petkov (AMD) <bp(a)alien8.de>
CommitterDate: Mon, 14 Aug 2023 10:47:55 +02:00
x86/retpoline: Don't clobber RFLAGS during srso_safe_ret()
Use LEA instead of ADD when adjusting %rsp in srso_safe_ret{,_alias}()
so as to avoid clobbering flags. Drop one of the INT3 instructions to
account for the LEA consuming one more byte than the ADD.
KVM's emulator makes indirect calls into a jump table of sorts, where
the destination of each call is a small blob of code that performs fast
emulation by executing the target instruction with fixed operands.
E.g. to emulate ADC, fastop() invokes adcb_al_dl():
adcb_al_dl:
<+0>: adc %dl,%al
<+2>: jmp <__x86_return_thunk>
A major motivation for doing fast emulation is to leverage the CPU to
handle consumption and manipulation of arithmetic flags, i.e. RFLAGS is
both an input and output to the target of the call. fastop() collects
the RFLAGS result by pushing RFLAGS onto the stack and popping them back
into a variable (held in %rdi in this case):
asm("push %[flags]; popf; " CALL_NOSPEC " ; pushf; pop %[flags]\n"
<+71>: mov 0xc0(%r8),%rdx
<+78>: mov 0x100(%r8),%rcx
<+85>: push %rdi
<+86>: popf
<+87>: call *%rsi
<+89>: nop
<+90>: nop
<+91>: nop
<+92>: pushf
<+93>: pop %rdi
and then propagating the arithmetic flags into the vCPU's emulator state:
ctxt->eflags = (ctxt->eflags & ~EFLAGS_MASK) | (flags & EFLAGS_MASK);
<+64>: and $0xfffffffffffff72a,%r9
<+94>: and $0x8d5,%edi
<+109>: or %rdi,%r9
<+122>: mov %r9,0x10(%r8)
The failures can be most easily reproduced by running the "emulator"
test in KVM-Unit-Tests.
If you're feeling a bit of deja vu, see commit b63f20a778c8
("x86/retpoline: Don't clobber RFLAGS during CALL_NOSPEC on i386").
In addition, this breaks booting of clang-compiled guest on
a gcc-compiled host where the host contains the %rsp-modifying SRSO
mitigations.
[ bp: Massage commit message, extend, remove addresses. ]
Fixes: fb3bd914b3ec ("x86/srso: Add a Speculative RAS Overflow mitigation")
Closes: https://lore.kernel.org/all/de474347-122d-54cd-eabf-9dcc95ab9eae@amd.com
Reported-by: Srikanth Aithal <sraithal(a)amd.com>
Reported-by: Nathan Chancellor <nathan(a)kernel.org>
Signed-off-by: Sean Christopherson <seanjc(a)google.com>
Signed-off-by: Borislav Petkov (AMD) <bp(a)alien8.de>
Tested-by: Nathan Chancellor <nathan(a)kernel.org>
Cc: stable(a)vger.kernel.org
Link: https://lore.kernel.org/20230810013334.GA5354@dev-arch.thelio-3990X/
Link: https://lore.kernel.org/r/20230811155255.250835-1-seanjc@google.com
---
arch/x86/lib/retpoline.S | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/arch/x86/lib/retpoline.S b/arch/x86/lib/retpoline.S
index 2cff585..132cedb 100644
--- a/arch/x86/lib/retpoline.S
+++ b/arch/x86/lib/retpoline.S
@@ -164,7 +164,7 @@ __EXPORT_THUNK(srso_untrain_ret_alias)
/* Needs a definition for the __x86_return_thunk alternative below. */
SYM_START(srso_safe_ret_alias, SYM_L_GLOBAL, SYM_A_NONE)
#ifdef CONFIG_CPU_SRSO
- add $8, %_ASM_SP
+ lea 8(%_ASM_SP), %_ASM_SP
UNWIND_HINT_FUNC
#endif
ANNOTATE_UNRET_SAFE
@@ -239,7 +239,7 @@ __EXPORT_THUNK(zen_untrain_ret)
* SRSO untraining sequence for Zen1/2, similar to zen_untrain_ret()
* above. On kernel entry, srso_untrain_ret() is executed which is a
*
- * movabs $0xccccccc308c48348,%rax
+ * movabs $0xccccc30824648d48,%rax
*
* and when the return thunk executes the inner label srso_safe_ret()
* later, it is a stack manipulation and a RET which is mispredicted and
@@ -252,11 +252,10 @@ SYM_START(srso_untrain_ret, SYM_L_GLOBAL, SYM_A_NONE)
.byte 0x48, 0xb8
SYM_INNER_LABEL(srso_safe_ret, SYM_L_GLOBAL)
- add $8, %_ASM_SP
+ lea 8(%_ASM_SP), %_ASM_SP
ret
int3
int3
- int3
lfence
call srso_safe_ret
int3
From: Pu Wen <puwen(a)hygon.cn>
Hygon updated processors have CPUID leaf 0xB correctly populated and don't
need the fixed package ID shift workaround. The fixup is also incorrect
when running in a guest.
Fixes: e0ceeae708ce ("x86/CPU/hygon: Fix phys_proc_id calculation logic for multi-die processors")
Signed-off-by: Pu Wen <puwen(a)hygon.cn>
Signed-off-by: Thomas Gleixner <tglx(a)linutronix.de>
Cc: <stable(a)vger.kernel.org>
Link: https://lore.kernel.org/r/tencent_594804A808BD93A4EBF50A994F228E3A7F07@qq.c…
---
arch/x86/kernel/cpu/hygon.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
--- a/arch/x86/kernel/cpu/hygon.c
+++ b/arch/x86/kernel/cpu/hygon.c
@@ -87,8 +87,12 @@ static void hygon_get_topology(struct cp
if (!err)
c->x86_coreid_bits = get_count_order(c->x86_max_cores);
- /* Socket ID is ApicId[6] for these processors. */
- c->phys_proc_id = c->apicid >> APICID_SOCKET_ID_BIT;
+ /*
+ * Socket ID is ApicId[6] for the processors with model <= 0x3
+ * when running on host.
+ */
+ if (!boot_cpu_has(X86_FEATURE_HYPERVISOR) && c->x86_model <= 0x3)
+ c->phys_proc_id = c->apicid >> APICID_SOCKET_ID_BIT;
cacheinfo_hygon_init_llc_id(c, cpu);
} else if (cpu_has(c, X86_FEATURE_NODEID_MSR)) {
Device connected to usb otg port of GXL-based boards can not be
recognised after resumption, doesn't recover even if disconnect and
reconnect the device. dmesg shows it disconnects during resumption.
[ 41.492911] usb 1-2: USB disconnect, device number 3
[ 41.499346] usb 1-2: unregistering device
[ 41.511939] usb 1-2: unregistering interface 1-2:1.0
Calling usb_post_init() will fix this issue, and it's tested and
verified on libretech's aml-s905x-cc board.
Cc: stable(a)vger.kernel.org # v5.8+
Fixes: c99993376f72 ("usb: dwc3: Add Amlogic G12A DWC3 glue")
Signed-off-by: Luke Lu <luke.lu(a)libre.computer>
---
Note here, the commmit of Fixes tag is the first patch which bring
suspend/resume function, so let's use it as the fix tag.
As commit 5b0ba0caaf3a: (usb: dwc3: meson-g12a: refactor usb init)"
introduced the use_post_init() function, and this patch will explicitly
depend on it, so let's set kernel version higher or equal to v5.8.
Changes since v1:
- add Fixes tag and Cc stable tree
---
drivers/usb/dwc3/dwc3-meson-g12a.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/drivers/usb/dwc3/dwc3-meson-g12a.c b/drivers/usb/dwc3/dwc3-meson-g12a.c
index e99c7489dba0..2c07c038b584 100644
--- a/drivers/usb/dwc3/dwc3-meson-g12a.c
+++ b/drivers/usb/dwc3/dwc3-meson-g12a.c
@@ -926,6 +926,12 @@ static int __maybe_unused dwc3_meson_g12a_resume(struct device *dev)
return ret;
}
+ if (priv->drvdata->usb_post_init) {
+ ret = priv->drvdata->usb_post_init(priv);
+ if (ret)
+ return ret;
+ }
+
return 0;
}
--
2.40.1
From: Joel Fernandes <joel(a)joelfernandes.org>
[ Upstream commit d52d3a2bf408ff86f3a79560b5cce80efb340239 ]
During shutdown of rcutorture, the shutdown thread in
rcu_torture_cleanup() calls torture_cleanup_begin() which sets fullstop
to FULLSTOP_RMMOD. This is enough to cause the rcutorture threads for
readers and fakewriters to breakout of their main while loop and start
shutting down.
Once out of their main loop, they then call torture_kthread_stopping()
which in turn waits for kthread_stop() to be called, however
rcu_torture_cleanup() has not even called kthread_stop() on those
threads yet, it does that a bit later. However, before it gets a chance
to do so, torture_kthread_stopping() calls
schedule_timeout_interruptible(1) in a tight loop. Tracing confirmed
this makes the timer softirq constantly execute timer callbacks, while
never returning back to the softirq exit path and is essentially "locked
up" because of that. If the softirq preempts the shutdown thread,
kthread_stop() may never be called.
This commit improves the situation dramatically, by increasing timeout
passed to schedule_timeout_interruptible() 1/20th of a second. This
causes the timer softirq to not lock up a CPU and everything works fine.
Testing has shown 100 runs of TREE07 passing reliably, which was not the
case before because of RCU stalls.
Cc: Paul McKenney <paulmck(a)kernel.org>
Cc: Frederic Weisbecker <fweisbec(a)gmail.com>
Cc: Zhouyi Zhou <zhouzhouyi(a)gmail.com>
Cc: <stable(a)vger.kernel.org> # 6.0.x
Signed-off-by: Joel Fernandes (Google) <joel(a)joelfernandes.org>
Reviewed-by: Davidlohr Bueso <dave(a)stgolabs.net>
Tested-by: Zhouyi Zhou <zhouzhouyi(a)gmail.com>
---
kernel/torture.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kernel/torture.c b/kernel/torture.c
index 1061492f14bd..477d9b601438 100644
--- a/kernel/torture.c
+++ b/kernel/torture.c
@@ -788,7 +788,7 @@ void torture_kthread_stopping(char *title)
VERBOSE_TOROUT_STRING(buf);
while (!kthread_should_stop()) {
torture_shutdown_absorb(title);
- schedule_timeout_uninterruptible(1);
+ schedule_timeout_uninterruptible(HZ/20);
}
}
EXPORT_SYMBOL_GPL(torture_kthread_stopping);
--
2.41.0.640.ga95def55d0-goog