I trust you are staying safe and well, I am Franklin C. James QC. from Glasgow, Scotland. I have an investment proposition for your consideration and more details will be revealed once your interest is indicated.
Yours in service,
Franklin C. James QC.
____________________
Secretary: Phillip Hernandez
--
This email has been checked for viruses by Avast antivirus software.
www.avast.com
Setting the IBRS bit implicitly enables STIBP to protect against
cross-thread branch target injection. With enhanced IBRS, the bit it set
once and is not cleared again. However, on CPUs with just legacy IBRS,
IBRS bit set on user -> kernel and cleared on kernel -> user (a.k.a
KERNEL_IBRS). Clearing this bit also disables the implicitly enabled
STIBP, thus requiring some form of cross-thread protection in userspace.
Enable STIBP, either opt-in via prctl or seccomp, or always on depending
on the choice of mitigation selected via spectre_v2_user.
Reported-by: José Oliveira <joseloliveira11(a)gmail.com>
Reported-by: Rodrigo Branco <rodrigo(a)kernelhacking.com>
Reviewed-by: Alexandra Sandulescu <aesa(a)google.com>
Fixes: 7c693f54c873 ("x86/speculation: Add spectre_v2=ibrs option to support Kernel IBRS")
Cc: stable(a)vger.kernel.org
Signed-off-by: KP Singh <kpsingh(a)kernel.org>
---
arch/x86/kernel/cpu/bugs.c | 33 ++++++++++++++++++++++-----------
1 file changed, 22 insertions(+), 11 deletions(-)
diff --git a/arch/x86/kernel/cpu/bugs.c b/arch/x86/kernel/cpu/bugs.c
index 85168740f76a..5be6075d8e36 100644
--- a/arch/x86/kernel/cpu/bugs.c
+++ b/arch/x86/kernel/cpu/bugs.c
@@ -1124,14 +1124,30 @@ spectre_v2_parse_user_cmdline(void)
return SPECTRE_V2_USER_CMD_AUTO;
}
-static inline bool spectre_v2_in_ibrs_mode(enum spectre_v2_mitigation mode)
+static inline bool spectre_v2_in_eibrs_mode(enum spectre_v2_mitigation mode)
{
- return mode == SPECTRE_V2_IBRS ||
- mode == SPECTRE_V2_EIBRS ||
+ return mode == SPECTRE_V2_EIBRS ||
mode == SPECTRE_V2_EIBRS_RETPOLINE ||
mode == SPECTRE_V2_EIBRS_LFENCE;
}
+static inline bool spectre_v2_in_ibrs_mode(enum spectre_v2_mitigation mode)
+{
+ return spectre_v2_in_eibrs_mode(mode) || mode == SPECTRE_V2_IBRS;
+}
+
+static inline bool spectre_v2_user_needs_stibp(enum spectre_v2_mitigation mode)
+{
+ /*
+ * enhanced IBRS also protects against user-mode attacks as the IBRS bit
+ * remains always set which implicitly enables cross-thread protections.
+ * However, In legacy IBRS mode, the IBRS bit is set only in kernel
+ * and cleared on return to userspace. This disables the implicit
+ * cross-thread protections and STIBP is needed.
+ */
+ return !spectre_v2_in_eibrs_mode(mode);
+}
+
static void __init
spectre_v2_user_select_mitigation(void)
{
@@ -1193,13 +1209,8 @@ spectre_v2_user_select_mitigation(void)
"always-on" : "conditional");
}
- /*
- * If no STIBP, IBRS or enhanced IBRS is enabled, or SMT impossible,
- * STIBP is not required.
- */
- if (!boot_cpu_has(X86_FEATURE_STIBP) ||
- !smt_possible ||
- spectre_v2_in_ibrs_mode(spectre_v2_enabled))
+ if (!boot_cpu_has(X86_FEATURE_STIBP) || !smt_possible ||
+ !spectre_v2_user_needs_stibp(spectre_v2_enabled))
return;
/*
@@ -2327,7 +2338,7 @@ static ssize_t mmio_stale_data_show_state(char *buf)
static char *stibp_state(void)
{
- if (spectre_v2_in_ibrs_mode(spectre_v2_enabled))
+ if (!spectre_v2_user_needs_stibp(spectre_v2_enabled))
return "";
switch (spectre_v2_user_stibp) {
--
2.39.2.637.g21b0678d19-goog
The following changes since commit ceaa837f96adb69c0df0397937cd74991d5d821a:
Linux 6.2-rc8 (2023-02-12 14:10:17 -0800)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost.git tags/for_linus
for you to fetch changes up to deeacf35c922da579637f5db625af20baafc66ed:
vdpa/mlx5: support device features provisioning (2023-02-20 19:27:00 -0500)
Note: dropped a patch close to the bottom of the stack at the last
minute so the commits differ but all of these have been in next already.
The dropped patch just added a new query ioctl so not interacting with
anything else in the pull.
----------------------------------------------------------------
virtio,vhost,vdpa: features, fixes
device feature provisioning in ifcvf, mlx5
new SolidNET driver
support for zoned block device in virtio blk
numa support in virtio pmem
VIRTIO_F_RING_RESET support in vhost-net
more debugfs entries in mlx5
resume support in vdpa
completion batching in virtio blk
cleanup of dma api use in vdpa
now simulating more features in vdpa-sim
documentation, features, fixes all over the place
Signed-off-by: Michael S. Tsirkin <mst(a)redhat.com>
----------------------------------------------------------------
Alvaro Karsz (4):
PCI: Add SolidRun vendor ID
PCI: Avoid FLR for SolidRun SNET DPU rev 1
virtio: vdpa: new SolidNET DPU driver.
vhost-vdpa: print warning when vhost_vdpa_alloc_domain fails
Bagas Sanjaya (3):
docs: driver-api: virtio: parenthesize external reference targets
docs: driver-api: virtio: slightly reword virtqueues allocation paragraph
docs: driver-api: virtio: commentize spec version checking
Bo Liu (1):
vhost-scsi: convert sysfs snprintf and sprintf to sysfs_emit
Colin Ian King (1):
vdpa: Fix a couple of spelling mistakes in some messages
Dmitry Fomichev (1):
virtio-blk: add support for zoned block devices
Eli Cohen (6):
vdpa/mlx5: Move some definitions to a new header file
vdpa/mlx5: Add debugfs subtree
vdpa/mlx5: Add RX counters to debugfs
vdpa/mlx5: Directly assign memory key
vdpa/mlx5: Don't clear mr struct on destroy MR
vdpa/mlx5: Initialize CVQ iotlb spinlock
Eugenio Pérez (2):
vdpa_sim: not reset state in vdpasim_queue_ready
vdpa_sim_net: Offer VIRTIO_NET_F_STATUS
Jason Wang (11):
vdpa_sim: use weak barriers
vdpa_sim: switch to use __vdpa_alloc_device()
vdpasim: customize allocation size
vdpa_sim: support vendor statistics
vdpa_sim_net: vendor satistics
vdpa_sim: get rid of DMA ops
virtio_ring: per virtqueue dma device
vdpa: introduce get_vq_dma_device()
virtio-vdpa: support per vq dma device
vdpa: set dma mask for vDPA device
vdpa: mlx5: support per virtqueue dma device
Kangjie Xu (1):
vhost-net: support VIRTIO_F_RING_RESET
Liming Wu (2):
vhost-test: remove meaningless debug info
vhost: remove unused paramete
Michael S. Tsirkin (3):
virtio_blk: temporary variable type tweak
virtio_blk: zone append in header type tweak
virtio_blk: mark all zone fields LE
Michael Sammler (1):
virtio_pmem: populate numa information
Ricardo Cañuelo (1):
docs: driver-api: virtio: virtio on Linux
Sebastien Boeuf (4):
vdpa: Add resume operation
vhost-vdpa: Introduce RESUME backend feature bit
vhost-vdpa: uAPI to resume the device
vdpa_sim: Implement resume vdpa op
Shunsuke Mie (2):
vringh: fix a typo in comments for vringh_kiov
tools/virtio: enable to build with retpoline
Si-Wei Liu (6):
vdpa: fix improper error message when adding vdpa dev
vdpa: conditionally read STATUS in config space
vdpa: validate provisioned device features against specified attribute
vdpa: validate device feature provisioning against supported class
vdpa/mlx5: make MTU/STATUS presence conditional on feature bits
vdpa/mlx5: support device features provisioning
Suwan Kim (2):
virtio-blk: set req->state to MQ_RQ_COMPLETE after polling I/O is finished
virtio-blk: support completion batching for the IRQ path
Zheng Wang (1):
scsi: virtio_scsi: fix handling of kmalloc failure
Zhu Lingshan (12):
vDPA/ifcvf: decouple hw features manipulators from the adapter
vDPA/ifcvf: decouple config space ops from the adapter
vDPA/ifcvf: alloc the mgmt_dev before the adapter
vDPA/ifcvf: decouple vq IRQ releasers from the adapter
vDPA/ifcvf: decouple config IRQ releaser from the adapter
vDPA/ifcvf: decouple vq irq requester from the adapter
vDPA/ifcvf: decouple config/dev IRQ requester and vectors allocator from the adapter
vDPA/ifcvf: ifcvf_request_irq works on ifcvf_hw
vDPA/ifcvf: manage ifcvf_hw in the mgmt_dev
vDPA/ifcvf: allocate the adapter in dev_add()
vDPA/ifcvf: retire ifcvf_private_to_vf
vDPA/ifcvf: implement features provisioning
Documentation/driver-api/index.rst | 1 +
Documentation/driver-api/virtio/index.rst | 11 +
Documentation/driver-api/virtio/virtio.rst | 145 +++
.../driver-api/virtio/writing_virtio_drivers.rst | 197 ++++
MAINTAINERS | 5 +
drivers/block/virtio_blk.c | 468 ++++++++-
drivers/nvdimm/virtio_pmem.c | 11 +-
drivers/pci/quirks.c | 8 +
drivers/scsi/virtio_scsi.c | 14 +-
drivers/vdpa/Kconfig | 30 +
drivers/vdpa/Makefile | 1 +
drivers/vdpa/ifcvf/ifcvf_base.c | 32 +-
drivers/vdpa/ifcvf/ifcvf_base.h | 10 +-
drivers/vdpa/ifcvf/ifcvf_main.c | 162 ++-
drivers/vdpa/mlx5/Makefile | 2 +-
drivers/vdpa/mlx5/core/mr.c | 1 -
drivers/vdpa/mlx5/core/resources.c | 3 +-
drivers/vdpa/mlx5/net/debug.c | 152 +++
drivers/vdpa/mlx5/net/mlx5_vnet.c | 261 +++--
drivers/vdpa/mlx5/net/mlx5_vnet.h | 94 ++
drivers/vdpa/solidrun/Makefile | 6 +
drivers/vdpa/solidrun/snet_hwmon.c | 188 ++++
drivers/vdpa/solidrun/snet_main.c | 1111 ++++++++++++++++++++
drivers/vdpa/solidrun/snet_vdpa.h | 194 ++++
drivers/vdpa/vdpa.c | 110 +-
drivers/vdpa/vdpa_sim/vdpa_sim.c | 233 ++--
drivers/vdpa/vdpa_sim/vdpa_sim.h | 7 +-
drivers/vdpa/vdpa_sim/vdpa_sim_blk.c | 1 +
drivers/vdpa/vdpa_sim/vdpa_sim_net.c | 219 +++-
drivers/vhost/net.c | 5 +-
drivers/vhost/scsi.c | 6 +-
drivers/vhost/test.c | 3 -
drivers/vhost/vdpa.c | 39 +-
drivers/vhost/vhost.c | 2 +-
drivers/vhost/vhost.h | 2 +-
drivers/vhost/vsock.c | 2 +-
drivers/virtio/virtio_ring.c | 133 ++-
drivers/virtio/virtio_vdpa.c | 13 +-
include/linux/pci_ids.h | 2 +
include/linux/vdpa.h | 12 +-
include/linux/virtio_config.h | 8 +-
include/linux/virtio_ring.h | 16 +
include/linux/vringh.h | 2 +-
include/uapi/linux/vhost.h | 8 +
include/uapi/linux/vhost_types.h | 2 +
include/uapi/linux/virtio_blk.h | 105 ++
tools/virtio/Makefile | 2 +-
47 files changed, 3536 insertions(+), 503 deletions(-)
create mode 100644 Documentation/driver-api/virtio/index.rst
create mode 100644 Documentation/driver-api/virtio/virtio.rst
create mode 100644 Documentation/driver-api/virtio/writing_virtio_drivers.rst
create mode 100644 drivers/vdpa/mlx5/net/debug.c
create mode 100644 drivers/vdpa/mlx5/net/mlx5_vnet.h
create mode 100644 drivers/vdpa/solidrun/Makefile
create mode 100644 drivers/vdpa/solidrun/snet_hwmon.c
create mode 100644 drivers/vdpa/solidrun/snet_main.c
create mode 100644 drivers/vdpa/solidrun/snet_vdpa.h
I'm announcing the release of the 5.10.170 kernel.
All users of the 5.10 kernel series must upgrade.
The updated 5.10.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-5.10.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary
thanks,
greg k-h
------------
MAINTAINERS | 2
Makefile | 2
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 +++++++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 +++++++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 +++
arch/x86/kvm/svm/svm.c | 10 +
arch/x86/kvm/vmx/nested.c | 11 +
arch/x86/kvm/vmx/vmx.c | 6 -
arch/x86/kvm/x86.c | 4
drivers/block/nbd.c | 13 ++
drivers/clk/x86/Kconfig | 5
drivers/clk/x86/clk-cgu-pll.c | 23 +--
drivers/clk/x86/clk-cgu.c | 106 +++++-------------
drivers/clk/x86/clk-cgu.h | 46 +++----
drivers/clk/x86/clk-lgm.c | 18 +--
drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 4
drivers/gpu/drm/i915/gvt/gtt.c | 17 ++
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 33 ++++-
drivers/net/wireless/marvell/mwifiex/sdio.c | 1
drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 -
fs/ext4/sysfs.c | 7 +
include/linux/nospec.h | 4
include/linux/random.h | 6 -
kernel/bpf/core.c | 3
lib/usercopy.c | 7 +
net/mac80211/ieee80211_i.h | 24 +++-
net/mac80211/mesh.h | 22 ---
net/mac80211/mesh_pathtbl.c | 89 +++++----------
net/sched/sch_taprio.c | 8 -
29 files changed, 339 insertions(+), 248 deletions(-)
Bitterblue Smith (1):
wifi: rtl8xxxu: gen2: Turn on the rate control
Dave Hansen (1):
uaccess: Add speculation barrier to copy_from_user()
Greg Kroah-Hartman (1):
Linux 5.10.170
Jason A. Donenfeld (1):
random: always mix cycle counter in add_latent_entropy()
Jim Mattson (1):
KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS
Kees Cook (1):
ext4: Fix function prototype mismatch for ext4_feat_ktype
Linus Torvalds (1):
bpf: add missing header file include
Lucas Stach (1):
drm/etnaviv: don't truncate physical page address
Lukas Wunner (1):
wifi: mwifiex: Add missing compatible string for SD8787
Marc Kleine-Budde (1):
can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
Paul Moore (1):
audit: update the mailing list in MAINTAINERS
Pavel Skripkin (1):
mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh
Rahul Tanwar (5):
clk: mxl: Switch from direct readl/writel based IO to regmap based IO
clk: mxl: Remove redundant spinlocks
clk: mxl: Add option to override gate clks
clk: mxl: Fix a clk entry by adding relevant flags
clk: mxl: syscon_node_to_regmap() returns error pointers
Sean Anderson (2):
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Sean Christopherson (2):
KVM: x86: Fail emulation during EMULTYPE_SKIP on any exception
KVM: SVM: Skip WRMSR fastpath on VM-Exit if next RIP isn't valid
Vladimir Oltean (1):
Revert "net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs"
Wen Yang (1):
Revert "Revert "block: nbd: add sanity check for first_minor""
Yu Kuai (2):
nbd: fix max value for 'first_minor'
nbd: fix possible overflow for 'first_minor' in nbd_dev_add()
Zhang Wensheng (1):
nbd: fix possible overflow on 'first_minor' in nbd_dev_add()
Zheng Wang (1):
drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
I'm announcing the release of the 5.4.233 kernel.
All users of the 5.4 kernel series must upgrade.
The updated 5.4.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-5.4.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary
thanks,
greg k-h
------------
Makefile | 2
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 ++++++++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 ++++++++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 +++-
arch/x86/kvm/vmx/nested.c | 11 ++
arch/x86/kvm/vmx/vmx.c | 6 -
arch/x86/kvm/x86.c | 4
drivers/gpu/drm/etnaviv/etnaviv_gem.c | 12 +-
drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 19 +--
drivers/gpu/drm/i915/gvt/gtt.c | 17 ++-
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 33 ++++--
drivers/net/wireless/marvell/mwifiex/sdio.c | 1
drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 -
fs/ext4/sysfs.c | 7 +
include/linux/dma-mapping.h | 80 ++++++++++++++++
include/linux/nospec.h | 4
include/linux/random.h | 6 -
include/linux/scatterlist.h | 50 +++++++++-
kernel/bpf/core.c | 3
kernel/time/alarmtimer.c | 33 +++++-
lib/usercopy.c | 7 +
net/mac80211/ieee80211_i.h | 24 ++++
net/mac80211/mesh.h | 22 ----
net/mac80211/mesh_pathtbl.c | 89 ++++++------------
net/sched/sch_taprio.c | 8 -
25 files changed, 410 insertions(+), 144 deletions(-)
Bitterblue Smith (1):
wifi: rtl8xxxu: gen2: Turn on the rate control
Dave Hansen (1):
uaccess: Add speculation barrier to copy_from_user()
Greg Kroah-Hartman (1):
Linux 5.4.233
Jason A. Donenfeld (1):
random: always mix cycle counter in add_latent_entropy()
Jim Mattson (1):
KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS
Kees Cook (1):
ext4: Fix function prototype mismatch for ext4_feat_ktype
Linus Torvalds (1):
bpf: add missing header file include
Lucas Stach (1):
drm/etnaviv: don't truncate physical page address
Lukas Wunner (1):
wifi: mwifiex: Add missing compatible string for SD8787
Marc Kleine-Budde (1):
can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
Marek Szyprowski (3):
dma-mapping: add generic helpers for mapping sgtable objects
scatterlist: add generic wrappers for iterating over sgtable objects
drm: etnaviv: fix common struct sg_table related issues
Pavel Skripkin (1):
mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh
Sean Anderson (2):
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Sean Christopherson (1):
KVM: x86: Fail emulation during EMULTYPE_SKIP on any exception
Thomas Gleixner (1):
alarmtimer: Prevent starvation by small intervals and SIG_IGN
Vladimir Oltean (1):
Revert "net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs"
Zheng Wang (1):
drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
I'm announcing the release of the 4.19.274 kernel.
All users of the 4.19 kernel series must upgrade.
The updated 4.19.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-4.19.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary
thanks,
greg k-h
------------
Makefile | 2
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 ++++++++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 ++++++++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 +++-
drivers/gpu/drm/i915/gvt/gtt.c | 17 ++-
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 33 ++++--
drivers/net/wireless/marvell/mwifiex/sdio.c | 1
drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 -
fs/ext4/sysfs.c | 7 +
include/linux/nospec.h | 4
include/linux/random.h | 6 -
kernel/bpf/core.c | 3
kernel/time/alarmtimer.c | 33 +++++-
lib/usercopy.c | 7 +
net/mac80211/ieee80211_i.h | 24 ++++
net/mac80211/mesh.h | 22 ----
net/mac80211/mesh_pathtbl.c | 89 ++++++------------
17 files changed, 251 insertions(+), 113 deletions(-)
Bitterblue Smith (1):
wifi: rtl8xxxu: gen2: Turn on the rate control
Dave Hansen (1):
uaccess: Add speculation barrier to copy_from_user()
Greg Kroah-Hartman (1):
Linux 4.19.274
Jason A. Donenfeld (1):
random: always mix cycle counter in add_latent_entropy()
Kees Cook (1):
ext4: Fix function prototype mismatch for ext4_feat_ktype
Linus Torvalds (1):
bpf: add missing header file include
Lukas Wunner (1):
wifi: mwifiex: Add missing compatible string for SD8787
Marc Kleine-Budde (1):
can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
Pavel Skripkin (1):
mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh
Sean Anderson (2):
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Thomas Gleixner (1):
alarmtimer: Prevent starvation by small intervals and SIG_IGN
Zheng Wang (1):
drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
I'm announcing the release of the 4.14.307 kernel.
All users of the 4.14 kernel series must upgrade.
The updated 4.14.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-4.14.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary
thanks,
greg k-h
------------
Makefile | 2
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 ++++++++++++++++++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 ++++++++++++++++++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 +++++++-
drivers/net/wireless/marvell/mwifiex/sdio.c | 1
drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 ---
include/linux/nospec.h | 4 +
include/linux/random.h | 6 +-
kernel/time/alarmtimer.c | 33 +++++++++++--
lib/usercopy.c | 7 ++
10 files changed, 153 insertions(+), 16 deletions(-)
Bitterblue Smith (1):
wifi: rtl8xxxu: gen2: Turn on the rate control
Dave Hansen (1):
uaccess: Add speculation barrier to copy_from_user()
Greg Kroah-Hartman (1):
Linux 4.14.307
Jason A. Donenfeld (1):
random: always mix cycle counter in add_latent_entropy()
Lukas Wunner (1):
wifi: mwifiex: Add missing compatible string for SD8787
Sean Anderson (2):
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Thomas Gleixner (1):
alarmtimer: Prevent starvation by small intervals and SIG_IGN
I'm announcing the release of the 6.2.1 kernel.
All users of the 6.2 kernel series must upgrade.
The updated 6.2.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-6.2.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary
thanks,
greg k-h
------------
MAINTAINERS | 2
Makefile | 2
arch/x86/include/asm/text-patching.h | 31 ++++++++++++
arch/x86/kernel/alternative.c | 62 ++++++++++++++++++-------
arch/x86/kernel/kprobes/core.c | 38 +++------------
arch/x86/kernel/static_call.c | 50 ++++++++++++++++++--
drivers/hid/hid-mcp2221.c | 3 +
drivers/net/wireless/marvell/mwifiex/sdio.c | 1
drivers/platform/x86/amd/pmf/Kconfig | 1
drivers/platform/x86/nvidia-wmi-ec-backlight.c | 6 ++
fs/ext4/sysfs.c | 7 ++
include/linux/nospec.h | 4 +
kernel/bpf/core.c | 3 -
lib/usercopy.c | 7 ++
security/Kconfig.hardening | 3 +
15 files changed, 166 insertions(+), 54 deletions(-)
Benjamin Tissoires (1):
HID: mcp-2221: prevent UAF in delayed work
Dave Hansen (1):
uaccess: Add speculation barrier to copy_from_user()
Eric Biggers (1):
randstruct: disable Clang 15 support
Greg Kroah-Hartman (1):
Linux 6.2.1
Hans de Goede (1):
platform/x86: nvidia-wmi-ec-backlight: Add force module parameter
Kees Cook (1):
ext4: Fix function prototype mismatch for ext4_feat_ktype
Linus Torvalds (1):
bpf: add missing header file include
Lukas Wunner (1):
wifi: mwifiex: Add missing compatible string for SD8787
Paul Moore (1):
audit: update the mailing list in MAINTAINERS
Peter Zijlstra (3):
x86/alternatives: Introduce int3_emulate_jcc()
x86/alternatives: Teach text_poke_bp() to patch Jcc.d32 instructions
x86/static_call: Add support for Jcc tail-calls
Shyam Sundar S K (1):
platform/x86/amd/pmf: Add depends on CONFIG_POWER_SUPPLY
This is the start of the stable review cycle for the 6.1.14 release.
There are 47 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 Sat, 25 Feb 2023 14:15:30 +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.14-rc2…
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.14-rc2
Linus Torvalds <torvalds(a)linux-foundation.org>
bpf: add missing header file include
Eric Biggers <ebiggers(a)google.com>
randstruct: disable Clang 15 support
Kees Cook <keescook(a)chromium.org>
ext4: Fix function prototype mismatch for ext4_feat_ktype
Hans de Goede <hdegoede(a)redhat.com>
platform/x86: nvidia-wmi-ec-backlight: Add force module parameter
Shyam Sundar S K <Shyam-sundar.S-k(a)amd.com>
platform/x86/amd/pmf: Add depends on CONFIG_POWER_SUPPLY
Paul Moore <paul(a)paul-moore.com>
audit: update the mailing list in MAINTAINERS
Lukas Wunner <lukas(a)wunner.de>
wifi: mwifiex: Add missing compatible string for SD8787
Tom Saeger <tom.saeger(a)oracle.com>
sh: define RUNTIME_DISCARD_EXIT
Masahiro Yamada <masahiroy(a)kernel.org>
s390: define RUNTIME_DISCARD_EXIT to fix link error with GNU ld < 2.36
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/vmlinux.lds: Don't discard .rela* for relocatable builds
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/vmlinux.lds: Define RUNTIME_DISCARD_EXIT
Masahiro Yamada <masahiroy(a)kernel.org>
arch: fix broken BuildID for arm64 and riscv
Masahiro Yamada <masahiroy(a)kernel.org>
arm64: remove special treatment for the link order of head.o
Jisheng Zhang <jszhang(a)kernel.org>
riscv: remove special treatment for the link order of head.o
Shengyu Qu <wiagn233(a)outlook.com>
Bluetooth: btusb: Add more device IDs for WCN6855
Peter Zijlstra <peterz(a)infradead.org>
x86/static_call: Add support for Jcc tail-calls
Peter Zijlstra <peterz(a)infradead.org>
x86/alternatives: Teach text_poke_bp() to patch Jcc.d32 instructions
Peter Zijlstra <peterz(a)infradead.org>
x86/alternatives: Introduce int3_emulate_jcc()
Dave Hansen <dave.hansen(a)linux.intel.com>
uaccess: Add speculation barrier to copy_from_user()
Yu Xiao <yu.xiao(a)corigine.com>
nfp: ethtool: fix the bug of setting unsupported port speed
Yu Xiao <yu.xiao(a)corigine.com>
nfp: ethtool: support reporting link modes
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/64s/radix: Fix RWX mapping with relocated kernel
Paolo Bonzini <pbonzini(a)redhat.com>
selftests: kvm: move declaration at the beginning of main()
Paolo Bonzini <pbonzini(a)redhat.com>
KVM: x86: fix deadlock for KVM_XEN_EVTCHN_RESET
Lucas De Marchi <lucas.demarchi(a)intel.com>
drm/i915: Remove __maybe_unused from mtl_info
Ricardo Ribalda <ribalda(a)chromium.org>
spi: mediatek: Enable irq before the spi registration
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Marc Kleine-Budde <mkl(a)pengutronix.de>
can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
Jim Mattson <jmattson(a)google.com>
KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS
Sean Christopherson <seanjc(a)google.com>
KVM: SVM: Skip WRMSR fastpath on VM-Exit if next RIP isn't valid
Sean Christopherson <seanjc(a)google.com>
KVM: x86: Fail emulation during EMULTYPE_SKIP on any exception
Yicong Yang <yangyicong(a)hisilicon.com>
docs: perf: Fix PMU instance name of hisi-pcie-pmu
Ricardo Ribalda <ribalda(a)chromium.org>
spi: mediatek: Enable irq when pdata is ready
Jie Zhan <zhanjie9(a)hisilicon.com>
scsi: hisi_sas: Fix SATA devices missing issue during I_T nexus reset
Jie Zhan <zhanjie9(a)hisilicon.com>
scsi: libsas: Add smp_ata_check_ready_type()
Jason A. Donenfeld <Jason(a)zx2c4.com>
random: always mix cycle counter in add_latent_entropy()
Suren Baghdasaryan <surenb(a)google.com>
sched/psi: Stop relying on timer_pending() for poll_work rescheduling
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: syscon_node_to_regmap() returns error pointers
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Fix a clk entry by adding relevant flags
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Add option to override gate clks
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Remove redundant spinlocks
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Switch from direct readl/writel based IO to regmap based IO
Ankit Nautiyal <ankit.k.nautiyal(a)intel.com>
drm/edid: Fix minimum bpc supported with DSC1.2 for HDMI sink
Bitterblue Smith <rtl8821cerfe2(a)gmail.com>
wifi: rtl8xxxu: gen2: Turn on the rate control
Wen Gong <quic_wgong(a)quicinc.com>
wifi: ath11k: fix warning in dma_free_coherent() of memory chunks while recovery
Lucas Stach <l.stach(a)pengutronix.de>
drm/etnaviv: don't truncate physical page address
-------------
Diffstat:
Documentation/admin-guide/perf/hisi-pcie-pmu.rst | 22 +--
MAINTAINERS | 2 +-
Makefile | 4 +-
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 +++++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 +++++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 ++-
arch/powerpc/kernel/vmlinux.lds.S | 6 +-
arch/powerpc/mm/book3s64/radix_pgtable.c | 13 ++
arch/s390/kernel/vmlinux.lds.S | 2 +
arch/sh/kernel/vmlinux.lds.S | 1 +
arch/x86/include/asm/text-patching.h | 31 ++++
arch/x86/kernel/alternative.c | 59 +++++--
arch/x86/kernel/kprobes/core.c | 38 +---
arch/x86/kernel/static_call.c | 49 +++++-
arch/x86/kvm/svm/svm.c | 10 +-
arch/x86/kvm/vmx/nested.c | 11 ++
arch/x86/kvm/vmx/vmx.c | 6 +-
arch/x86/kvm/x86.c | 4 +-
arch/x86/kvm/xen.c | 30 +++-
drivers/bluetooth/btusb.c | 84 +++++++++
drivers/clk/x86/Kconfig | 5 +-
drivers/clk/x86/clk-cgu-pll.c | 23 +--
drivers/clk/x86/clk-cgu.c | 106 ++++-------
drivers/clk/x86/clk-cgu.h | 46 ++---
drivers/clk/x86/clk-lgm.c | 18 +-
drivers/gpu/drm/drm_edid.c | 3 +-
drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 4 +-
drivers/gpu/drm/i915/i915_pci.c | 1 -
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 33 +++-
drivers/net/ethernet/netronome/nfp/nfp_main.h | 1 +
.../net/ethernet/netronome/nfp/nfp_net_ethtool.c | 195 +++++++++++++++++++++
drivers/net/ethernet/netronome/nfp/nfp_port.h | 12 ++
.../net/ethernet/netronome/nfp/nfpcore/nfp_nsp.c | 17 ++
.../net/ethernet/netronome/nfp/nfpcore/nfp_nsp.h | 56 ++++++
.../ethernet/netronome/nfp/nfpcore/nfp_nsp_eth.c | 26 +++
drivers/net/wireless/ath/ath11k/qmi.c | 6 +-
drivers/net/wireless/marvell/mwifiex/sdio.c | 1 +
.../net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 +-
drivers/platform/x86/amd/pmf/Kconfig | 1 +
drivers/platform/x86/nvidia-wmi-ec-backlight.c | 6 +-
drivers/scsi/hisi_sas/hisi_sas_main.c | 8 +-
drivers/scsi/libsas/sas_ata.c | 25 +++
drivers/scsi/libsas/sas_expander.c | 4 +-
drivers/scsi/libsas/sas_internal.h | 2 +
drivers/spi/spi-mt65xx.c | 10 +-
fs/ext4/sysfs.c | 7 +-
include/asm-generic/vmlinux.lds.h | 5 +
include/linux/nospec.h | 4 +
include/linux/psi_types.h | 1 +
include/linux/random.h | 6 +-
include/scsi/sas_ata.h | 6 +
kernel/bpf/core.c | 3 +-
kernel/sched/psi.c | 62 +++++--
lib/usercopy.c | 7 +
scripts/head-object-list.txt | 2 -
security/Kconfig.hardening | 3 +
.../testing/selftests/kvm/x86_64/xen_shinfo_test.c | 5 +
57 files changed, 963 insertions(+), 245 deletions(-)
This is the start of the stable review cycle for the 5.15.96 release.
There are 37 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 Sun, 26 Feb 2023 10:22:23 +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.15.96-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.15.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.15.96-rc3
Linus Torvalds <torvalds(a)linux-foundation.org>
bpf: add missing header file include
Vladimir Oltean <vladimir.oltean(a)nxp.com>
Revert "net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs"
Nathan Chancellor <nathan(a)kernel.org>
lib/Kconfig.debug: Allow BTF + DWARF5 with pahole 1.21+
Nathan Chancellor <nathan(a)kernel.org>
lib/Kconfig.debug: Use CONFIG_PAHOLE_VERSION
Nathan Chancellor <nathan(a)kernel.org>
scripts/pahole-flags.sh: Use pahole-version.sh
Nathan Chancellor <nathan(a)kernel.org>
kbuild: Add CONFIG_PAHOLE_VERSION
Kees Cook <keescook(a)chromium.org>
ext4: Fix function prototype mismatch for ext4_feat_ktype
Paul Moore <paul(a)paul-moore.com>
audit: update the mailing list in MAINTAINERS
Lukas Wunner <lukas(a)wunner.de>
wifi: mwifiex: Add missing compatible string for SD8787
Zhang Wensheng <zhangwensheng5(a)huawei.com>
nbd: fix possible overflow on 'first_minor' in nbd_dev_add()
Alessandro Astone <ales.astone(a)gmail.com>
binder: Gracefully handle BINDER_TYPE_FDA objects with num_fds=0
Alessandro Astone <ales.astone(a)gmail.com>
binder: Address corner cases in deferred copy and fixup
Arnd Bergmann <arnd(a)arndb.de>
binder: fix pointer cast warning
Todd Kjos <tkjos(a)google.com>
binder: defer copies of pre-patched txn data
Todd Kjos <tkjos(a)google.com>
binder: read pre-translated fds from sender buffer
Dave Hansen <dave.hansen(a)linux.intel.com>
uaccess: Add speculation barrier to copy_from_user()
Zheng Wang <zyytlz.wz(a)163.com>
drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/64s/radix: Fix RWX mapping with relocated kernel
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/64s/radix: Fix crash with unaligned relocated kernel
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/vmlinux.lds: Add an explicit symbol for the SRWX boundary
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/vmlinux.lds: Ensure STRICT_ALIGN_SIZE is at least page aligned
Christophe Leroy <christophe.leroy(a)csgroup.eu>
powerpc: use generic version of arch_is_kernel_initmem_freed()
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Marc Kleine-Budde <mkl(a)pengutronix.de>
can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
Jim Mattson <jmattson(a)google.com>
KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS
Sean Christopherson <seanjc(a)google.com>
KVM: SVM: Skip WRMSR fastpath on VM-Exit if next RIP isn't valid
Sean Christopherson <seanjc(a)google.com>
KVM: x86: Fail emulation during EMULTYPE_SKIP on any exception
Jason A. Donenfeld <Jason(a)zx2c4.com>
random: always mix cycle counter in add_latent_entropy()
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: syscon_node_to_regmap() returns error pointers
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Fix a clk entry by adding relevant flags
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Add option to override gate clks
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Remove redundant spinlocks
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Switch from direct readl/writel based IO to regmap based IO
Ankit Nautiyal <ankit.k.nautiyal(a)intel.com>
drm/edid: Fix minimum bpc supported with DSC1.2 for HDMI sink
Bitterblue Smith <rtl8821cerfe2(a)gmail.com>
wifi: rtl8xxxu: gen2: Turn on the rate control
Lucas Stach <l.stach(a)pengutronix.de>
drm/etnaviv: don't truncate physical page address
-------------
Diffstat:
MAINTAINERS | 3 +-
Makefile | 4 +-
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 +++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 +++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 +-
arch/powerpc/include/asm/sections.h | 14 +-
arch/powerpc/kernel/vmlinux.lds.S | 14 +-
arch/powerpc/mm/book3s32/mmu.c | 2 +-
arch/powerpc/mm/book3s64/radix_pgtable.c | 28 +-
arch/x86/kvm/svm/svm.c | 10 +-
arch/x86/kvm/vmx/nested.c | 11 +
arch/x86/kvm/vmx/vmx.c | 6 +-
arch/x86/kvm/x86.c | 4 +-
drivers/android/binder.c | 343 +++++++++++++++++++--
drivers/block/nbd.c | 23 +-
drivers/clk/x86/Kconfig | 5 +-
drivers/clk/x86/clk-cgu-pll.c | 23 +-
drivers/clk/x86/clk-cgu.c | 106 ++-----
drivers/clk/x86/clk-cgu.h | 46 +--
drivers/clk/x86/clk-lgm.c | 18 +-
drivers/gpu/drm/drm_edid.c | 3 +-
drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 4 +-
drivers/gpu/drm/i915/gvt/gtt.c | 17 +-
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 33 +-
drivers/net/wireless/marvell/mwifiex/sdio.c | 1 +
.../net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 +-
fs/ext4/sysfs.c | 7 +-
include/linux/nospec.h | 4 +
include/linux/random.h | 6 +-
init/Kconfig | 4 +
kernel/bpf/core.c | 3 +-
lib/Kconfig.debug | 4 +-
lib/usercopy.c | 7 +
net/sched/sch_taprio.c | 8 +-
scripts/pahole-flags.sh | 2 +-
scripts/pahole-version.sh | 13 +
36 files changed, 661 insertions(+), 231 deletions(-)
On Fri, Feb 24, 2023 at 8:55 AM Greg Kroah-Hartman
<gregkh(a)linuxfoundation.org> wrote:
>
> Ok, it's not quilt's fault, it's GNU diff's fault from what I can tell.
> quilt relies on diff to generate the patch, and I can't figure out how
> to get diff to notice file permissions at all. Am I just missing
> an option to 'diff' somewhere that I can't find in the manual?
No, I think you're right.
GNU patch was updated long ago to understand and apply the extended
git patch data.
But as far as I can tell, GNU diffutils have never actually grown the
ability to generate those extensions, even though at least the mode
bit one should be fairly simple (the file rename/copy ones are rather
more complicated, but those are just a "make diffs more legible and
compact" convenience thing, unlike the executable bit thing that
allows for scripts to remain executable).
> Anyway, quilt can handle replacing what it uses for 'diff', so I'll just
> replace it with 'git diff' and that seems to solve the problem for me!
That does sound like the right solution.
I don't think the diffutils people really care, but let's cc Paul
Eggert and Jim Meyering anyway, just in case. Because looking at the
diffutils git tree, it's still actively maintained even if the patch
load seems quite low.
Maybe there's some patch floating around that would allow diffutils to
also add those mode change lines. A quick google didn't find anything,
but Paul and Jim would probably know (or can just say "yeah, not even
interested").
Linus
Hi all, sorry if I put somebody in CC who is not the correct one. I
have a google pixelbook and using it with Fedora 37.
The last few kernels supplied by fedora 37, 6.1.6, 6.1.7 but also some
earlier have no working sound.
I see the last kernel for me with working sound is 6.0.18.
On my pixelbook this is showing in dmesg:
[ 7.623064] snd_soc_skl 0000:00:1f.3: ASoC: no sink widget found
for AEC Capture
[ 7.623070] snd_soc_skl 0000:00:1f.3: ASoC: Failed to add route
echo_ref_out cpr 7 -> direct -> AEC Capture
[ 7.623083] kbl_r5514_5663_max kbl_r5514_5663_max: ASoC: Parent
card not yet available, widget card binding deferred
[ 8.090716] NET: Registered PF_QIPCRTR protocol family
[ 8.273905] rt5663 i2c-10EC5663:00: sysclk < 384 x fs, disable i2s asrc
[ 8.275043] HDMI HDA Codec ehdaudio0D2: hdac_hdmi_present_sense:
disconnect for pin:port 5:0
[ 8.275165] HDMI HDA Codec ehdaudio0D2: hdac_hdmi_present_sense:
disconnect for pin:port 6:0
[ 8.275291] HDMI HDA Codec ehdaudio0D2: hdac_hdmi_present_sense:
disconnect for pin:port 7:0
[ 8.278569] input: kbl-r5514-5663-max Headset Jack as
/devices/platform/kbl_r5514_5663_max/sound/card0/input30
[ 8.278771] input: kbl-r5514-5663-max HDMI/DP,pcm=6 Jack as
/devices/platform/kbl_r5514_5663_max/sound/card0/input31
[ 8.278875] input: kbl-r5514-5663-max HDMI/DP,pcm=7 Jack as
/devices/platform/kbl_r5514_5663_max/sound/card0/input32
[ 8.891244] iwlwifi 0000:01:00.0: Applying debug destination EXTERNAL_DRAM
[ 8.902009] r8152 2-2.1:1.0 enp0s20f0u2u1: carrier on
[ 8.977070] iwlwifi 0000:01:00.0: Applying debug destination EXTERNAL_DRAM
[ 8.978496] iwlwifi 0000:01:00.0: FW already configured (0) - re-configuring
[ 8.991112] IPv6: ADDRCONF(NETDEV_CHANGE): enp0s20f0u2u1: link becomes ready
[ 9.027053] iwlwifi 0000:01:00.0: Applying debug destination EXTERNAL_DRAM
[ 9.112264] iwlwifi 0000:01:00.0: Applying debug destination EXTERNAL_DRAM
[ 9.113562] iwlwifi 0000:01:00.0: FW already configured (0) - re-configuring
[ 14.579846] HDMI HDA Codec ehdaudio0D2: No connections found for pin:port 5:0
Can please somebody help with this issue ?
Also in the latests kernels the shutdown stops and the machine does
not halt. It stays forever waiting for something to happen it seems.
If you need more details please dont hesitate to contact me. And
please CC me as I am not subscribed in these miling lists.
Rgds
Sasa
This isn't strictly needed in terms of correctness, but it does allow
polling to know if the bio has been put already by a different task
and hence avoid polling something that we don't need to.
Cc: stable(a)vger.kernel.org
Fixes: be4d234d7aeb ("bio: add allocation cache abstraction")
Signed-off-by: Jens Axboe <axboe(a)kernel.dk>
---
block/bio.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/block/bio.c b/block/bio.c
index 2693f34afb7e..605c40025068 100644
--- a/block/bio.c
+++ b/block/bio.c
@@ -772,6 +772,7 @@ static inline void bio_put_percpu_cache(struct bio *bio)
if ((bio->bi_opf & REQ_POLLED) && !WARN_ON_ONCE(in_interrupt())) {
bio->bi_next = cache->free_list;
+ bio->bi_bdev = NULL;
cache->free_list = bio;
cache->nr++;
} else {
--
2.39.1
This is the start of the stable review cycle for the 6.2.1 release.
There are 12 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 Sat, 25 Feb 2023 14:15:30 +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.2.1-rc2.…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-6.2.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.2.1-rc2
Linus Torvalds <torvalds(a)linux-foundation.org>
bpf: add missing header file include
Eric Biggers <ebiggers(a)google.com>
randstruct: disable Clang 15 support
Kees Cook <keescook(a)chromium.org>
ext4: Fix function prototype mismatch for ext4_feat_ktype
Hans de Goede <hdegoede(a)redhat.com>
platform/x86: nvidia-wmi-ec-backlight: Add force module parameter
Shyam Sundar S K <Shyam-sundar.S-k(a)amd.com>
platform/x86/amd/pmf: Add depends on CONFIG_POWER_SUPPLY
Paul Moore <paul(a)paul-moore.com>
audit: update the mailing list in MAINTAINERS
Lukas Wunner <lukas(a)wunner.de>
wifi: mwifiex: Add missing compatible string for SD8787
Benjamin Tissoires <benjamin.tissoires(a)redhat.com>
HID: mcp-2221: prevent UAF in delayed work
Peter Zijlstra <peterz(a)infradead.org>
x86/static_call: Add support for Jcc tail-calls
Peter Zijlstra <peterz(a)infradead.org>
x86/alternatives: Teach text_poke_bp() to patch Jcc.d32 instructions
Peter Zijlstra <peterz(a)infradead.org>
x86/alternatives: Introduce int3_emulate_jcc()
Dave Hansen <dave.hansen(a)linux.intel.com>
uaccess: Add speculation barrier to copy_from_user()
-------------
Diffstat:
MAINTAINERS | 2 +-
Makefile | 4 +-
arch/x86/include/asm/text-patching.h | 31 +++++++++++++
arch/x86/kernel/alternative.c | 62 +++++++++++++++++++-------
arch/x86/kernel/kprobes/core.c | 38 ++++------------
arch/x86/kernel/static_call.c | 50 +++++++++++++++++++--
drivers/hid/hid-mcp2221.c | 3 ++
drivers/net/wireless/marvell/mwifiex/sdio.c | 1 +
drivers/platform/x86/amd/pmf/Kconfig | 1 +
drivers/platform/x86/nvidia-wmi-ec-backlight.c | 6 ++-
fs/ext4/sysfs.c | 7 ++-
include/linux/nospec.h | 4 ++
kernel/bpf/core.c | 3 +-
lib/usercopy.c | 7 +++
security/Kconfig.hardening | 3 ++
15 files changed, 167 insertions(+), 55 deletions(-)
This is the start of the stable review cycle for the 4.14.307 release.
There are 7 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 Sat, 25 Feb 2023 13:04:16 +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.14.307-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.14.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.14.307-rc1
Lukas Wunner <lukas(a)wunner.de>
wifi: mwifiex: Add missing compatible string for SD8787
Dave Hansen <dave.hansen(a)linux.intel.com>
uaccess: Add speculation barrier to copy_from_user()
Thomas Gleixner <tglx(a)linutronix.de>
alarmtimer: Prevent starvation by small intervals and SIG_IGN
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Jason A. Donenfeld <Jason(a)zx2c4.com>
random: always mix cycle counter in add_latent_entropy()
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
Bitterblue Smith <rtl8821cerfe2(a)gmail.com>
wifi: rtl8xxxu: gen2: Turn on the rate control
-------------
Diffstat:
Makefile | 4 +-
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 ++++++++++++++++++++++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 ++++++++++++++++++++++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 +++++++++-
drivers/net/wireless/marvell/mwifiex/sdio.c | 1 +
.../net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 +---
include/linux/nospec.h | 4 ++
include/linux/random.h | 6 +--
kernel/time/alarmtimer.c | 33 ++++++++++++++--
lib/usercopy.c | 7 ++++
10 files changed, 154 insertions(+), 17 deletions(-)
This is the start of the stable review cycle for the 5.15.96 release.
There are 37 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 Sat, 25 Feb 2023 14:15:30 +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.15.96-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.15.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.15.96-rc2
Linus Torvalds <torvalds(a)linux-foundation.org>
bpf: add missing header file include
Vladimir Oltean <vladimir.oltean(a)nxp.com>
Revert "net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs"
Nathan Chancellor <nathan(a)kernel.org>
lib/Kconfig.debug: Allow BTF + DWARF5 with pahole 1.21+
Nathan Chancellor <nathan(a)kernel.org>
lib/Kconfig.debug: Use CONFIG_PAHOLE_VERSION
Nathan Chancellor <nathan(a)kernel.org>
scripts/pahole-flags.sh: Use pahole-version.sh
Nathan Chancellor <nathan(a)kernel.org>
kbuild: Add CONFIG_PAHOLE_VERSION
Kees Cook <keescook(a)chromium.org>
ext4: Fix function prototype mismatch for ext4_feat_ktype
Paul Moore <paul(a)paul-moore.com>
audit: update the mailing list in MAINTAINERS
Lukas Wunner <lukas(a)wunner.de>
wifi: mwifiex: Add missing compatible string for SD8787
Zhang Wensheng <zhangwensheng5(a)huawei.com>
nbd: fix possible overflow on 'first_minor' in nbd_dev_add()
Alessandro Astone <ales.astone(a)gmail.com>
binder: Gracefully handle BINDER_TYPE_FDA objects with num_fds=0
Alessandro Astone <ales.astone(a)gmail.com>
binder: Address corner cases in deferred copy and fixup
Arnd Bergmann <arnd(a)arndb.de>
binder: fix pointer cast warning
Todd Kjos <tkjos(a)google.com>
binder: defer copies of pre-patched txn data
Todd Kjos <tkjos(a)google.com>
binder: read pre-translated fds from sender buffer
Dave Hansen <dave.hansen(a)linux.intel.com>
uaccess: Add speculation barrier to copy_from_user()
Zheng Wang <zyytlz.wz(a)163.com>
drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/64s/radix: Fix RWX mapping with relocated kernel
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/64s/radix: Fix crash with unaligned relocated kernel
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/vmlinux.lds: Add an explicit symbol for the SRWX boundary
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/vmlinux.lds: Ensure STRICT_ALIGN_SIZE is at least page aligned
Christophe Leroy <christophe.leroy(a)csgroup.eu>
powerpc: use generic version of arch_is_kernel_initmem_freed()
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Marc Kleine-Budde <mkl(a)pengutronix.de>
can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
Jim Mattson <jmattson(a)google.com>
KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS
Sean Christopherson <seanjc(a)google.com>
KVM: SVM: Skip WRMSR fastpath on VM-Exit if next RIP isn't valid
Sean Christopherson <seanjc(a)google.com>
KVM: x86: Fail emulation during EMULTYPE_SKIP on any exception
Jason A. Donenfeld <Jason(a)zx2c4.com>
random: always mix cycle counter in add_latent_entropy()
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: syscon_node_to_regmap() returns error pointers
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Fix a clk entry by adding relevant flags
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Add option to override gate clks
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Remove redundant spinlocks
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Switch from direct readl/writel based IO to regmap based IO
Ankit Nautiyal <ankit.k.nautiyal(a)intel.com>
drm/edid: Fix minimum bpc supported with DSC1.2 for HDMI sink
Bitterblue Smith <rtl8821cerfe2(a)gmail.com>
wifi: rtl8xxxu: gen2: Turn on the rate control
Lucas Stach <l.stach(a)pengutronix.de>
drm/etnaviv: don't truncate physical page address
-------------
Diffstat:
MAINTAINERS | 3 +-
Makefile | 4 +-
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 +++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 +++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 +-
arch/powerpc/include/asm/sections.h | 14 +-
arch/powerpc/kernel/vmlinux.lds.S | 14 +-
arch/powerpc/mm/book3s32/mmu.c | 2 +-
arch/powerpc/mm/book3s64/radix_pgtable.c | 28 +-
arch/x86/kvm/svm/svm.c | 10 +-
arch/x86/kvm/vmx/nested.c | 11 +
arch/x86/kvm/vmx/vmx.c | 6 +-
arch/x86/kvm/x86.c | 4 +-
drivers/android/binder.c | 343 +++++++++++++++++++--
drivers/block/nbd.c | 23 +-
drivers/clk/x86/Kconfig | 5 +-
drivers/clk/x86/clk-cgu-pll.c | 23 +-
drivers/clk/x86/clk-cgu.c | 106 ++-----
drivers/clk/x86/clk-cgu.h | 46 +--
drivers/clk/x86/clk-lgm.c | 18 +-
drivers/gpu/drm/drm_edid.c | 3 +-
drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 4 +-
drivers/gpu/drm/i915/gvt/gtt.c | 17 +-
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 33 +-
drivers/net/wireless/marvell/mwifiex/sdio.c | 1 +
.../net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 +-
fs/ext4/sysfs.c | 7 +-
include/linux/nospec.h | 4 +
include/linux/random.h | 6 +-
init/Kconfig | 4 +
kernel/bpf/core.c | 3 +-
lib/Kconfig.debug | 4 +-
lib/usercopy.c | 7 +
net/sched/sch_taprio.c | 8 +-
scripts/pahole-flags.sh | 2 +-
scripts/pahole-version.sh | 13 +
36 files changed, 661 insertions(+), 231 deletions(-)
From: Conor Dooley <conor.dooley(a)microchip.com>
Quoting the llvm docs:
> Between versions 2.0 and 2.1 of the base I specification, a backwards
> incompatible change was made to remove selected instructions and CSRs
> from the base ISA. These instructions were grouped into a set of new
> extensions, but were no longer required by the base ISA. (snip) LLVM
> currently implements version 2.0 of the base specification. Thus,
> instructions from these extensions are accepted as part of the base
> ISA.
There is therefore no need (at present!) to carry out a $cc-option
check, and instead just gate presence of zicsr and zifencei in march
on the version of binutils that commit 6df2a016c0c8 ("riscv: fix build
with binutils 2.38") highlights as the introduction of the requirement.
In fact, the status quo creates some issues with mixed llvm/binutils
builds, specifically building with llvm-17 and ld from binutils-2.35.
Odd combo you may think, but this is what tuxsuite's debian stable uses
while testing 5.10 stable kernels as doesn't support LLD.
CC: stable(a)vger.kernel.org # needs RISC-V: move zicsr/zifencei spec version check to Kconfi
Reported-by: Naresh Kamboju <naresh.kamboju(a)linaro.org>
Link: https://lore.kernel.org/all/CA+G9fYt9T=ELCLaB9byxaLW2Qf4pZcDO=huCA0D8ug2V2+…
Suggested-by: Nathan Chancellor <nathan(a)kernel.org>
Signed-off-by: Conor Dooley <conor.dooley(a)microchip.com>
---
arch/riscv/Kconfig | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index 4eb0ef8314b3..c6902f4c5650 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -291,8 +291,7 @@ endchoice
config TOOLCHAIN_NEEDS_SPEC_20191213
bool
default y
- depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zicsr_zifencei)
- depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zicsr_zifencei)
+ depends on AS_IS_GNU && AS_VERSION >= 23800
help
Newer binutils versions default to ISA spec version 20191213 which
moves some instructions from the I extension to the Zicsr and Zifencei
--
2.39.1
From: Jimmy Hu <hhhuuu(a)google.com>
When the host controller is not responding, all URBs queued to all
endpoints need to be killed. This can cause a kernel panic if we
dereference an invalid endpoint.
Fix this by using xhci_get_virt_ep() helper to find the endpoint and
checking if the endpoint is valid before dereferencing it.
[233311.853271] xhci-hcd xhci-hcd.1.auto: xHCI host controller not responding, assume dead
[233311.853393] Unable to handle kernel NULL pointer dereference at virtual address 00000000000000e8
[233311.853964] pc : xhci_hc_died+0x10c/0x270
[233311.853971] lr : xhci_hc_died+0x1ac/0x270
[233311.854077] Call trace:
[233311.854085] xhci_hc_died+0x10c/0x270
[233311.854093] xhci_stop_endpoint_command_watchdog+0x100/0x1a4
[233311.854105] call_timer_fn+0x50/0x2d4
[233311.854112] expire_timers+0xac/0x2e4
[233311.854118] run_timer_softirq+0x300/0xabc
[233311.854127] __do_softirq+0x148/0x528
[233311.854135] irq_exit+0x194/0x1a8
[233311.854143] __handle_domain_irq+0x164/0x1d0
[233311.854149] gic_handle_irq.22273+0x10c/0x188
[233311.854156] el1_irq+0xfc/0x1a8
[233311.854175] lpm_cpuidle_enter+0x25c/0x418 [msm_pm]
[233311.854185] cpuidle_enter_state+0x1f0/0x764
[233311.854194] do_idle+0x594/0x6ac
[233311.854201] cpu_startup_entry+0x7c/0x80
[233311.854209] secondary_start_kernel+0x170/0x198
Fixes: 50e8725e7c42 ("xhci: Refactor command watchdog and fix split string.")
Cc: stable(a)vger.kernel.org
Signed-off-by: Jimmy Hu <hhhuuu(a)google.com>
Signed-off-by: Mathias Nyman <mathias.nyman(a)linux.intel.com>
---
drivers/usb/host/xhci-ring.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c
index ddc30037f9ce..f5b0e1ce22af 100644
--- a/drivers/usb/host/xhci-ring.c
+++ b/drivers/usb/host/xhci-ring.c
@@ -1169,7 +1169,10 @@ static void xhci_kill_endpoint_urbs(struct xhci_hcd *xhci,
struct xhci_virt_ep *ep;
struct xhci_ring *ring;
- ep = &xhci->devs[slot_id]->eps[ep_index];
+ ep = xhci_get_virt_ep(xhci, slot_id, ep_index);
+ if (!ep)
+ return;
+
if ((ep->ep_state & EP_HAS_STREAMS) ||
(ep->ep_state & EP_GETTING_NO_STREAMS)) {
int stream_id;
--
2.25.1
This is the start of the stable review cycle for the 4.19.274 release.
There are 12 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 Sat, 25 Feb 2023 14:15:30 +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.274-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.274-rc2
Linus Torvalds <torvalds(a)linux-foundation.org>
bpf: add missing header file include
Kees Cook <keescook(a)chromium.org>
ext4: Fix function prototype mismatch for ext4_feat_ktype
Lukas Wunner <lukas(a)wunner.de>
wifi: mwifiex: Add missing compatible string for SD8787
Dave Hansen <dave.hansen(a)linux.intel.com>
uaccess: Add speculation barrier to copy_from_user()
Pavel Skripkin <paskripkin(a)gmail.com>
mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh
Zheng Wang <zyytlz.wz(a)163.com>
drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
Thomas Gleixner <tglx(a)linutronix.de>
alarmtimer: Prevent starvation by small intervals and SIG_IGN
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Marc Kleine-Budde <mkl(a)pengutronix.de>
can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
Jason A. Donenfeld <Jason(a)zx2c4.com>
random: always mix cycle counter in add_latent_entropy()
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
Bitterblue Smith <rtl8821cerfe2(a)gmail.com>
wifi: rtl8xxxu: gen2: Turn on the rate control
-------------
Diffstat:
Makefile | 4 +-
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 +++++++++++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 +++++++++++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 ++++-
drivers/gpu/drm/i915/gvt/gtt.c | 17 ++++-
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 33 +++++---
drivers/net/wireless/marvell/mwifiex/sdio.c | 1 +
.../net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 +-
fs/ext4/sysfs.c | 7 +-
include/linux/nospec.h | 4 +
include/linux/random.h | 6 +-
kernel/bpf/core.c | 3 +-
kernel/time/alarmtimer.c | 33 +++++++-
lib/usercopy.c | 7 ++
net/mac80211/ieee80211_i.h | 24 +++++-
net/mac80211/mesh.h | 22 +-----
net/mac80211/mesh_pathtbl.c | 89 ++++++++--------------
17 files changed, 252 insertions(+), 114 deletions(-)
This is the start of the stable review cycle for the 5.4.233 release.
There are 19 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 Sat, 25 Feb 2023 14:15:30 +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.233-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.233-rc2
Linus Torvalds <torvalds(a)linux-foundation.org>
bpf: add missing header file include
Vladimir Oltean <vladimir.oltean(a)nxp.com>
Revert "net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs"
Kees Cook <keescook(a)chromium.org>
ext4: Fix function prototype mismatch for ext4_feat_ktype
Lukas Wunner <lukas(a)wunner.de>
wifi: mwifiex: Add missing compatible string for SD8787
Dave Hansen <dave.hansen(a)linux.intel.com>
uaccess: Add speculation barrier to copy_from_user()
Pavel Skripkin <paskripkin(a)gmail.com>
mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh
Zheng Wang <zyytlz.wz(a)163.com>
drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
Thomas Gleixner <tglx(a)linutronix.de>
alarmtimer: Prevent starvation by small intervals and SIG_IGN
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Marc Kleine-Budde <mkl(a)pengutronix.de>
can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
Jim Mattson <jmattson(a)google.com>
KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS
Sean Christopherson <seanjc(a)google.com>
KVM: x86: Fail emulation during EMULTYPE_SKIP on any exception
Jason A. Donenfeld <Jason(a)zx2c4.com>
random: always mix cycle counter in add_latent_entropy()
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
Bitterblue Smith <rtl8821cerfe2(a)gmail.com>
wifi: rtl8xxxu: gen2: Turn on the rate control
Lucas Stach <l.stach(a)pengutronix.de>
drm/etnaviv: don't truncate physical page address
Marek Szyprowski <m.szyprowski(a)samsung.com>
drm: etnaviv: fix common struct sg_table related issues
Marek Szyprowski <m.szyprowski(a)samsung.com>
scatterlist: add generic wrappers for iterating over sgtable objects
Marek Szyprowski <m.szyprowski(a)samsung.com>
dma-mapping: add generic helpers for mapping sgtable objects
-------------
Diffstat:
Makefile | 4 +-
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 +++++++++++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 +++++++++++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 ++++-
arch/x86/kvm/vmx/nested.c | 11 +++
arch/x86/kvm/vmx/vmx.c | 6 +-
arch/x86/kvm/x86.c | 4 +-
drivers/gpu/drm/etnaviv/etnaviv_gem.c | 12 ++-
drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 19 ++---
drivers/gpu/drm/i915/gvt/gtt.c | 17 ++++-
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 33 +++++---
drivers/net/wireless/marvell/mwifiex/sdio.c | 1 +
.../net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 +-
fs/ext4/sysfs.c | 7 +-
include/linux/dma-mapping.h | 80 +++++++++++++++++++
include/linux/nospec.h | 4 +
include/linux/random.h | 6 +-
include/linux/scatterlist.h | 50 +++++++++++-
kernel/bpf/core.c | 3 +-
kernel/time/alarmtimer.c | 33 +++++++-
lib/usercopy.c | 7 ++
net/mac80211/ieee80211_i.h | 24 +++++-
net/mac80211/mesh.h | 22 +-----
net/mac80211/mesh_pathtbl.c | 89 ++++++++--------------
net/sched/sch_taprio.c | 8 +-
25 files changed, 411 insertions(+), 145 deletions(-)
From: Sasha Finkelstein <fnkl.kernel(a)gmail.com>
This patch fixes an incorrect loop exit condition in code that replaces
'/' symbols in the board name. There might also be a memory corruption
issue here, but it is unlikely to be a real problem.
Signed-off-by: Sasha Finkelstein <fnkl.kernel(a)gmail.com>
---
drivers/bluetooth/btbcm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/bluetooth/btbcm.c b/drivers/bluetooth/btbcm.c
index 3006e2a0f37e..43e98a598bd9 100644
--- a/drivers/bluetooth/btbcm.c
+++ b/drivers/bluetooth/btbcm.c
@@ -511,7 +511,7 @@ static const char *btbcm_get_board_name(struct device *dev)
len = strlen(tmp) + 1;
board_type = devm_kzalloc(dev, len, GFP_KERNEL);
strscpy(board_type, tmp, len);
- for (i = 0; i < board_type[i]; i++) {
+ for (i = 0; i < len; i++) {
if (board_type[i] == '/')
board_type[i] = '-';
}
---
base-commit: c9c3395d5e3dcc6daee66c6908354d47bf98cb0c
change-id: 20230224-btbcm-wtf-ff32fed3e930
Best regards,
--
Sasha Finkelstein <fnkl.kernel(a)gmail.com>
This is the start of the stable review cycle for the 5.10.170 release.
There are 26 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 Sat, 25 Feb 2023 14:15:30 +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.10.170-r…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.10.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.10.170-rc2
Linus Torvalds <torvalds(a)linux-foundation.org>
bpf: add missing header file include
Vladimir Oltean <vladimir.oltean(a)nxp.com>
Revert "net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs"
Kees Cook <keescook(a)chromium.org>
ext4: Fix function prototype mismatch for ext4_feat_ktype
Paul Moore <paul(a)paul-moore.com>
audit: update the mailing list in MAINTAINERS
Lukas Wunner <lukas(a)wunner.de>
wifi: mwifiex: Add missing compatible string for SD8787
Zhang Wensheng <zhangwensheng5(a)huawei.com>
nbd: fix possible overflow on 'first_minor' in nbd_dev_add()
Yu Kuai <yukuai3(a)huawei.com>
nbd: fix possible overflow for 'first_minor' in nbd_dev_add()
Yu Kuai <yukuai3(a)huawei.com>
nbd: fix max value for 'first_minor'
Wen Yang <wenyang.linux(a)foxmail.com>
Revert "Revert "block: nbd: add sanity check for first_minor""
Dave Hansen <dave.hansen(a)linux.intel.com>
uaccess: Add speculation barrier to copy_from_user()
Pavel Skripkin <paskripkin(a)gmail.com>
mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh
Zheng Wang <zyytlz.wz(a)163.com>
drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Marc Kleine-Budde <mkl(a)pengutronix.de>
can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
Jim Mattson <jmattson(a)google.com>
KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS
Sean Christopherson <seanjc(a)google.com>
KVM: SVM: Skip WRMSR fastpath on VM-Exit if next RIP isn't valid
Sean Christopherson <seanjc(a)google.com>
KVM: x86: Fail emulation during EMULTYPE_SKIP on any exception
Jason A. Donenfeld <Jason(a)zx2c4.com>
random: always mix cycle counter in add_latent_entropy()
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: syscon_node_to_regmap() returns error pointers
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Fix a clk entry by adding relevant flags
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Add option to override gate clks
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Remove redundant spinlocks
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Switch from direct readl/writel based IO to regmap based IO
Bitterblue Smith <rtl8821cerfe2(a)gmail.com>
wifi: rtl8xxxu: gen2: Turn on the rate control
Lucas Stach <l.stach(a)pengutronix.de>
drm/etnaviv: don't truncate physical page address
-------------
Diffstat:
MAINTAINERS | 2 +-
Makefile | 4 +-
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 +++++++++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 +++++++++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 +++-
arch/x86/kvm/svm/svm.c | 10 +-
arch/x86/kvm/vmx/nested.c | 11 +++
arch/x86/kvm/vmx/vmx.c | 6 +-
arch/x86/kvm/x86.c | 4 +-
drivers/block/nbd.c | 13 ++-
drivers/clk/x86/Kconfig | 5 +-
drivers/clk/x86/clk-cgu-pll.c | 23 ++---
drivers/clk/x86/clk-cgu.c | 106 ++++++---------------
drivers/clk/x86/clk-cgu.h | 46 ++++-----
drivers/clk/x86/clk-lgm.c | 18 ++--
drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 4 +-
drivers/gpu/drm/i915/gvt/gtt.c | 17 +++-
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 33 +++++--
drivers/net/wireless/marvell/mwifiex/sdio.c | 1 +
.../net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 +-
fs/ext4/sysfs.c | 7 +-
include/linux/nospec.h | 4 +
include/linux/random.h | 6 +-
kernel/bpf/core.c | 3 +-
lib/usercopy.c | 7 ++
net/mac80211/ieee80211_i.h | 24 ++++-
net/mac80211/mesh.h | 22 +----
net/mac80211/mesh_pathtbl.c | 89 ++++++-----------
net/sched/sch_taprio.c | 8 +-
29 files changed, 340 insertions(+), 249 deletions(-)
Currently, for operations like memory clear or copy for big
chunks of memory, we generate multiple requests executed in a
chain.
But if one of the requests generated fails we would not know it
to unless it happens to the last request, because errors are not
properly propagated.
For this we need to keep propagating the chain of fence
notification in order to always reach the final fence associated
to the final request.
This way we would know that the memory operation has failed and
whether the memory is still invalid.
On copy and clear migration signal fences upon completion.
Fixes: cf586021642d80 ("drm/i915/gt: Pipelined page migration")
Reported-by: Matthew Auld <matthew.auld(a)intel.com>
Suggested-by: Chris Wilson <chris(a)chris-wilson.co.uk>
Signed-off-by: Andi Shyti <andi.shyti(a)linux.intel.com>
Cc: stable(a)vger.kernel.org
---
drivers/gpu/drm/i915/gt/intel_migrate.c | 31 +++++++++++++++++--------
1 file changed, 21 insertions(+), 10 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/intel_migrate.c b/drivers/gpu/drm/i915/gt/intel_migrate.c
index 3f638f1987968..8a293045a7b96 100644
--- a/drivers/gpu/drm/i915/gt/intel_migrate.c
+++ b/drivers/gpu/drm/i915/gt/intel_migrate.c
@@ -748,7 +748,7 @@ intel_context_migrate_copy(struct intel_context *ce,
rq = i915_request_create(ce);
if (IS_ERR(rq)) {
err = PTR_ERR(rq);
- goto out_ce;
+ break;
}
if (deps) {
@@ -878,10 +878,14 @@ intel_context_migrate_copy(struct intel_context *ce,
/* Arbitration is re-enabled between requests. */
out_rq:
- if (*out)
- i915_request_put(*out);
- *out = i915_request_get(rq);
+ i915_sw_fence_await(&rq->submit);
+ i915_request_get(rq);
i915_request_add(rq);
+ if (*out) {
+ i915_sw_fence_complete(&(*out)->submit);
+ i915_request_put(*out);
+ }
+ *out = rq;
if (err)
break;
@@ -905,7 +909,8 @@ intel_context_migrate_copy(struct intel_context *ce,
cond_resched();
} while (1);
-out_ce:
+ if (*out)
+ i915_sw_fence_complete(&(*out)->submit);
return err;
}
@@ -1005,7 +1010,7 @@ intel_context_migrate_clear(struct intel_context *ce,
rq = i915_request_create(ce);
if (IS_ERR(rq)) {
err = PTR_ERR(rq);
- goto out_ce;
+ break;
}
if (deps) {
@@ -1056,17 +1061,23 @@ intel_context_migrate_clear(struct intel_context *ce,
/* Arbitration is re-enabled between requests. */
out_rq:
- if (*out)
- i915_request_put(*out);
- *out = i915_request_get(rq);
+ i915_sw_fence_await(&rq->submit);
+ i915_request_get(rq);
i915_request_add(rq);
+ if (*out) {
+ i915_sw_fence_complete(&(*out)->submit);
+ i915_request_put(*out);
+ }
+ *out = rq;
+
if (err || !it.sg || !sg_dma_len(it.sg))
break;
cond_resched();
} while (1);
-out_ce:
+ if (*out)
+ i915_sw_fence_complete(&(*out)->submit);
return err;
}
--
2.39.1
Thadeu Lima de Souza Cascardo originally sent this patch but it failed to
merge because of a compilation error:
https://lore.kernel.org/bpf/20210830183211.339054-1-cascardo@canonical.com/…
v2:
Removed redefinition of tmp to fix compilation with CONFIG_BPF_JIT_ALWAYS_ON
enabled.
-Edward
==
The upstream changes necessary to fix these CVEs rely on the presence of JMP32,
which is not a small backport and brings its own potential set of necessary
follow-ups.
Daniel Borkmann, John Fastabend and Alexei Starovoitov came up with a fix
involving the use of the AX register.
This has been tested against the test_verifier in 4.14.y tree and some tests
specific to the two referred CVEs. The test_bpf module was also tested.
Daniel Borkmann (4):
bpf: Do not use ax register in interpreter on div/mod
bpf: fix subprog verifier bypass by div/mod by 0 exception
bpf: Fix 32 bit src register truncation on div/mod
bpf: Fix truncation handling for mod32 dst reg wrt zero
include/linux/filter.h | 24 ++++++++++++++++++++++++
kernel/bpf/core.c | 39 ++++++++++++++-------------------------
kernel/bpf/verifier.c | 39 +++++++++++++++++++++++++++++++--------
net/core/filter.c | 9 ++++++++-
4 files changed, 77 insertions(+), 34 deletions(-)
base-commit: a8ad60f2af5884921167e8cede5784c7849884b2
--
2.39.2.637.g21b0678d19-goog
The patch titled
Subject: ocfs2: fix non-auto defrag path not working issue
has been added to the -mm mm-hotfixes-unstable branch. Its filename is
ocfs2-fix-non-auto-defrag-path-not-working-issue.patch
This patch will shortly appear at
https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patche…
This patch will later appear in the mm-hotfixes-unstable branch at
git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next via the mm-everything
branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
and is updated there every 2-3 working days
------------------------------------------------------
From: Heming Zhao via Ocfs2-devel <ocfs2-devel(a)oss.oracle.com>
Subject: ocfs2: fix non-auto defrag path not working issue
Date: Mon, 20 Feb 2023 13:05:26 +0800
This fixes three issues on move extents ioctl without auto defrag:
a) In ocfs2_find_victim_alloc_group(), we have to convert bits to block
first in case of global bitmap.
b) In ocfs2_probe_alloc_group(), when finding enough bits in block
group bitmap, we have to back off move_len to start pos as well,
otherwise it may corrupt filesystem.
c) In ocfs2_ioctl_move_extents(), set me_threshold both for non-auto
and auto defrag paths. Otherwise it will set move_max_hop to 0 and
finally cause unexpectedly ENOSPC error.
Currently there are no tools triggering the above issues since
defragfs.ocfs2 enables auto defrag by default. Tested with manually
changing defragfs.ocfs2 to run non auto defrag path.
Link: https://lkml.kernel.org/r/20230220050526.22020-1-heming.zhao@suse.com
Signed-off-by: Heming Zhao <heming.zhao(a)suse.com>
Reviewed-by: Joseph Qi <joseph.qi(a)linux.alibaba.com>
Cc: Mark Fasheh <mark(a)fasheh.com>
Cc: Joel Becker <jlbec(a)evilplan.org>
Cc: Junxiao Bi <junxiao.bi(a)oracle.com>
Cc: Changwei Ge <gechangwei(a)live.cn>
Cc: Gang He <ghe(a)suse.com>
Cc: Jun Piao <piaojun(a)huawei.com>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
fs/ocfs2/move_extents.c | 24 +++++++++++++-----------
1 file changed, 13 insertions(+), 11 deletions(-)
--- a/fs/ocfs2/move_extents.c~ocfs2-fix-non-auto-defrag-path-not-working-issue
+++ a/fs/ocfs2/move_extents.c
@@ -434,7 +434,7 @@ static int ocfs2_find_victim_alloc_group
bg = (struct ocfs2_group_desc *)gd_bh->b_data;
if (vict_blkno < (le64_to_cpu(bg->bg_blkno) +
- le16_to_cpu(bg->bg_bits))) {
+ (le16_to_cpu(bg->bg_bits) << bits_per_unit))) {
*ret_bh = gd_bh;
*vict_bit = (vict_blkno - blkno) >>
@@ -549,6 +549,7 @@ static void ocfs2_probe_alloc_group(stru
last_free_bits++;
if (last_free_bits == move_len) {
+ i -= move_len;
*goal_bit = i;
*phys_cpos = base_cpos + i;
break;
@@ -1020,18 +1021,19 @@ int ocfs2_ioctl_move_extents(struct file
context->range = ⦥
+ /*
+ * ok, the default theshold for the defragmentation
+ * is 1M, since our maximum clustersize was 1M also.
+ * any thought?
+ */
+ if (!range.me_threshold)
+ range.me_threshold = 1024 * 1024;
+
+ if (range.me_threshold > i_size_read(inode))
+ range.me_threshold = i_size_read(inode);
+
if (range.me_flags & OCFS2_MOVE_EXT_FL_AUTO_DEFRAG) {
context->auto_defrag = 1;
- /*
- * ok, the default theshold for the defragmentation
- * is 1M, since our maximum clustersize was 1M also.
- * any thought?
- */
- if (!range.me_threshold)
- range.me_threshold = 1024 * 1024;
-
- if (range.me_threshold > i_size_read(inode))
- range.me_threshold = i_size_read(inode);
if (range.me_flags & OCFS2_MOVE_EXT_FL_PART_DEFRAG)
context->partial = 1;
_
Patches currently in -mm which might be from ocfs2-devel(a)oss.oracle.com are
ocfs2-fix-defrag-path-triggering-jbd2-assert.patch
ocfs2-fix-non-auto-defrag-path-not-working-issue.patch
The patch titled
Subject: ocfs2: fix defrag path triggering jbd2 ASSERT
has been added to the -mm mm-hotfixes-unstable branch. Its filename is
ocfs2-fix-defrag-path-triggering-jbd2-assert.patch
This patch will shortly appear at
https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patche…
This patch will later appear in the mm-hotfixes-unstable branch at
git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next via the mm-everything
branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
and is updated there every 2-3 working days
------------------------------------------------------
From: Heming Zhao via Ocfs2-devel <ocfs2-devel(a)oss.oracle.com>
Subject: ocfs2: fix defrag path triggering jbd2 ASSERT
Date: Fri, 17 Feb 2023 08:37:17 +0800
code path:
ocfs2_ioctl_move_extents
ocfs2_move_extents
ocfs2_defrag_extent
__ocfs2_move_extent
+ ocfs2_journal_access_di
+ ocfs2_split_extent //sub-paths call jbd2_journal_restart
+ ocfs2_journal_dirty //crash by jbs2 ASSERT
crash stacks:
PID: 11297 TASK: ffff974a676dcd00 CPU: 67 COMMAND: "defragfs.ocfs2"
#0 [ffffb25d8dad3900] machine_kexec at ffffffff8386fe01
#1 [ffffb25d8dad3958] __crash_kexec at ffffffff8395959d
#2 [ffffb25d8dad3a20] crash_kexec at ffffffff8395a45d
#3 [ffffb25d8dad3a38] oops_end at ffffffff83836d3f
#4 [ffffb25d8dad3a58] do_trap at ffffffff83833205
#5 [ffffb25d8dad3aa0] do_invalid_op at ffffffff83833aa6
#6 [ffffb25d8dad3ac0] invalid_op at ffffffff84200d18
[exception RIP: jbd2_journal_dirty_metadata+0x2ba]
RIP: ffffffffc09ca54a RSP: ffffb25d8dad3b70 RFLAGS: 00010207
RAX: 0000000000000000 RBX: ffff9706eedc5248 RCX: 0000000000000000
RDX: 0000000000000001 RSI: ffff97337029ea28 RDI: ffff9706eedc5250
RBP: ffff9703c3520200 R8: 000000000f46b0b2 R9: 0000000000000000
R10: 0000000000000001 R11: 00000001000000fe R12: ffff97337029ea28
R13: 0000000000000000 R14: ffff9703de59bf60 R15: ffff9706eedc5250
ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018
#7 [ffffb25d8dad3ba8] ocfs2_journal_dirty at ffffffffc137fb95 [ocfs2]
#8 [ffffb25d8dad3be8] __ocfs2_move_extent at ffffffffc139a950 [ocfs2]
#9 [ffffb25d8dad3c80] ocfs2_defrag_extent at ffffffffc139b2d2 [ocfs2]
Analysis
This bug has the same root cause of 'commit 7f27ec978b0e ("ocfs2: call
ocfs2_journal_access_di() before ocfs2_journal_dirty() in
ocfs2_write_end_nolock()")'. For this bug, jbd2_journal_restart() is
called by ocfs2_split_extent() during defragmenting.
How to fix
For ocfs2_split_extent() can handle journal operations totally by itself.
Caller doesn't need to call journal access/dirty pair, and caller only
needs to call journal start/stop pair. The fix method is to remove
journal access/dirty from __ocfs2_move_extent().
The discussion for this patch:
https://oss.oracle.com/pipermail/ocfs2-devel/2023-February/000647.html
Link: https://lkml.kernel.org/r/20230217003717.32469-1-heming.zhao@suse.com
Signed-off-by: Heming Zhao <heming.zhao(a)suse.com>
Reviewed-by: Joseph Qi <joseph.qi(a)linux.alibaba.com>
Cc: Mark Fasheh <mark(a)fasheh.com>
Cc: Joel Becker <jlbec(a)evilplan.org>
Cc: Junxiao Bi <junxiao.bi(a)oracle.com>
Cc: Changwei Ge <gechangwei(a)live.cn>
Cc: Gang He <ghe(a)suse.com>
Cc: Jun Piao <piaojun(a)huawei.com>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
fs/ocfs2/move_extents.c | 10 ----------
1 file changed, 10 deletions(-)
--- a/fs/ocfs2/move_extents.c~ocfs2-fix-defrag-path-triggering-jbd2-assert
+++ a/fs/ocfs2/move_extents.c
@@ -105,14 +105,6 @@ static int __ocfs2_move_extent(handle_t
*/
replace_rec.e_flags = ext_flags & ~OCFS2_EXT_REFCOUNTED;
- ret = ocfs2_journal_access_di(handle, INODE_CACHE(inode),
- context->et.et_root_bh,
- OCFS2_JOURNAL_ACCESS_WRITE);
- if (ret) {
- mlog_errno(ret);
- goto out;
- }
-
ret = ocfs2_split_extent(handle, &context->et, path, index,
&replace_rec, context->meta_ac,
&context->dealloc);
@@ -121,8 +113,6 @@ static int __ocfs2_move_extent(handle_t
goto out;
}
- ocfs2_journal_dirty(handle, context->et.et_root_bh);
-
context->new_phys_cpos = new_p_cpos;
/*
_
Patches currently in -mm which might be from ocfs2-devel(a)oss.oracle.com are
ocfs2-fix-defrag-path-triggering-jbd2-assert.patch
ocfs2-fix-non-auto-defrag-path-not-working-issue.patch
The patch titled
Subject: mm/hwpoison: convert TTU_IGNORE_HWPOISON to TTU_HWPOISON
has been added to the -mm mm-hotfixes-unstable branch. Its filename is
mm-hwpoison-convert-ttu_ignore_hwpoison-to-ttu_hwpoison.patch
This patch will shortly appear at
https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patche…
This patch will later appear in the mm-hotfixes-unstable branch at
git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next via the mm-everything
branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
and is updated there every 2-3 working days
------------------------------------------------------
From: Naoya Horiguchi <naoya.horiguchi(a)nec.com>
Subject: mm/hwpoison: convert TTU_IGNORE_HWPOISON to TTU_HWPOISON
Date: Tue, 21 Feb 2023 17:59:05 +0900
After a memory error happens on a clean folio, a process unexpectedly
receives SIGBUS when it accesses to the error page. This SIGBUS killing
is pointless and simply degrades the level of RAS of the system, because
the clean folio can be dropped without any data lost on memory error
handling as we do for a clean pagecache.
When memory_failure() is called on a clean folio, try_to_unmap() is called
twice (one from split_huge_page() and one from hwpoison_user_mappings()).
The root cause of the issue is that pte conversion to hwpoisoned entry is
now done in the first call of try_to_unmap() because PageHWPoison is
already set at this point, while it's actually expected to be done in the
second call. This behavior disturbs the error handling operation like
removing pagecache, which results in the malfunction described above.
So convert TTU_IGNORE_HWPOISON into TTU_HWPOISON and set TTU_HWPOISON only
when we really intend to convert pte to hwpoison entry. This can prevent
other callers of try_to_unmap() from accidentally converting to hwpoison
entries.
Link: https://lkml.kernel.org/r/20230221085905.1465385-1-naoya.horiguchi@linux.dev
Fixes: ???
Signed-off-by: Naoya Horiguchi <naoya.horiguchi(a)nec.com>
Cc: David Hildenbrand <david(a)redhat.com>
Cc: Hugh Dickins <hughd(a)google.com>
Cc: Matthew Wilcox <willy(a)infradead.org>
Cc: Miaohe Lin <linmiaohe(a)huawei.com>
Cc: Minchan Kim <minchan(a)kernel.org>
Cc: Vlastimil Babka <vbabka(a)suse.cz>
Cc: <stable(a)vger.kernel.org>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
include/linux/rmap.h | 2 +-
mm/memory-failure.c | 8 ++++----
mm/rmap.c | 2 +-
3 files changed, 6 insertions(+), 6 deletions(-)
--- a/include/linux/rmap.h~mm-hwpoison-convert-ttu_ignore_hwpoison-to-ttu_hwpoison
+++ a/include/linux/rmap.h
@@ -94,7 +94,7 @@ enum ttu_flags {
TTU_SPLIT_HUGE_PMD = 0x4, /* split huge PMD if any */
TTU_IGNORE_MLOCK = 0x8, /* ignore mlock */
TTU_SYNC = 0x10, /* avoid racy checks with PVMW_SYNC */
- TTU_IGNORE_HWPOISON = 0x20, /* corrupted page is recoverable */
+ TTU_HWPOISON = 0x20, /* do convert pte to hwpoison entry */
TTU_BATCH_FLUSH = 0x40, /* Batch TLB flushes where possible
* and caller guarantees they will
* do a final flush if necessary */
--- a/mm/memory-failure.c~mm-hwpoison-convert-ttu_ignore_hwpoison-to-ttu_hwpoison
+++ a/mm/memory-failure.c
@@ -1034,7 +1034,7 @@ static int me_pagecache_dirty(struct pag
* cache and swap cache(ie. page is freshly swapped in). So it could be
* referenced concurrently by 2 types of PTEs:
* normal PTEs and swap PTEs. We try to handle them consistently by calling
- * try_to_unmap(TTU_IGNORE_HWPOISON) to convert the normal PTEs to swap PTEs,
+ * try_to_unmap(!TTU_HWPOISON) to convert the normal PTEs to swap PTEs,
* and then
* - clear dirty bit to prevent IO
* - remove from LRU
@@ -1415,7 +1415,7 @@ static bool hwpoison_user_mappings(struc
int flags, struct page *hpage)
{
struct folio *folio = page_folio(hpage);
- enum ttu_flags ttu = TTU_IGNORE_MLOCK | TTU_SYNC;
+ enum ttu_flags ttu = TTU_IGNORE_MLOCK | TTU_SYNC | TTU_HWPOISON;
struct address_space *mapping;
LIST_HEAD(tokill);
bool unmap_success;
@@ -1445,7 +1445,7 @@ static bool hwpoison_user_mappings(struc
if (PageSwapCache(p)) {
pr_err("%#lx: keeping poisoned page in swap cache\n", pfn);
- ttu |= TTU_IGNORE_HWPOISON;
+ ttu &= ~TTU_HWPOISON;
}
/*
@@ -1460,7 +1460,7 @@ static bool hwpoison_user_mappings(struc
if (page_mkclean(hpage)) {
SetPageDirty(hpage);
} else {
- ttu |= TTU_IGNORE_HWPOISON;
+ ttu &= ~TTU_HWPOISON;
pr_info("%#lx: corrupted page was clean: dropped without side effects\n",
pfn);
}
--- a/mm/rmap.c~mm-hwpoison-convert-ttu_ignore_hwpoison-to-ttu_hwpoison
+++ a/mm/rmap.c
@@ -1615,7 +1615,7 @@ static bool try_to_unmap_one(struct foli
/* Update high watermark before we lower rss */
update_hiwater_rss(mm);
- if (PageHWPoison(subpage) && !(flags & TTU_IGNORE_HWPOISON)) {
+ if (PageHWPoison(subpage) && (flags & TTU_HWPOISON)) {
pteval = swp_entry_to_pte(make_hwpoison_entry(subpage));
if (folio_test_hugetlb(folio)) {
hugetlb_count_sub(folio_nr_pages(folio), mm);
_
Patches currently in -mm which might be from naoya.horiguchi(a)nec.com are
mm-hwpoison-convert-ttu_ignore_hwpoison-to-ttu_hwpoison.patch
The patch titled
Subject: mm/damon/paddr: fix missing folio_put()
has been added to the -mm mm-unstable branch. Its filename is
mm-damon-paddr-fix-missing-folio_put.patch
This patch will shortly appear at
https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patche…
This patch will later appear in the mm-unstable branch at
git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
Before you just go and hit "reply", please:
a) Consider who else should be cc'ed
b) Prefer to cc a suitable mailing list as well
c) Ideally: find the original patch on the mailing list and do a
reply-to-all to that, adding suitable additional cc's
*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***
The -mm tree is included into linux-next via the mm-everything
branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
and is updated there every 2-3 working days
------------------------------------------------------
From: "andrew.yang" <andrew.yang(a)mediatek.com>
Subject: mm/damon/paddr: fix missing folio_put()
Date: Wed, 22 Feb 2023 14:42:20 +0800
damon_get_folio() would always increase folio _refcount and
folio_isolate_lru() would increase folio _refcount if the folio's lru flag
is set.
If an unevictable folio isolated successfully, there will be two more
_refcount. The one from folio_isolate_lru() will be decreased in
folio_puback_lru(), but the other one from damon_get_folio() will be left
behind. This causes a pin page.
Whatever the case, the _refcount from damon_get_folio() should be
decreased.
Link: https://lkml.kernel.org/r/20230222064223.6735-1-andrew.yang@mediatek.com
Fixes: 57223ac29584 ("mm/damon/paddr: support the pageout scheme")
Signed-off-by: andrew.yang <andrew.yang(a)mediatek.com>
Reviewed-by: SeongJae Park <sj(a)kernel.org>
Cc: <stable(a)vger.kernel.org> [5.16.x]
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
---
mm/damon/paddr.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
--- a/mm/damon/paddr.c~mm-damon-paddr-fix-missing-folio_put
+++ a/mm/damon/paddr.c
@@ -250,12 +250,11 @@ static unsigned long damon_pa_pageout(st
folio_put(folio);
continue;
}
- if (folio_test_unevictable(folio)) {
+ if (folio_test_unevictable(folio))
folio_putback_lru(folio);
- } else {
+ else
list_add(&folio->lru, &folio_list);
- folio_put(folio);
- }
+ folio_put(folio);
}
applied = reclaim_pages(&folio_list);
cond_resched();
_
Patches currently in -mm which might be from andrew.yang(a)mediatek.com are
mm-damon-paddr-fix-missing-folio_put.patch
Hi,
for information,
for the batocera.linux distribution,
we have disabled this commit.
https://github.com/torvalds/linux/commit/9a8cc8cabc1e351614fd7f9e774757a514…
while some people with some steam deck models cannot boot anymore
(issue about gpu)
You can find the crash in the attached dmesg file.
[ 8.862600] Call Trace:
[ 8.862604] <TASK>
[ 8.862608] amdgpu_fence_driver_sw_fini+0xc4/0xd0 [amdgpu]
[ 8.863040] amdgpu_device_fini_sw+0x27/0x3c0 [amdgpu]
[ 8.863334] amdgpu_driver_release_kms+0x12/0x30 [amdgpu]
[ 8.863616] devm_drm_dev_init_release+0x42/0x70
[ 8.863625] release_nodes+0x3d/0xb0
[ 8.863631] devres_release_all+0x88/0xc0
[ 8.863636] device_unbind_cleanup+0xe/0x70
Nicolas Adenis-Lamarre
>> Fixes: 0c2c02b ("drm/amdgpu/vcn: add firmware support for dimgrey_cavefish")
>> Signed-off-by: Leo Liu <leo.liu(a)amd.com>
>> Reviewed-by: James Zhu <James.Zhu(a)amd.com>
>> Signed-off-by: Alex Deucher <alexander.deucher(a)amd.com>
>> Cc: stable(a)vger.kernel.org
This is the start of the stable review cycle for the 6.1.14 release.
There are 46 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 Sat, 25 Feb 2023 13:04:16 +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.14-rc1…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-6.1.y
and the diffstat can be found below.
thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:
Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Linux 6.1.14-rc1
Eric Biggers <ebiggers(a)google.com>
randstruct: disable Clang 15 support
Kees Cook <keescook(a)chromium.org>
ext4: Fix function prototype mismatch for ext4_feat_ktype
Hans de Goede <hdegoede(a)redhat.com>
platform/x86: nvidia-wmi-ec-backlight: Add force module parameter
Shyam Sundar S K <Shyam-sundar.S-k(a)amd.com>
platform/x86/amd/pmf: Add depends on CONFIG_POWER_SUPPLY
Paul Moore <paul(a)paul-moore.com>
audit: update the mailing list in MAINTAINERS
Lukas Wunner <lukas(a)wunner.de>
wifi: mwifiex: Add missing compatible string for SD8787
Tom Saeger <tom.saeger(a)oracle.com>
sh: define RUNTIME_DISCARD_EXIT
Masahiro Yamada <masahiroy(a)kernel.org>
s390: define RUNTIME_DISCARD_EXIT to fix link error with GNU ld < 2.36
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/vmlinux.lds: Don't discard .rela* for relocatable builds
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/vmlinux.lds: Define RUNTIME_DISCARD_EXIT
Masahiro Yamada <masahiroy(a)kernel.org>
arch: fix broken BuildID for arm64 and riscv
Masahiro Yamada <masahiroy(a)kernel.org>
arm64: remove special treatment for the link order of head.o
Jisheng Zhang <jszhang(a)kernel.org>
riscv: remove special treatment for the link order of head.o
Shengyu Qu <wiagn233(a)outlook.com>
Bluetooth: btusb: Add more device IDs for WCN6855
Peter Zijlstra <peterz(a)infradead.org>
x86/static_call: Add support for Jcc tail-calls
Peter Zijlstra <peterz(a)infradead.org>
x86/alternatives: Teach text_poke_bp() to patch Jcc.d32 instructions
Peter Zijlstra <peterz(a)infradead.org>
x86/alternatives: Introduce int3_emulate_jcc()
Dave Hansen <dave.hansen(a)linux.intel.com>
uaccess: Add speculation barrier to copy_from_user()
Yu Xiao <yu.xiao(a)corigine.com>
nfp: ethtool: fix the bug of setting unsupported port speed
Yu Xiao <yu.xiao(a)corigine.com>
nfp: ethtool: support reporting link modes
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/64s/radix: Fix RWX mapping with relocated kernel
Paolo Bonzini <pbonzini(a)redhat.com>
selftests: kvm: move declaration at the beginning of main()
Paolo Bonzini <pbonzini(a)redhat.com>
KVM: x86: fix deadlock for KVM_XEN_EVTCHN_RESET
Lucas De Marchi <lucas.demarchi(a)intel.com>
drm/i915: Remove __maybe_unused from mtl_info
Ricardo Ribalda <ribalda(a)chromium.org>
spi: mediatek: Enable irq before the spi registration
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Marc Kleine-Budde <mkl(a)pengutronix.de>
can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
Jim Mattson <jmattson(a)google.com>
KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS
Sean Christopherson <seanjc(a)google.com>
KVM: SVM: Skip WRMSR fastpath on VM-Exit if next RIP isn't valid
Sean Christopherson <seanjc(a)google.com>
KVM: x86: Fail emulation during EMULTYPE_SKIP on any exception
Yicong Yang <yangyicong(a)hisilicon.com>
docs: perf: Fix PMU instance name of hisi-pcie-pmu
Ricardo Ribalda <ribalda(a)chromium.org>
spi: mediatek: Enable irq when pdata is ready
Jie Zhan <zhanjie9(a)hisilicon.com>
scsi: hisi_sas: Fix SATA devices missing issue during I_T nexus reset
Jie Zhan <zhanjie9(a)hisilicon.com>
scsi: libsas: Add smp_ata_check_ready_type()
Jason A. Donenfeld <Jason(a)zx2c4.com>
random: always mix cycle counter in add_latent_entropy()
Suren Baghdasaryan <surenb(a)google.com>
sched/psi: Stop relying on timer_pending() for poll_work rescheduling
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: syscon_node_to_regmap() returns error pointers
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Fix a clk entry by adding relevant flags
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Add option to override gate clks
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Remove redundant spinlocks
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Switch from direct readl/writel based IO to regmap based IO
Ankit Nautiyal <ankit.k.nautiyal(a)intel.com>
drm/edid: Fix minimum bpc supported with DSC1.2 for HDMI sink
Bitterblue Smith <rtl8821cerfe2(a)gmail.com>
wifi: rtl8xxxu: gen2: Turn on the rate control
Wen Gong <quic_wgong(a)quicinc.com>
wifi: ath11k: fix warning in dma_free_coherent() of memory chunks while recovery
Lucas Stach <l.stach(a)pengutronix.de>
drm/etnaviv: don't truncate physical page address
-------------
Diffstat:
Documentation/admin-guide/perf/hisi-pcie-pmu.rst | 22 +--
MAINTAINERS | 2 +-
Makefile | 4 +-
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 +++++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 +++++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 ++-
arch/powerpc/kernel/vmlinux.lds.S | 6 +-
arch/powerpc/mm/book3s64/radix_pgtable.c | 13 ++
arch/s390/kernel/vmlinux.lds.S | 2 +
arch/sh/kernel/vmlinux.lds.S | 1 +
arch/x86/include/asm/text-patching.h | 31 ++++
arch/x86/kernel/alternative.c | 59 +++++--
arch/x86/kernel/kprobes/core.c | 38 +---
arch/x86/kernel/static_call.c | 49 +++++-
arch/x86/kvm/svm/svm.c | 10 +-
arch/x86/kvm/vmx/nested.c | 11 ++
arch/x86/kvm/vmx/vmx.c | 6 +-
arch/x86/kvm/x86.c | 4 +-
arch/x86/kvm/xen.c | 30 +++-
drivers/bluetooth/btusb.c | 84 +++++++++
drivers/clk/x86/Kconfig | 5 +-
drivers/clk/x86/clk-cgu-pll.c | 23 +--
drivers/clk/x86/clk-cgu.c | 106 ++++-------
drivers/clk/x86/clk-cgu.h | 46 ++---
drivers/clk/x86/clk-lgm.c | 18 +-
drivers/gpu/drm/drm_edid.c | 3 +-
drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 4 +-
drivers/gpu/drm/i915/i915_pci.c | 1 -
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 33 +++-
drivers/net/ethernet/netronome/nfp/nfp_main.h | 1 +
.../net/ethernet/netronome/nfp/nfp_net_ethtool.c | 195 +++++++++++++++++++++
drivers/net/ethernet/netronome/nfp/nfp_port.h | 12 ++
.../net/ethernet/netronome/nfp/nfpcore/nfp_nsp.c | 17 ++
.../net/ethernet/netronome/nfp/nfpcore/nfp_nsp.h | 56 ++++++
.../ethernet/netronome/nfp/nfpcore/nfp_nsp_eth.c | 26 +++
drivers/net/wireless/ath/ath11k/qmi.c | 6 +-
drivers/net/wireless/marvell/mwifiex/sdio.c | 1 +
.../net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 +-
drivers/platform/x86/amd/pmf/Kconfig | 1 +
drivers/platform/x86/nvidia-wmi-ec-backlight.c | 6 +-
drivers/scsi/hisi_sas/hisi_sas_main.c | 8 +-
drivers/scsi/libsas/sas_ata.c | 25 +++
drivers/scsi/libsas/sas_expander.c | 4 +-
drivers/scsi/libsas/sas_internal.h | 2 +
drivers/spi/spi-mt65xx.c | 10 +-
fs/ext4/sysfs.c | 7 +-
include/asm-generic/vmlinux.lds.h | 5 +
include/linux/nospec.h | 4 +
include/linux/psi_types.h | 1 +
include/linux/random.h | 6 +-
include/scsi/sas_ata.h | 6 +
kernel/bpf/core.c | 2 -
kernel/sched/psi.c | 62 +++++--
lib/usercopy.c | 7 +
scripts/head-object-list.txt | 2 -
security/Kconfig.hardening | 3 +
.../testing/selftests/kvm/x86_64/xen_shinfo_test.c | 5 +
57 files changed, 962 insertions(+), 245 deletions(-)
Per KSZ8794 [1] datasheet DS00002134D page 54 TABLE 4-4: PORT REGISTERS,
it is Register 86 (0x56): Port 4 Interface Control 6 which contains the
Is_1Gbps field.
Currently, the driver uses PORT read function on register P_XMII_CTRL_1
to access the P_GMII_1GBIT_M, i.e. Is_1Gbps, bit. The problem is, the
register P_XMII_CTRL_1 address is already 0x56, which is the converted
PORT register address instead of the offset within PORT register space
that PORT read function expects and converts into the PORT register
address internally. The incorrectly double-converted register address
becomes 0xa6, which is what the PORT read function ultimatelly accesses,
and which is a non-existent register on the KSZ8794/KSZ8795 .
The correct value for P_XMII_CTRL_1 is 0x6, which gets converted into
port address 0x56, which is Register 86 (0x56): Port 4 Interface Control 6
per KSZ8794 datasheet, i.e. the correct register address.
To make this worse, there are multiple other call sites which read and
even write the P_XMII_CTRL_1 register, one of them is ksz_set_xmii(),
which is responsible for configuration of RGMII delays. These delays
are incorrectly configured and a non-existent register is written
without this change.
Fix the P_XMII_CTRL_1 register offset to resolve these problems.
[1] https://ww1.microchip.com/downloads/aemDocuments/documents/UNG/ProductDocum…
Fixes: 46f80fa8981b ("net: dsa: microchip: add common gigabit set and get function")
Signed-off-by: Marek Vasut <marex(a)denx.de>
---
Cc: "David S. Miller" <davem(a)davemloft.net>
Cc: Andrew Lunn <andrew(a)lunn.ch>
Cc: Arun Ramadoss <arun.ramadoss(a)microchip.com>
Cc: David S. Miller <davem(a)davemloft.net>
Cc: Eric Dumazet <edumazet(a)google.com>
Cc: Florian Fainelli <f.fainelli(a)gmail.com>
Cc: Jakub Kicinski <kuba(a)kernel.org>
Cc: Paolo Abeni <pabeni(a)redhat.com>
Cc: Russell King <linux(a)armlinux.org.uk>
Cc: UNGLinuxDriver(a)microchip.com
Cc: Vladimir Oltean <olteanv(a)gmail.com>
Cc: Woojung Huh <woojung.huh(a)microchip.com>
Cc: stable(a)vger.kernel.org
Cc: netdev(a)vger.kernel.org
---
drivers/net/dsa/microchip/ksz_common.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/dsa/microchip/ksz_common.c b/drivers/net/dsa/microchip/ksz_common.c
index 729b36eeb2c46..7fc2155d93d6e 100644
--- a/drivers/net/dsa/microchip/ksz_common.c
+++ b/drivers/net/dsa/microchip/ksz_common.c
@@ -319,7 +319,7 @@ static const u16 ksz8795_regs[] = {
[S_BROADCAST_CTRL] = 0x06,
[S_MULTICAST_CTRL] = 0x04,
[P_XMII_CTRL_0] = 0x06,
- [P_XMII_CTRL_1] = 0x56,
+ [P_XMII_CTRL_1] = 0x06,
};
static const u32 ksz8795_masks[] = {
--
2.39.1
When MMAP2 has PERF_RECORD_MISC_MMAP_BUILD_ID flag, it means the record
already has the build-id info. So it marks the DSO as hit, to skip if
the same DSO is not processed if it happens to miss the build-id later.
But it missed to copy the MMAP2 record itself so it'd fail to symbolize
samples for those regions.
For example, the following generates 249 MMAP2 events.
$ perf record --buildid-mmap -o- true | perf report --stat -i- | grep MMAP2
MMAP2 events: 249 (86.8%)
Adding perf inject should not change the number of events like this
$ perf record --buildid-mmap -o- true | perf inject -b | \
> perf report --stat -i- | grep MMAP2
MMAP2 events: 249 (86.5%)
But when --buildid-all is used, it eats most of the MMAP2 events.
$ perf record --buildid-mmap -o- true | perf inject -b --buildid-all | \
> perf report --stat -i- | grep MMAP2
MMAP2 events: 1 ( 2.5%)
With this patch, it shows the original number now.
$ perf record --buildid-mmap -o- true | perf inject -b --buildid-all | \
> perf report --stat -i- | grep MMAP2
MMAP2 events: 249 (86.5%)
Cc: stable(a)vger.kernel.org
Fixes: f7fc0d1c915a ("perf inject: Do not inject BUILD_ID record if MMAP2 has it")
Signed-off-by: Namhyung Kim <namhyung(a)kernel.org>
---
tools/perf/builtin-inject.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/tools/perf/builtin-inject.c b/tools/perf/builtin-inject.c
index f8182417b734..10bb1d494258 100644
--- a/tools/perf/builtin-inject.c
+++ b/tools/perf/builtin-inject.c
@@ -538,6 +538,7 @@ static int perf_event__repipe_buildid_mmap2(struct perf_tool *tool,
dso->hit = 1;
}
dso__put(dso);
+ perf_event__repipe(tool, event, sample, machine);
return 0;
}
--
2.39.2.637.g21b0678d19-goog
This is the start of the stable review cycle for the 5.15.96 release.
There are 36 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 Sat, 25 Feb 2023 13:04:16 +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.15.96-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.15.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.15.96-rc1
Vladimir Oltean <vladimir.oltean(a)nxp.com>
Revert "net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs"
Nathan Chancellor <nathan(a)kernel.org>
lib/Kconfig.debug: Allow BTF + DWARF5 with pahole 1.21+
Nathan Chancellor <nathan(a)kernel.org>
lib/Kconfig.debug: Use CONFIG_PAHOLE_VERSION
Nathan Chancellor <nathan(a)kernel.org>
scripts/pahole-flags.sh: Use pahole-version.sh
Nathan Chancellor <nathan(a)kernel.org>
kbuild: Add CONFIG_PAHOLE_VERSION
Kees Cook <keescook(a)chromium.org>
ext4: Fix function prototype mismatch for ext4_feat_ktype
Paul Moore <paul(a)paul-moore.com>
audit: update the mailing list in MAINTAINERS
Lukas Wunner <lukas(a)wunner.de>
wifi: mwifiex: Add missing compatible string for SD8787
Zhang Wensheng <zhangwensheng5(a)huawei.com>
nbd: fix possible overflow on 'first_minor' in nbd_dev_add()
Alessandro Astone <ales.astone(a)gmail.com>
binder: Gracefully handle BINDER_TYPE_FDA objects with num_fds=0
Alessandro Astone <ales.astone(a)gmail.com>
binder: Address corner cases in deferred copy and fixup
Arnd Bergmann <arnd(a)arndb.de>
binder: fix pointer cast warning
Todd Kjos <tkjos(a)google.com>
binder: defer copies of pre-patched txn data
Todd Kjos <tkjos(a)google.com>
binder: read pre-translated fds from sender buffer
Dave Hansen <dave.hansen(a)linux.intel.com>
uaccess: Add speculation barrier to copy_from_user()
Zheng Wang <zyytlz.wz(a)163.com>
drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/64s/radix: Fix RWX mapping with relocated kernel
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/64s/radix: Fix crash with unaligned relocated kernel
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/vmlinux.lds: Add an explicit symbol for the SRWX boundary
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/vmlinux.lds: Ensure STRICT_ALIGN_SIZE is at least page aligned
Christophe Leroy <christophe.leroy(a)csgroup.eu>
powerpc: use generic version of arch_is_kernel_initmem_freed()
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Marc Kleine-Budde <mkl(a)pengutronix.de>
can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
Jim Mattson <jmattson(a)google.com>
KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS
Sean Christopherson <seanjc(a)google.com>
KVM: SVM: Skip WRMSR fastpath on VM-Exit if next RIP isn't valid
Sean Christopherson <seanjc(a)google.com>
KVM: x86: Fail emulation during EMULTYPE_SKIP on any exception
Jason A. Donenfeld <Jason(a)zx2c4.com>
random: always mix cycle counter in add_latent_entropy()
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: syscon_node_to_regmap() returns error pointers
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Fix a clk entry by adding relevant flags
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Add option to override gate clks
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Remove redundant spinlocks
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Switch from direct readl/writel based IO to regmap based IO
Ankit Nautiyal <ankit.k.nautiyal(a)intel.com>
drm/edid: Fix minimum bpc supported with DSC1.2 for HDMI sink
Bitterblue Smith <rtl8821cerfe2(a)gmail.com>
wifi: rtl8xxxu: gen2: Turn on the rate control
Lucas Stach <l.stach(a)pengutronix.de>
drm/etnaviv: don't truncate physical page address
-------------
Diffstat:
MAINTAINERS | 3 +-
Makefile | 4 +-
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 +++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 +++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 +-
arch/powerpc/include/asm/sections.h | 14 +-
arch/powerpc/kernel/vmlinux.lds.S | 14 +-
arch/powerpc/mm/book3s32/mmu.c | 2 +-
arch/powerpc/mm/book3s64/radix_pgtable.c | 28 +-
arch/x86/kvm/svm/svm.c | 10 +-
arch/x86/kvm/vmx/nested.c | 11 +
arch/x86/kvm/vmx/vmx.c | 6 +-
arch/x86/kvm/x86.c | 4 +-
drivers/android/binder.c | 343 +++++++++++++++++++--
drivers/block/nbd.c | 23 +-
drivers/clk/x86/Kconfig | 5 +-
drivers/clk/x86/clk-cgu-pll.c | 23 +-
drivers/clk/x86/clk-cgu.c | 106 ++-----
drivers/clk/x86/clk-cgu.h | 46 +--
drivers/clk/x86/clk-lgm.c | 18 +-
drivers/gpu/drm/drm_edid.c | 3 +-
drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 4 +-
drivers/gpu/drm/i915/gvt/gtt.c | 17 +-
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 33 +-
drivers/net/wireless/marvell/mwifiex/sdio.c | 1 +
.../net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 +-
fs/ext4/sysfs.c | 7 +-
include/linux/nospec.h | 4 +
include/linux/random.h | 6 +-
init/Kconfig | 4 +
kernel/bpf/core.c | 2 -
lib/Kconfig.debug | 4 +-
lib/usercopy.c | 7 +
net/sched/sch_taprio.c | 8 +-
scripts/pahole-flags.sh | 2 +-
scripts/pahole-version.sh | 13 +
36 files changed, 660 insertions(+), 231 deletions(-)
This is the start of the stable review cycle for the 5.4.233 release.
There are 18 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 Sat, 25 Feb 2023 13:04:16 +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.233-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.233-rc1
Vladimir Oltean <vladimir.oltean(a)nxp.com>
Revert "net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs"
Kees Cook <keescook(a)chromium.org>
ext4: Fix function prototype mismatch for ext4_feat_ktype
Lukas Wunner <lukas(a)wunner.de>
wifi: mwifiex: Add missing compatible string for SD8787
Dave Hansen <dave.hansen(a)linux.intel.com>
uaccess: Add speculation barrier to copy_from_user()
Pavel Skripkin <paskripkin(a)gmail.com>
mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh
Zheng Wang <zyytlz.wz(a)163.com>
drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
Thomas Gleixner <tglx(a)linutronix.de>
alarmtimer: Prevent starvation by small intervals and SIG_IGN
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Marc Kleine-Budde <mkl(a)pengutronix.de>
can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
Jim Mattson <jmattson(a)google.com>
KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS
Sean Christopherson <seanjc(a)google.com>
KVM: x86: Fail emulation during EMULTYPE_SKIP on any exception
Jason A. Donenfeld <Jason(a)zx2c4.com>
random: always mix cycle counter in add_latent_entropy()
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
Bitterblue Smith <rtl8821cerfe2(a)gmail.com>
wifi: rtl8xxxu: gen2: Turn on the rate control
Lucas Stach <l.stach(a)pengutronix.de>
drm/etnaviv: don't truncate physical page address
Marek Szyprowski <m.szyprowski(a)samsung.com>
drm: etnaviv: fix common struct sg_table related issues
Marek Szyprowski <m.szyprowski(a)samsung.com>
scatterlist: add generic wrappers for iterating over sgtable objects
Marek Szyprowski <m.szyprowski(a)samsung.com>
dma-mapping: add generic helpers for mapping sgtable objects
-------------
Diffstat:
Makefile | 4 +-
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 +++++++++++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 +++++++++++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 ++++-
arch/x86/kvm/vmx/nested.c | 11 +++
arch/x86/kvm/vmx/vmx.c | 6 +-
arch/x86/kvm/x86.c | 4 +-
drivers/gpu/drm/etnaviv/etnaviv_gem.c | 12 ++-
drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 19 ++---
drivers/gpu/drm/i915/gvt/gtt.c | 17 ++++-
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 33 +++++---
drivers/net/wireless/marvell/mwifiex/sdio.c | 1 +
.../net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 +-
fs/ext4/sysfs.c | 7 +-
include/linux/dma-mapping.h | 80 +++++++++++++++++++
include/linux/nospec.h | 4 +
include/linux/random.h | 6 +-
include/linux/scatterlist.h | 50 +++++++++++-
kernel/bpf/core.c | 2 -
kernel/time/alarmtimer.c | 33 +++++++-
lib/usercopy.c | 7 ++
net/mac80211/ieee80211_i.h | 24 +++++-
net/mac80211/mesh.h | 22 +-----
net/mac80211/mesh_pathtbl.c | 89 ++++++++--------------
net/sched/sch_taprio.c | 8 +-
25 files changed, 410 insertions(+), 145 deletions(-)
This is the start of the stable review cycle for the 5.10.170 release.
There are 25 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 Sat, 25 Feb 2023 13:04:16 +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.10.170-r…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.10.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.10.170-rc1
Vladimir Oltean <vladimir.oltean(a)nxp.com>
Revert "net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs"
Kees Cook <keescook(a)chromium.org>
ext4: Fix function prototype mismatch for ext4_feat_ktype
Paul Moore <paul(a)paul-moore.com>
audit: update the mailing list in MAINTAINERS
Lukas Wunner <lukas(a)wunner.de>
wifi: mwifiex: Add missing compatible string for SD8787
Zhang Wensheng <zhangwensheng5(a)huawei.com>
nbd: fix possible overflow on 'first_minor' in nbd_dev_add()
Yu Kuai <yukuai3(a)huawei.com>
nbd: fix possible overflow for 'first_minor' in nbd_dev_add()
Yu Kuai <yukuai3(a)huawei.com>
nbd: fix max value for 'first_minor'
Wen Yang <wenyang.linux(a)foxmail.com>
Revert "Revert "block: nbd: add sanity check for first_minor""
Dave Hansen <dave.hansen(a)linux.intel.com>
uaccess: Add speculation barrier to copy_from_user()
Pavel Skripkin <paskripkin(a)gmail.com>
mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh
Zheng Wang <zyytlz.wz(a)163.com>
drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Marc Kleine-Budde <mkl(a)pengutronix.de>
can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
Jim Mattson <jmattson(a)google.com>
KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS
Sean Christopherson <seanjc(a)google.com>
KVM: SVM: Skip WRMSR fastpath on VM-Exit if next RIP isn't valid
Sean Christopherson <seanjc(a)google.com>
KVM: x86: Fail emulation during EMULTYPE_SKIP on any exception
Jason A. Donenfeld <Jason(a)zx2c4.com>
random: always mix cycle counter in add_latent_entropy()
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: syscon_node_to_regmap() returns error pointers
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Fix a clk entry by adding relevant flags
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Add option to override gate clks
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Remove redundant spinlocks
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Switch from direct readl/writel based IO to regmap based IO
Bitterblue Smith <rtl8821cerfe2(a)gmail.com>
wifi: rtl8xxxu: gen2: Turn on the rate control
Lucas Stach <l.stach(a)pengutronix.de>
drm/etnaviv: don't truncate physical page address
-------------
Diffstat:
MAINTAINERS | 2 +-
Makefile | 4 +-
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 +++++++++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 +++++++++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 +++-
arch/x86/kvm/svm/svm.c | 10 +-
arch/x86/kvm/vmx/nested.c | 11 +++
arch/x86/kvm/vmx/vmx.c | 6 +-
arch/x86/kvm/x86.c | 4 +-
drivers/block/nbd.c | 13 ++-
drivers/clk/x86/Kconfig | 5 +-
drivers/clk/x86/clk-cgu-pll.c | 23 ++---
drivers/clk/x86/clk-cgu.c | 106 ++++++---------------
drivers/clk/x86/clk-cgu.h | 46 ++++-----
drivers/clk/x86/clk-lgm.c | 18 ++--
drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 4 +-
drivers/gpu/drm/i915/gvt/gtt.c | 17 +++-
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 33 +++++--
drivers/net/wireless/marvell/mwifiex/sdio.c | 1 +
.../net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 +-
fs/ext4/sysfs.c | 7 +-
include/linux/nospec.h | 4 +
include/linux/random.h | 6 +-
kernel/bpf/core.c | 2 -
lib/usercopy.c | 7 ++
net/mac80211/ieee80211_i.h | 24 ++++-
net/mac80211/mesh.h | 22 +----
net/mac80211/mesh_pathtbl.c | 89 ++++++-----------
net/sched/sch_taprio.c | 8 +-
29 files changed, 339 insertions(+), 249 deletions(-)
This is the start of the stable review cycle for the 6.2.1 release.
There are 11 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 Sat, 25 Feb 2023 13:04:16 +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.2.1-rc1.…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-6.2.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.2.1-rc1
Eric Biggers <ebiggers(a)google.com>
randstruct: disable Clang 15 support
Kees Cook <keescook(a)chromium.org>
ext4: Fix function prototype mismatch for ext4_feat_ktype
Hans de Goede <hdegoede(a)redhat.com>
platform/x86: nvidia-wmi-ec-backlight: Add force module parameter
Shyam Sundar S K <Shyam-sundar.S-k(a)amd.com>
platform/x86/amd/pmf: Add depends on CONFIG_POWER_SUPPLY
Paul Moore <paul(a)paul-moore.com>
audit: update the mailing list in MAINTAINERS
Lukas Wunner <lukas(a)wunner.de>
wifi: mwifiex: Add missing compatible string for SD8787
Benjamin Tissoires <benjamin.tissoires(a)redhat.com>
HID: mcp-2221: prevent UAF in delayed work
Peter Zijlstra <peterz(a)infradead.org>
x86/static_call: Add support for Jcc tail-calls
Peter Zijlstra <peterz(a)infradead.org>
x86/alternatives: Teach text_poke_bp() to patch Jcc.d32 instructions
Peter Zijlstra <peterz(a)infradead.org>
x86/alternatives: Introduce int3_emulate_jcc()
Dave Hansen <dave.hansen(a)linux.intel.com>
uaccess: Add speculation barrier to copy_from_user()
-------------
Diffstat:
MAINTAINERS | 2 +-
Makefile | 4 +-
arch/x86/include/asm/text-patching.h | 31 +++++++++++++
arch/x86/kernel/alternative.c | 62 +++++++++++++++++++-------
arch/x86/kernel/kprobes/core.c | 38 ++++------------
arch/x86/kernel/static_call.c | 50 +++++++++++++++++++--
drivers/hid/hid-mcp2221.c | 3 ++
drivers/net/wireless/marvell/mwifiex/sdio.c | 1 +
drivers/platform/x86/amd/pmf/Kconfig | 1 +
drivers/platform/x86/nvidia-wmi-ec-backlight.c | 6 ++-
fs/ext4/sysfs.c | 7 ++-
include/linux/nospec.h | 4 ++
kernel/bpf/core.c | 2 -
lib/usercopy.c | 7 +++
security/Kconfig.hardening | 3 ++
15 files changed, 166 insertions(+), 55 deletions(-)
This is the start of the stable review cycle for the 4.19.274 release.
There are 11 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 Sat, 25 Feb 2023 13:04:16 +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.274-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.274-rc1
Kees Cook <keescook(a)chromium.org>
ext4: Fix function prototype mismatch for ext4_feat_ktype
Lukas Wunner <lukas(a)wunner.de>
wifi: mwifiex: Add missing compatible string for SD8787
Dave Hansen <dave.hansen(a)linux.intel.com>
uaccess: Add speculation barrier to copy_from_user()
Pavel Skripkin <paskripkin(a)gmail.com>
mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh
Zheng Wang <zyytlz.wz(a)163.com>
drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
Thomas Gleixner <tglx(a)linutronix.de>
alarmtimer: Prevent starvation by small intervals and SIG_IGN
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Marc Kleine-Budde <mkl(a)pengutronix.de>
can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
Jason A. Donenfeld <Jason(a)zx2c4.com>
random: always mix cycle counter in add_latent_entropy()
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
Bitterblue Smith <rtl8821cerfe2(a)gmail.com>
wifi: rtl8xxxu: gen2: Turn on the rate control
-------------
Diffstat:
Makefile | 4 +-
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 +++++++++++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 +++++++++++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 ++++-
drivers/gpu/drm/i915/gvt/gtt.c | 17 ++++-
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 33 +++++---
drivers/net/wireless/marvell/mwifiex/sdio.c | 1 +
.../net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 +-
fs/ext4/sysfs.c | 7 +-
include/linux/nospec.h | 4 +
include/linux/random.h | 6 +-
kernel/bpf/core.c | 2 -
kernel/time/alarmtimer.c | 33 +++++++-
lib/usercopy.c | 7 ++
net/mac80211/ieee80211_i.h | 24 +++++-
net/mac80211/mesh.h | 22 +-----
net/mac80211/mesh_pathtbl.c | 89 ++++++++--------------
17 files changed, 251 insertions(+), 114 deletions(-)
For regulators with 'off-on-delay-us' the regulator framework currently
uses ktime_get() to determine how long the regulator has been off
before re-enabling it (after a delay if needed). A problem with using
ktime_get() is that it doesn't account for the time the system is
suspended. As a result a regulator with a longer 'off-on-delay' (e.g.
500ms) that was switched off during suspend might still incurr in a
delay on resume before it is re-enabled, even though the regulator
might have been off for hours. ktime_get_boottime() accounts for
suspend time, use it instead of ktime_get().
Fixes: a8ce7bd89689 ("regulator: core: Fix off_on_delay handling")
Cc: stable(a)vger.kernel.org # 5.13+
Signed-off-by: Matthias Kaehlcke <mka(a)chromium.org>
Reviewed-by: Stephen Boyd <swboyd(a)chromium.org>
---
The issue already existed before the commit in the 'Fixes' tag, but
it's probably not worth backporting this to older kernels that
use jiffies instead of ktime.
Changes in v2:
- added 'Fixes' and Cc: stable tags
- added 'Reviewed-by' tag from Stephen
drivers/regulator/core.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c
index ae69e493913d..4fcd36055b02 100644
--- a/drivers/regulator/core.c
+++ b/drivers/regulator/core.c
@@ -1584,7 +1584,7 @@ static int set_machine_constraints(struct regulator_dev *rdev)
}
if (rdev->desc->off_on_delay)
- rdev->last_off = ktime_get();
+ rdev->last_off = ktime_get_boottime();
/* If the constraints say the regulator should be on at this point
* and we have control then make sure it is enabled.
@@ -2673,7 +2673,7 @@ static int _regulator_do_enable(struct regulator_dev *rdev)
* this regulator was disabled.
*/
ktime_t end = ktime_add_us(rdev->last_off, rdev->desc->off_on_delay);
- s64 remaining = ktime_us_delta(end, ktime_get());
+ s64 remaining = ktime_us_delta(end, ktime_get_boottime());
if (remaining > 0)
_regulator_delay_helper(remaining);
@@ -2912,7 +2912,7 @@ static int _regulator_do_disable(struct regulator_dev *rdev)
}
if (rdev->desc->off_on_delay)
- rdev->last_off = ktime_get();
+ rdev->last_off = ktime_get_boottime();
trace_regulator_disable_complete(rdev_get_name(rdev));
--
2.39.2.722.g9855ee24e9-goog
Hi!
Can we please pick up the essential parts of this series for 5.15? I am
particularly interested in the last patch to enable BTF + DWARF5, but
the cleanup patches before are a very reasonable choice for stable@ as
well as they simplify the pahole version calculation and allow future
BTF/pahole related patches to apply cleanly as well.
Cheers,
Matthias
Cc: <stable(a)vger.kernel.org> # v5.15+
Cc: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Cc: Nathan Chancellor <nathan(a)kernel.org>
Cc: Andrii Nakryiko <andrii(a)kernel.org>
Signed-off-by: Matthias Maennich <maennich(a)google.com>
Nathan Chancellor (4):
kbuild: Add CONFIG_PAHOLE_VERSION
scripts/pahole-flags.sh: Use pahole-version.sh
lib/Kconfig.debug: Use CONFIG_PAHOLE_VERSION
lib/Kconfig.debug: Allow BTF + DWARF5 with pahole 1.21+
MAINTAINERS | 1 +
init/Kconfig | 4 ++++
lib/Kconfig.debug | 4 ++--
scripts/pahole-flags.sh | 2 +-
scripts/pahole-version.sh | 13 +++++++++++++
5 files changed, 21 insertions(+), 3 deletions(-)
create mode 100755 scripts/pahole-version.sh
--
2.39.2.637.g21b0678d19-goog
From: Nathan Chancellor <nathan(a)kernel.org>
[ Upstream commit 42d9b379e3e1790eafb87c799c9edfd0b37a37c7 ]
Commit 98cd6f521f10 ("Kconfig: allow explicit opt in to DWARF v5")
prevented CONFIG_DEBUG_INFO_DWARF5 from being selected when
CONFIG_DEBUG_INFO_BTF is enabled because pahole had issues with clang's
DWARF5 info. This was resolved by [1], which is in pahole v1.21.
Allow DEBUG_INFO_DWARF5 to be selected with DEBUG_INFO_BTF when using
pahole v1.21 or newer.
[1]: https://git.kernel.org/pub/scm/devel/pahole/pahole.git/commit/?id=7d8e829f6…
Change-Id: I9cc90f12abcc8a809bb263e31ec16766d9384e40
Signed-off-by: Nathan Chancellor <nathan(a)kernel.org>
Signed-off-by: Daniel Borkmann <daniel(a)iogearbox.net>
Acked-by: Andrii Nakryiko <andrii(a)kernel.org>
Link: https://lore.kernel.org/bpf/20220201205624.652313-6-nathan@kernel.org
Signed-off-by: Matthias Maennich <maennich(a)google.com>
---
lib/Kconfig.debug | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index 944fd2ae756b..dbbd243c865f 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -302,7 +302,7 @@ config DEBUG_INFO_DWARF4
config DEBUG_INFO_DWARF5
bool "Generate DWARF Version 5 debuginfo"
depends on !CC_IS_CLANG || AS_IS_LLVM || (AS_IS_GNU && AS_VERSION >= 23502 && AS_HAS_NON_CONST_LEB128)
- depends on !DEBUG_INFO_BTF
+ depends on !DEBUG_INFO_BTF || PAHOLE_VERSION >= 121
help
Generate DWARF v5 debug info. Requires binutils 2.35.2, gcc 5.0+ (gcc
5.0+ accepts the -gdwarf-5 flag but only had partial support for some
--
2.39.2.637.g21b0678d19-goog
From: Nathan Chancellor <nathan(a)kernel.org>
[ Upstream commit 613fe169237785a4bb1d06397b52606b2967da53 ]
There are a few different places where pahole's version is turned into a
three digit form with the exact same command. Move this command into
scripts/pahole-version.sh to reduce the amount of duplication across the
tree.
Create CONFIG_PAHOLE_VERSION so the version code can be used in Kconfig
to enable and disable configuration options based on the pahole version,
which is already done in a couple of places.
Change-Id: Id18c1808832cead0d32f6992a52eb35b0ec269bb
Signed-off-by: Nathan Chancellor <nathan(a)kernel.org>
Signed-off-by: Daniel Borkmann <daniel(a)iogearbox.net>
Acked-by: Andrii Nakryiko <andrii(a)kernel.org>
Link: https://lore.kernel.org/bpf/20220201205624.652313-3-nathan@kernel.org
Signed-off-by: Matthias Maennich <maennich(a)google.com>
---
MAINTAINERS | 1 +
init/Kconfig | 4 ++++
scripts/pahole-version.sh | 13 +++++++++++++
3 files changed, 18 insertions(+)
create mode 100755 scripts/pahole-version.sh
diff --git a/MAINTAINERS b/MAINTAINERS
index 4f50a453e18a..826e2ba7b09a 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -3407,6 +3407,7 @@ F: net/sched/act_bpf.c
F: net/sched/cls_bpf.c
F: samples/bpf/
F: scripts/bpf_doc.py
+F: scripts/pahole-version.sh
F: tools/bpf/
F: tools/lib/bpf/
F: tools/testing/selftests/bpf/
diff --git a/init/Kconfig b/init/Kconfig
index a4144393717b..dafc3ba6fa7a 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -91,6 +91,10 @@ config CC_HAS_ASM_INLINE
config CC_HAS_NO_PROFILE_FN_ATTR
def_bool $(success,echo '__attribute__((no_profile_instrument_function)) int x();' | $(CC) -x c - -c -o /dev/null -Werror)
+config PAHOLE_VERSION
+ int
+ default $(shell,$(srctree)/scripts/pahole-version.sh $(PAHOLE))
+
config CONSTRUCTORS
bool
diff --git a/scripts/pahole-version.sh b/scripts/pahole-version.sh
new file mode 100755
index 000000000000..f8a32ab93ad1
--- /dev/null
+++ b/scripts/pahole-version.sh
@@ -0,0 +1,13 @@
+#!/bin/sh
+# SPDX-License-Identifier: GPL-2.0
+#
+# Usage: $ ./pahole-version.sh pahole
+#
+# Prints pahole's version in a 3-digit form, such as 119 for v1.19.
+
+if [ ! -x "$(command -v "$@")" ]; then
+ echo 0
+ exit 1
+fi
+
+"$@" --version | sed -E 's/v([0-9]+)\.([0-9]+)/\1\2/'
--
2.39.2.637.g21b0678d19-goog
The null-ptr-deref problem fixed in the following patch is hit on older
branches.
The patch failed to be initially backported into stable branches older
than 5.15 due to the fix-spell-comment commit ab4040df6efb ("mac80211: fix
some spelling mistakes"). Now it can be cleanly applied to the 5.4/5.10
stable branches.
I'm not sure if the comment-fix patch should be backported in these cases,
too (to prevent similar potential future backport fails). Probably not.
So I just adapted the backport patch in-place.
Keep 6.1 in-sync with Build ID fixes.
I've build tested this on {x86_64, arm64, riscv, powerpc, s390, sh}.
Changes for v2:
- include 1/7 2348e6bf4421 ("riscv: remove special treatment for the link order of head.o")
- include 2/7 994b7ac1697b ("arm64: remove special treatment for the link order of head.o")
- rebase 7/7 c1c551bebf92 ("sh: define RUNTIME_DISCARD_EXIT") from upstream
Previous threads:
[1] https://lore.kernel.org/all/cover.1674876902.git.tom.saeger@oracle.com/
[2] https://lore.kernel.org/all/3df32572ec7016e783d37e185f88495831671f5d.167114…
[3] https://lore.kernel.org/all/cover.1670358255.git.tom.saeger@oracle.com/
Signed-off-by: Tom Saeger <tom.saeger(a)oracle.com>
---
Jisheng Zhang (1):
riscv: remove special treatment for the link order of head.o
Masahiro Yamada (3):
arm64: remove special treatment for the link order of head.o
arch: fix broken BuildID for arm64 and riscv
s390: define RUNTIME_DISCARD_EXIT to fix link error with GNU ld < 2.36
Michael Ellerman (2):
powerpc/vmlinux.lds: Define RUNTIME_DISCARD_EXIT
powerpc/vmlinux.lds: Don't discard .rela* for relocatable builds
Tom Saeger (1):
sh: define RUNTIME_DISCARD_EXIT
arch/powerpc/kernel/vmlinux.lds.S | 6 +++++-
arch/s390/kernel/vmlinux.lds.S | 2 ++
arch/sh/kernel/vmlinux.lds.S | 1 +
include/asm-generic/vmlinux.lds.h | 5 +++++
scripts/head-object-list.txt | 2 --
5 files changed, 13 insertions(+), 3 deletions(-)
---
base-commit: d60c95efffe84428e3611431bf688f50bfc13f4e
change-id: 20230210-tsaeger-upstream-linux-6-1-y-06c93fbe5bc8
Best regards,
--
Tom Saeger <tom.saeger(a)oracle.com>
From: Zhang Wensheng <zhangwensheng5(a)huawei.com>
commit 858f1bf65d3d9c00b5e2d8ca87dc79ed88267c98 upstream.
When 'index' is a big numbers, it may become negative which forced
to 'int'. then 'index << part_shift' might overflow to a positive
value that is not greater than '0xfffff', then sysfs might complains
about duplicate creation. Because of this, move the 'index' judgment
to the front will fix it and be better.
Fixes: b0d9111a2d53 ("nbd: use an idr to keep track of nbd devices")
Fixes: 940c264984fd ("nbd: fix possible overflow for 'first_minor' in nbd_dev_add()")
Signed-off-by: Zhang Wensheng <zhangwensheng5(a)huawei.com>
Signed-off-by: Yu Kuai <yukuai3(a)huawei.com>
Reviewed-by: Josef Bacik <josef(a)toxicpanda.com>
Link: https://lore.kernel.org/r/20220521073749.3146892-6-yukuai3@huawei.com
Signed-off-by: Jens Axboe <axboe(a)kernel.dk>
Cc: stable(a)vger.kernel.org # v5.10+
Signed-off-by: Wen Yang <wenyang.linux(a)foxmail.com>
---
drivers/block/nbd.c | 23 ++++++++++++-----------
1 file changed, 12 insertions(+), 11 deletions(-)
diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c
index 1ddae8f768d5..dbcd903ba128 100644
--- a/drivers/block/nbd.c
+++ b/drivers/block/nbd.c
@@ -1771,17 +1771,7 @@ static int nbd_dev_add(int index)
refcount_set(&nbd->refs, 1);
INIT_LIST_HEAD(&nbd->list);
disk->major = NBD_MAJOR;
-
- /* Too big first_minor can cause duplicate creation of
- * sysfs files/links, since index << part_shift might overflow, or
- * MKDEV() expect that the max bits of first_minor is 20.
- */
disk->first_minor = index << part_shift;
- if (disk->first_minor < index || disk->first_minor > MINORMASK) {
- err = -EINVAL;
- goto out_free_idr;
- }
-
disk->fops = &nbd_fops;
disk->private_data = nbd;
sprintf(disk->disk_name, "nbd%d", index);
@@ -1875,8 +1865,19 @@ static int nbd_genl_connect(struct sk_buff *skb, struct genl_info *info)
if (!netlink_capable(skb, CAP_SYS_ADMIN))
return -EPERM;
- if (info->attrs[NBD_ATTR_INDEX])
+ if (info->attrs[NBD_ATTR_INDEX]) {
index = nla_get_u32(info->attrs[NBD_ATTR_INDEX]);
+
+ /*
+ * Too big first_minor can cause duplicate creation of
+ * sysfs files/links, since index << part_shift might overflow, or
+ * MKDEV() expect that the max bits of first_minor is 20.
+ */
+ if (index < 0 || index > MINORMASK >> part_shift) {
+ printk(KERN_ERR "nbd: illegal input index %d\n", index);
+ return -EINVAL;
+ }
+ }
if (!info->attrs[NBD_ATTR_SOCKETS]) {
printk(KERN_ERR "nbd: must specify at least one socket\n");
return -EINVAL;
--
2.37.2
From: Yu Kuai <yukuai3(a)huawei.com>
commit e4c4871a73944353ea23e319de27ef73ce546623 upstream.
commit b1a811633f73 ("block: nbd: add sanity check for first_minor")
checks that 'first_minor' should not be greater than 0xff, which is
wrong. Whitout the commit, the details that when user pass 0x100000,
it ends up create sysfs dir "/sys/block/43:0" are as follows:
nbd_dev_add
disk->first_minor = index << part_shift
-> default part_shift is 5, first_minor is 0x2000000
device_add_disk
ddev->devt = MKDEV(disk->major, disk->first_minor)
-> (0x2b << 20) | (0x2000000) = 0x2b00000
device_add
device_create_sys_dev_entry
format_dev_t
sprintf(buffer, "%u:%u", MAJOR(dev), MINOR(dev));
-> got 43:0
sysfs_create_link -> /sys/block/43:0
By the way, with the wrong fix, when part_shift is the default value,
only 8 ndb devices can be created since 8 << 5 is greater than 0xff.
Since the max bits for 'first_minor' should be the same as what
MKDEV() does, which is 20. Change the upper bound of 'first_minor'
from 0xff to 0xfffff.
Fixes: b1a811633f73 ("block: nbd: add sanity check for first_minor")
Signed-off-by: Yu Kuai <yukuai3(a)huawei.com>
Reviewed-by: Josef Bacik <josef(a)toxicpanda.com>
Link: https://lore.kernel.org/r/20211102015237.2309763-2-yebin10@huawei.com
Signed-off-by: Jens Axboe <axboe(a)kernel.dk>
Cc: stable(a)vger.kernel.org # v5.10+
Signed-off-by: Wen Yang <wenyang.linux(a)foxmail.com>
---
drivers/block/nbd.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c
index bf8148ebd858..bd05eaf04143 100644
--- a/drivers/block/nbd.c
+++ b/drivers/block/nbd.c
@@ -1773,11 +1773,11 @@ static int nbd_dev_add(int index)
disk->major = NBD_MAJOR;
/* Too big first_minor can cause duplicate creation of
- * sysfs files/links, since first_minor will be truncated to
- * byte in __device_add_disk().
+ * sysfs files/links, since MKDEV() expect that the max bits of
+ * first_minor is 20.
*/
disk->first_minor = index << part_shift;
- if (disk->first_minor > 0xff) {
+ if (disk->first_minor > MINORMASK) {
err = -EINVAL;
goto out_free_idr;
}
--
2.37.2
[Public]
Hi,
We had noticed some WCN6855 hardware we have BT wasn't working in the LTS kernel. The IDs for the variants we have were introduced in 6.2.
Can you please add this to 6.1.y?
ca2a99447e17 ("Bluetooth: btusb: Add more device IDs for WCN6855")
Thanks,
Hi Greg and Sasha,
Please consider applying the following commits to 6.2 (they apply
cleanly with some fuzz for me):
db7adcfd1cec ("x86/alternatives: Introduce int3_emulate_jcc()")
ac0ee0a9560c ("x86/alternatives: Teach text_poke_bp() to patch Jcc.d32 instructions")
923510c88d2b ("x86/static_call: Add support for Jcc tail-calls")
I have attached backports to 6.1.
Without these changes, kernels built with any version of clang using -Os
or clang 17.0.0 (tip of tree) at any kernel-supported optimization level
do not boot. This has been tested by people affected by this problem,
see https://github.com/ClangBuiltLinux/linux/issues/1774 for more info.
If there are any problems, please let me know.
Cheers,
Nathan
From: Nathan Chancellor <nathan(a)kernel.org>
Now that CONFIG_PAHOLE_VERSION exists, use it in the definition of
CONFIG_PAHOLE_HAS_SPLIT_BTF and CONFIG_PAHOLE_HAS_BTF_TAG to reduce the
amount of duplication across the tree.
Signed-off-by: Nathan Chancellor <nathan(a)kernel.org>
Signed-off-by: Daniel Borkmann <daniel(a)iogearbox.net>
Acked-by: Andrii Nakryiko <andrii(a)kernel.org>
Link: https://lore.kernel.org/bpf/20220201205624.652313-5-nathan@kernel.org
Signed-off-by: Matthias Maennich <maennich(a)google.com>
---
lib/Kconfig.debug | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index f71db0cc3bf1..0743c9567d7e 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -328,7 +328,15 @@ config DEBUG_INFO_BTF
DWARF type info into equivalent deduplicated BTF type info.
config PAHOLE_HAS_SPLIT_BTF
- def_bool $(success, test `$(PAHOLE) --version | sed -E 's/v([0-9]+)\.([0-9]+)/\1\2/'` -ge "119")
+ def_bool PAHOLE_VERSION >= 119
+
+config PAHOLE_HAS_BTF_TAG
+ def_bool PAHOLE_VERSION >= 123
+ depends on CC_IS_CLANG
+ help
+ Decide whether pahole emits btf_tag attributes (btf_type_tag and
+ btf_decl_tag) or not. Currently only clang compiler implements
+ these attributes, so make the config depend on CC_IS_CLANG.
config DEBUG_INFO_BTF_MODULES
def_bool y
--
2.39.2.637.g21b0678d19-goog
From: Jim Mattson <jmattson(a)google.com>
commit 2e7eab81425ad6c875f2ed47c0ce01e78afc38a5 upstream.
According to Intel's document on Indirect Branch Restricted
Speculation, "Enabling IBRS does not prevent software from controlling
the predicted targets of indirect branches of unrelated software
executed later at the same predictor mode (for example, between two
different user applications, or two different virtual machines). Such
isolation can be ensured through use of the Indirect Branch Predictor
Barrier (IBPB) command." This applies to both basic and enhanced IBRS.
Since L1 and L2 VMs share hardware predictor modes (guest-user and
guest-kernel), hardware IBRS is not sufficient to virtualize
IBRS. (The way that basic IBRS is implemented on pre-eIBRS parts,
hardware IBRS is actually sufficient in practice, even though it isn't
sufficient architecturally.)
For virtual CPUs that support IBRS, add an indirect branch prediction
barrier on emulated VM-exit, to ensure that the predicted targets of
indirect branches executed in L1 cannot be controlled by software that
was executed in L2.
Since we typically don't intercept guest writes to IA32_SPEC_CTRL,
perform the IBPB at emulated VM-exit regardless of the current
IA32_SPEC_CTRL.IBRS value, even though the IBPB could technically be
deferred until L1 sets IA32_SPEC_CTRL.IBRS, if IA32_SPEC_CTRL.IBRS is
clear at emulated VM-exit.
This is CVE-2022-2196.
Fixes: 5c911beff20a ("KVM: nVMX: Skip IBPB when switching between vmcs01 and vmcs02")
Cc: Sean Christopherson <seanjc(a)google.com>
Signed-off-by: Jim Mattson <jmattson(a)google.com>
Reviewed-by: Sean Christopherson <seanjc(a)google.com>
Link: https://lore.kernel.org/r/20221019213620.1953281-3-jmattson@google.com
Signed-off-by: Sean Christopherson <seanjc(a)google.com>
Signed-off-by: Ovidiu Panait <ovidiu.panait(a)eng.windriver.com>
---
arch/x86/kvm/vmx/nested.c | 11 +++++++++++
arch/x86/kvm/vmx/vmx.c | 6 ++++--
2 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/arch/x86/kvm/vmx/nested.c b/arch/x86/kvm/vmx/nested.c
index cdebeceedbd0..f3c136548af6 100644
--- a/arch/x86/kvm/vmx/nested.c
+++ b/arch/x86/kvm/vmx/nested.c
@@ -4617,6 +4617,17 @@ void nested_vmx_vmexit(struct kvm_vcpu *vcpu, u32 vm_exit_reason,
vmx_switch_vmcs(vcpu, &vmx->vmcs01);
+ /*
+ * If IBRS is advertised to the vCPU, KVM must flush the indirect
+ * branch predictors when transitioning from L2 to L1, as L1 expects
+ * hardware (KVM in this case) to provide separate predictor modes.
+ * Bare metal isolates VMX root (host) from VMX non-root (guest), but
+ * doesn't isolate different VMCSs, i.e. in this case, doesn't provide
+ * separate modes for L2 vs L1.
+ */
+ if (guest_cpuid_has(vcpu, X86_FEATURE_SPEC_CTRL))
+ indirect_branch_prediction_barrier();
+
/* Update any VMCS fields that might have changed while L2 ran */
vmcs_write32(VM_EXIT_MSR_LOAD_COUNT, vmx->msr_autoload.host.nr);
vmcs_write32(VM_ENTRY_MSR_LOAD_COUNT, vmx->msr_autoload.guest.nr);
diff --git a/arch/x86/kvm/vmx/vmx.c b/arch/x86/kvm/vmx/vmx.c
index 0718658268fe..c849173b60c2 100644
--- a/arch/x86/kvm/vmx/vmx.c
+++ b/arch/x86/kvm/vmx/vmx.c
@@ -1332,8 +1332,10 @@ void vmx_vcpu_load_vmcs(struct kvm_vcpu *vcpu, int cpu,
/*
* No indirect branch prediction barrier needed when switching
- * the active VMCS within a guest, e.g. on nested VM-Enter.
- * The L1 VMM can protect itself with retpolines, IBPB or IBRS.
+ * the active VMCS within a vCPU, unless IBRS is advertised to
+ * the vCPU. To minimize the number of IBPBs executed, KVM
+ * performs IBPB on nested VM-Exit (a single nested transition
+ * may switch the active VMCS multiple times).
*/
if (!buddy || WARN_ON_ONCE(buddy->vmcs != prev))
indirect_branch_prediction_barrier();
--
2.39.1
From: Zheng Wang <zyytlz.wz(a)163.com>
commit 4a61648af68f5ba4884f0e3b494ee1cabc4b6620 upstream.
If intel_gvt_dma_map_guest_page failed, it will call
ppgtt_invalidate_spt, which will finally free the spt.
But the caller function ppgtt_populate_spt_by_guest_entry
does not notice that, it will free spt again in its error
path.
Fix this by canceling the mapping of DMA address and freeing sub_spt.
Besides, leave the handle of spt destroy to caller function instead
of callee function when error occurs.
Fixes: b901b252b6cf ("drm/i915/gvt: Add 2M huge gtt support")
Signed-off-by: Zheng Wang <zyytlz.wz(a)163.com>
Reviewed-by: Zhenyu Wang <zhenyuw(a)linux.intel.com>
Signed-off-by: Zhenyu Wang <zhenyuw(a)linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20221229165641.1192455-1-zyytl…
Signed-off-by: Ovidiu Panait <ovidiu.panait(a)eng.windriver.com>
---
Backport of CVE-2022-3707 fix.
drivers/gpu/drm/i915/gvt/gtt.c | 17 +++++++++++++----
1 file changed, 13 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/i915/gvt/gtt.c b/drivers/gpu/drm/i915/gvt/gtt.c
index e5c2fdfc20e3..7ea7abef6143 100644
--- a/drivers/gpu/drm/i915/gvt/gtt.c
+++ b/drivers/gpu/drm/i915/gvt/gtt.c
@@ -1195,10 +1195,8 @@ static int split_2MB_gtt_entry(struct intel_vgpu *vgpu,
for_each_shadow_entry(sub_spt, &sub_se, sub_index) {
ret = intel_gvt_hypervisor_dma_map_guest_page(vgpu,
start_gfn + sub_index, PAGE_SIZE, &dma_addr);
- if (ret) {
- ppgtt_invalidate_spt(spt);
- return ret;
- }
+ if (ret)
+ goto err;
sub_se.val64 = se->val64;
/* Copy the PAT field from PDE. */
@@ -1217,6 +1215,17 @@ static int split_2MB_gtt_entry(struct intel_vgpu *vgpu,
ops->set_pfn(se, sub_spt->shadow_page.mfn);
ppgtt_set_shadow_entry(spt, se, index);
return 0;
+err:
+ /* Cancel the existing addess mappings of DMA addr. */
+ for_each_present_shadow_entry(sub_spt, &sub_se, sub_index) {
+ gvt_vdbg_mm("invalidate 4K entry\n");
+ ppgtt_invalidate_pte(sub_spt, &sub_se);
+ }
+ /* Release the new allocated spt. */
+ trace_spt_change(sub_spt->vgpu->id, "release", sub_spt,
+ sub_spt->guest_page.gfn, sub_spt->shadow_page.type);
+ ppgtt_free_spt(sub_spt);
+ return ret;
}
static int split_64KB_gtt_entry(struct intel_vgpu *vgpu,
--
2.39.1
The patch below does not apply to the 4.14-stable tree.
If someone wants it applied there, or to any other stable or longterm
tree, then please email the backport, including the original git commit
id to <stable(a)vger.kernel.org>.
Possible dependencies:
d125d1349abe ("alarmtimer: Prevent starvation by small intervals and SIG_IGN")
41b3b8dffc1f ("alarmtimer: Rename gettime() callback to get_ktime()")
5f936e19cc0e ("alarmtimer: Prevent overflow for relative nanosleep")
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From d125d1349abeb46945dc5e98f7824bf688266f13 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx(a)linutronix.de>
Date: Thu, 9 Feb 2023 23:25:49 +0100
Subject: [PATCH] alarmtimer: Prevent starvation by small intervals and SIG_IGN
syzbot reported a RCU stall which is caused by setting up an alarmtimer
with a very small interval and ignoring the signal. The reproducer arms the
alarm timer with a relative expiry of 8ns and an interval of 9ns. Not a
problem per se, but that's an issue when the signal is ignored because then
the timer is immediately rearmed because there is no way to delay that
rearming to the signal delivery path. See posix_timer_fn() and commit
58229a189942 ("posix-timers: Prevent softirq starvation by small intervals
and SIG_IGN") for details.
The reproducer does not set SIG_IGN explicitely, but it sets up the timers
signal with SIGCONT. That has the same effect as explicitely setting
SIG_IGN for a signal as SIGCONT is ignored if there is no handler set and
the task is not ptraced.
The log clearly shows that:
[pid 5102] --- SIGCONT {si_signo=SIGCONT, si_code=SI_TIMER, si_timerid=0, si_overrun=316014, si_int=0, si_ptr=NULL} ---
It works because the tasks are traced and therefore the signal is queued so
the tracer can see it, which delays the restart of the timer to the signal
delivery path. But then the tracer is killed:
[pid 5087] kill(-5102, SIGKILL <unfinished ...>
...
./strace-static-x86_64: Process 5107 detached
and after it's gone the stall can be observed:
syzkaller login: [ 79.439102][ C0] hrtimer: interrupt took 68471 ns
[ 184.460538][ C1] rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
...
[ 184.658237][ C1] rcu: Stack dump where RCU GP kthread last ran:
[ 184.664574][ C1] Sending NMI from CPU 1 to CPUs 0:
[ 184.669821][ C0] NMI backtrace for cpu 0
[ 184.669831][ C0] CPU: 0 PID: 5108 Comm: syz-executor192 Not tainted 6.2.0-rc6-next-20230203-syzkaller #0
...
[ 184.670036][ C0] Call Trace:
[ 184.670041][ C0] <IRQ>
[ 184.670045][ C0] alarmtimer_fired+0x327/0x670
posix_timer_fn() prevents that by checking whether the interval for
timers which have the signal ignored is smaller than a jiffie and
artifically delay it by shifting the next expiry out by a jiffie. That's
accurate vs. the overrun accounting, but slightly inaccurate
vs. timer_gettimer(2).
The comment in that function says what needs to be done and there was a fix
available for the regular userspace induced SIG_IGN mechanism, but that did
not work due to the implicit ignore for SIGCONT and similar signals. This
needs to be worked on, but for now the only available workaround is to do
exactly what posix_timer_fn() does:
Increase the interval of self-rearming timers, which have their signal
ignored, to at least a jiffie.
Interestingly this has been fixed before via commit ff86bf0c65f1
("alarmtimer: Rate limit periodic intervals") already, but that fix got
lost in a later rework.
Reported-by: syzbot+b9564ba6e8e00694511b(a)syzkaller.appspotmail.com
Fixes: f2c45807d399 ("alarmtimer: Switch over to generic set/get/rearm routine")
Signed-off-by: Thomas Gleixner <tglx(a)linutronix.de>
Acked-by: John Stultz <jstultz(a)google.com>
Cc: stable(a)vger.kernel.org
Link: https://lore.kernel.org/r/87k00q1no2.ffs@tglx
diff --git a/kernel/time/alarmtimer.c b/kernel/time/alarmtimer.c
index 5897828b9d7e..7e5dff602585 100644
--- a/kernel/time/alarmtimer.c
+++ b/kernel/time/alarmtimer.c
@@ -470,11 +470,35 @@ u64 alarm_forward(struct alarm *alarm, ktime_t now, ktime_t interval)
}
EXPORT_SYMBOL_GPL(alarm_forward);
-u64 alarm_forward_now(struct alarm *alarm, ktime_t interval)
+static u64 __alarm_forward_now(struct alarm *alarm, ktime_t interval, bool throttle)
{
struct alarm_base *base = &alarm_bases[alarm->type];
+ ktime_t now = base->get_ktime();
+
+ if (IS_ENABLED(CONFIG_HIGH_RES_TIMERS) && throttle) {
+ /*
+ * Same issue as with posix_timer_fn(). Timers which are
+ * periodic but the signal is ignored can starve the system
+ * with a very small interval. The real fix which was
+ * promised in the context of posix_timer_fn() never
+ * materialized, but someone should really work on it.
+ *
+ * To prevent DOS fake @now to be 1 jiffie out which keeps
+ * the overrun accounting correct but creates an
+ * inconsistency vs. timer_gettime(2).
+ */
+ ktime_t kj = NSEC_PER_SEC / HZ;
+
+ if (interval < kj)
+ now = ktime_add(now, kj);
+ }
+
+ return alarm_forward(alarm, now, interval);
+}
- return alarm_forward(alarm, base->get_ktime(), interval);
+u64 alarm_forward_now(struct alarm *alarm, ktime_t interval)
+{
+ return __alarm_forward_now(alarm, interval, false);
}
EXPORT_SYMBOL_GPL(alarm_forward_now);
@@ -551,9 +575,10 @@ static enum alarmtimer_restart alarm_handle_timer(struct alarm *alarm,
if (posix_timer_event(ptr, si_private) && ptr->it_interval) {
/*
* Handle ignored signals and rearm the timer. This will go
- * away once we handle ignored signals proper.
+ * away once we handle ignored signals proper. Ensure that
+ * small intervals cannot starve the system.
*/
- ptr->it_overrun += alarm_forward_now(alarm, ptr->it_interval);
+ ptr->it_overrun += __alarm_forward_now(alarm, ptr->it_interval, true);
++ptr->it_requeue_pending;
ptr->it_active = 1;
result = ALARMTIMER_RESTART;
Hi Andrew,
Thank you for revising this patch!
> From: "andrew.yang" <andrew.yang(a)mediatek.com>
>
> damon_get_folio() would always increase folio _refcount and
> folio_isolate_lru() would increase folio _refcount if the folio's lru
> flag is set.
>
> If an unevictable folio isolated successfully, there will be two more
> _refcount. The one from folio_isolate_lru() will be decreased in
> folio_puback_lru(), but the other one from damon_get_folio() will be
> left behind. This causes a pin page.
>
> Whatever the case, the _refcount from damon_get_folio() should be
> decreased.
>
> Signed-off-by: andrew.yang <andrew.yang(a)mediatek.com>
> Fixes: 57223ac29584 ("mm/damon/paddr: support the pageout scheme")
> Cc: <stable(a)vger.kernel.org> # 5.16.x
Reviewed-by: SeongJae Park <sj(a)kernel.org>
This may not cleanly applicable on 6.1.y and 6.2.y. I would post backports
once this is merged in the mainline, unless others do earlier than me.
Thanks,
SJ
> ---
> v3:
> add fixes tag and cc stable
> v2:
> according to David's suggestion
> 1. revise subject
> according to SeongJae's suggestions
> 1. rebase to mm-unstable tree
> 2. remove braces for th single statements
> ---
> mm/damon/paddr.c | 7 +++----
> 1 file changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/mm/damon/paddr.c b/mm/damon/paddr.c
> index 607bb69e526c..6c655d9b5639 100644
> --- a/mm/damon/paddr.c
> +++ b/mm/damon/paddr.c
> @@ -250,12 +250,11 @@ static unsigned long damon_pa_pageout(struct damon_region *r, struct damos *s)
> folio_put(folio);
> continue;
> }
> - if (folio_test_unevictable(folio)) {
> + if (folio_test_unevictable(folio))
> folio_putback_lru(folio);
> - } else {
> + else
> list_add(&folio->lru, &folio_list);
> - folio_put(folio);
> - }
> + folio_put(folio);
> }
> applied = reclaim_pages(&folio_list);
> cond_resched();
> --
> 2.18.0
>
>
During page migration, the copy_highpage function is used to copy the
page data to the target page. If the source page is a userspace page
with MTE tags, the KASAN tag of the target page must have the match-all
tag in order to avoid tag check faults during subsequent accesses to the
page by the kernel. However, the target page may have been allocated in
a number of ways, some of which will use the KASAN allocator and will
therefore end up setting the KASAN tag to a non-match-all tag. Therefore,
update the target page's KASAN tag to match the source page.
We ended up unintentionally fixing this issue as a result of a bad
merge conflict resolution between commit e059853d14ca ("arm64: mte:
Fix/clarify the PG_mte_tagged semantics") and commit 20794545c146 ("arm64:
kasan: Revert "arm64: mte: reset the page tag in page->flags""), which
preserved a tag reset for PG_mte_tagged pages which was considered to be
unnecessary at the time. Because SW tags KASAN uses separate tag storage,
update the code to only reset the tags when HW tags KASAN is enabled.
Signed-off-by: Peter Collingbourne <pcc(a)google.com>
Link: https://linux-review.googlesource.com/id/If303d8a709438d3ff5af5fd8570650583…
Reported-by: "Kuan-Ying Lee (李冠穎)" <Kuan-Ying.Lee(a)mediatek.com>
Cc: <stable(a)vger.kernel.org> # 6.1
Fixes: 20794545c146 ("arm64: kasan: Revert "arm64: mte: reset the page tag in page->flags"")
---
v2:
- added Fixes tag
For the stable branch, e059853d14ca needs to be cherry-picked and the following
merge conflict resolution is needed:
- page_kasan_tag_reset(to);
+ if (kasan_hw_tags_enabled())
+ page_kasan_tag_reset(to);
- /* It's a new page, shouldn't have been tagged yet */
- WARN_ON_ONCE(!try_page_mte_tagging(to));
arch/arm64/mm/copypage.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/mm/copypage.c b/arch/arm64/mm/copypage.c
index 8dd5a8fe64b4..4aadcfb01754 100644
--- a/arch/arm64/mm/copypage.c
+++ b/arch/arm64/mm/copypage.c
@@ -22,7 +22,8 @@ void copy_highpage(struct page *to, struct page *from)
copy_page(kto, kfrom);
if (system_supports_mte() && page_mte_tagged(from)) {
- page_kasan_tag_reset(to);
+ if (kasan_hw_tags_enabled())
+ page_kasan_tag_reset(to);
/* It's a new page, shouldn't have been tagged yet */
WARN_ON_ONCE(!try_page_mte_tagging(to));
mte_copy_page_tags(kto, kfrom);
--
2.39.1.581.gbfd45094c4-goog