diff --git a/Makefile.rhelver b/Makefile.rhelver index 2a5132c30..dd3ff03d4 100644 --- a/Makefile.rhelver +++ b/Makefile.rhelver @@ -12,7 +12,7 @@ RHEL_MINOR = 0 # # Use this spot to avoid future merge conflicts. # Do not trim this comment. -RHEL_RELEASE = 1 +RHEL_RELEASE = 2 # # RHEL_REBASE_NUM diff --git a/def_variants.yaml.rhel b/def_variants.yaml.rhel new file mode 100644 index 000000000..6c3d06039 --- /dev/null +++ b/def_variants.yaml.rhel @@ -0,0 +1,519 @@ +packages: + - name: modules-core + depends-on: [] + - name: modules + depends-on: + - modules-core + - name: modules-internal + depends-on: + - modules-core + - modules + - name: modules-extra + depends-on: + - modules-core + - modules + - name: modules-rt-kvm + if_variant_in: ["rt"] + depends-on: + - modules-core + - name: modules-partner + depends-on: + - modules-core + - modules + +rules: + - arch/x86/kvm/kvm(-amd|-intel|\.).*: modules-rt-kvm + if_variant_in: ["rt"] + + - arch/.*: modules-core + - block/t10-pi.ko: modules-core + - crypto/.*: modules-core + + - drivers/accel/.*: modules-core + - drivers/accessibility/.*: modules-core + - drivers/acpi/video.*: modules + - drivers/acpi/.*: modules-core + - drivers/ata/.*: modules-core + + - drivers/base/.*(kunit|test).*: modules-internal + - drivers/base/regmap/regmap-sdw.*: modules + - drivers/base/.*: modules-core + - drivers/block/floppy.*: modules-extra + - drivers/block/rnbd.*: modules + - drivers/block/.*: modules-core + - drivers/bus/.*: modules-core + + - drivers/cdrom/.*: modules-core + - drivers/cdx/.*: modules-core + - drivers/char/mwave.*: modules + - drivers/char/.*: modules-core + - drivers/clk/.*test.*: modules-internal + - drivers/clk/.*: modules-core + - drivers/counter/.*: modules-core + - drivers/cpufreq/.*: modules-core + - drivers/crypto/caam/.*: modules + - drivers/crypto/cavium/.*: modules + - drivers/crypto/chelsio/.*: modules + - drivers/crypto/hisilicon/.*: modules + - drivers/crypto/marvell/.*: modules + - drivers/crypto/.*: modules-core + - drivers/cxl/.*: modules-core + + - drivers/dax/.*: modules-core + - drivers/dca/.*: modules-core + - drivers/devfreq/.*: modules-core + - drivers/dma/dmatest.*: modules-internal + - drivers/dma/.*: modules-core + + - drivers/edac/.*: modules-core + - drivers/extcon/.*: modules-core + + - drivers/firmware/iscsi_ibft.*: modules + - drivers/firmware/.*: modules-core + - drivers/fsi/.*: modules-core + + - drivers/gnss/.*: modules-core + - drivers/gpio/gpio-dln2.*: modules-extra + - drivers/gpio/gpio-ljca.*: modules + - drivers/gpio/.*: modules-core + - drivers/gpu/drm/i915/kvmgt.*: modules-rt-kvm + if_variant_in: ["rt"] + - drivers/gpu/drm/display/drm_.*: modules-core + - drivers/gpu/drm/drm.*: modules-core + - drivers/gpu/drm/etnaviv/.*: modules-core + - drivers/gpu/drm/gud/.*: modules-core + - drivers/gpu/drm/hyperv/.*: modules-core + - drivers/gpu/drm/imagination/.*: modules-core + - drivers/gpu/drm/lima/.*: modules-core + - drivers/gpu/drm/mxsfb/.*: modules-core + - drivers/gpu/drm/panfrost/.*: modules-core + - drivers/gpu/drm/qxl/.*: modules-core + - drivers/gpu/drm/scheduler/.*: modules-core + - drivers/gpu/drm/solomon/.*: modules-core + - drivers/gpu/drm/tests/.*: modules-internal + - drivers/gpu/drm/tidss/.*: modules-core + - drivers/gpu/drm/tiny/.*: modules-core + - drivers/gpu/drm/ttm/.*: modules-core + - drivers/gpu/drm/udl/.*: modules-core + - drivers/gpu/drm/v3d/.*: modules-core + - drivers/gpu/drm/vgem/.*: modules-core + - drivers/gpu/drm/virtio/.*: modules-core + - drivers/gpu/drm/vkms/.*: modules-core + - drivers/gpu/drm/vmwgfx/.*: modules-core + - drivers/gpu/drm/xlnx/.*: modules-core + - drivers/gpu/host1x/.*: modules-core + + - drivers/hid/.*test.*: modules-internal + - drivers/hid/hid-asus.*: modules + - drivers/hid/hid-nintendo.*: modules + - drivers/hid/hid-picolcd.*: modules + - drivers/hid/hid-playstation.*: modules + - drivers/hid/surface-hid.*: modules + - drivers/hid/hid-prodikeys.*: modules + - drivers/hid/.*: modules-core + - drivers/hte/.*: modules-core + - drivers/hv/.*: modules-core + - drivers/hwmon/asus_wmi_sensors.*: modules + - drivers/hwmon/dell-smm-hwmon.*: modules + - drivers/hwmon/hp-wmi-sensors.*: modules + - drivers/hwmon/intel-m10-bmc-hwmon.*: modules + - drivers/hwmon/nct6775.*: modules + - drivers/hwmon/ntc_thermistor.*: modules + - drivers/hwmon/.*: modules-core + - drivers/hwspinlock/.*: modules-core + - drivers/hwtracing/.*: modules-core + + - drivers/i2c/busses/i2c-dln2.*: modules-extra + - drivers/i2c/busses/i2c-ljca.*: modules + - drivers/i2c/.*: modules-core + - drivers/i3c/.*: modules-core + - drivers/iio/adc/dln2-adc.*: modules-extra + - drivers/iio/test/.*: modules-internal + - drivers/input/gameport/.*: modules + - drivers/input/joystick/.*: modules-extra + - drivers/input/tablet/.*: modules + - drivers/input/tests/.*: modules-internal + - drivers/input/touchscreen/.*: modules + - drivers/input/.*: modules-core + - drivers/interconnect/.*: modules-core + - drivers/iommu/.*: modules-core + - drivers/irqchip/.*: modules-core + + - drivers/mailbox/.*: modules-core + - drivers/md/.*: modules-core + - drivers/memory/dfl-emif.*: modules + - drivers/memory/.*: modules-core + - drivers/message/fusion/mptctl.*: modules-extra + - drivers/message/fusion/mptfc.*: modules-extra + - drivers/message/fusion/.*: modules + - drivers/message/.*: modules-core + - drivers/mfd/dln2.*: modules-extra + - drivers/misc/.*: modules-core + - drivers/mux/.*: modules-core + + - drivers/net/amt.ko: modules-core + - drivers/net/bareudp.ko: modules-core + - drivers/net/bonding/.*: modules-core + - drivers/net/can/slcan/slcan.*: modules-extra + - drivers/net/can/usb/ems_usb.*: modules-extra + - drivers/net/can/vcan.*: modules-extra + - drivers/net/dummy.ko: modules-core + - drivers/net/eql.ko: modules-core + + - drivers/net/ethernet/8390/.*: modules-core + - drivers/net/ethernet/adi/.*: modules-core + - drivers/net/ethernet/agere/.*: modules-core + - drivers/net/ethernet/altera/.*: modules-core + - drivers/net/ethernet/amazon/.*: modules-core + - drivers/net/ethernet/amd/.*: modules-core + - drivers/net/ethernet/apm/.*: modules-core + - drivers/net/ethernet/asix/.*: modules-core + - drivers/net/ethernet/brocade/.*: modules-core + - drivers/net/ethernet/cavium/.*: modules-core + - drivers/net/ethernet/dnet.ko: modules-core + - drivers/net/ethernet/engleder/.*: modules-core + - drivers/net/ethernet/ethoc.ko: modules-core + - drivers/net/ethernet/fealnx.ko: modules-core + - drivers/net/ethernet/freescale/.*: modules-core + - drivers/net/ethernet/fungible/.*: modules-core + - drivers/net/ethernet/google/.*: modules-core + - drivers/net/ethernet/hisilicon/.*: modules-core + - drivers/net/ethernet/huawei/.*: modules-core + - drivers/net/ethernet/ibm/.*: modules-core + - drivers/net/ethernet/intel/.*: modules-core + - drivers/net/ethernet/jme.ko: modules-core + - drivers/net/ethernet/litex/.*: modules-core + - drivers/net/ethernet/mellanox/.*: modules-core + - drivers/net/ethernet/microsoft/.*: modules-core + - drivers/net/ethernet/myricom/.*: modules-core + - drivers/net/ethernet/natsemi/.*: modules-core + - drivers/net/ethernet/netronome/.*: modules-core + - drivers/net/ethernet/pensando/.*: modules-core + - drivers/net/ethernet/rocker/rocker.*: modules-internal + - drivers/net/ethernet/qualcomm/.*: modules-core + - drivers/net/ethernet/realtek/.*: modules-core + - drivers/net/ethernet/renesas/.*: modules-core + - drivers/net/ethernet/socionext/.*: modules-core + - drivers/net/ethernet/vertexcom/.*: modules-core + - drivers/net/ethernet/wangxun/.*: modules-core + - drivers/net/ethernet/xilinx/.*: modules-core + + - drivers/net/fjes/.*: modules-core + - drivers/net/geneve.ko: modules-core + - drivers/net/gtp.ko: modules-core + - drivers/net/hamradio/.*: modules-extra + - drivers/net/hyperv/.*: modules-core + - drivers/net/ifb.ko: modules-core + - drivers/net/ipa/.*: modules-core + - drivers/net/ipvlan/.*: modules-core + - drivers/net/macsec.ko: modules-core + - drivers/net/macvlan.ko: modules-core + - drivers/net/macvtap.ko: modules-core + - drivers/net/mctp/.*: modules-core + - drivers/net/mdio.*: modules-core + - drivers/net/mhi_net.ko: modules-core + - drivers/net/mii.ko: modules-core + - drivers/net/net_failover.ko: modules-core + - drivers/net/netdevsim/netdevsim.*: modules-internal + - drivers/net/netconsole.ko: modules-core + - drivers/net/nlmon.ko: modules-core + - drivers/net/pcs/.*: modules-core + - drivers/net/phy/.*: modules-core + - drivers/net/rionet.ko: modules-core + - drivers/net/slip/slip.*: modules-extra + - drivers/net/sungem_phy.ko: modules-core + - drivers/net/tap.ko: modules-core + - drivers/net/team/.*: modules-core + - drivers/net/thunderbolt/.*: modules-core + - drivers/net/tun.ko: modules-core + - drivers/net/veth.ko: modules-core + - drivers/net/virtio_net.ko: modules-core + - drivers/net/vmxnet3/.*: modules-core + - drivers/net/vrf.ko: modules-core + - drivers/net/vsockmon.ko: modules-core + - drivers/net/vxlan/.*: modules-core + - drivers/net/wan/hdlc.*: modules-core + - drivers/net/wireguard/.*: modules-core + - drivers/net/wireless/virtual/mac80211_hwsim.*: modules-internal + - drivers/net/wwan/wwan_hwsim.*: modules-internal + - drivers/net/wwan/.*: modules-core + - drivers/net/xen.*: modules-core + + - drivers/nvdimm/.*: modules-core + - drivers/nvme/host/nvme-rdma.*: modules + - drivers/nvme/target/nvmet-rdma.*: modules + - drivers/nvme/.*: modules-core + - drivers/nvmem/nvmem_u-boot-env.*: modules + - drivers/nvmem/.*: modules-core + + - drivers/parport/parport_serial.*: modules + - drivers/parport/.*: modules-core + - drivers/pci/pcie/aer_inject.*: modules-extra + - drivers/pci/.*: modules-core + - drivers/perf/.*: modules-core + - drivers/phy/.*: modules-core + - drivers/pinctrl/.*: modules-core + - drivers/platform/chrome/.*test.*: modules-internal + - drivers/platform/x86/intel/intel_vsec.*: modules-core + - drivers/pmdomain/.*: modules-core + - drivers/powercap/intel_rapl_tpmi.*: modules + - drivers/powercap/.*: modules-core + - drivers/pps/.*: modules-core + - drivers/ptp/ptp_kvm.*: modules-rt-kvm + if_variant_in: ["rt"] + - drivers/ptp/ptp_dfl_tod.*: modules + - drivers/ptp/.*: modules-core + - drivers/pwm/.*: modules-core + + - drivers/rapidio/.*: modules-core + - drivers/regulator/arizona-micsupp.*: modules + - drivers/regulator/.*: modules-core + - drivers/remoteproc/.*: modules-core + - drivers/reset/.*: modules-core + - drivers/rpmsg/.*: modules-core + - drivers/rtc/.*test.*: modules-internal + - drivers/rtc/.*: modules-core + + - drivers/s390/net/ism.*: modules + - drivers/s390/.*: modules-core + + - drivers/scsi/3w.*: modules-core + - drivers/scsi/BusLogic.ko: modules-core + - drivers/scsi/a100u2w.ko: modules-core + - drivers/scsi/advansys.ko: modules-core + - drivers/scsi/am53c974.ko: modules-core + - drivers/scsi/arcmsr.*: modules-core + - drivers/scsi/atp870u.ko: modules-core + - drivers/scsi/ch.ko: modules-core + - drivers/scsi/cxlflash/.*: modules-core + - drivers/scsi/dc395x.ko: modules-core + - drivers/scsi/device_handler/.*: modules-core + - drivers/scsi/dmx3191d.ko: modules-core + - drivers/scsi/elx/.*: modules-core + - drivers/scsi/esp_scsi.ko: modules-core + - drivers/scsi/fdomain.*: modules-core + - drivers/scsi/hpsa.ko: modules-core + - drivers/scsi/hptiop.ko: modules-core + - drivers/scsi/hv_storvsc.ko: modules-core + - drivers/scsi/ibmvscsi.*: modules-core + - drivers/scsi/initio.ko: modules-core + - drivers/scsi/ipr.ko: modules-core + - drivers/scsi/ips.ko: modules-core + - drivers/scsi/iscsi_tcp.ko: modules-core + - drivers/scsi/libfc/.*: modules-core + - drivers/scsi/libiscsi.*: modules-core + - drivers/scsi/mpi3mr/.*: modules-core + - drivers/scsi/mvumi.ko: modules-core + - drivers/scsi/myrb.ko: modules-core + - drivers/scsi/myrs.ko: modules-core + - drivers/scsi/raid_class.ko: modules-core + - drivers/scsi/scsi_debug.ko: modules-core + - drivers/scsi/scsi_transport_.*: modules-core + - drivers/scsi/sd_mod.ko: modules-core + - drivers/scsi/ses.ko: modules-core + - drivers/scsi/sg.ko: modules-core + - drivers/scsi/smartpqi/.*: modules-core + - drivers/scsi/snic/.*: modules-core + - drivers/scsi/sr_mod.ko: modules-core + - drivers/scsi/st.ko: modules-core + - drivers/scsi/stex.ko: modules-core + - drivers/scsi/virtio_scsi.ko: modules-core + - drivers/scsi/vmw_pvscsi.ko: modules-core + - drivers/scsi/wd719x.ko: modules-core + - drivers/scsi/xen-scsifront.ko: modules-core + + - drivers/slimbus/.*: modules-core + - drivers/soc/.*: modules-core + - drivers/spi/spi-altera-dfl.*: modules + - drivers/spi/spi-dln2.*: modules-extra + - drivers/spi/spi-ljca.*: modules + - drivers/spi/.*: modules-core + - drivers/spmi/.*: modules-core + + - drivers/target/iscsi/cxgbit/cxgbit.*: modules + - drivers/target/sbp/sbp_target.*: modules + - drivers/target/target_core_user.*: modules + - drivers/target/.*: modules-core + - drivers/tee/.*: modules-core + - drivers/thermal/intel/int340x_thermal/int3406_thermal.*: modules + - drivers/thermal/.*: modules-core + - drivers/thunderbolt/.*: modules-core + + - drivers/ufs/.*: modules-core + - drivers/usb/atm/.*: modules + - drivers/usb/gadget/function/usb_f_midi2.*: modules + - drivers/usb/image/.*: modules + - drivers/usb/misc/trancevibrator.*: modules-extra + - drivers/usb/misc/.*: modules + - drivers/usb/serial/.*: modules + - drivers/usb/typec/mux/nb7vpq904m.*: modules + - drivers/usb/usbip/.*: modules-extra + - drivers/usb/.*: modules-core + + - drivers/vdpa/mlx5/mlx5_vdpa.*: modules + - drivers/vdpa/pds/pds_vdpa.*: modules + - drivers/vdpa/.*: modules-core + - drivers/vfio/pci/mlx5/mlx5-vfio-pci.*: modules + - drivers/vfio/pci/pds/pds-vfio-pc.*: modules + - drivers/vfio/.*: modules-core + - drivers/vhost/.*: modules-core + - drivers/video/backlight/apple_bl.*: modules + - drivers/video/.*: modules-core + - drivers/virt/.*: modules-core + - drivers/virtio/.*: modules-core + + - drivers/watchdog/.*: modules-core + + - drivers/xen/.*: modules-core + + - drivers/w1/masters/ds2482.*: modules-extra + - drivers/w1/masters/ds2490.*: modules-extra + - drivers/w1/slaves/w1_ds2408.*: modules-extra + - drivers/w1/slaves/w1_ds2423.*: modules-extra + - drivers/w1/slaves/w1_ds2431.*: modules-extra + - drivers/w1/slaves/w1_ds2433.*: modules-extra + - drivers/w1/slaves/w1_ds2780.*: modules-extra + - drivers/w1/slaves/w1_ds2781.*: modules-extra + - drivers/w1/slaves/w1_ds28e04.*: modules-extra + - drivers/w1/slaves/w1_smem.*: modules-extra + - drivers/w1/slaves/w1_therm.*: modules-extra + + - fs/.*test.*: modules-internal + - fs/9p/.*: modules-core + - fs/afs/.*: modules-partner + - fs/affs/affs.*: modules-extra + - fs/bcachefs/.*: modules-core + - fs/befs/befs.*: modules-extra + - fs/binfmt_misc.ko: modules-core + - fs/cachefiles/.*: modules-core + - fs/ceph/.*: modules-core + - fs/coda/coda.*: modules-extra + - fs/dlm/.*: modules-core + - fs/erofs/.*: modules-core + - fs/exfat/.*: modules-core + - fs/ext4/.*: modules-core + - fs/f2fs/.*: modules-core + - fs/fat/.*: modules-core + - fs/fuse/cuse.*: modules-extra + - fs/fuse/.*: modules-core + - fs/gfs2/.*: modules-core + - fs/isofs/.*: modules-core + - fs/jbd2/.*: modules-core + - fs/lockd/.*: modules-core + - fs/mbcache.ko: modules-core + - fs/netfs/.*: modules-core + - fs/nfs.*: modules-core + - fs/nilfs2/nilfs2.*: modules-extra + - fs/nls/.*: modules-core + - fs/ntfs3/.*: modules-core + - fs/ocfs2/.*: modules-extra + - fs/orangefs/.*: modules-core + - fs/overlayfs/.*: modules-core + - fs/pstore/.*: modules-core + - fs/sysv/.*: modules-extra + - fs/ubifs/.*: modules-extra + - fs/udf/.*: modules-core + - fs/ufs/.*: modules-extra + - fs/vboxsf/.*: modules-core + - fs/xfs/.*: modules-core + - fs/zonefs/.*: modules-core + + - kernel/.*test.*: modules-internal + - kernel/locking/locktorture.*: modules-internal + - kernel/rcu/rcuscale.*: modules-internal + - kernel/rcu/rcutorture.*: modules-internal + - kernel/rcu/refscale.*: modules-internal + - kernel/resource_kunit.*: modules-internal + - kernel/scftorture.*: modules-internal + - kernel/torture.*: modules-internal + - kernel/.*: modules-core + + - lib/.*(test|kunit).*: modules-internal + - lib/.*: modules-core + + - mm/kasan/kasan_test: modules-internal + - mm/kfence/.*test.*: modules-internal + - mm/zsmalloc.ko: modules-core + + - net/.*test.*: modules-internal + - net/802/.*: modules-core + - net/8021q/.*: modules-core + - net/9p/9pnet_rdma.ko: modules + - net/9p/.*: modules-core + - net/appletalk/appletalk.*: modules-extra + - net/atm/br2684.*: modules-extra + - net/atm/clip.*: modules-extra + - net/atm/lec.*: modules-extra + - net/atm/pppoatm.*: modules-extra + - net/ax25/ax25.*: modules-extra + - net/batman-adv/batman-adv.*: modules-extra + - net/bridge/br_netfilter.*: modules-extra + - net/bridge/netfilter/ebt.*: modules-extra + - net/bridge/.*: modules-core + - net/ceph/.*: modules-core + - net/core/pktgen.*: modules-internal + - net/core/.*: modules-core + - net/dns_resolver/.*: modules-core + - net/hsr/.*: modules-core + - net/ife/.*: modules-core + - net/ipv4/netfilter/arp.*: modules-extra + - net/ipv4/netfilter/ip[_t].*: modules-extra + - net/ipv4/tcp_bic.*: modules-extra + - net/ipv4/tcp_highspeed.*: modules-extra + - net/ipv4/tcp_htcp.*: modules-extra + - net/ipv4/tcp_hybla.*: modules-extra + - net/ipv4/tcp_illinois.*: modules-extra + - net/ipv4/tcp_lp.*: modules-extra + - net/ipv4/tcp_scalable.*: modules-extra + - net/ipv4/tcp_vegas.*: modules-extra + - net/ipv4/tcp_veno.*: modules-extra + - net/ipv4/tcp_westwood.*: modules-extra + - net/ipv4/tcp_yeah.*: modules-extra + - net/ipv4/.*: modules-core + - net/ipv6/netfilter/ebt.*: modules-extra + - net/ipv6/netfilter/ip6[_t].*: modules-extra + - net/ipv6/.*: modules-core + - net/iucv/.*: modules-core + - net/kcm/.*: modules-core + - net/key/.*: modules-core + - net/l2tp/.*: modules-extra + - net/llc/.*: modules-core + - net/netfilter/ipset/.*: modules-extra + - net/netfilter/nft_compat.*: modules-extra + - net/netfilter/xt_.*: modules-extra + - net/netfilter/.*: modules-core + - net/netrom/netrom.*: modules-extra + - net/nsh/.*: modules-core + - net/openvswitch/.*: modules-core + - net/psample/.*: modules-core + - net/qrtr/.*: modules-core + - net/rds/rds.*: modules-extra + - net/rose/rose.*: modules-extra + - net/rxrpc/.*: modules-partner + - net/sched/sch_choke.*: modules-extra + - net/sched/sch_drr.*: modules-extra + - net/sched/sch_gred.*: modules-extra + - net/sched/sch_mqprio.ko: modules-extra + - net/sched/sch_multiq.*: modules-extra + - net/sched/sch_netem.*: modules-extra + - net/sched/sch_qfq.*: modules-extra + - net/sched/sch_red.*: modules-extra + - net/sched/sch_sfb.*: modules-extra + - net/sched/sch_teql.*: modules-extra + - net/sched/.*: modules-core + - net/sctp/.*: modules-extra + - net/sunrpc/xprtrdma/rpcrdma.*: modules + - net/sunrpc/.*: modules-core + - net/tipc/.*: modules-core + - net/tls/.*: modules-core + - net/vmw_vsock/.*: modules-core + - net/xdp/.*: modules-core + - net/xfrm/.*: modules-core + + - samples/.*: modules-internal + - sound/pci/.*test.*: modules-internal + - sound/soc/.*test.*: modules-internal + + - virt/.*: modules-core + + - default: modules diff --git a/filter-aarch64.sh.rhel b/filter-aarch64.sh.rhel deleted file mode 100644 index e088c8e9f..000000000 --- a/filter-aarch64.sh.rhel +++ /dev/null @@ -1,18 +0,0 @@ -#! /bin/bash - -# This is the aarch64 override file for the core/drivers package split. The -# module directories listed here and in the generic list in filter-modules.sh -# will be moved to the resulting kernel-modules package for this arch. -# Anything not listed in those files will be in the kernel-core package. -# -# Please review the default list in filter-modules.sh before making -# modifications to the overrides below. If something should be removed across -# all arches, remove it in the default instead of per-arch. - -driverdirs="atm auxdisplay bcma bluetooth firewire fmc infiniband isdn leds media memstick message mmc mtd mwave nfc ntb pcmcia platform power ssb staging tty uio uwb w1" - -ethdrvs="3com adaptec arc alteon atheros broadcom cadence calxeda chelsio cisco dec dlink emulex icplus marvell micrel myricom neterion nvidia oki-semi packetengines qlogic rdc renesas sfc silan sis smsc stmicro sun tehuti ti via wiznet xircom" - -drmdrvs="amd arm bridge ast exynos hisilicon i2c imx mgag200 meson msm nouveau panel radeon rockchip tegra sun4i tinydrm vc4" - -singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject target_core_user sbp_target cxgbit iw_cxgb3 iw_cxgb4 cxgb3i cxgb3i cxgb3i_ddp cxgb4i chcr chtls" diff --git a/filter-modules.sh.rhel b/filter-modules.sh.rhel deleted file mode 100755 index b899ad62c..000000000 --- a/filter-modules.sh.rhel +++ /dev/null @@ -1,177 +0,0 @@ -#! /bin/bash -# -# Called as filter-modules.sh list-of-modules Arch - -# This script filters the modules into the kernel-core and kernel-modules -# subpackages. We list out subsystems/subdirs to prune from the installed -# module directory. What is left is put into the kernel-core package. What is -# pruned is contained in the kernel-modules package. -# -# This file contains the default subsys/subdirs to prune from all architectures. -# If an architecture needs to differ, we source a per-arch filter-.sh file -# that contains the set of override lists to be used instead. If a module or -# subsys should be in kernel-modules on all arches, please change the defaults -# listed here. - -# Overrides is individual modules which need to remain in kernel-core due to deps. -overrides="cec isst_if_common isst_tpmi_core isst_tpmi intel_vsec intel_vsec_tpmi" - -# Set the default dirs/modules to filter out -driverdirs="atm auxdisplay bcma bluetooth firewire fmc iio infiniband isdn leds media memstick mfd mmc mtd nfc ntb pcmcia platform power ssb staging tty uio uwb w1" - -chardrvs="mwave pcmcia" - -netdrvs="appletalk can dsa hamradio ieee802154 irda ppp slip usb wireless" - -ethdrvs="3com adaptec alteon amd aquantia atheros broadcom cadence calxeda chelsio cisco dec dlink emulex icplus marvell neterion nvidia oki-semi packetengines qlogic rdc renesas sfc silan sis smsc stmicro sun tehuti ti wiznet xircom" - -cryptdrvs="bcm caam cavium chelsio hisilicon marvell qat" - -inputdrvs="gameport tablet touchscreen" - -scsidrvs="aacraid aic7xxx aic94xx be2iscsi bfa bnx2i bnx2fc csiostor cxgbi esas2r fcoe fnic hisi_sas isci libsas lpfc megaraid mpt2sas mpt3sas mvsas pm8001 qla2xxx qla4xxx sym53c8xx_2 ufs qedf" - -usbdrvs="atm image misc serial wusbcore" - -fsdrvs="affs befs coda cramfs ecryptfs hfs hfsplus jfs minix ncpfs nilfs2 ocfs2 reiserfs romfs smb squashfs sysv ubifs ufs" - -netprots="6lowpan appletalk atm ax25 batman-adv bluetooth can dccp dsa ieee802154 irda l2tp mac80211 mac802154 mpls netrom nfc rds rfkill rose sctp smc wireless" - -drmdrvs="amd ast gma500 i2c i915 mgag200 nouveau radeon via " - -singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject hid-sensor-hub target_core_user sbp_target cxgbit iw_cxgb3 iw_cxgb4 cxgb3i cxgb3i cxgb3i_ddp cxgb4i chcr chtls parport_serial ism regmap-sdw regmap-sdw-mbq arizona-micsupp hid-asus nct6775 ntc_thermistor video apple_bl kasan_test intel-m10-bmc-hwmon dell-smm-hwmon" - -# Grab the arch-specific filter list overrides -source ./filter-$2.sh - -filter_dir() { - filelist=$1 - dir=$2 - - grep -v -e "${dir}/" ${filelist} > ${filelist}.tmp - - if [ $? -ne 0 ] - then - echo "Couldn't remove ${dir}. Skipping." - else - grep -e "${dir}/" ${filelist} >> k-d.list - mv ${filelist}.tmp $filelist - fi - - return 0 -} - -filter_ko() { - filelist=$1 - mod=$2 - - grep -v -e "${mod}.ko" ${filelist} > ${filelist}.tmp - - if [ $? -ne 0 ] - then - echo "Couldn't remove ${mod}.ko Skipping." - else - grep -e "${mod}.ko" ${filelist} >> k-d.list - mv ${filelist}.tmp $filelist - fi - - return 0 -} - -# Filter the drivers/ subsystems -for subsys in ${driverdirs} -do - filter_dir $1 drivers/${subsys} -done - -# Filter the networking drivers -for netdrv in ${netdrvs} -do - filter_dir $1 drivers/net/${netdrv} -done - -# Filter the char drivers -for char in ${chardrvs} -do - filter_dir $1 drivers/char/${char} -done - -# Filter the ethernet drivers -for eth in ${ethdrvs} -do - filter_dir $1 drivers/net/ethernet/${eth} -done - -# Filter the crypto drivers -for crypt in ${cryptdrvs} -do - filter_dir $1 drivers/crypto/${crypt} -done - -# SCSI -for scsi in ${scsidrvs} -do - filter_dir $1 drivers/scsi/${scsi} -done - -# Input -for input in ${inputdrvs} -do - filter_dir $1 drivers/input/${input} -done - -# USB -for usb in ${usbdrvs} -do - filter_dir $1 drivers/usb/${usb} -done - -# Filesystems -for fs in ${fsdrvs} -do - filter_dir $1 fs/${fs} -done - -# Network protocols -for prot in ${netprots} -do - filter_dir $1 kernel/net/${prot} -done - -# DRM -for drm in ${drmdrvs} -do - filter_dir $1 drivers/gpu/drm/${drm} -done - -# Just kill sound. -filter_dir $1 kernel/sound -filter_dir $1 kernel/drivers/soundwire - -# Now go through and filter any single .ko files that might have deps on the -# things we filtered above -for mod in ${singlemods} -do - filter_ko $1 ${mod} -done - -# Now process the override list to bring those modules back into core -for mod in ${overrides} -do - grep -v -e "/${mod}.ko" k-d.list > k-d.list.tmp - if [ $? -ne 0 ] - then - echo "Couldn't save ${mod}.ko Skipping." - else - grep -e "/${mod}.ko" k-d.list >> $filelist - mv k-d.list.tmp k-d.list - fi - -done - -# Go through our generated drivers list and remove the .ko files. We'll -# restore them later. -for mod in `cat k-d.list` -do - rm -rf $mod -done diff --git a/filter-ppc64le.sh.rhel b/filter-ppc64le.sh.rhel deleted file mode 100644 index d80956d2a..000000000 --- a/filter-ppc64le.sh.rhel +++ /dev/null @@ -1,14 +0,0 @@ -#! /bin/bash - -# This is the ppc64le override file for the core/drivers package split. The -# module directories listed here and in the generic list in filter-modules.sh -# will be moved to the resulting kernel-modules package for this arch. -# Anything not listed in those files will be in the kernel-core package. -# -# Please review the default list in filter-modules.sh before making -# modifications to the overrides below. If something should be removed across -# all arches, remove it in the default instead of per-arch. - -driverdirs="atm auxdisplay bcma bluetooth firewire fmc infiniband isdn leds media memstick message mmc mtd mwave nfc ntb pcmcia platform power ssb staging tty uio uwb w1" - -singlemods="ntb_netdev iscsi_ibft iscsi_boot_sysfs megaraid pmcraid qedi qla1280 9pnet_rdma rpcrdma nvmet-rdma nvme-rdma hid-picolcd hid-prodikeys hwa-hc hwpoison-inject target_core_user sbp_target cxgbit iw_cxgb3 iw_cxgb4 cxgb3i cxgb3i cxgb3i_ddp cxgb4i chcr chtls" diff --git a/filter-s390x.sh.rhel b/filter-s390x.sh.rhel deleted file mode 100644 index 04f7110ad..000000000 --- a/filter-s390x.sh.rhel +++ /dev/null @@ -1,12 +0,0 @@ -#! /bin/bash - -# This is the s390x override file for the core/drivers package split. The -# module directories listed here and in the generic list in filter-modules.sh -# will be moved to the resulting kernel-modules package for this arch. -# Anything not listed in those files will be in the kernel-core package. -# -# Please review the default list in filter-modules.sh before making -# modifications to the overrides below. If something should be removed across -# all arches, remove it in the default instead of per-arch. - -# Defaults work so no need to override diff --git a/filter-x86_64.sh.rhel b/filter-x86_64.sh.rhel deleted file mode 100644 index 1aa80f2e0..000000000 --- a/filter-x86_64.sh.rhel +++ /dev/null @@ -1,12 +0,0 @@ -#! /bin/bash - -# This is the x86_64 override file for the core/drivers package split. The -# module directories listed here and in the generic list in filter-modules.sh -# will be moved to the resulting kernel-modules package for this arch. -# Anything not listed in those files will be in the kernel-core package. -# -# Please review the default list in filter-modules.sh before making -# modifications to the overrides below. If something should be removed across -# all arches, remove it in the default instead of per-arch. - -# Defaults work so no need to override diff --git a/filtermods.py b/filtermods.py new file mode 100755 index 000000000..3500cde88 --- /dev/null +++ b/filtermods.py @@ -0,0 +1,1084 @@ +#!/usr/bin/env python3 +""" +filter kmods into groups for packaging, see filtermods.adoc +""" + +import argparse +import os +import re +import subprocess +import sys +import yaml +import unittest + +from logging import getLogger, DEBUG, INFO, WARN, ERROR, CRITICAL, NOTSET, StreamHandler, Formatter, Logger +from typing import Optional + +log = getLogger('filtermods') + + +def get_td(filename): + script_dir = os.path.dirname(os.path.realpath(__file__)) + return os.path.join(script_dir, 'filtermods-testdata', filename) + + +def run_command(cmd, cwddir=None): + p = subprocess.Popen(cmd, cwd=cwddir, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True) + out, err = p.communicate() + out_str = out.decode('utf-8') + err_str = err.decode('utf-8') + return p.returncode, out_str, err_str + + +def safe_run_command(cmd, cwddir=None): + log.info('%s', cmd) + retcode, out, err = run_command(cmd, cwddir) + if retcode != 0: + log.warning('Command failed: %s, ret_code: %d', cmd, retcode) + log.warning(out) + log.warning(err) + raise Exception(err) + log.info(' ^^[OK]') + return retcode, out, err + + +def setup_logging(): + log_format = '%(asctime)s %(levelname)7.7s %(funcName)20.20s:%(lineno)4s %(message)s' + log = getLogger('filtermods') + handler = StreamHandler(sys.stdout) + formatter = Formatter(log_format, '%H:%M:%S') + handler.setFormatter(formatter) + log.addHandler(handler) + log.debug('Logging on') + return log + + +def canon_modname(kmod_pathname: str) -> str: + name = os.path.basename(kmod_pathname) + if name.endswith('.xz'): + name = name[:-3] + return name + + +class HierarchyObject: + def __init__(self): + self.depends_on = set() + + +def get_topo_order(obj_list: list[HierarchyObject], func_get_linked_objs=lambda x: x.depends_on) -> list[HierarchyObject]: + topo_order = [] + objs_to_sort = set(obj_list) + objs_sorted = set() + + while len(objs_to_sort) > 0: + no_deps = set() + for obj in objs_to_sort: + linked = func_get_linked_objs(obj) + if not linked: + no_deps.add(obj) + else: + all_deps_sorted = True + for dep in linked: + if dep not in objs_sorted: + all_deps_sorted = False + break + if all_deps_sorted: + no_deps.add(obj) + + for obj in no_deps: + topo_order.append(obj) + objs_sorted.add(obj) + objs_to_sort.remove(obj) + + return topo_order + + +class KMod(HierarchyObject): + def __init__(self, kmod_pathname: str) -> None: + super(KMod, self).__init__() + self.name: str = canon_modname(kmod_pathname) + self.kmod_pathname: str = kmod_pathname + self.is_dependency_for: set[KMod] = set() + self.assigned_to_pkg: Optional[KModPackage] = None + self.preferred_pkg: Optional[KModPackage] = None + self.rule_specifity: int = 0 + self.allowed_list: Optional[set[KModPackage]] = None + self.err = 0 + + def __str__(self): + depends_on = '' + for kmod in self.depends_on: + depends_on = depends_on + ' ' + kmod.name + return '%s {%s}' % (self.name, depends_on) + + +class KModList(): + def __init__(self) -> None: + self.name_to_kmod_map: dict[str, KMod] = {} + self.topo_order: Optional[list[KMod]] = None + + def get(self, kmod_pathname, create_if_missing=False): + kmod_name = canon_modname(kmod_pathname) + if kmod_name in self.name_to_kmod_map: + return self.name_to_kmod_map[kmod_name] + if not create_if_missing: + return None + + kmod = KMod(kmod_pathname) + # log.debug('Adding kmod %s (%s) to list', kmod.name, kmod.kmod_pathname) + if kmod.kmod_pathname != kmod_pathname: + raise Exception('Already have %s, but path changed? %s', kmod_name, kmod_pathname) + if not kmod.name: + raise Exception('Each kmod needs a name') + self.name_to_kmod_map[kmod_name] = kmod + return kmod + + def process_depmod_line(self, line): + tmp = line.split(':') + if len(tmp) != 2: + raise Exception('Depmod line has unexpected format: %s', line) + kmod_pathname = tmp[0].strip() + dependencies_pathnames = tmp[1].strip() + kmod = self.get(kmod_pathname, create_if_missing=True) + + if dependencies_pathnames: + for dep_pathname in dependencies_pathnames.split(' '): + dep_kmod = self.get(dep_pathname, create_if_missing=True) + kmod.depends_on.add(dep_kmod) + dep_kmod.is_dependency_for.add(kmod) + + def load_depmod_file(self, filepath): + with open(filepath) as f: + lines = f.readlines() + for line in lines: + if not line or line.startswith('#'): + continue + self.process_depmod_line(line) + log.info('depmod %s loaded, number of kmods: %s', filepath, len(self.name_to_kmod_map)) + + def dump(self): + for kmod in self.name_to_kmod_map.values(): + print(kmod) + + def get_topo_order(self): + if self.topo_order is None: + self.topo_order = get_topo_order(self.name_to_kmod_map.values()) + # TODO: what if we add something after? + return self.topo_order + + def get_alphabetical_order(self): + kmods = list(self.name_to_kmod_map.values()) + kmods.sort(key=lambda k: k.kmod_pathname) + return kmods + + def load_kmods_from_dir(self, topdir): + ret = [] + for root, dirs, files in os.walk(topdir): + for filename in files: + if filename.endswith('.xz'): + filename = filename[:-3] + if filename.endswith('.ko'): + kmod_pathname = os.path.join(root, filename) + ret.append(kmod_pathname) + + return ret + + def check_depmod_has_all_kmods(self, dirpath): + ret = self.load_kmods_from_dir(dirpath) + for kmod_pathname in ret: + kmod = self.get(kmod_pathname) + if not kmod: + raise Exception('Could not find kmod %s in depmod', kmod_pathname) + log.debug('OK: all (%s) kmods from %s are known', len(ret), dirpath) + + +class KModPackage(HierarchyObject): + def _get_depends_on(pkg): + return pkg.depends_on + + def _get_deps_for(pkg): + return pkg.is_dependency_for + + def __init__(self, name: str, depends_on=[]) -> None: + self.name: str = name + self.depends_on: set[KModPackage] = set(depends_on) + self.is_dependency_for: set[KModPackage] = set() + + for pkg in self.depends_on: + pkg.is_dependency_for.add(self) + self.all_depends_on_list: list[KModPackage] = self._get_all_linked(KModPackage._get_depends_on) + self.all_depends_on: set[KModPackage] = set(self.all_depends_on_list) + self.all_deps_for: Optional[set[KModPackage]] = None + self.default = False + log.debug('KModPackage created %s, depends_on: %s', name, [pkg.name for pkg in depends_on]) + + def __repr__(self): + return self.name + + def get_all_deps_for(self): + if self.all_deps_for is None: + self.all_deps_for = set(self._get_all_linked(KModPackage._get_deps_for)) + return self.all_deps_for + + def _get_all_linked(self, func_get_links): + ret = [] + explore = func_get_links(self) + + while len(explore) > 0: + new_explore = set() + for pkg in explore: + if pkg not in ret: + ret.append(pkg) + for dep in func_get_links(pkg): + new_explore.add(dep) + explore = new_explore + return ret + + +class KModPackageList(HierarchyObject): + def __init__(self) -> None: + self.name_to_obj: dict[str, KModPackage] = {} + self.kmod_pkg_list: list[KModPackage] = [] + self.rules: list[tuple[str, str, str]] = [] + + def get(self, pkgname): + if pkgname in self.name_to_obj: + return self.name_to_obj[pkgname] + return None + + def add_kmod_pkg(self, pkg): + self.name_to_obj[pkg.name] = pkg + self.kmod_pkg_list.append(pkg) + + def __iter__(self): + return iter(self.kmod_pkg_list) + + +def get_kmods_matching_re(kmod_list: KModList, param_re: str) -> list[KMod]: + ret = [] + # first subdir can be anything - this is because during build everything + # goes to kernel, but subpackages can move it (e.g. to extra) + param_re = '[^/]+/' + param_re + pattern = re.compile(param_re) + + for kmod in kmod_list.get_topo_order(): + m = pattern.match(kmod.kmod_pathname) + if m: + ret.append(kmod) + return ret + + +def walk_kmod_chain(kmod, myfunc): + visited = set() + + def visit_kmod(kmod, parent_kmod, func_to_call): + func_to_call(kmod, parent_kmod) + visited.add(kmod) + for dep in kmod.depends_on: + if dep not in visited: + visit_kmod(dep, kmod, func_to_call) + + visit_kmod(kmod, None, myfunc) + return visited + + +# is pkg a parent to any pkg from "alist" +def is_pkg_parent_to_any(pkg: KModPackage, alist: set[KModPackage]) -> bool: + if pkg in alist: + return True + + for some_pkg in alist: + if some_pkg in pkg.all_depends_on: + return True + return False + + +# is pkg a child to any pkg from "alist" +def is_pkg_child_to_any(pkg: KModPackage, alist: set[KModPackage]) -> bool: + if pkg in alist: + return True + + for some_pkg in alist: + if pkg in some_pkg.all_depends_on: + return True + return False + + +def update_allowed(kmod: KMod, visited: set[KMod], update_linked: bool = False) -> int: + num_updated = 0 + init = False + to_remove = set() + + if kmod in visited: + return num_updated + visited.add(kmod) + + # if we have nothing, try to initialise based on parents and children + if kmod.allowed_list is None: + init_allowed_list: set[KModPackage] = set() + + # init from children + for kmod_dep in kmod.depends_on: + if kmod_dep.allowed_list: + init_allowed_list.update(kmod_dep.allowed_list) + init = True + + if init: + # also add any pkgs that pkgs from list could depend on + deps_for = set() + for pkg in init_allowed_list: + deps_for.update(pkg.get_all_deps_for()) + init_allowed_list.update(deps_for) + + # init from parents + if not init: + for kmod_par in kmod.is_dependency_for: + if kmod_par.allowed_list: + init_allowed_list.update(kmod_par.allowed_list) + # also add any pkgs that depend on pkgs from list + for pkg in kmod_par.allowed_list: + init_allowed_list.update(pkg.all_depends_on) + init = True + + if init: + kmod.allowed_list = init_allowed_list + log.info('%s: init to %s', kmod.name, [x.name for x in kmod.allowed_list]) + + kmod_allowed_list = kmod.allowed_list or set() + # log.debug('%s: update to %s', kmod.name, [x.name for x in kmod_allowed_list]) + + # each allowed is parent to at least one child allowed [for _all_ children] + for pkg in kmod_allowed_list: + for kmod_dep in kmod.depends_on: + if kmod_dep.allowed_list is None or kmod_dep.err: + continue + if not is_pkg_parent_to_any(pkg, kmod_dep.allowed_list): + to_remove.add(pkg) + log.info('%s: remove %s from allowed, child: %s [%s]', + kmod.name, [pkg.name], kmod_dep.name, [x.name for x in kmod_dep.allowed_list]) + + # each allowed is child to at least one parent allowed [for _all_ parents] + for pkg in kmod_allowed_list: + for kmod_par in kmod.is_dependency_for: + if kmod_par.allowed_list is None or kmod_par.err: + continue + + if not is_pkg_child_to_any(pkg, kmod_par.allowed_list): + to_remove.add(pkg) + log.info('%s: remove %s from allowed, parent: %s %s', + kmod.name, [pkg.name], kmod_par.name, [x.name for x in kmod_par.allowed_list]) + + for pkg in to_remove: + kmod_allowed_list.remove(pkg) + num_updated = num_updated + 1 + if len(kmod_allowed_list) == 0: + log.error('%s: cleared entire allow list', kmod.name) + kmod.err = 1 + + if init or to_remove or update_linked: + if to_remove: + log.info('%s: updated to %s', kmod.name, [x.name for x in kmod_allowed_list]) + + for kmod_dep in kmod.depends_on: + num_updated = num_updated + update_allowed(kmod_dep, visited) + + for kmod_dep in kmod.is_dependency_for: + num_updated = num_updated + update_allowed(kmod_dep, visited) + + return num_updated + + +def apply_initial_labels(pkg_list: KModPackageList, kmod_list: KModList, treat_default_as_wants=False): + log.debug('') + for cur_rule in ['needs', 'wants', 'default']: + for package_name, rule_type, rule in pkg_list.rules: + pkg_obj = pkg_list.get(package_name) + + if not pkg_obj: + log.error('no package with name %s', package_name) + + if cur_rule != rule_type: + continue + + if rule_type == 'default' and treat_default_as_wants: + rule_type = 'wants' + + if 'needs' == rule_type: + # kmod_matching is already in topo_order + kmod_matching = get_kmods_matching_re(kmod_list, rule) + for kmod in kmod_matching: + if kmod.assigned_to_pkg and kmod.assigned_to_pkg != pkg_obj: + log.error('%s: can not be required by 2 pkgs %s %s', kmod.name, kmod.assigned_to_pkg, pkg_obj.name) + else: + kmod.assigned_to_pkg = pkg_obj + kmod.allowed_list = set([pkg_obj]) + kmod.rule_specifity = len(kmod_matching) + log.debug('%s: needed by %s', kmod.name, [pkg_obj.name]) + + if 'wants' == rule_type: + # kmod_matching is already in topo_order + kmod_matching = get_kmods_matching_re(kmod_list, rule) + for kmod in kmod_matching: + if kmod.allowed_list is None: + kmod.allowed_list = set(pkg_obj.all_depends_on) + kmod.allowed_list.add(pkg_obj) + kmod.preferred_pkg = pkg_obj + kmod.rule_specifity = len(kmod_matching) + log.debug('%s: wanted by %s, init allowed to %s', kmod.name, [pkg_obj.name], [pkg.name for pkg in kmod.allowed_list]) + else: + if kmod.assigned_to_pkg: + log.debug('%s: ignoring wants by %s, already assigned to %s', kmod.name, pkg_obj.name, kmod.assigned_to_pkg.name) + else: + # rule specifity may not be good idea, so just log it + # e.g. .*test.* may not be more specific than arch/x86/.* + log.debug('already have wants for %s %s, new rule: %s', kmod.name, kmod.preferred_pkg, rule) + + if 'default' == rule_type: + pkg_obj.default = True + + +def settle(kmod_list: KModList) -> None: + kmod_topo_order = list(kmod_list.get_topo_order()) + + for i in range(0, 25): + log.debug('settle start %s', i) + + ret = 0 + for kmod in kmod_topo_order: + visited: set[KMod] = set() + ret = ret + update_allowed(kmod, visited) + log.debug('settle %s updated nodes: %s', i, ret) + + if ret == 0: + break + + kmod_topo_order.reverse() + + +# phase 1 - propagate initial labels +def propagate_labels_1(pkg_list: KModPackageList, kmod_list: KModList): + log.info('') + settle(kmod_list) + + +def pick_closest_to_preffered(preferred_pkg: KModPackage, allowed_set: set[KModPackage]): + for child in preferred_pkg.all_depends_on_list: + if child in allowed_set: + return child + return None + + +# phase 2 - if some kmods allow more than one pkg, pick wanted package +def propagate_labels_2(pkg_list: KModPackageList, kmod_list: KModList): + log.info('') + ret = 0 + for kmod in kmod_list.get_topo_order(): + update_linked = False + + if kmod.allowed_list is None and kmod.preferred_pkg: + log.error('%s: has no allowed list but has preferred_pkg %s', kmod.name, kmod.preferred_pkg.name) + kmod.err = 1 + + if kmod.allowed_list and kmod.preferred_pkg: + chosen_pkg = None + if kmod.preferred_pkg in kmod.allowed_list: + chosen_pkg = kmod.preferred_pkg + else: + chosen_pkg = pick_closest_to_preffered(kmod.preferred_pkg, kmod.allowed_list) + + if chosen_pkg is not None: + kmod.allowed_list = set([chosen_pkg]) + log.info('%s: making to prefer %s (preffered is %s), allowed: %s', kmod.name, chosen_pkg.name, + kmod.preferred_pkg.name, [pkg.name for pkg in kmod.allowed_list]) + update_linked = True + + visited: set[KMod] = set() + ret = ret + update_allowed(kmod, visited, update_linked) + + log.debug('updated nodes: %s', ret) + settle(kmod_list) + + +# Is this the best pick? ¯\_(ツ)_/¯ +def pick_topmost_allowed(allowed_set: set[KModPackage]) -> KModPackage: + topmost = next(iter(allowed_set)) + for pkg in allowed_set: + if len(pkg.all_depends_on) > len(topmost.all_depends_on): + topmost = pkg + + return topmost + + +# phase 3 - assign everything else that remained +def propagate_labels_3(pkg_list: KModPackageList, kmod_list: KModList): + log.info('') + ret = 0 + kmod_topo_order = list(kmod_list.get_topo_order()) + # do reverse topo order to cover children faster + kmod_topo_order.reverse() + + default_pkg = None + default_name = '' + for pkg_obj in pkg_list: + if pkg_obj.default: + if default_pkg: + log.error('Already have default pkg: %s / %s', default_pkg.name, pkg_obj.name) + else: + default_pkg = pkg_obj + default_name = default_pkg.name + + for kmod in kmod_topo_order: + update_linked = False + chosen_pkg = None + + if kmod.allowed_list is None: + if default_pkg: + chosen_pkg = default_pkg + else: + log.error('%s not assigned and there is no default', kmod.name) + elif len(kmod.allowed_list) > 1: + if default_pkg: + if default_pkg in kmod.allowed_list: + chosen_pkg = default_pkg + else: + chosen_pkg = pick_closest_to_preffered(default_pkg, kmod.allowed_list) + if chosen_pkg: + log.debug('closest is %s', chosen_pkg.name) + if not chosen_pkg: + # multiple pkgs are allowed, but none is preferred or default + chosen_pkg = pick_topmost_allowed(kmod.allowed_list) + log.debug('topmost is %s', chosen_pkg.name) + + if chosen_pkg: + kmod.allowed_list = set([chosen_pkg]) + log.info('%s: making to prefer %s (default: %s)', kmod.name, [chosen_pkg.name], default_name) + update_linked = True + + visited: set[KMod] = set() + ret = ret + update_allowed(kmod, visited, update_linked) + + log.debug('updated nodes: %s', ret) + settle(kmod_list) + + +def load_config(config_pathname: str, kmod_list: KModList, variants=[]): + kmod_pkg_list = KModPackageList() + + with open(config_pathname, 'r') as file: + yobj = yaml.safe_load(file) + + for pkg_dict in yobj['packages']: + pkg_name = pkg_dict['name'] + depends_on = pkg_dict.get('depends-on', []) + if_variant_in = pkg_dict.get('if_variant_in') + + if if_variant_in is not None: + if not (set(variants) & set(if_variant_in)): + log.debug('Skipping %s for variants %s', pkg_name, variants) + continue + + pkg_dep_list = [] + for pkg_dep_name in depends_on: + pkg_dep = kmod_pkg_list.get(pkg_dep_name) + pkg_dep_list.append(pkg_dep) + + pkg_obj = kmod_pkg_list.get(pkg_name) + if not pkg_obj: + pkg_obj = KModPackage(pkg_name, pkg_dep_list) + kmod_pkg_list.add_kmod_pkg(pkg_obj) + else: + log.error('package %s already exists?', pkg_name) + + rules_list = yobj.get('rules', []) + for rule_dict in rules_list: + if_variant_in = rule_dict.get('if_variant_in') + exact_pkg = rule_dict.get('exact_pkg') + + for key, value in rule_dict.items(): + if key in ['if_variant_in', 'exact_pkg']: + continue + + if if_variant_in is not None: + if not (set(variants) & set(if_variant_in)): + continue + + rule = key + package_name = value + + if not kmod_pkg_list.get(package_name): + raise Exception('Unknown package ' + package_name) + + rule_type = 'wants' + if exact_pkg is True: + rule_type = 'needs' + elif key == 'default': + rule_type = 'default' + rule = '.*' + + log.debug('found rule: %s', (package_name, rule_type, rule)) + kmod_pkg_list.rules.append((package_name, rule_type, rule)) + + log.info('loaded config, rules: %s', len(kmod_pkg_list.rules)) + return kmod_pkg_list + + +def make_pictures(pkg_list: KModPackageList, kmod_list: KModList, filename: str, print_allowed=True): + f = open(filename + '.dot', 'w') + + f.write('digraph {\n') + f.write('node [style=filled fillcolor="#f8f8f8"]\n') + f.write(' subgraph kmods {\n') + f.write(' "Legend" [shape=note label="kmod name\\n{desired package}\\nresulting package(s)"]\n') + + for kmod in kmod_list.get_topo_order(): + pkg_name = '' + attr = '' + if kmod.assigned_to_pkg: + attr = 'fillcolor="#eddad5" color="#b22800"' + pkg_name = kmod.assigned_to_pkg.name + "!" + if kmod.preferred_pkg: + attr = 'fillcolor="#ddddf5" color="#b268fe"' + pkg_name = kmod.preferred_pkg.name + "?" + allowed = '' + if kmod.allowed_list and print_allowed: + allowed = '=' + ' '.join([pkg.name for pkg in kmod.allowed_list]) + f.write(' "%s" [label="%s\\n%s\\n%s" shape=box %s] \n' % (kmod.name, kmod.name, pkg_name, allowed, attr)) + + for kmod in kmod_list.get_topo_order(): + for kmod_dep in kmod.depends_on: + f.write(' "%s" -> "%s";\n' % (kmod.name, kmod_dep.name)) + f.write(' }\n') + + f.write(' subgraph packages {\n') + for pkg in pkg_list: + desc = '' + if pkg.default: + desc = '/default' + f.write(' "%s" [label="%s\\n%s"] \n' % (pkg.name, pkg.name, desc)) + for pkg_dep in pkg.depends_on: + f.write(' "%s" -> "%s";\n' % (pkg.name, pkg_dep.name)) + f.write(' }\n') + f.write('}\n') + + f.close() + + # safe_run_command('dot -Tpng -Gdpi=150 %s.dot > %s.png' % (filename, filename)) + safe_run_command('dot -Tsvg %s.dot > %s.svg' % (filename, filename)) + + +def sort_kmods(depmod_pathname: str, config_str: str, variants=[], do_pictures=''): + log.info('%s %s', depmod_pathname, config_str) + kmod_list = KModList() + kmod_list.load_depmod_file(depmod_pathname) + + pkg_list = load_config(config_str, kmod_list, variants) + + basename = os.path.splitext(config_str)[0] + + apply_initial_labels(pkg_list, kmod_list) + if '0' in do_pictures: + make_pictures(pkg_list, kmod_list, basename + "_0", print_allowed=False) + + try: + + propagate_labels_1(pkg_list, kmod_list) + if '1' in do_pictures: + make_pictures(pkg_list, kmod_list, basename + "_1") + propagate_labels_2(pkg_list, kmod_list) + propagate_labels_3(pkg_list, kmod_list) + finally: + if 'f' in do_pictures: + make_pictures(pkg_list, kmod_list, basename + "_f") + + return pkg_list, kmod_list + + +def abbrev_list_for_report(alist: list[KMod]) -> str: + tmp_str = [] + for kmod in alist[:2]: + if kmod.allowed_list: + tmp_str.append('%s(%s)' % (kmod.name, ' '.join([x.name for x in kmod.allowed_list]))) + ret = ', '.join(tmp_str) + other_len = len(alist[2:]) + if other_len > 0: + ret = ret + ' and %s other(s)' % (other_len) + return ret + + +def print_report(pkg_list: KModPackageList, kmod_list: KModList): + log.info('*'*26 + ' REPORT ' + '*'*26) + + kmods_err = 0 + kmods_moved = 0 + kmods_good = 0 + for kmod in kmod_list.get_topo_order(): + if not kmod.allowed_list: + log.error('%s: not assigned to any package! Please check the full log for details', kmod.name) + kmods_err = kmods_err + 1 + continue + + if len(kmod.allowed_list) > 1: + log.error('%s: assigned to more than one package! Please check the full log for details', kmod.name) + kmods_err = kmods_err + 1 + continue + + if not kmod.preferred_pkg: + # config doesn't care where it ended up + kmods_good = kmods_good + 1 + continue + + if kmod.preferred_pkg in kmod.allowed_list: + # it ended up where it needs to be + kmods_good = kmods_good + 1 + continue + + bad_parent_list = [] + for kmod_parent in kmod.is_dependency_for: + if not is_pkg_child_to_any(kmod.preferred_pkg, kmod_parent.allowed_list): + bad_parent_list.append(kmod_parent) + + bad_child_list = [] + for kmod_child in kmod.depends_on: + if not is_pkg_parent_to_any(kmod.preferred_pkg, kmod_child.allowed_list): + bad_child_list.append(kmod_parent) + + log.info('%s: wanted by %s but ended up in %s', kmod.name, [kmod.preferred_pkg.name], [pkg.name for pkg in kmod.allowed_list]) + if bad_parent_list: + log.info('\thas conflicting parent: %s', abbrev_list_for_report(bad_parent_list)) + if bad_child_list: + log.info('\thas conflicting children: %s', abbrev_list_for_report(bad_child_list)) + + kmods_moved = kmods_moved + 1 + + log.info('No. of kmod(s) assigned to preferred package: %s', kmods_good) + log.info('No. of kmod(s) moved to a related package: %s', kmods_moved) + log.info('No. of kmod(s) which could not be assigned: %s', kmods_err) + log.info('*'*60) + + return kmods_err + + +def write_modules_lists(path_prefix: str, pkg_list: KModPackageList, kmod_list: KModList): + kmod_list_alphabetical = sorted(kmod_list.get_topo_order(), key=lambda x: x.kmod_pathname) + for pkg in pkg_list: + output_path = os.path.join(path_prefix, pkg.name + '.list') + i = 0 + with open(output_path, "w") as file: + for kmod in kmod_list_alphabetical: + if kmod.allowed_list and pkg in kmod.allowed_list: + file.write(kmod.kmod_pathname) + file.write('\n') + i = i + 1 + log.info('Module list %s created with %s kmods', output_path, i) + + +class FiltermodTests(unittest.TestCase): + do_pictures = '' + + def setUp(self): + self.pkg_list = None + self.kmod_list = None + + def _is_kmod_pkg(self, kmodname, pkgnames): + self.assertIsNotNone(self.pkg_list) + self.assertIsNotNone(self.kmod_list) + + if type(pkgnames) is str: + pkgnames = [pkgnames] + + expected_pkgs = [] + for pkgname in pkgnames: + pkg = self.pkg_list.get(pkgname) + self.assertIsNotNone(pkg) + expected_pkgs.append(pkg) + + kmod = self.kmod_list.get(kmodname) + self.assertIsNotNone(kmod) + + if expected_pkgs: + self.assertTrue(len(kmod.allowed_list) == 1) + self.assertIn(next(iter(kmod.allowed_list)), expected_pkgs) + else: + self.assertEqual(kmod.allowed_list, set()) + + def test1a(self): + self.pkg_list, self.kmod_list = sort_kmods(get_td('test1.dep'), get_td('test1.yaml'), + do_pictures=FiltermodTests.do_pictures) + + self._is_kmod_pkg('kmod1', 'modules-core') + self._is_kmod_pkg('kmod2', 'modules-core') + self._is_kmod_pkg('kmod3', 'modules') + self._is_kmod_pkg('kmod4', 'modules') + + def test1b(self): + self.pkg_list, self.kmod_list = sort_kmods(get_td('test1.dep'), get_td('test1.yaml'), + do_pictures=FiltermodTests.do_pictures, + variants=['rt']) + + self.assertIsNotNone(self.pkg_list.get('rt-kvm')) + self._is_kmod_pkg('kmod1', 'modules-core') + self._is_kmod_pkg('kmod2', 'modules-core') + self._is_kmod_pkg('kmod3', 'modules') + self._is_kmod_pkg('kmod4', 'rt-kvm') + + def test2(self): + self.pkg_list, self.kmod_list = sort_kmods(get_td('test2.dep'), get_td('test2.yaml'), + do_pictures=FiltermodTests.do_pictures) + + self._is_kmod_pkg('kmod1', 'modules-extra') + self._is_kmod_pkg('kmod2', 'modules') + self._is_kmod_pkg('kmod3', 'modules-core') + self._is_kmod_pkg('kmod4', 'modules-core') + self._is_kmod_pkg('kmod5', 'modules-core') + self._is_kmod_pkg('kmod6', 'modules-extra') + self._is_kmod_pkg('kmod8', 'modules') + + def test3(self): + self.pkg_list, self.kmod_list = sort_kmods(get_td('test3.dep'), get_td('test3.yaml'), + do_pictures=FiltermodTests.do_pictures) + + self._is_kmod_pkg('kmod2', ['modules-core', 'modules']) + self._is_kmod_pkg('kmod4', ['modules-core', 'modules-extra']) + self._is_kmod_pkg('kmod5', 'modules-core') + self._is_kmod_pkg('kmod6', 'modules-core') + + def test4(self): + self.pkg_list, self.kmod_list = sort_kmods(get_td('test4.dep'), get_td('test4.yaml'), + do_pictures=FiltermodTests.do_pictures) + + self._is_kmod_pkg('kmod0', 'modules') + self._is_kmod_pkg('kmod1', 'modules') + self._is_kmod_pkg('kmod2', 'modules') + self._is_kmod_pkg('kmod3', 'modules') + self._is_kmod_pkg('kmod4', 'modules') + self._is_kmod_pkg('kmod5', 'modules') + self._is_kmod_pkg('kmod6', 'modules') + self._is_kmod_pkg('kmod7', 'modules-partner2') + self._is_kmod_pkg('kmod8', 'modules-partner') + self._is_kmod_pkg('kmod9', 'modules-partner') + + def _check_preffered_pkg(self, kmodname, pkgname): + kmod = self.kmod_list.get(kmodname) + self.assertIsNotNone(kmod) + self.assertEqual(kmod.preferred_pkg.name, pkgname) + + def test5(self): + self.pkg_list, self.kmod_list = sort_kmods(get_td('test5.dep'), get_td('test5.yaml'), + do_pictures=FiltermodTests.do_pictures) + + self._check_preffered_pkg('kmod2', 'modules') + self._check_preffered_pkg('kmod3', 'modules-partner') + self._check_preffered_pkg('kmod4', 'modules-partner') + + def test6(self): + self.pkg_list, self.kmod_list = sort_kmods(get_td('test6.dep'), get_td('test6.yaml'), + do_pictures=FiltermodTests.do_pictures) + + self._is_kmod_pkg('kmod2', 'modules-core') + self._is_kmod_pkg('kmod3', 'modules') + self._is_kmod_pkg('kmod4', 'modules') + self._is_kmod_pkg('kmod1', []) + + def test7(self): + self.pkg_list, self.kmod_list = sort_kmods(get_td('test7.dep'), get_td('test7.yaml'), + do_pictures=FiltermodTests.do_pictures) + + self._is_kmod_pkg('kmod1', 'modules-core') + self._is_kmod_pkg('kmod2', 'modules-core') + self._is_kmod_pkg('kmod3', 'modules-other') + self._is_kmod_pkg('kmod4', 'modules') + + +def do_rpm_mapping_test(config_pathname, kmod_rpms): + kmod_dict = {} + + def get_kmods_matching_re(pkgname, param_re): + matched = [] + param_re = '^kernel/' + param_re + pattern = re.compile(param_re) + + for kmod_pathname, kmod_rec in kmod_dict.items(): + m = pattern.match(kmod_pathname) + if m: + matched.append(kmod_pathname) + + return matched + + for kmod_rpm in kmod_rpms.split(): + filename = os.path.basename(kmod_rpm) + + m = re.match(r'.*-modules-([^-]+)', filename) + if not m: + raise Exception('Unrecognized rpm ' + kmod_rpm + ', expected a kernel-modules* rpm') + pkgname = 'modules-' + m.group(1) + m = re.match(r'modules-([0-9.]+)', pkgname) + if m: + pkgname = 'modules' + + tmpdir = os.path.join('tmp.filtermods', filename, pkgname) + if not os.path.exists(tmpdir): + log.info('creating tmp dir %s', tmpdir) + os.makedirs(tmpdir) + safe_run_command('rpm2cpio %s | cpio -id' % (os.path.abspath(kmod_rpm)), cwddir=tmpdir) + else: + log.info('using cached content of tmp dir: %s', tmpdir) + + for path, subdirs, files in os.walk(tmpdir): + for name in files: + ret = re.match(r'.*/'+pkgname+'/lib/modules/[^/]+/[^/]+/(.*)', os.path.join(path, name)) + if not ret: + continue + + kmod_pathname = 'kernel/' + ret.group(1) + if not kmod_pathname.endswith('.xz') and not kmod_pathname.endswith('.ko'): + continue + if kmod_pathname in kmod_dict: + if pkgname not in kmod_dict[kmod_pathname]['target_pkgs']: + kmod_dict[kmod_pathname]['target_pkgs'].append(pkgname) + else: + kmod_dict[kmod_pathname] = {} + kmod_dict[kmod_pathname]['target_pkgs'] = [pkgname] + kmod_dict[kmod_pathname]['pkg'] = None + kmod_dict[kmod_pathname]['matched'] = False + + kmod_pkg_list = load_config(config_pathname, None) + + for package_name, rule_type, rule in kmod_pkg_list.rules: + kmod_names = get_kmods_matching_re(package_name, rule) + + for kmod_pathname in kmod_names: + kmod_rec = kmod_dict[kmod_pathname] + + if not kmod_rec['matched']: + kmod_rec['matched'] = True + kmod_rec['pkg'] = package_name + for kmod_pathname, kmod_rec in kmod_dict.items(): + if kmod_rec['pkg'] not in kmod_rec['target_pkgs']: + log.warning('kmod %s wanted by config in %s, in tree it is: %s', kmod_pathname, [kmod_rec['pkg']], kmod_rec['target_pkgs']) + elif len(kmod_rec['target_pkgs']) > 1: + # if set(kmod_rec['target_pkgs']) != set(['modules', 'modules-core']): + log.warning('kmod %s multiple matches in tree: %s/%s', kmod_pathname, [kmod_rec['pkg']], kmod_rec['target_pkgs']) + + +def cmd_sort(options): + do_pictures = '' + if options.graphviz: + do_pictures = '0f' + + pkg_list, kmod_list = sort_kmods(options.depmod, options.config, + options.variants, do_pictures) + ret = print_report(pkg_list, kmod_list) + if options.output: + write_modules_lists(options.output, pkg_list, kmod_list) + + return ret + + +def cmd_print_rule_map(options): + kmod_list = KModList() + kmod_list.load_depmod_file(options.depmod) + pkg_list = load_config(options.config, kmod_list, options.variants) + apply_initial_labels(pkg_list, kmod_list, treat_default_as_wants=True) + + for kmod in kmod_list.get_alphabetical_order(): + print('%-20s %s' % (kmod.preferred_pkg, kmod.kmod_pathname)) + + +def cmd_selftest(options): + if options.graphviz: + FiltermodTests.do_pictures = '0f' + + for arg in ['selftest', '-g', '--graphviz']: + if arg in sys.argv: + sys.argv.remove(arg) + + unittest.main() + sys.exit(0) + + +def cmd_cmp2rpm(options): + do_rpm_mapping_test(options.config, options.kmod_rpms) + + +def main(): + global log + log = setup_logging() + + parser = argparse.ArgumentParser() + parser.add_argument('-v', '--verbose', dest='verbose', + help='be more verbose', action='count', default=4) + parser.add_argument('-q', '--quiet', dest='quiet', + help='be more quiet', action='count', default=0) + subparsers = parser.add_subparsers(dest='cmd') + + def add_graphviz_arg(p): + p.add_argument('-g', '--graphviz', dest='graphviz', + help='generate graphviz visualizations', + action='store_true', default=False) + + def add_config_arg(p): + p.add_argument('-c', '--config', dest='config', required=True, + help='path to yaml config with rules') + + def add_depmod_arg(p): + p.add_argument('-d', '--depmod', dest='depmod', required=True, + help='path to modules.dep file') + + def add_output_arg(p): + p.add_argument('-o', '--output', dest='output', default=None, + help='output $module_name.list files to directory specified by this parameter') + + def add_variants_arg(p): + p.add_argument('-r', '--variants', dest='variants', action='append', default=[], + help='variants to enable in config') + + def add_kmod_rpms_arg(p): + p.add_argument('-k', '--kmod-rpms', dest='kmod_rpms', required=True, + help='compare content of specified rpm(s) against yaml config rules') + + parser_sort = subparsers.add_parser('sort', help='assign kmods specified by modules.dep using rules from yaml config') + add_config_arg(parser_sort) + add_depmod_arg(parser_sort) + add_output_arg(parser_sort) + add_variants_arg(parser_sort) + add_graphviz_arg(parser_sort) + + parser_rule_map = subparsers.add_parser('rulemap', help='print how yaml config maps to kmods') + add_config_arg(parser_rule_map) + add_depmod_arg(parser_rule_map) + add_variants_arg(parser_rule_map) + + parser_test = subparsers.add_parser('selftest', help='runs a self-test') + add_graphviz_arg(parser_test) + + parser_cmp2rpm = subparsers.add_parser('cmp2rpm', help='compare ruleset against RPM(s)') + add_config_arg(parser_cmp2rpm) + add_kmod_rpms_arg(parser_cmp2rpm) + + options = parser.parse_args() + + if options.cmd == "selftest": + options.verbose = options.verbose - 2 + options.verbose = max(options.verbose - options.quiet, 0) + levels = [NOTSET, CRITICAL, ERROR, WARN, INFO, DEBUG] + log.setLevel(levels[min(options.verbose, len(levels) - 1)]) + + ret = 0 + if options.cmd == "sort": + ret = cmd_sort(options) + elif options.cmd == "rulemap": + cmd_print_rule_map(options) + elif options.cmd == "selftest": + cmd_selftest(options) + elif options.cmd == "cmp2rpm": + cmd_cmp2rpm(options) + else: + parser.print_help() + + return ret + + +if __name__ == '__main__': + # import profile + # profile.run('main()', sort=1) + sys.exit(main()) diff --git a/kernel-aarch64-64k-debug-rhel.config b/kernel-aarch64-64k-debug-rhel.config index 130bf84f8..e27a79c5a 100644 --- a/kernel-aarch64-64k-debug-rhel.config +++ b/kernel-aarch64-64k-debug-rhel.config @@ -2865,7 +2865,6 @@ CONFIG_INTEL_IDXD=m # CONFIG_INTEL_INT0002_VGPIO is not set # CONFIG_INTEL_IOMMU_DEBUGFS is not set CONFIG_INTEL_IOMMU_PERF_EVENTS=y -# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set # CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER is not set # CONFIG_INTEL_ISHTP_ECLITE is not set # CONFIG_INTEL_LDMA is not set @@ -3762,6 +3761,7 @@ CONFIG_MITIGATION_RETHUNK=y CONFIG_MITIGATION_RETPOLINE=y CONFIG_MITIGATION_RFDS=y # CONFIG_MITIGATION_SLS is not set +CONFIG_MITIGATION_SPECTRE_BHI=y CONFIG_MITIGATION_SRSO=y CONFIG_MITIGATION_UNRET_ENTRY=y # CONFIG_MLX4_CORE_GEN2 is not set @@ -6779,6 +6779,8 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m CONFIG_SPEAKUP_SYNTH_TXPRT=m +# CONFIG_SPECTRE_BHI_OFF is not set +CONFIG_SPECTRE_BHI_ON=y # CONFIG_SPI_ALTERA_CORE is not set # CONFIG_SPI_ALTERA is not set CONFIG_SPI_AMD=y diff --git a/kernel-aarch64-64k-rhel.config b/kernel-aarch64-64k-rhel.config index a727f5496..f77bf0076 100644 --- a/kernel-aarch64-64k-rhel.config +++ b/kernel-aarch64-64k-rhel.config @@ -2849,7 +2849,6 @@ CONFIG_INTEL_IDXD=m # CONFIG_INTEL_INT0002_VGPIO is not set # CONFIG_INTEL_IOMMU_DEBUGFS is not set CONFIG_INTEL_IOMMU_PERF_EVENTS=y -# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set # CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER is not set # CONFIG_INTEL_ISHTP_ECLITE is not set # CONFIG_INTEL_LDMA is not set @@ -3741,6 +3740,7 @@ CONFIG_MITIGATION_RETHUNK=y CONFIG_MITIGATION_RETPOLINE=y CONFIG_MITIGATION_RFDS=y # CONFIG_MITIGATION_SLS is not set +CONFIG_MITIGATION_SPECTRE_BHI=y CONFIG_MITIGATION_SRSO=y CONFIG_MITIGATION_UNRET_ENTRY=y # CONFIG_MLX4_CORE_GEN2 is not set @@ -6754,6 +6754,8 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m CONFIG_SPEAKUP_SYNTH_TXPRT=m +# CONFIG_SPECTRE_BHI_OFF is not set +CONFIG_SPECTRE_BHI_ON=y # CONFIG_SPI_ALTERA_CORE is not set # CONFIG_SPI_ALTERA is not set CONFIG_SPI_AMD=y diff --git a/kernel-aarch64-debug-rhel.config b/kernel-aarch64-debug-rhel.config index 98fdd0617..eb85a6d3d 100644 --- a/kernel-aarch64-debug-rhel.config +++ b/kernel-aarch64-debug-rhel.config @@ -2862,7 +2862,6 @@ CONFIG_INTEL_IDXD=m # CONFIG_INTEL_INT0002_VGPIO is not set # CONFIG_INTEL_IOMMU_DEBUGFS is not set CONFIG_INTEL_IOMMU_PERF_EVENTS=y -# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set # CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER is not set # CONFIG_INTEL_ISHTP_ECLITE is not set # CONFIG_INTEL_LDMA is not set @@ -3759,6 +3758,7 @@ CONFIG_MITIGATION_RETHUNK=y CONFIG_MITIGATION_RETPOLINE=y CONFIG_MITIGATION_RFDS=y # CONFIG_MITIGATION_SLS is not set +CONFIG_MITIGATION_SPECTRE_BHI=y CONFIG_MITIGATION_SRSO=y CONFIG_MITIGATION_UNRET_ENTRY=y # CONFIG_MLX4_CORE_GEN2 is not set @@ -6775,6 +6775,8 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m CONFIG_SPEAKUP_SYNTH_TXPRT=m +# CONFIG_SPECTRE_BHI_OFF is not set +CONFIG_SPECTRE_BHI_ON=y # CONFIG_SPI_ALTERA_CORE is not set # CONFIG_SPI_ALTERA is not set CONFIG_SPI_AMD=y diff --git a/kernel-aarch64-rhel.config b/kernel-aarch64-rhel.config index 2ebebf01e..66b9a29e1 100644 --- a/kernel-aarch64-rhel.config +++ b/kernel-aarch64-rhel.config @@ -2846,7 +2846,6 @@ CONFIG_INTEL_IDXD=m # CONFIG_INTEL_INT0002_VGPIO is not set # CONFIG_INTEL_IOMMU_DEBUGFS is not set CONFIG_INTEL_IOMMU_PERF_EVENTS=y -# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set # CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER is not set # CONFIG_INTEL_ISHTP_ECLITE is not set # CONFIG_INTEL_LDMA is not set @@ -3738,6 +3737,7 @@ CONFIG_MITIGATION_RETHUNK=y CONFIG_MITIGATION_RETPOLINE=y CONFIG_MITIGATION_RFDS=y # CONFIG_MITIGATION_SLS is not set +CONFIG_MITIGATION_SPECTRE_BHI=y CONFIG_MITIGATION_SRSO=y CONFIG_MITIGATION_UNRET_ENTRY=y # CONFIG_MLX4_CORE_GEN2 is not set @@ -6750,6 +6750,8 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m CONFIG_SPEAKUP_SYNTH_TXPRT=m +# CONFIG_SPECTRE_BHI_OFF is not set +CONFIG_SPECTRE_BHI_ON=y # CONFIG_SPI_ALTERA_CORE is not set # CONFIG_SPI_ALTERA is not set CONFIG_SPI_AMD=y diff --git a/kernel-aarch64-rt-debug-rhel.config b/kernel-aarch64-rt-debug-rhel.config index 7c02a4dc4..16d86410b 100644 --- a/kernel-aarch64-rt-debug-rhel.config +++ b/kernel-aarch64-rt-debug-rhel.config @@ -2902,7 +2902,6 @@ CONFIG_INTEL_IDXD=m # CONFIG_INTEL_INT0002_VGPIO is not set # CONFIG_INTEL_IOMMU_DEBUGFS is not set CONFIG_INTEL_IOMMU_PERF_EVENTS=y -# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set # CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER is not set # CONFIG_INTEL_ISHTP_ECLITE is not set # CONFIG_INTEL_LDMA is not set @@ -3804,6 +3803,7 @@ CONFIG_MITIGATION_RETHUNK=y CONFIG_MITIGATION_RETPOLINE=y CONFIG_MITIGATION_RFDS=y # CONFIG_MITIGATION_SLS is not set +CONFIG_MITIGATION_SPECTRE_BHI=y CONFIG_MITIGATION_SRSO=y CONFIG_MITIGATION_UNRET_ENTRY=y # CONFIG_MLX4_CORE_GEN2 is not set @@ -6827,6 +6827,8 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m CONFIG_SPEAKUP_SYNTH_TXPRT=m +# CONFIG_SPECTRE_BHI_OFF is not set +CONFIG_SPECTRE_BHI_ON=y # CONFIG_SPI_ALTERA_CORE is not set # CONFIG_SPI_ALTERA is not set CONFIG_SPI_AMD=y diff --git a/kernel-aarch64-rt-rhel.config b/kernel-aarch64-rt-rhel.config index 2614c2659..39379445f 100644 --- a/kernel-aarch64-rt-rhel.config +++ b/kernel-aarch64-rt-rhel.config @@ -2886,7 +2886,6 @@ CONFIG_INTEL_IDXD=m # CONFIG_INTEL_INT0002_VGPIO is not set # CONFIG_INTEL_IOMMU_DEBUGFS is not set CONFIG_INTEL_IOMMU_PERF_EVENTS=y -# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set # CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER is not set # CONFIG_INTEL_ISHTP_ECLITE is not set # CONFIG_INTEL_LDMA is not set @@ -3783,6 +3782,7 @@ CONFIG_MITIGATION_RETHUNK=y CONFIG_MITIGATION_RETPOLINE=y CONFIG_MITIGATION_RFDS=y # CONFIG_MITIGATION_SLS is not set +CONFIG_MITIGATION_SPECTRE_BHI=y CONFIG_MITIGATION_SRSO=y CONFIG_MITIGATION_UNRET_ENTRY=y # CONFIG_MLX4_CORE_GEN2 is not set @@ -6802,6 +6802,8 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m CONFIG_SPEAKUP_SYNTH_TXPRT=m +# CONFIG_SPECTRE_BHI_OFF is not set +CONFIG_SPECTRE_BHI_ON=y # CONFIG_SPI_ALTERA_CORE is not set # CONFIG_SPI_ALTERA is not set CONFIG_SPI_AMD=y diff --git a/kernel-ppc64le-debug-rhel.config b/kernel-ppc64le-debug-rhel.config index 5359fd847..6a253e3e4 100644 --- a/kernel-ppc64le-debug-rhel.config +++ b/kernel-ppc64le-debug-rhel.config @@ -2552,7 +2552,6 @@ CONFIG_INTEL_IDXD=m # CONFIG_INTEL_INT0002_VGPIO is not set # CONFIG_INTEL_IOMMU_DEBUGFS is not set CONFIG_INTEL_IOMMU_PERF_EVENTS=y -# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set # CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER is not set # CONFIG_INTEL_ISHTP_ECLITE is not set # CONFIG_INTEL_LDMA is not set @@ -3438,6 +3437,7 @@ CONFIG_MITIGATION_RETHUNK=y CONFIG_MITIGATION_RETPOLINE=y CONFIG_MITIGATION_RFDS=y # CONFIG_MITIGATION_SLS is not set +CONFIG_MITIGATION_SPECTRE_BHI=y CONFIG_MITIGATION_SRSO=y CONFIG_MITIGATION_UNRET_ENTRY=y # CONFIG_MLX4_CORE_GEN2 is not set @@ -6308,6 +6308,8 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m CONFIG_SPEAKUP_SYNTH_TXPRT=m +# CONFIG_SPECTRE_BHI_OFF is not set +CONFIG_SPECTRE_BHI_ON=y # CONFIG_SPI_ALTERA_CORE is not set # CONFIG_SPI_ALTERA is not set CONFIG_SPI_AMD=y diff --git a/kernel-ppc64le-rhel.config b/kernel-ppc64le-rhel.config index aa0f127de..5b8cf88bf 100644 --- a/kernel-ppc64le-rhel.config +++ b/kernel-ppc64le-rhel.config @@ -2536,7 +2536,6 @@ CONFIG_INTEL_IDXD=m # CONFIG_INTEL_INT0002_VGPIO is not set # CONFIG_INTEL_IOMMU_DEBUGFS is not set CONFIG_INTEL_IOMMU_PERF_EVENTS=y -# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set # CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER is not set # CONFIG_INTEL_ISHTP_ECLITE is not set # CONFIG_INTEL_LDMA is not set @@ -3418,6 +3417,7 @@ CONFIG_MITIGATION_RETHUNK=y CONFIG_MITIGATION_RETPOLINE=y CONFIG_MITIGATION_RFDS=y # CONFIG_MITIGATION_SLS is not set +CONFIG_MITIGATION_SPECTRE_BHI=y CONFIG_MITIGATION_SRSO=y CONFIG_MITIGATION_UNRET_ENTRY=y # CONFIG_MLX4_CORE_GEN2 is not set @@ -6285,6 +6285,8 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m CONFIG_SPEAKUP_SYNTH_TXPRT=m +# CONFIG_SPECTRE_BHI_OFF is not set +CONFIG_SPECTRE_BHI_ON=y # CONFIG_SPI_ALTERA_CORE is not set # CONFIG_SPI_ALTERA is not set CONFIG_SPI_AMD=y diff --git a/kernel-s390x-debug-rhel.config b/kernel-s390x-debug-rhel.config index 833eca3a0..10dc7e858 100644 --- a/kernel-s390x-debug-rhel.config +++ b/kernel-s390x-debug-rhel.config @@ -2536,7 +2536,6 @@ CONFIG_INTEL_IDXD=m # CONFIG_INTEL_INT0002_VGPIO is not set # CONFIG_INTEL_IOMMU_DEBUGFS is not set CONFIG_INTEL_IOMMU_PERF_EVENTS=y -# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set # CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER is not set # CONFIG_INTEL_ISHTP_ECLITE is not set # CONFIG_INTEL_LDMA is not set @@ -3420,6 +3419,7 @@ CONFIG_MITIGATION_RETHUNK=y CONFIG_MITIGATION_RETPOLINE=y CONFIG_MITIGATION_RFDS=y # CONFIG_MITIGATION_SLS is not set +CONFIG_MITIGATION_SPECTRE_BHI=y CONFIG_MITIGATION_SRSO=y CONFIG_MITIGATION_UNRET_ENTRY=y # CONFIG_MLX4_CORE_GEN2 is not set @@ -6278,6 +6278,8 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m CONFIG_SPEAKUP_SYNTH_TXPRT=m +# CONFIG_SPECTRE_BHI_OFF is not set +CONFIG_SPECTRE_BHI_ON=y # CONFIG_SPI_ALTERA_CORE is not set # CONFIG_SPI_ALTERA is not set CONFIG_SPI_AMD=y diff --git a/kernel-s390x-rhel.config b/kernel-s390x-rhel.config index df5ac0827..ef48581ea 100644 --- a/kernel-s390x-rhel.config +++ b/kernel-s390x-rhel.config @@ -2520,7 +2520,6 @@ CONFIG_INTEL_IDXD=m # CONFIG_INTEL_INT0002_VGPIO is not set # CONFIG_INTEL_IOMMU_DEBUGFS is not set CONFIG_INTEL_IOMMU_PERF_EVENTS=y -# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set # CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER is not set # CONFIG_INTEL_ISHTP_ECLITE is not set # CONFIG_INTEL_LDMA is not set @@ -3400,6 +3399,7 @@ CONFIG_MITIGATION_RETHUNK=y CONFIG_MITIGATION_RETPOLINE=y CONFIG_MITIGATION_RFDS=y # CONFIG_MITIGATION_SLS is not set +CONFIG_MITIGATION_SPECTRE_BHI=y CONFIG_MITIGATION_SRSO=y CONFIG_MITIGATION_UNRET_ENTRY=y # CONFIG_MLX4_CORE_GEN2 is not set @@ -6255,6 +6255,8 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m CONFIG_SPEAKUP_SYNTH_TXPRT=m +# CONFIG_SPECTRE_BHI_OFF is not set +CONFIG_SPECTRE_BHI_ON=y # CONFIG_SPI_ALTERA_CORE is not set # CONFIG_SPI_ALTERA is not set CONFIG_SPI_AMD=y diff --git a/kernel-s390x-zfcpdump-rhel.config b/kernel-s390x-zfcpdump-rhel.config index e943d0ea9..869a55c61 100644 --- a/kernel-s390x-zfcpdump-rhel.config +++ b/kernel-s390x-zfcpdump-rhel.config @@ -2528,7 +2528,6 @@ CONFIG_INTEL_IDXD=m # CONFIG_INTEL_INT0002_VGPIO is not set # CONFIG_INTEL_IOMMU_DEBUGFS is not set CONFIG_INTEL_IOMMU_PERF_EVENTS=y -# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set # CONFIG_INTEL_ISH_FIRMWARE_DOWNLOADER is not set # CONFIG_INTEL_ISHTP_ECLITE is not set # CONFIG_INTEL_LDMA is not set @@ -3410,6 +3409,7 @@ CONFIG_MITIGATION_RETHUNK=y CONFIG_MITIGATION_RETPOLINE=y CONFIG_MITIGATION_RFDS=y # CONFIG_MITIGATION_SLS is not set +CONFIG_MITIGATION_SPECTRE_BHI=y CONFIG_MITIGATION_SRSO=y CONFIG_MITIGATION_UNRET_ENTRY=y # CONFIG_MLX4_CORE_GEN2 is not set @@ -6272,6 +6272,8 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m CONFIG_SPEAKUP_SYNTH_TXPRT=m +# CONFIG_SPECTRE_BHI_OFF is not set +CONFIG_SPECTRE_BHI_ON=y # CONFIG_SPI_ALTERA_CORE is not set # CONFIG_SPI_ALTERA is not set CONFIG_SPI_AMD=y diff --git a/kernel-x86_64-debug-rhel.config b/kernel-x86_64-debug-rhel.config index 582501aca..11dcddad7 100644 --- a/kernel-x86_64-debug-rhel.config +++ b/kernel-x86_64-debug-rhel.config @@ -2725,7 +2725,7 @@ CONFIG_INTEL_IOMMU_DEBUGFS=y # CONFIG_INTEL_IOMMU_DEFAULT_ON is not set CONFIG_INTEL_IOMMU_FLOPPY_WA=y CONFIG_INTEL_IOMMU_PERF_EVENTS=y -# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set +CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON=y CONFIG_INTEL_IOMMU_SVM=y CONFIG_INTEL_IOMMU=y CONFIG_INTEL_IPS=m @@ -3644,6 +3644,7 @@ CONFIG_MITIGATION_RETHUNK=y CONFIG_MITIGATION_RETPOLINE=y CONFIG_MITIGATION_RFDS=y # CONFIG_MITIGATION_SLS is not set +CONFIG_MITIGATION_SPECTRE_BHI=y CONFIG_MITIGATION_SRSO=y CONFIG_MITIGATION_UNRET_ENTRY=y # CONFIG_MK8 is not set @@ -6568,6 +6569,8 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m CONFIG_SPEAKUP_SYNTH_TXPRT=m +# CONFIG_SPECTRE_BHI_OFF is not set +CONFIG_SPECTRE_BHI_ON=y CONFIG_SPECULATION_MITIGATIONS=y # CONFIG_SPI_ALTERA_CORE is not set # CONFIG_SPI_ALTERA is not set diff --git a/kernel-x86_64-rhel.config b/kernel-x86_64-rhel.config index fd766698b..46f7e4fbe 100644 --- a/kernel-x86_64-rhel.config +++ b/kernel-x86_64-rhel.config @@ -2709,7 +2709,7 @@ CONFIG_INTEL_IOATDMA=m # CONFIG_INTEL_IOMMU_DEFAULT_ON is not set CONFIG_INTEL_IOMMU_FLOPPY_WA=y CONFIG_INTEL_IOMMU_PERF_EVENTS=y -# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set +CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON=y CONFIG_INTEL_IOMMU_SVM=y CONFIG_INTEL_IOMMU=y CONFIG_INTEL_IPS=m @@ -3624,6 +3624,7 @@ CONFIG_MITIGATION_RETHUNK=y CONFIG_MITIGATION_RETPOLINE=y CONFIG_MITIGATION_RFDS=y # CONFIG_MITIGATION_SLS is not set +CONFIG_MITIGATION_SPECTRE_BHI=y CONFIG_MITIGATION_SRSO=y CONFIG_MITIGATION_UNRET_ENTRY=y # CONFIG_MK8 is not set @@ -6544,6 +6545,8 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m CONFIG_SPEAKUP_SYNTH_TXPRT=m +# CONFIG_SPECTRE_BHI_OFF is not set +CONFIG_SPECTRE_BHI_ON=y CONFIG_SPECULATION_MITIGATIONS=y # CONFIG_SPI_ALTERA_CORE is not set # CONFIG_SPI_ALTERA is not set diff --git a/kernel-x86_64-rt-debug-rhel.config b/kernel-x86_64-rt-debug-rhel.config index b68dadec9..b3bbda362 100644 --- a/kernel-x86_64-rt-debug-rhel.config +++ b/kernel-x86_64-rt-debug-rhel.config @@ -2765,7 +2765,7 @@ CONFIG_INTEL_IOMMU_DEBUGFS=y # CONFIG_INTEL_IOMMU_DEFAULT_ON is not set CONFIG_INTEL_IOMMU_FLOPPY_WA=y CONFIG_INTEL_IOMMU_PERF_EVENTS=y -# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set +CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON=y CONFIG_INTEL_IOMMU_SVM=y CONFIG_INTEL_IOMMU=y CONFIG_INTEL_IPS=m @@ -3689,6 +3689,7 @@ CONFIG_MITIGATION_RETHUNK=y CONFIG_MITIGATION_RETPOLINE=y CONFIG_MITIGATION_RFDS=y # CONFIG_MITIGATION_SLS is not set +CONFIG_MITIGATION_SPECTRE_BHI=y CONFIG_MITIGATION_SRSO=y CONFIG_MITIGATION_UNRET_ENTRY=y # CONFIG_MK8 is not set @@ -6620,6 +6621,8 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m CONFIG_SPEAKUP_SYNTH_TXPRT=m +# CONFIG_SPECTRE_BHI_OFF is not set +CONFIG_SPECTRE_BHI_ON=y CONFIG_SPECULATION_MITIGATIONS=y # CONFIG_SPI_ALTERA_CORE is not set # CONFIG_SPI_ALTERA is not set diff --git a/kernel-x86_64-rt-rhel.config b/kernel-x86_64-rt-rhel.config index 56e473de3..edc8ff294 100644 --- a/kernel-x86_64-rt-rhel.config +++ b/kernel-x86_64-rt-rhel.config @@ -2749,7 +2749,7 @@ CONFIG_INTEL_IOATDMA=m # CONFIG_INTEL_IOMMU_DEFAULT_ON is not set CONFIG_INTEL_IOMMU_FLOPPY_WA=y CONFIG_INTEL_IOMMU_PERF_EVENTS=y -# CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON is not set +CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON=y CONFIG_INTEL_IOMMU_SVM=y CONFIG_INTEL_IOMMU=y CONFIG_INTEL_IPS=m @@ -3669,6 +3669,7 @@ CONFIG_MITIGATION_RETHUNK=y CONFIG_MITIGATION_RETPOLINE=y CONFIG_MITIGATION_RFDS=y # CONFIG_MITIGATION_SLS is not set +CONFIG_MITIGATION_SPECTRE_BHI=y CONFIG_MITIGATION_SRSO=y CONFIG_MITIGATION_UNRET_ENTRY=y # CONFIG_MK8 is not set @@ -6596,6 +6597,8 @@ CONFIG_SPEAKUP_SYNTH_LTLK=m CONFIG_SPEAKUP_SYNTH_SOFT=m CONFIG_SPEAKUP_SYNTH_SPKOUT=m CONFIG_SPEAKUP_SYNTH_TXPRT=m +# CONFIG_SPECTRE_BHI_OFF is not set +CONFIG_SPECTRE_BHI_ON=y CONFIG_SPECULATION_MITIGATIONS=y # CONFIG_SPI_ALTERA_CORE is not set # CONFIG_SPI_ALTERA is not set diff --git a/kernel.changelog b/kernel.changelog index 9f62b2a22..1befe1cfb 100644 --- a/kernel.changelog +++ b/kernel.changelog @@ -1,3 +1,68 @@ +* Sun Apr 21 2024 Fedora Kernel Team [6.9.0-0.rc4.977b1ef51866.43] +- Linux v6.9.0-0.rc4.977b1ef51866 +Resolves: + +* Sat Apr 20 2024 Fedora Kernel Team [6.9.0-0.rc4.13a2e429f644.42] +- Linux v6.9.0-0.rc4.13a2e429f644 +Resolves: + +* Fri Apr 19 2024 Fedora Kernel Team [6.9.0-0.rc4.2668e3ae2ef3.41] +- gitlab-ci: harmonize DataWarehouse tree names (Michael Hofmann) +- redhat/configs: Enable CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON for rhel (Jerry Snitselaar) +- spec: make sure posttrans script doesn't fail if /boot is non-POSIX (glb) +- Linux v6.9.0-0.rc4.2668e3ae2ef3 +Resolves: + +* Thu Apr 18 2024 Fedora Kernel Team [6.9.0-0.rc4.8cd26fd90c1a.40] +- Turn on UBSAN for Fedora (Justin M. Forbes) +- Linux v6.9.0-0.rc4.8cd26fd90c1a +Resolves: + +* Wed Apr 17 2024 Fedora Kernel Team [6.9.0-0.rc4.96fca68c4fbf.39] +- Turn on XEN_BALLOON_MEMORY_HOTPLUG for Fedora (Justin M. Forbes) +Resolves: + +* Tue Apr 16 2024 Fedora Kernel Team [6.9.0-0.rc4.96fca68c4fbf.38] +- Linux v6.9.0-0.rc4.96fca68c4fbf +Resolves: + +* Mon Apr 15 2024 Fedora Kernel Team [6.9.0-0.rc4.37] +- Linux v6.9.0-0.rc4 +Resolves: + +* Sun Apr 14 2024 Fedora Kernel Team [6.9.0-0.rc3.7efd0a74039f.36] +- Linux v6.9.0-0.rc3.7efd0a74039f +Resolves: + +* Sat Apr 13 2024 Fedora Kernel Team [6.9.0-0.rc3.8f2c057754b2.35] +- docs: point out that python3-pyyaml is now required (Thorsten Leemhuis) +- Linux v6.9.0-0.rc3.8f2c057754b2 +Resolves: + +* Fri Apr 12 2024 Fedora Kernel Team [6.9.0-0.rc3.586b5dfb51b9.34] +- Use LLVM=1 for clang_lto build (Nikita Popov) +- redhat: fix def_variants.yaml check (Jan Stancek) +- Linux v6.9.0-0.rc3.586b5dfb51b9 +Resolves: + +* Thu Apr 11 2024 Fedora Kernel Team [6.9.0-0.rc3.e8c39d0f57f3.33] +- redhat: sanity check yaml files (Jan Stancek) +- spec: rework filter-mods and mod-denylist (Jan Stancek) +- Linux v6.9.0-0.rc3.e8c39d0f57f3 +Resolves: + +* Wed Apr 10 2024 Fedora Kernel Team [6.9.0-0.rc3.2c71fdf02a95.32] +- Linux v6.9.0-0.rc3.2c71fdf02a95 +Resolves: + +* Tue Apr 09 2024 Fedora Kernel Team [6.9.0-0.rc3.20cb38a7af88.31] +- Linux v6.9.0-0.rc3.20cb38a7af88 +Resolves: + +* Mon Apr 08 2024 Fedora Kernel Team [6.9.0-0.rc3.30] +- Linux v6.9.0-0.rc3 +Resolves: + * Sun Apr 07 2024 Fedora Kernel Team [6.9.0-0.rc2.f2f80ac80987.29] - Linux v6.9.0-0.rc2.f2f80ac80987 Resolves: @@ -2411,6 +2476,1298 @@ Resolves: - Linux v6.9.0-0.rc0.855684c7d938 Resolves: rhbz#1471185, rhbz#1495307, rhbz#1509329, rhbz#1518076, rhbz#1518874, rhbz#1519554, rhbz#1546831, rhbz#1559877, rhbz#1561171, rhbz#1563590, rhbz#1565704, rhbz#1565717, rhbz#1572321, rhbz#1574502, rhbz#1590829, rhbz#1595918, rhbz#1598366, rhbz#1602033, rhbz#1609604, rhbz#1610493, rhbz#1613522, rhbz#1638087, rhbz#1652256, rhbz#1652266, rhbz#1663728, rhbz#1670017, rhbz#1722136, rhbz#1730649, rhbz#1802694, rhbz#1810301, rhbz#1821565, rhbz#1831065, rhbz#1855161, rhbz#1856174, rhbz#1856176, rhbz#1858592, rhbz#1858594, rhbz#1858596, rhbz#1858599, rhbz#1869674, rhbz#1871130, rhbz#1876435, rhbz#1876436, rhbz#1876977, rhbz#1877192, rhbz#1880486, rhbz#1890304, rhbz#1903201, rhbz#1915073, rhbz#1915290, rhbz#1930649, rhbz#1939095, rhbz#1940075, rhbz#1940794, rhbz#1943423, rhbz#1945002, rhbz#1945179, rhbz#1945477, rhbz#1947240, rhbz#1948340, rhbz#1952426, rhbz#1952863, rhbz#1953486, rhbz#1956988, rhbz#1957210, rhbz#1957219, rhbz#1957305, rhbz#1957636, rhbz#1957819, rhbz#1961178, rhbz#1962936, rhbz#1964537, rhbz#1967640, rhbz#1972795, rhbz#1976270, rhbz#1976835, rhbz#1976877, rhbz#1976884, rhbz#1977056, rhbz#1977529, rhbz#1978539, rhbz#1979379, rhbz#1981406, rhbz#1983298, rhbz#1986223, rhbz#1988254, rhbz#1988384, rhbz#1990040, rhbz#1993393, rhbz#1994858, rhbz#1998953, rhbz#2000835, rhbz#2002344, rhbz#2004233, rhbz#2004821, rhbz#2006813, rhbz#2007430, rhbz#2012226, rhbz#2014492, rhbz#2019377, rhbz#2020132, rhbz#2022578, rhbz#2023782, rhbz#2024595, rhbz#2025985, rhbz#2026319, rhbz#2027506, rhbz#2031547, rhbz#2032758, rhbz#2034670, rhbz#2038999, rhbz#2040643, rhbz#2041184, rhbz#2041186, rhbz#2041365, rhbz#2041990, rhbz#2042240, rhbz#2042241, rhbz#2043141, rhbz#2044155, rhbz#2053836, rhbz#2054579, rhbz#2062054, rhbz#2062909, rhbz#2071969, rhbz#2089765, rhbz#2115876, rhbz#2120968, rhbz#2122595, rhbz#2140017, rhbz#2142658, rhbz#2149273, rhbz#2153073, rhbz#2166911, rhbz#2188441, rhbz#2208834, rhbz#2216678, rhbz#2227793, rhbz#2231407, rhbz#2233269 +* Thu Apr 18 2024 Jan Stancek [6.9.0-0.rc4.3.el10] +- btrfs: do not wait for short bulk allocation (Qu Wenruo) +- btrfs: zoned: add ASSERT and WARN for EXTENT_BUFFER_ZONED_ZEROOUT handling (Naohiro Aota) +- btrfs: zoned: do not flag ZEROOUT on non-dirty extent buffer (Naohiro Aota) +- dt-bindings: pwm: mediatek,pwm-disp: Document power-domains property (AngeloGioacchino Del Regno) +- pwm: dwc: allow suspend/resume for 16 channels (Raag Jadav) +- Turn on UBSAN for Fedora (Justin M. Forbes) +- Turn on XEN_BALLOON_MEMORY_HOTPLUG for Fedora (Justin M. Forbes) +- NFSD: fix endianness issue in nfsd4_encode_fattr4 (Vasily Gorbik) +- SUNRPC: Fix rpcgss_context trace event acceptor field (Steven Rostedt (Google)) +- bcachefs: set_btree_iter_dontneed also clears should_be_locked (Kent Overstreet) +- bcachefs: fix error path of __bch2_read_super() (Chao Yu) +- bcachefs: Check for backpointer bucket_offset >= bucket size (Kent Overstreet) +- bcachefs: bch_member.btree_allocated_bitmap (Kent Overstreet) +- bcachefs: sysfs internal/trigger_journal_flush (Kent Overstreet) +- bcachefs: Fix bch2_btree_node_fill() for !path (Kent Overstreet) +- bcachefs: add safety checks in bch2_btree_node_fill() (Kent Overstreet) +- bcachefs: Interior known are required to have known key types (Kent Overstreet) +- bcachefs: add missing bounds check in __bch2_bkey_val_invalid() (Kent Overstreet) +- bcachefs: Fix btree node merging on write buffer btrees (Kent Overstreet) +- bcachefs: Disable merges from interior update path (Kent Overstreet) +- bcachefs: Run merges at BCH_WATERMARK_btree (Kent Overstreet) +- bcachefs: Fix missing write refs in fs fio paths (Kent Overstreet) +- bcachefs: Fix deadlock in journal replay (Kent Overstreet) +- bcachefs: Go rw if running any explicit recovery passes (Kent Overstreet) +- bcachefs: Standardize helpers for printing enum strs with bounds checks (Kent Overstreet) +- bcachefs: don't queue btree nodes for rewrites during scan (Kent Overstreet) +- bcachefs: fix race in bch2_btree_node_evict() (Kent Overstreet) +- bcachefs: fix unsafety in bch2_stripe_to_text() (Kent Overstreet) +- bcachefs: fix unsafety in bch2_extent_ptr_to_text() (Kent Overstreet) +- bcachefs: btree node scan: handle encrypted nodes (Kent Overstreet) +- bcachefs: Check for packed bkeys that are too big (Kent Overstreet) +- bcachefs: Fix UAFs of btree_insert_entry array (Kent Overstreet) +- bcachefs: Don't use bch2_btree_node_lock_write_nofail() in btree split path (Kent Overstreet) +- selftests/harness: Prevent infinite loop due to Assert in FIXTURE_TEARDOWN (Shengyu Li) +- selftests/ftrace: Limit length in subsystem-enable tests (Yuanhe Shu) +- Linux 6.9-rc4 (Linus Torvalds) +- kernfs: annotate different lockdep class for of->mutex of writable files (Amir Goldstein) +- x86/cpu/amd: Move TOPOEXT enablement into the topology parser (Thomas Gleixner) +- x86/cpu/amd: Make the NODEID_MSR union actually work (Thomas Gleixner) +- x86/cpu/amd: Make the CPUID 0x80000008 parser correct (Thomas Gleixner) +- x86/bugs: Replace CONFIG_SPECTRE_BHI_{ON,OFF} with CONFIG_MITIGATION_SPECTRE_BHI (Josh Poimboeuf) +- x86/bugs: Remove CONFIG_BHI_MITIGATION_AUTO and spectre_bhi=auto (Josh Poimboeuf) +- x86/bugs: Clarify that syscall hardening isn't a BHI mitigation (Josh Poimboeuf) +- x86/bugs: Fix BHI handling of RRSBA (Josh Poimboeuf) +- x86/bugs: Rename various 'ia32_cap' variables to 'x86_arch_cap_msr' (Ingo Molnar) +- x86/bugs: Cache the value of MSR_IA32_ARCH_CAPABILITIES (Josh Poimboeuf) +- x86/bugs: Fix BHI documentation (Josh Poimboeuf) +- x86/cpu: Actually turn off mitigations by default for SPECULATION_MITIGATIONS=n (Sean Christopherson) +- x86/topology: Don't update cpu_possible_map in topo_set_cpuids() (Thomas Gleixner) +- x86/bugs: Fix return type of spectre_bhi_state() (Daniel Sneddon) +- x86/apic: Force native_apic_mem_read() to use the MOV instruction (Adam Dunlap) +- selftests: kselftest: Fix build failure with NOLIBC (Oleg Nesterov) +- selftests: timers: Fix abs() warning in posix_timers test (John Stultz) +- selftests: kselftest: Mark functions that unconditionally call exit() as __noreturn (Nathan Chancellor) +- selftests: timers: Fix posix_timers ksft_print_msg() warning (John Stultz) +- selftests: timers: Fix valid-adjtimex signed left-shift undefined behavior (John Stultz) +- bug: Fix no-return-statement warning with !CONFIG_BUG (Adrian Hunter) +- timekeeping: Use READ/WRITE_ONCE() for tick_do_timer_cpu (Thomas Gleixner) +- selftests/timers/posix_timers: Reimplement check_timer_distribution() (Oleg Nesterov) +- irqflags: Explicitly ignore lockdep_hrtimer_exit() argument (Arnd Bergmann) +- perf/x86: Fix out of range data (Namhyung Kim) +- locking: Make rwsem_assert_held_write_nolockdep() build with PREEMPT_RT=y (Sebastian Andrzej Siewior) +- irqchip/gic-v3-its: Fix VSYNC referencing an unmapped VPE on GIC v4.1 (Nianyao Tang) +- vhost: correct misleading printing information (Xianting Tian) +- vhost-vdpa: change ioctl # for VDPA_GET_VRING_SIZE (Michael S. Tsirkin) +- virtio: store owner from modules with register_virtio_driver() (Krzysztof Kozlowski) +- vhost: Add smp_rmb() in vhost_enable_notify() (Gavin Shan) +- vhost: Add smp_rmb() in vhost_vq_avail_empty() (Gavin Shan) +- swiotlb: do not set total_used to 0 in swiotlb_create_debugfs_files() (Dexuan Cui) +- swiotlb: fix swiotlb_bounce() to do partial sync's correctly (Michael Kelley) +- swiotlb: extend buffer pre-padding to alloc_align_mask if necessary (Petr Tesarik) +- Linux v6.9.0-0.rc4 +Resolves: + +* Mon Apr 15 2024 Jan Stancek [6.9.0-0.rc3.2.el10] +- ata: libata-core: Allow command duration limits detection for ACS-4 drives (Igor Pylypiv) +- ata: libata-scsi: Fix ata_scsi_dev_rescan() error path (Damien Le Moal) +- ata: ahci: Add mask_port_map module parameter (Damien Le Moal) +- zonefs: Use str_plural() to fix Coccinelle warning (Thorsten Blum) +- smb3: fix broken reconnect when password changing on the server by allowing password rotation (Steve French) +- smb: client: instantiate when creating SFU files (Paulo Alcantara) +- smb3: fix Open files on server counter going negative (Steve French) +- smb: client: fix NULL ptr deref in cifs_mark_open_handles_for_deleted_file() (Paulo Alcantara) +- arm64: tlb: Fix TLBI RANGE operand (Gavin Shan) +- MAINTAINERS: Change Krzysztof Kozlowski's email address (Krzysztof Kozlowski) +- cache: sifive_ccache: Partially convert to a platform driver (Samuel Holland) +- firmware: arm_ffa: Fix the partition ID check in ffa_notification_info_get() (Jens Wiklander) +- firmware: arm_scmi: Make raw debugfs entries non-seekable (Cristian Marussi) +- firmware: arm_scmi: Fix wrong fastchannel initialization (Pierre Gondois) +- arm64: dts: imx8qm-ss-dma: fix can lpcg indices (Frank Li) +- arm64: dts: imx8-ss-dma: fix can lpcg indices (Frank Li) +- arm64: dts: imx8-ss-dma: fix adc lpcg indices (Frank Li) +- arm64: dts: imx8-ss-dma: fix pwm lpcg indices (Frank Li) +- arm64: dts: imx8-ss-dma: fix spi lpcg indices (Frank Li) +- arm64: dts: imx8-ss-conn: fix usb lpcg indices (Frank Li) +- arm64: dts: imx8-ss-lsio: fix pwm lpcg indices (Frank Li) +- ARM: dts: imx7s-warp: Pass OV2680 link-frequencies (Fabio Estevam) +- ARM: dts: imx7-mba7: Use 'no-mmc' property (Fabio Estevam) +- arm64: dts: imx8-ss-conn: fix usdhc wrong lpcg clock order (Frank Li) +- arm64: dts: freescale: imx8mp-venice-gw73xx-2x: fix USB vbus regulator (Tim Harvey) +- arm64: dts: freescale: imx8mp-venice-gw72xx-2x: fix USB vbus regulator (Tim Harvey) +- ARM: OMAP2+: fix USB regression on Nokia N8x0 (Aaro Koskinen) +- mmc: omap: restore original power up/down steps (Aaro Koskinen) +- mmc: omap: fix deferred probe (Aaro Koskinen) +- mmc: omap: fix broken slot switch lookup (Aaro Koskinen) +- ARM: OMAP2+: fix N810 MMC gpiod table (Aaro Koskinen) +- ARM: OMAP2+: fix bogus MMC GPIO labels on Nokia N8x0 (Aaro Koskinen) +- iommu/amd: Change log message severity (Vasant Hegde) +- iommu/vt-d: Fix WARN_ON in iommu probe path (Lu Baolu) +- iommu/vt-d: Allocate local memory for page request queue (Jacob Pan) +- iommu/vt-d: Fix wrong use of pasid config (Xuchun Shang) +- iommu: mtk: fix module autoloading (Krzysztof Kozlowski) +- iommu/amd: Do not enable SNP when V2 page table is enabled (Vasant Hegde) +- iommu/amd: Fix possible irq lock inversion dependency issue (Vasant Hegde) +- Revert "PCI: Mark LSI FW643 to avoid bus reset" (Bjorn Helgaas) +- MAINTAINERS: Drop Gustavo Pimentel as PCI DWC Maintainer (Manivannan Sadhasivam) +- block: fix that blk_time_get_ns() doesn't update time after schedule (Yu Kuai) +- raid1: fix use-after-free for original bio in raid1_write_request() (Yu Kuai) +- block: allow device to have both virt_boundary_mask and max segment size (Ming Lei) +- block: fix q->blkg_list corruption during disk rebind (Ming Lei) +- blk-iocost: avoid out of bounds shift (Rik van Riel) +- io-uring: correct typo in comment for IOU_F_TWQ_LAZY_WAKE (Haiyue Wang) +- io_uring/net: restore msg_control on sendzc retry (Pavel Begunkov) +- io_uring: Fix io_cqring_wait() not restoring sigmask on get_timespec64() failure (Alexey Izbyshev) +- MAINTAINERS: remove myself as a Reviewer for Ceph (Jeff Layton) +- ceph: switch to use cap_delay_lock for the unlink delay list (Xiubo Li) +- ceph: redirty page before returning AOP_WRITEPAGE_ACTIVATE (NeilBrown) +- Kconfig: add some hidden tabs on purpose (Linus Torvalds) +- ring-buffer: Only update pages_touched when a new page is touched (Steven Rostedt (Google)) +- tracing: hide unused ftrace_event_id_fops (Arnd Bergmann) +- tracing: Fix FTRACE_RECORD_RECURSION_SIZE Kconfig entry (Prasad Pandit) +- eventfs: Fix kernel-doc comments to functions (Yang Li) +- MIPS: scall: Save thread_info.syscall unconditionally on entry (Jiaxun Yang) +- amdkfd: use calloc instead of kzalloc to avoid integer overflow (Dave Airlie) +- drm/msm/adreno: Set highest_bank_bit for A619 (Luca Weiss) +- drm/msm: fix the `CRASHDUMP_READ` target of `a6xx_get_shader_block()` (Miguel Ojeda) +- dt-bindings: display/msm: sm8150-mdss: add DP node (Dmitry Baryshkov) +- drm/msm/dp: fix typo in dp_display_handle_port_status_changed() (Abhinav Kumar) +- drm/msm/dpu: make error messages at dpu_core_irq_register_callback() more sensible (Dmitry Baryshkov) +- drm/msm/dp: assign correct DP controller ID to x1e80100 interface table (Kuogee Hsieh) +- drm/msm/dpu: don't allow overriding data from catalog (Dmitry Baryshkov) +- drm/msm: Add newlines to some debug prints (Stephen Boyd) +- drm/msm/dp: fix runtime PM leak on connect failure (Johan Hovold) +- drm/msm/dp: fix runtime PM leak on disconnect (Johan Hovold) +- drm/xe: Label RING_CONTEXT_CONTROL as masked (Ashutosh Dixit) +- drm/xe/xe_migrate: Cast to output precision before multiplying operands (Himal Prasad Ghimiray) +- drm/xe/hwmon: Cast result to output precision on left shift of operand (Karthik Poosa) +- drm/xe/display: Fix double mutex initialization (Lucas De Marchi) +- drm/vmwgfx: Enable DMA mappings with SEV (Zack Rusin) +- drm/client: Fully protect modes[] with dev->mode_config.mutex (Ville Syrjälä) +- gpu: host1x: Do not setup DMA for virtual devices (Thierry Reding) +- accel/ivpu: Fix deadlock in context_xa (Jacek Lawrynowicz) +- accel/ivpu: Fix missed error message after VPU rename (Jacek Lawrynowicz) +- accel/ivpu: Return max freq for DRM_IVPU_PARAM_CORE_CLOCK_RATE (Jacek Lawrynowicz) +- accel/ivpu: Improve clarity of MMU error messages (Wachowski, Karol) +- accel/ivpu: Put NPU back to D3hot after failed resume (Jacek Lawrynowicz) +- accel/ivpu: Fix PCI D0 state entry in resume (Wachowski, Karol) +- accel/ivpu: Remove d3hot_after_power_off WA (Jacek Lawrynowicz) +- accel/ivpu: Check return code of ipc->lock init (Wachowski, Karol) +- nouveau: fix function cast warning (Arnd Bergmann) +- nouveau/gsp: Avoid addressing beyond end of rpc->entries (Kees Cook) +- Revert "drm/qxl: simplify qxl_fence_wait" (Alex Constantino) +- drm/ast: Fix soft lockup (Jammy Huang) +- drm/panfrost: Fix the error path in panfrost_mmu_map_fault_addr() (Boris Brezillon) +- drm/amdgpu: differentiate external rev id for gfx 11.5.0 (Yifan Zhang) +- drm/amd/display: Adjust dprefclk by down spread percentage. (Zhongwei) +- drm/amd/display: Set VSC SDP Colorimetry same way for MST and SST (Harry Wentland) +- drm/amd/display: Program VSC SDP colorimetry for all DP sinks >= 1.4 (Harry Wentland) +- drm/amd/display: fix disable otg wa logic in DCN316 (Fudongwang) +- drm/amd/display: Do not recursively call manual trigger programming (Dillon Varone) +- drm/amd/display: always reset ODM mode in context when adding first plane (Wenjing Liu) +- drm/amdgpu: fix incorrect number of active RBs for gfx11 (Tim Huang) +- drm/amd/display: Return max resolution supported by DWB (Alex Hung) +- amd/amdkfd: sync all devices to wait all processes being evicted (Zhigang Luo) +- drm/amdgpu: clear set_q_mode_offs when VM changed (ZhenGuo Yin) +- drm/amdgpu: Fix VCN allocation in CPX partition (Lijo Lazar) +- drm/amd/pm: fix the high voltage issue after unload (Kenneth Feng) +- drm/amd/display: Skip on writeback when it's not applicable (Alex Hung) +- drm/amdgpu: implement IRQ_STATE_ENABLE for SDMA v4.4.2 (Tao Zhou) +- drm/amdgpu: add smu 14.0.1 discovery support (Yifan Zhang) +- drm/amd/swsmu: Update smu v14.0.0 headers to be 14.0.1 compatible (lima1002) +- drm/amdgpu : Increase the mes log buffer size as per new MES FW version (shaoyunl) +- drm/amdgpu : Add mes_log_enable to control mes log feature (shaoyunl) +- drm/amd/pm: fixes a random hang in S4 for SMU v13.0.4/11 (Tim Huang) +- drm/amd/display: add DCN 351 version for microcode load (Li Ma) +- drm/amdgpu: Reset dGPU if suspend got aborted (Lijo Lazar) +- drm/amdgpu/umsch: reinitialize write pointer in hw init (Lang Yu) +- drm/amdgpu: Refine IB schedule error logging (Lijo Lazar) +- drm/amdgpu: always force full reset for SOC21 (Alex Deucher) +- drm/amdkfd: Reset GPU on queue preemption failure (Harish Kasiviswanathan) +- drm/i915/vrr: Disable VRR when using bigjoiner (Ville Syrjälä) +- drm/i915: Disable live M/N updates when using bigjoiner (Ville Syrjälä) +- drm/i915: Disable port sync when bigjoiner is used (Ville Syrjälä) +- drm/i915/psr: Disable PSR when bigjoiner is used (Ville Syrjälä) +- drm/i915/guc: Fix the fix for reset lock confusion (John Harrison) +- drm/i915/hdcp: Fix get remote hdcp capability function (Suraj Kandpal) +- drm/i915/cdclk: Fix voltage_level programming edge case (Ville Syrjälä) +- drm/i915/cdclk: Fix CDCLK programming order when pipes are active (Ville Syrjälä) +- docs: point out that python3-pyyaml is now required (Thorsten Leemhuis) +- cxl: Add checks to access_coordinate calculation to fail missing data (Dave Jiang) +- cxl: Consolidate dport access_coordinate ->hb_coord and ->sw_coord into ->coord (Dave Jiang) +- cxl: Fix incorrect region perf data calculation (Dave Jiang) +- cxl: Fix retrieving of access_coordinates in PCIe path (Dave Jiang) +- cxl: Remove checking of iter in cxl_endpoint_get_perf_coordinates() (Dave Jiang) +- cxl/core: Fix initialization of mbox_cmd.size_out in get event (Kwangjin Ko) +- cxl/core/regs: Fix usage of map->reg_type in cxl_decode_regblock() before assigned (Dave Jiang) +- cxl/mem: Fix for the index of Clear Event Record Handle (Yuquan Wang) +- Drivers: hv: vmbus: Don't free ring buffers that couldn't be re-encrypted (Michael Kelley) +- uio_hv_generic: Don't free decrypted memory (Rick Edgecombe) +- hv_netvsc: Don't free decrypted memory (Rick Edgecombe) +- Drivers: hv: vmbus: Track decrypted status in vmbus_gpadl (Rick Edgecombe) +- Drivers: hv: vmbus: Leak pages if set_memory_encrypted() fails (Rick Edgecombe) +- hv/hv_kvp_daemon: Handle IPv4 and Ipv6 combination for keyfile format (Shradha Gupta) +- hv: vmbus: Convert sprintf() family to sysfs_emit() family (Li Zhijian) +- mshyperv: Introduce hv_numa_node_to_pxm_info() (Nuno Das Neves) +- x86/hyperv: Cosmetic changes for hv_apic.c (Erni Sri Satya Vennela) +- ACPI: bus: allow _UID matching for integer zero (Raag Jadav) +- ACPI: scan: Do not increase dep_unmet for already met dependencies (Hans de Goede) +- PM: s2idle: Make sure CPUs will wakeup directly on resume (Anna-Maria Behnsen) +- net: ena: Set tx_info->xdpf value to NULL (David Arinzon) +- net: ena: Fix incorrect descriptor free behavior (David Arinzon) +- net: ena: Wrong missing IO completions check order (David Arinzon) +- net: ena: Fix potential sign extension issue (David Arinzon) +- Bluetooth: l2cap: Don't double set the HCI_CONN_MGMT_CONNECTED bit (Archie Pusaka) +- Bluetooth: hci_sock: Fix not validating setsockopt user input (Luiz Augusto von Dentz) +- Bluetooth: ISO: Fix not validating setsockopt user input (Luiz Augusto von Dentz) +- Bluetooth: L2CAP: Fix not validating setsockopt user input (Luiz Augusto von Dentz) +- Bluetooth: RFCOMM: Fix not validating setsockopt user input (Luiz Augusto von Dentz) +- Bluetooth: SCO: Fix not validating setsockopt user input (Luiz Augusto von Dentz) +- Bluetooth: Fix memory leak in hci_req_sync_complete() (Dmitry Antipov) +- Bluetooth: hci_sync: Fix using the same interval and window for Coded PHY (Luiz Augusto von Dentz) +- Bluetooth: ISO: Don't reject BT_ISO_QOS if parameters are unset (Luiz Augusto von Dentz) +- af_unix: Fix garbage collector racing against connect() (Michal Luczaj) +- net: dsa: mt7530: trap link-local frames regardless of ST Port State (Arınç ÜNAL) +- Revert "s390/ism: fix receive message buffer allocation" (Gerd Bayer) +- net: sparx5: fix wrong config being used when reconfiguring PCS (Daniel Machon) +- net/mlx5: fix possible stack overflows (Arnd Bergmann) +- net/mlx5: Disallow SRIOV switchdev mode when in multi-PF netdev (Tariq Toukan) +- net/mlx5e: RSS, Block XOR hash with over 128 channels (Carolina Jubran) +- net/mlx5e: Do not produce metadata freelist entries in Tx port ts WQE xmit (Rahul Rameshbabu) +- net/mlx5e: HTB, Fix inconsistencies with QoS SQs number (Carolina Jubran) +- net/mlx5e: Fix mlx5e_priv_init() cleanup flow (Carolina Jubran) +- net/mlx5e: RSS, Block changing channels number when RXFH is configured (Carolina Jubran) +- net/mlx5: Correctly compare pkt reformat ids (Cosmin Ratiu) +- net/mlx5: Properly link new fs rules into the tree (Cosmin Ratiu) +- net/mlx5: offset comp irq index in name by one (Michael Liang) +- net/mlx5: Register devlink first under devlink lock (Shay Drory) +- net/mlx5: E-switch, store eswitch pointer before registering devlink_param (Shay Drory) +- netfilter: complete validation of user input (Eric Dumazet) +- r8169: add missing conditional compiling for call to r8169_remove_leds (Heiner Kallweit) +- net: dsa: mt7530: fix enabling EEE on MT7531 switch on all boards (Arınç ÜNAL) +- r8169: fix LED-related deadlock on module removal (Heiner Kallweit) +- pds_core: Fix pdsc_check_pci_health function to use work thread (Brett Creeley) +- ipv6: fix race condition between ipv6_get_ifaddr and ipv6_del_addr (Jiri Benc) +- nfc: llcp: fix nfc_llcp_setsockopt() unsafe copies (Eric Dumazet) +- mISDN: fix MISDN_TIME_STAMP handling (Eric Dumazet) +- net: add copy_safe_from_sockptr() helper (Eric Dumazet) +- ipv4/route: avoid unused-but-set-variable warning (Arnd Bergmann) +- ipv6: fib: hide unused 'pn' variable (Arnd Bergmann) +- octeontx2-af: Fix NIX SQ mode and BP config (Geetha sowjanya) +- af_unix: Clear stale u->oob_skb. (Kuniyuki Iwashima) +- net: ks8851: Handle softirqs at the end of IRQ thread to fix hang (Marek Vasut) +- net: ks8851: Inline ks8851_rx_skb() (Marek Vasut) +- net: stmmac: mmc_core: Add GMAC mmc tx/rx missing statistics (Minda Chen) +- net: stmmac: mmc_core: Add GMAC LPI statistics (Minda Chen) +- bnxt_en: Reset PTP tx_avail after possible firmware reset (Pavan Chebbi) +- bnxt_en: Fix error recovery for RoCE ulp client (Vikas Gupta) +- bnxt_en: Fix possible memory leak in bnxt_rdma_aux_device_init() (Vikas Gupta) +- s390/ism: fix receive message buffer allocation (Gerd Bayer) +- geneve: fix header validation in geneve[6]_xmit_skb (Eric Dumazet) +- MAINTAINERS: Drop Li Yang as their email address stopped working (Uwe Kleine-König) +- batman-adv: Avoid infinite loop trying to resize local TT (Sven Eckelmann) +- lib: checksum: hide unused expected_csum_ipv6_magic[] (Arnd Bergmann) +- octeontx2-pf: Fix transmit scheduler resource leak (Hariprasad Kelam) +- virtio_net: Do not send RSS key if it is not supported (Breno Leitao) +- xsk: validate user input for XDP_{UMEM|COMPLETION}_FILL_RING (Eric Dumazet) +- u64_stats: fix u64_stats_init() for lockdep when used repeatedly in one file (Petr Tesarik) +- net: openvswitch: fix unwanted error log on timeout policy probing (Ilya Maximets) +- scsi: qla2xxx: Fix off by one in qla_edif_app_getstats() (Dan Carpenter) +- scsi: hisi_sas: Modify the deadline for ata_wait_after_reset() (Xiang Chen) +- scsi: hisi_sas: Handle the NCQ error returned by D2H frame (Xiang Chen) +- scsi: target: Fix SELinux error when systemd-modules loads the target module (Maurizio Lombardi) +- scsi: sg: Avoid race in error handling & drop bogus warn (Alexander Wetzel) +- LoongArch: Include linux/sizes.h in addrspace.h to prevent build errors (Randy Dunlap) +- LoongArch: Update dts for Loongson-2K2000 to support GMAC/GNET (Huacai Chen) +- LoongArch: Update dts for Loongson-2K2000 to support PCI-MSI (Huacai Chen) +- LoongArch: Update dts for Loongson-2K2000 to support ISA/LPC (Huacai Chen) +- LoongArch: Update dts for Loongson-2K1000 to support ISA/LPC (Huacai Chen) +- LoongArch: Make virt_addr_valid()/__virt_addr_valid() work with KFENCE (Huacai Chen) +- LoongArch: Make {virt, phys, page, pfn} translation work with KFENCE (Huacai Chen) +- mm: Move lowmem_page_address() a little later (Huacai Chen) +- bcachefs: Fix __bch2_btree_and_journal_iter_init_node_iter() (Kent Overstreet) +- bcachefs: Kill read lock dropping in bch2_btree_node_lock_write_nofail() (Kent Overstreet) +- bcachefs: Fix a race in btree_update_nodes_written() (Kent Overstreet) +- bcachefs: btree_node_scan: Respect member.data_allowed (Kent Overstreet) +- bcachefs: Don't scan for btree nodes when we can reconstruct (Kent Overstreet) +- bcachefs: Fix check_topology() when using node scan (Kent Overstreet) +- bcachefs: fix eytzinger0_find_gt() (Kent Overstreet) +- bcachefs: fix bch2_get_acl() transaction restart handling (Kent Overstreet) +- bcachefs: fix the count of nr_freed_pcpu after changing bc->freed_nonpcpu list (Hongbo Li) +- bcachefs: Fix gap buffer bug in bch2_journal_key_insert_take() (Kent Overstreet) +- bcachefs: Rename struct field swap to prevent macro naming collision (Thorsten Blum) +- MAINTAINERS: Add entry for bcachefs documentation (Bagas Sanjaya) +- Documentation: filesystems: Add bcachefs toctree (Bagas Sanjaya) +- bcachefs: JOURNAL_SPACE_LOW (Kent Overstreet) +- bcachefs: Disable errors=panic for BCH_IOCTL_FSCK_OFFLINE (Kent Overstreet) +- bcachefs: Fix BCH_IOCTL_FSCK_OFFLINE for encrypted filesystems (Kent Overstreet) +- bcachefs: fix rand_delete unit test (Kent Overstreet) +- bcachefs: fix ! vs ~ typo in __clear_bit_le64() (Dan Carpenter) +- bcachefs: Fix rebalance from durability=0 device (Kent Overstreet) +- bcachefs: Print shutdown journal sequence number (Kent Overstreet) +- bcachefs: Further improve btree_update_to_text() (Kent Overstreet) +- bcachefs: Move btree_updates to debugfs (Kent Overstreet) +- bcachefs: Bump limit in btree_trans_too_many_iters() (Kent Overstreet) +- bcachefs: Make snapshot_is_ancestor() safe (Kent Overstreet) +- bcachefs: create debugfs dir for each btree (Thomas Bertschinger) +- platform/chrome: cros_ec_uart: properly fix race condition (Noah Loomans) +- Use LLVM=1 for clang_lto build (Nikita Popov) +- redhat: fix def_variants.yaml check (Jan Stancek) +- kprobes: Fix possible use-after-free issue on kprobe registration (Zheng Yejian) +- fs/proc: Skip bootloader comment if no embedded kernel parameters (Masami Hiramatsu) +- fs/proc: remove redundant comments from /proc/bootconfig (Zhenhua Huang) +- media: mediatek: vcodec: support 36 bits physical address (Yunfei Dong) +- media: mediatek: vcodec: adding lock to protect encoder context list (Yunfei Dong) +- media: mediatek: vcodec: adding lock to protect decoder context list (Yunfei Dong) +- media: mediatek: vcodec: Fix oops when HEVC init fails (Nicolas Dufresne) +- media: mediatek: vcodec: Handle VP9 superframe bitstream with 8 sub-frames (Irui Wang) +- randomize_kstack: Improve entropy diffusion (Kees Cook) +- ubsan: fix unused variable warning in test module (Arnd Bergmann) +- gcc-plugins/stackleak: Avoid .head.text section (Ard Biesheuvel) +- tools/power turbostat: v2024.04.10 (Len Brown) +- tools/power/turbostat: Add support for Xe sysfs knobs (Zhang Rui) +- tools/power/turbostat: Add support for new i915 sysfs knobs (Zhang Rui) +- tools/power/turbostat: Introduce BIC_SAM_mc6/BIC_SAMMHz/BIC_SAMACTMHz (Zhang Rui) +- tools/power/turbostat: Fix uncore frequency file string (Justin Ernst) +- tools/power/turbostat: Unify graphics sysfs snapshots (Zhang Rui) +- tools/power/turbostat: Cache graphics sysfs path (Zhang Rui) +- tools/power/turbostat: Enable MSR_CORE_C1_RES support for ICX (Zhang Rui) +- tools/power turbostat: Add selftests (Patryk Wlazlyn) +- tools/power turbostat: read RAPL counters via perf (Patryk Wlazlyn) +- tools/power turbostat: Add proper re-initialization for perf file descriptors (Patryk Wlazlyn) +- tools/power turbostat: Clear added counters when in no-msr mode (Patryk Wlazlyn) +- tools/power turbostat: add early exits for permission checks (Patryk Wlazlyn) +- tools/power turbostat: detect and disable unavailable BICs at runtime (Patryk Wlazlyn) +- tools/power turbostat: Add reading aperf and mperf via perf API (Patryk Wlazlyn) +- tools/power turbostat: Add --no-perf option (Patryk Wlazlyn) +- tools/power turbostat: Add --no-msr option (Patryk Wlazlyn) +- tools/power turbostat: enhance -D (debug counter dump) output (Len Brown) +- tools/power turbostat: Fix warning upon failed /dev/cpu_dma_latency read (Len Brown) +- tools/power turbostat: Read base_hz and bclk from CPUID.16H if available (Patryk Wlazlyn) +- tools/power turbostat: Print ucode revision only if valid (Patryk Wlazlyn) +- tools/power turbostat: Expand probe_intel_uncore_frequency() (Len Brown) +- tools/power turbostat: Do not print negative LPI residency (Chen Yu) +- tools/power turbostat: Fix Bzy_MHz documentation typo (Peng Liu) +- tools/power turbostat: Increase the limit for fd opened (Wyes Karny) +- tools/power turbostat: Fix added raw MSR output (Doug Smythies) +- platform/x86: lg-laptop: fix %%s null argument warning (Gergo Koteles) +- platform/x86: intel-vbtn: Update tablet mode switch at end of probe (Gwendal Grignou) +- platform/x86: intel-vbtn: Use acpi_has_method to check for switch (Gwendal Grignou) +- platform/x86: toshiba_acpi: Silence logging for some events (Hans de Goede) +- platform/x86/intel/hid: Add Lunar Lake and Arrow Lake support (Sumeet Pawnikar) +- platform/x86/intel/hid: Don't wake on 5-button releases (David McFarland) +- platform/x86: acer-wmi: Add support for Acer PH18-71 (Bernhard Rosenkränzer) +- redhat: sanity check yaml files (Jan Stancek) +- spec: rework filter-mods and mod-denylist (Jan Stancek) +- nouveau: fix devinit paths to only handle display on GSP. (Dave Airlie) +- compiler.h: Add missing quote in macro comment (Thorsten Blum) +- KVM: x86: Add BHI_NO (Daniel Sneddon) +- x86/bhi: Mitigate KVM by default (Pawan Gupta) +- x86/bhi: Add BHI mitigation knob (Pawan Gupta) +- x86/bhi: Enumerate Branch History Injection (BHI) bug (Pawan Gupta) +- x86/bhi: Define SPEC_CTRL_BHI_DIS_S (Daniel Sneddon) +- x86/bhi: Add support for clearing branch history at syscall entry (Pawan Gupta) +- x86/syscall: Don't force use of indirect calls for system calls (Linus Torvalds) +- x86/bugs: Change commas to semicolons in 'spectre_v2' sysfs file (Josh Poimboeuf) +- btrfs: always clear PERTRANS metadata during commit (Boris Burkov) +- btrfs: make btrfs_clear_delalloc_extent() free delalloc reserve (Boris Burkov) +- btrfs: qgroup: convert PREALLOC to PERTRANS after record_root_in_trans (Boris Burkov) +- btrfs: record delayed inode root in transaction (Boris Burkov) +- btrfs: qgroup: fix qgroup prealloc rsv leak in subvolume operations (Boris Burkov) +- btrfs: qgroup: correctly model root qgroup rsv in convert (Boris Burkov) +- memblock tests: fix undefined reference to `BIT' (Wei Yang) +- memblock tests: fix undefined reference to `panic' (Wei Yang) +- memblock tests: fix undefined reference to `early_pfn_to_nid' (Wei Yang) +- Linux 6.9-rc3 (Linus Torvalds) +- x86/retpoline: Add NOENDBR annotation to the SRSO dummy return thunk (Borislav Petkov (AMD)) +- x86/mce: Make sure to grab mce_sysfs_mutex in set_bank() (Borislav Petkov (AMD)) +- x86/CPU/AMD: Track SNP host status with cc_platform_*() (Borislav Petkov (AMD)) +- x86/cc: Add cc_platform_set/_clear() helpers (Borislav Petkov (AMD)) +- x86/kvm/Kconfig: Have KVM_AMD_SEV select ARCH_HAS_CC_PLATFORM (Borislav Petkov (AMD)) +- x86/coco: Require seeding RNG with RDRAND on CoCo systems (Jason A. Donenfeld) +- x86/numa/32: Include missing (Arnd Bergmann) +- x86/resctrl: Fix uninitialized memory read when last CPU of domain goes offline (Reinette Chatre) +- timers/migration: Return early on deactivation (Anna-Maria Behnsen) +- timers/migration: Fix ignored event due to missing CPU update (Frederic Weisbecker) +- vdso: Use CONFIG_PAGE_SHIFT in vdso/datapage.h (Arnd Bergmann) +- timers: Fix text inconsistencies and spelling (Randy Dunlap) +- tick/sched: Fix struct tick_sched doc warnings (Randy Dunlap) +- tick/sched: Fix various kernel-doc warnings (Randy Dunlap) +- timers: Fix kernel-doc format and add Return values (Randy Dunlap) +- time/timekeeping: Fix kernel-doc warnings and typos (Randy Dunlap) +- time/timecounter: Fix inline documentation (Randy Dunlap) +- perf/x86/intel/ds: Don't clear ->pebs_data_cfg for the last PEBS event (Kan Liang) +- Linux v6.9.0-0.rc3 +Resolves: RHEL-29722 + +* Mon Apr 08 2024 Jan Stancek [6.9.0-0.rc2.1.el10] +- remove ARK .gitlab-ci.yml (Jan Stancek) +- redhat: update rpminspect with c9s one (Jan Stancek) +- redhat: remove fedora configs and files (Jan Stancek) +- redhat: init RHEL10.0 beta variables and dist tag (Jan Stancek) [RHEL-29722] +- nfsd: hold a lighter-weight client reference over CB_RECALL_ANY (Jeff Layton) +- SUNRPC: Fix a slow server-side memory leak with RPC-over-TCP (Chuck Lever) +- i2c: pxa: hide unused icr_bits[] variable (Arnd Bergmann) +- xfs: allow cross-linking special files without project quota (Andrey Albershteyn) +- smb: client: fix potential UAF in cifs_signal_cifsd_for_reconnect() (Paulo Alcantara) +- smb: client: fix potential UAF in smb2_is_network_name_deleted() (Paulo Alcantara) +- smb: client: fix potential UAF in is_valid_oplock_break() (Paulo Alcantara) +- smb: client: fix potential UAF in smb2_is_valid_oplock_break() (Paulo Alcantara) +- smb: client: fix potential UAF in smb2_is_valid_lease_break() (Paulo Alcantara) +- smb: client: fix potential UAF in cifs_stats_proc_show() (Paulo Alcantara) +- smb: client: fix potential UAF in cifs_stats_proc_write() (Paulo Alcantara) +- smb: client: fix potential UAF in cifs_dump_full_key() (Paulo Alcantara) +- smb: client: fix potential UAF in cifs_debug_files_proc_show() (Paulo Alcantara) +- smb3: retrying on failed server close (Ritvik Budhiraja) +- smb: client: serialise cifs_construct_tcon() with cifs_mount_mutex (Paulo Alcantara) +- smb: client: handle DFS tcons in cifs_construct_tcon() (Paulo Alcantara) +- smb: client: refresh referral without acquiring refpath_lock (Paulo Alcantara) +- smb: client: guarantee refcounted children from parent session (Paulo Alcantara) +- cifs: Fix caching to try to do open O_WRONLY as rdwr on server (David Howells) +- smb: client: fix UAF in smb2_reconnect_server() (Paulo Alcantara) +- smb: client: replace deprecated strncpy with strscpy (Justin Stitt) +- firewire: ohci: mask bus reset interrupts between ISR and bottom half (Adam Goldman) +- spi: mchp-pci1xxx: Fix a possible null pointer dereference in pci1xxx_spi_probe (Huai-Yuan Liu) +- spi: spi-fsl-lpspi: remove redundant spi_controller_put call (Carlos Song) +- spi: s3c64xx: Use DMA mode from fifo size (Jaewon Kim) +- regulator: tps65132: Add of_match table (André Apitzsch) +- regmap: maple: Fix uninitialized symbol 'ret' warnings (Richard Fitzgerald) +- regmap: maple: Fix cache corruption in regcache_maple_drop() (Richard Fitzgerald) +- nvme-fc: rename free_ctrl callback to match name pattern (Daniel Wagner) +- nvmet-fc: move RCU read lock to nvmet_fc_assoc_exists (Daniel Wagner) +- nvmet: implement unique discovery NQN (Hannes Reinecke) +- nvme: don't create a multipath node for zero capacity devices (Christoph Hellwig) +- nvme: split nvme_update_zone_info (Christoph Hellwig) +- nvme-multipath: don't inherit LBA-related fields for the multipath node (Christoph Hellwig) +- block: fix overflow in blk_ioctl_discard() (Li Nan) +- nullblk: Fix cleanup order in null_add_dev() error path (Damien Le Moal) +- io_uring/kbuf: hold io_buffer_list reference over mmap (Jens Axboe) +- io_uring/kbuf: protect io_buffer_list teardown with a reference (Jens Axboe) +- io_uring/kbuf: get rid of bl->is_ready (Jens Axboe) +- io_uring/kbuf: get rid of lower BGID lists (Jens Axboe) +- io_uring: use private workqueue for exit work (Jens Axboe) +- io_uring: disable io-wq execution of multishot NOWAIT requests (Jens Axboe) +- io_uring/rw: don't allow multishot reads without NOWAIT support (Jens Axboe) +- scsi: ufs: core: Fix MCQ mode dev command timeout (Peter Wang) +- scsi: libsas: Align SMP request allocation to ARCH_DMA_MINALIGN (Yihang Li) +- scsi: sd: Unregister device if device_add_disk() failed in sd_probe() (Li Nan) +- scsi: ufs: core: WLUN suspend dev/link state error recovery (Peter Wang) +- scsi: mylex: Fix sysfs buffer lengths (Arnd Bergmann) +- nios2: Only use built-in devicetree blob if configured to do so (Guenter Roeck) +- dt-bindings: timer: narrow regex for unit address to hex numbers (Krzysztof Kozlowski) +- dt-bindings: soc: fsl: narrow regex for unit address to hex numbers (Krzysztof Kozlowski) +- dt-bindings: remoteproc: ti,davinci: remove unstable remark (Krzysztof Kozlowski) +- dt-bindings: clock: ti: remove unstable remark (Krzysztof Kozlowski) +- dt-bindings: clock: keystone: remove unstable remark (Krzysztof Kozlowski) +- of: module: prevent NULL pointer dereference in vsnprintf() (Sergey Shtylyov) +- dt-bindings: ufs: qcom: document SM6125 UFS (Krzysztof Kozlowski) +- dt-bindings: ufs: qcom: document SC7180 UFS (Krzysztof Kozlowski) +- dt-bindings: ufs: qcom: document SC8180X UFS (Krzysztof Kozlowski) +- of: dynamic: Synchronize of_changeset_destroy() with the devlink removals (Herve Codina) +- driver core: Introduce device_link_wait_removal() (Herve Codina) +- docs: dt-bindings: add missing address/size-cells to example (Krzysztof Kozlowski) +- MAINTAINERS: Add TPM DT bindings to TPM maintainers (Rob Herring) +- stackdepot: rename pool_index to pool_index_plus_1 (Peter Collingbourne) +- x86/mm/pat: fix VM_PAT handling in COW mappings (David Hildenbrand) +- MAINTAINERS: change vmware.com addresses to broadcom.com (Alexey Makhalov) +- selftests/mm: include strings.h for ffsl (Edward Liaw) +- mm: vmalloc: fix lockdep warning (Uladzislau Rezki (Sony)) +- mm: vmalloc: bail out early in find_vmap_area() if vmap is not init (Uladzislau Rezki (Sony)) +- init: open output files from cpio unpacking with O_LARGEFILE (John Sperbeck) +- mm/secretmem: fix GUP-fast succeeding on secretmem folios (David Hildenbrand) +- arm64/ptrace: Use saved floating point state type to determine SVE layout (Mark Brown) +- riscv: process: Fix kernel gp leakage (Stefan O'Rear) +- riscv: Disable preemption when using patch_map() (Alexandre Ghiti) +- riscv: Fix warning by declaring arch_cpu_idle() as noinstr (Alexandre Ghiti) +- riscv: use KERN_INFO in do_trap (Andreas Schwab) +- riscv: Fix vector state restore in rt_sigreturn() (Björn Töpel) +- riscv: mm: implement pgprot_nx (Jisheng Zhang) +- riscv: compat_vdso: align VDSOAS build log (Masahiro Yamada) +- RISC-V: Update AT_VECTOR_SIZE_ARCH for new AT_MINSIGSTKSZ (Victor Isaev) +- riscv: Mark __se_sys_* functions __used (Sami Tolvanen) +- drivers/perf: riscv: Disable PERF_SAMPLE_BRANCH_* while not supported (Pu Lehui) +- riscv: compat_vdso: install compat_vdso.so.dbg to /lib/modules/*/vdso/ (Masahiro Yamada) +- riscv: hwprobe: do not produce frtace relocation (Vladimir Isaev) +- riscv: Fix spurious errors from __get/put_kernel_nofault (Samuel Holland) +- riscv: mm: Fix prototype to avoid discarding const (Samuel Holland) +- s390/entry: align system call table on 8 bytes (Sumanth Korikkar) +- s390/pai: fix sampling event removal for PMU device driver (Thomas Richter) +- s390/preempt: mark all functions __always_inline (Ilya Leoshkevich) +- s390/atomic: mark all functions __always_inline (Ilya Leoshkevich) +- s390/mm: fix NULL pointer dereference (Heiko Carstens) +- PM: EM: fix wrong utilization estimation in em_cpu_energy() (Vincent Guittot) +- ACPI: thermal: Register thermal zones without valid trip points (Stephen Horvath) +- thermal: gov_power_allocator: Allow binding without trip points (Nikita Travkin) +- thermal: gov_power_allocator: Allow binding without cooling devices (Nikita Travkin) +- gpio: cdev: fix missed label sanitizing in debounce_setup() (Kent Gibson) +- gpio: cdev: check for NULL labels when sanitizing them for irqs (Bartosz Golaszewski) +- gpiolib: Fix triggering "kobject: 'gpiochipX' is not initialized, yet" kobject_get() errors (Hans de Goede) +- ata: sata_gemini: Check clk_enable() result (Chen Ni) +- ata: sata_mv: Fix PCI device ID table declaration compilation warning (Arnd Bergmann) +- ata: ahci_st: Remove an unused field in struct st_ahci_drv_data (Christophe JAILLET) +- ata: pata_macio: drop driver owner assignment (Krzysztof Kozlowski) +- ata: sata_sx4: fix pdc20621_get_from_dimm() on 64-bit (Arnd Bergmann) +- ASoC: SOF: Core: Add remove_late() to sof_init_environment failure path (Chaitanya Kumar Borah) +- ASoC: SOF: amd: fix for false dsp interrupts (Vijendar Mukunda) +- ASoC: SOF: Intel: lnl: Disable DMIC/SSP offload on remove (Peter Ujfalusi) +- ASoC: wm_adsp: Fix missing mutex_lock in wm_adsp_write_ctl() (Richard Fitzgerald) +- ASoC: codecs: ES8326: Removing the control of ADC_SCALE (Zhang Yi) +- ASoC: codecs: ES8326: Solve a headphone detection issue after suspend and resume (Zhang Yi) +- ASoC: codecs: ES8326: modify clock table (Zhang Yi) +- ASoC: codecs: ES8326: Solve error interruption issue (Zhang Yi) +- ASoC: Intel: avs: boards: Add modules description (Amadeusz Sławiński) +- ASoC: amd: acp: fix for acp_init function error handling (Vijendar Mukunda) +- ASoC: rt-sdw*: add __func__ to all error logs (Pierre-Louis Bossart) +- ASoC: rt722-sdca-sdw: fix locking sequence (Pierre-Louis Bossart) +- ASoC: rt712-sdca-sdw: fix locking sequence (Pierre-Louis Bossart) +- ASoC: rt711-sdw: fix locking sequence (Pierre-Louis Bossart) +- ASoC: rt711-sdca: fix locking sequence (Pierre-Louis Bossart) +- ASoC: rt5682-sdw: fix locking sequence (Pierre-Louis Bossart) +- ASoC: ops: Fix wraparound for mask in snd_soc_get_volsw (Stephen Lee) +- ASoC: amd: acp: fix for acp pdm configuration check (Vijendar Mukunda) +- ASoC: SOF: Intel: hda: Compensate LLP in case it is not reset (Peter Ujfalusi) +- ALSA: hda: Add pplcllpl/u members to hdac_ext_stream (Peter Ujfalusi) +- ASoC: SOF: ipc4-pcm: Correct the delay calculation (Peter Ujfalusi) +- ASoC: SOF: sof-pcm: Add pointer callback to sof_ipc_pcm_ops (Peter Ujfalusi) +- ASoC: SOF: ipc4-pcm: Invalidate the stream_start_offset in PAUSED state (Peter Ujfalusi) +- ASoC: SOF: ipc4-pcm: Combine the SOF_IPC4_PIPE_PAUSED cases in pcm_trigger (Peter Ujfalusi) +- ASoC: SOF: ipc4-pcm: Move struct sof_ipc4_timestamp_info definition locally (Peter Ujfalusi) +- ASoC: SOF: Remove the get_stream_position callback (Peter Ujfalusi) +- ASoC: SOF: Intel: hda-common-ops: Do not set the get_stream_position callback (Peter Ujfalusi) +- ASoC: SOF: ipc4-pcm: Use the snd_sof_pcm_get_dai_frame_counter() for pcm_delay (Peter Ujfalusi) +- ASoC: SOF: Intel: Set the dai/host get frame/byte counter callbacks (Peter Ujfalusi) +- ASoC: SOF: Introduce a new callback pair to be used for PCM delay reporting (Peter Ujfalusi) +- ASoC: SOF: Intel: mtl/lnl: Use the generic get_stream_position callback (Peter Ujfalusi) +- ASoC: SOF: Intel: hda: Implement get_stream_position (Linear Link Position) (Peter Ujfalusi) +- ASoC: SOF: Intel: hda-pcm: Use dsp_max_burst_size_in_ms to place constraint (Peter Ujfalusi) +- ASoC: SOF: ipc4-topology: Save the DMA maximum burst size for PCMs (Peter Ujfalusi) +- ASoC: SOF: Add dsp_max_burst_size_in_ms member to snd_sof_pcm_stream (Peter Ujfalusi) +- ASoC: cs42l43: Correct extraction of data pointer in suspend/resume (Charles Keepax) +- ASoC: SOF: mtrace: rework mtrace timestamp setting (Rander Wang) +- ASoC: cs-amp-lib: Check for no firmware controls when writing calibration (Simon Trimmer) +- ASoC: SOF: Intel: hda-dsp: Skip IMR boot on ACE platforms in case of S3 suspend (Peter Ujfalusi) +- ALSA: line6: Zero-initialize message buffers (Takashi Iwai) +- ALSA: hda/realtek: cs35l41: Support ASUS ROG G634JYR (Luke D. Jones) +- ALSA: hda/realtek: Update Panasonic CF-SZ6 quirk to support headset with microphone (I Gede Agastya Darma Laksana) +- ALSA: hda/realtek: Add sound quirks for Lenovo Legion slim 7 16ARHA7 models (Christian Bendiksen) +- Revert "ALSA: emu10k1: fix synthesizer sample playback position and caching" (Oswald Buddenhagen) +- OSS: dmasound/paula: Mark driver struct with __refdata to prevent section mismatch (Uwe Kleine-König) +- ALSA: hda/realtek: Add quirks for ASUS Laptops using CS35L56 (Simon Trimmer) +- ASoC: tas2781: mark dvc_tlv with __maybe_unused (Gergo Koteles) +- ALSA: hda: cs35l56: Add ACPI device match tables (Simon Trimmer) +- ALSA: hda/realtek - Fix inactive headset mic jack (Christoffer Sandberg) +- drm/i915/mst: Reject FEC+MST on ICL (Ville Syrjälä) +- drm/i915/mst: Limit MST+DSC to TGL+ (Ville Syrjälä) +- drm/i915/dp: Fix the computation for compressed_bpp for DISPLAY < 13 (Ankit Nautiyal) +- drm/i915/gt: Enable only one CCS for compute workload (Andi Shyti) +- drm/i915/gt: Do not generate the command streamer for all the CCS (Andi Shyti) +- drm/i915/gt: Disable HW load balancing for CCS (Andi Shyti) +- drm/i915/gt: Limit the reserved VM space to only the platforms that need it (Andi Shyti) +- drm/i915/psr: Fix intel_psr2_sel_fetch_et_alignment usage (Jouni Högander) +- drm/i915/psr: Move writing early transport pipe src (Jouni Högander) +- drm/i915/psr: Calculate PIPE_SRCSZ_ERLY_TPT value (Jouni Högander) +- drm/i915/dp: Remove support for UHBR13.5 (Arun R Murthy) +- drm/i915/dp: Fix DSC state HW readout for SST connectors (Imre Deak) +- drm/xe: Use ordered wq for preempt fence waiting (Matthew Brost) +- drm/xe: Move vma rebinding to the drm_exec locking loop (Thomas Hellström) +- drm/xe: Make TLB invalidation fences unordered (Thomas Hellström) +- drm/xe: Rework rebinding (Thomas Hellström) +- drm/xe: Use ring ops TLB invalidation for rebinds (Thomas Hellström) +- drm/display: fix typo (Oleksandr Natalenko) +- drm/prime: Unbreak virtgpu dma-buf export (Rob Clark) +- nouveau/uvmm: fix addr/range calcs for remap operations (Dave Airlie) +- drm/nouveau/gr/gf100: Remove second semicolon (Colin Ian King) +- drm/panfrost: fix power transition timeout warnings (Christian Hewitt) +- 9p: remove SLAB_MEM_SPREAD flag usage (Chengming Zhou) +- 9p: Fix read/write debug statements to report server reply (Dominique Martinet) +- 9p/trans_fd: remove Excess kernel-doc comment (Randy Dunlap) +- ksmbd: do not set SMB2_GLOBAL_CAP_ENCRYPTION for SMB 3.1.1 (Namjae Jeon) +- ksmbd: validate payload size in ipc response (Namjae Jeon) +- ksmbd: don't send oplock break if rename fails (Namjae Jeon) +- aio: Fix null ptr deref in aio_complete() wakeup (Kent Overstreet) +- fs,block: yield devices early (Christian Brauner) +- block: count BLK_OPEN_RESTRICT_WRITES openers (Christian Brauner) +- block: handle BLK_OPEN_RESTRICT_WRITES correctly (Christian Brauner) +- redhat/configs: remove CONFIG_INTEL_MENLOW as it is obsolete. (David Arcari) +- redhat: enable changes to build rt variants (Clark Williams) +- Add localversion for -RT release (Thomas Gleixner) +- sysfs: Add /sys/kernel/realtime entry (Clark Williams) +- riscv: allow to enable RT (Jisheng Zhang) +- riscv: add PREEMPT_AUTO support (Jisheng Zhang) +- POWERPC: Allow to enable RT (Sebastian Andrzej Siewior) +- powerpc/stackprotector: work around stack-guard init from atomic (Sebastian Andrzej Siewior) +- powerpc/kvm: Disable in-kernel MPIC emulation for PREEMPT_RT (Bogdan Purcareata) +- powerpc/pseries: Select the generic memory allocator. (Sebastian Andrzej Siewior) +- powerpc/pseries/iommu: Use a locallock instead local_irq_save() (Sebastian Andrzej Siewior) +- powerpc: traps: Use PREEMPT_RT (Sebastian Andrzej Siewior) +- ARM64: Allow to enable RT (Sebastian Andrzej Siewior) +- ARM: Allow to enable RT (Sebastian Andrzej Siewior) +- ARM: vfp: Move sending signals outside of vfp_lock()ed section. (Sebastian Andrzej Siewior) +- ARM: vfp: Use vfp_lock() in vfp_support_entry(). (Sebastian Andrzej Siewior) +- ARM: vfp: Use vfp_lock() in vfp_sync_hwstate(). (Sebastian Andrzej Siewior) +- ARM: vfp: Provide vfp_lock() for VFP locking. (Sebastian Andrzej Siewior) +- arm: Disable FAST_GUP on PREEMPT_RT if HIGHPTE is also enabled. (Sebastian Andrzej Siewior) +- ARM: enable irq in translation/section permission fault handlers (Yadi.hu) +- arm: Disable jump-label on PREEMPT_RT. (Thomas Gleixner) +- sched: define TIF_ALLOW_RESCHED (Thomas Gleixner) +- Revert "drm/i915: Depend on !PREEMPT_RT." (Sebastian Andrzej Siewior) +- drm/i915/guc: Consider also RCU depth in busy loop. (Sebastian Andrzej Siewior) +- drm/i915: Drop the irqs_disabled() check (Sebastian Andrzej Siewior) +- drm/i915/gt: Use spin_lock_irq() instead of local_irq_disable() + spin_lock() (Sebastian Andrzej Siewior) +- drm/i915/gt: Queue and wait for the irq_work item. (Sebastian Andrzej Siewior) +- drm/i915: skip DRM_I915_LOW_LEVEL_TRACEPOINTS with NOTRACE (Sebastian Andrzej Siewior) +- drm/i915: Disable tracing points on PREEMPT_RT (Sebastian Andrzej Siewior) +- drm/i915: Don't check for atomic context on PREEMPT_RT (Sebastian Andrzej Siewior) +- drm/i915: Don't disable interrupts on PREEMPT_RT during atomic updates (Mike Galbraith) +- drm/i915: Use preempt_disable/enable_rt() where recommended (Mike Galbraith) +- printk: Avoid false positive lockdep report for legacy printing (John Ogness) +- printk: Provide threadprintk boot argument (John Ogness) +- printk: Add kthread for all legacy consoles (John Ogness) +- serial: 8250: Revert "drop lockdep annotation from serial8250_clear_IER()" (John Ogness) +- serial: 8250: Switch to nbcon console (John Ogness) +- printk: nbcon: Provide function to reacquire ownership (John Ogness) +- tty: sysfs: Add nbcon support for 'active' (John Ogness) +- proc: Add nbcon support for /proc/consoles (John Ogness) +- printk: nbcon: Show replay message on takeover (John Ogness) +- printk: Provide helper for message prepending (John Ogness) +- printk: nbcon: Start printing threads (John Ogness) +- printk: nbcon: Stop threads on shutdown/reboot (John Ogness) +- printk: nbcon: Add printer thread wakeups (Thomas Gleixner) +- printk: nbcon: Add context to console_is_usable() (John Ogness) +- printk: Atomic print in printk context on shutdown (John Ogness) +- printk: nbcon: Introduce printing kthreads (Thomas Gleixner) +- lockdep: Mark emergency sections in lockdep splats (John Ogness) +- rcu: Mark emergency sections in rcu stalls (John Ogness) +- panic: Mark emergency section in oops (John Ogness) +- panic: Mark emergency section in warn (Thomas Gleixner) +- printk: nbcon: Implement emergency sections (Thomas Gleixner) +- printk: Coordinate direct printing in panic (John Ogness) +- printk: Track nbcon consoles (John Ogness) +- printk: Avoid console_lock dance if no legacy or boot consoles (John Ogness) +- printk: nbcon: Add unsafe flushing on panic (John Ogness) +- printk: nbcon: Assign priority based on CPU state (John Ogness) +- printk: nbcon: Use nbcon consoles in console_flush_all() (John Ogness) +- printk: Track registered boot consoles (John Ogness) +- printk: nbcon: Provide function to flush using write_atomic() (Thomas Gleixner) +- printk: Add @flags argument for console_is_usable() (John Ogness) +- printk: Let console_is_usable() handle nbcon (John Ogness) +- printk: Make console_is_usable() available to nbcon (John Ogness) +- printk: nbcon: Do not rely on proxy headers (John Ogness) +- printk: nbcon: Implement processing in port->lock wrapper (John Ogness) +- serial: core: Provide low-level functions to lock port (John Ogness) +- printk: nbcon: Use driver synchronization while registering (John Ogness) +- printk: nbcon: Add callbacks to synchronize with driver (John Ogness) +- printk: nbcon: Add detailed doc for write_atomic() (John Ogness) +- printk: Check printk_deferred_enter()/_exit() usage (Sebastian Andrzej Siewior) +- printk: nbcon: Remove return value for write_atomic() (John Ogness) +- printk: Properly deal with nbcon consoles on seq init (John Ogness) +- printk: Add notation to console_srcu locking (John Ogness) +- time: Allow to preempt after a callback. (Sebastian Andrzej Siewior) +- softirq: Add function to preempt serving softirqs. (Sebastian Andrzej Siewior) +- sched/core: Provide a method to check if a task is PI-boosted. (Sebastian Andrzej Siewior) +- zram: Replace bit spinlocks with spinlock_t for PREEMPT_RT. (Mike Galbraith) +- softirq: Wake ktimers thread also in softirq. (Junxiao Chang) +- tick: Fix timer storm since introduction of timersd (Frederic Weisbecker) +- rcutorture: Also force sched priority to timersd on boosting test. (Frederic Weisbecker) +- softirq: Use a dedicated thread for timer wakeups. (Sebastian Andrzej Siewior) +- sched/rt: Don't try push tasks if there are none. (Sebastian Andrzej Siewior) +- x86: Enable RT also on 32bit (Sebastian Andrzej Siewior) +- x86: Allow to enable RT (Sebastian Andrzej Siewior) +- drm/ttm/tests: Let ttm_bo_test consider different ww_mutex implementation. (Sebastian Andrzej Siewior) +- Locking: Let PREEMPT_RT compile again with new rwsem asserts. (Sebastian Andrzej Siewior) +- perf: Split __perf_pending_irq() out of perf_pending_irq() (Sebastian Andrzej Siewior) +- perf: Remove perf_swevent_get_recursion_context() from perf_pending_task(). (Sebastian Andrzej Siewior) +- perf: Enqueue SIGTRAP always via task_work. (Sebastian Andrzej Siewior) +- perf: Move irq_work_queue() where the event is prepared. (Sebastian Andrzej Siewior) +- net: Rename rps_lock to backlog_lock. (Sebastian Andrzej Siewior) +- net: Use backlog-NAPI to clean up the defer_list. (Sebastian Andrzej Siewior) +- net: Allow to use SMP threads for backlog NAPI. (Sebastian Andrzej Siewior) +- net: Remove conditional threaded-NAPI wakeup based on task state. (Sebastian Andrzej Siewior) +- Linux v6.9.0-0.rc2 +Resolves: RHEL-29722 + +* Mon Apr 22 2024 Jan Stancek [6.9.0-0.rc4.2.el10] +- blk-iocost: do not WARN if iocg was already offlined (Li Nan) +- block: propagate partition scanning errors to the BLKRRPART ioctl (Christoph Hellwig) +- MAINTAINERS: update to working email address (James Bottomley) +- KVM: x86: Stop compiling vmenter.S with OBJECT_FILES_NON_STANDARD (Sean Christopherson) +- KVM: SVM: Create a stack frame in __svm_sev_es_vcpu_run() (Sean Christopherson) +- KVM: SVM: Save/restore args across SEV-ES VMRUN via host save area (Sean Christopherson) +- KVM: SVM: Save/restore non-volatile GPRs in SEV-ES VMRUN via host save area (Sean Christopherson) +- KVM: SVM: Clobber RAX instead of RBX when discarding spec_ctrl_intercepted (Sean Christopherson) +- KVM: SVM: Drop 32-bit "support" from __svm_sev_es_vcpu_run() (Sean Christopherson) +- KVM: SVM: Wrap __svm_sev_es_vcpu_run() with #ifdef CONFIG_KVM_AMD_SEV (Sean Christopherson) +- KVM: SVM: Create a stack frame in __svm_vcpu_run() for unwinding (Sean Christopherson) +- KVM: SVM: Remove a useless zeroing of allocated memory (Christophe JAILLET) +- KVM: Drop unused @may_block param from gfn_to_pfn_cache_invalidate_start() (Sean Christopherson) +- KVM: selftests: Add coverage of EPT-disabled to vmx_dirty_log_test (David Matlack) +- KVM: x86/mmu: Fix and clarify comments about clearing D-bit vs. write-protecting (David Matlack) +- KVM: x86/mmu: Remove function comments above clear_dirty_{gfn_range,pt_masked}() (David Matlack) +- KVM: x86/mmu: Write-protect L2 SPTEs in TDP MMU when clearing dirty status (David Matlack) +- KVM: x86/mmu: Precisely invalidate MMU root_role during CPUID update (Sean Christopherson) +- KVM: VMX: Disable LBR virtualization if the CPU doesn't support LBR callstacks (Sean Christopherson) +- perf/x86/intel: Expose existence of callback support to KVM (Sean Christopherson) +- KVM: VMX: Snapshot LBR capabilities during module initialization (Sean Christopherson) +- KVM: VMX: Ignore MKTME KeyID bits when intercepting #PF for allow_smaller_maxphyaddr (Tao Su) +- KVM: selftests: fix supported_flags for riscv (Andrew Jones) +- KVM: selftests: fix max_guest_memory_test with more that 256 vCPUs (Maxim Levitsky) +- KVM: selftests: Verify post-RESET value of PERF_GLOBAL_CTRL in PMCs test (Sean Christopherson) +- KVM: x86/pmu: Set enable bits for GP counters in PERF_GLOBAL_CTRL at "RESET" (Sean Christopherson) +- KVM: x86/mmu: x86: Don't overflow lpage_info when checking attributes (Rick Edgecombe) +- KVM: x86/pmu: Disable support for adaptive PEBS (Sean Christopherson) +- KVM: Explicitly disallow activatating a gfn_to_pfn_cache with INVALID_GPA (Sean Christopherson) +- KVM: Check validity of offset+length of gfn_to_pfn_cache prior to activation (Sean Christopherson) +- KVM: Add helpers to consolidate gfn_to_pfn_cache's page split check (Sean Christopherson) +- KVM: x86/pmu: Do not mask LVTPC when handling a PMI on AMD platforms (Sandipan Das) +- KVM: x86: Snapshot if a vCPU's vendor model is AMD vs. Intel compatible (Sean Christopherson) +- selftests/powerpc/papr-vpd: Fix missing variable initialization (Nathan Lynch) +- powerpc/crypto/chacha-p10: Fix failure on non Power10 (Michael Ellerman) +- powerpc/iommu: Refactor spapr_tce_platform_iommu_attach_dev() (Shivaprasad G Bhat) +- clk: mediatek: mt7988-infracfg: fix clocks for 2nd PCIe port (Daniel Golle) +- clk: mediatek: Do a runtime PM get on controllers during probe (Pin-yen Lin) +- clk: Get runtime PM before walking tree for clk_summary (Stephen Boyd) +- clk: Get runtime PM before walking tree during disable_unused (Stephen Boyd) +- clk: Initialize struct clk_core kref earlier (Stephen Boyd) +- clk: Don't hold prepare_lock when calling kref_put() (Stephen Boyd) +- clk: Remove prepare_lock hold assertion in __clk_release() (Stephen Boyd) +- clk: Provide !COMMON_CLK dummy for devm_clk_rate_exclusive_get() (Uwe Kleine-König) +- tools/include: Sync arm64 asm/cputype.h with the kernel sources (Namhyung Kim) +- tools/include: Sync asm-generic/bitops/fls.h with the kernel sources (Namhyung Kim) +- tools/include: Sync x86 asm/msr-index.h with the kernel sources (Namhyung Kim) +- tools/include: Sync x86 asm/irq_vectors.h with the kernel sources (Namhyung Kim) +- tools/include: Sync x86 CPU feature headers with the kernel sources (Namhyung Kim) +- tools/include: Sync uapi/sound/asound.h with the kernel sources (Namhyung Kim) +- tools/include: Sync uapi/linux/kvm.h and asm/kvm.h with the kernel sources (Namhyung Kim) +- tools/include: Sync uapi/linux/fs.h with the kernel sources (Namhyung Kim) +- tools/include: Sync uapi/drm/i915_drm.h with the kernel sources (Namhyung Kim) +- perf lock contention: Add a missing NULL check (Namhyung Kim) +- perf annotate: Make sure to call symbol__annotate2() in TUI (Namhyung Kim) +- ubsan: Add awareness of signed integer overflow traps (Kees Cook) +- configs/hardening: Disable CONFIG_UBSAN_SIGNED_WRAP (Nathan Chancellor) +- configs/hardening: Fix disabling UBSAN configurations (Nathan Chancellor) +- iommufd: Add config needed for iommufd_fail_nth (Muhammad Usama Anjum) +- iommufd: Add missing IOMMUFD_DRIVER kconfig for the selftest (Jason Gunthorpe) +- RDMA/mlx5: Fix port number for counter query in multi-port configuration (Michael Guralnik) +- RDMA/cm: Print the old state when cm_destroy_id gets timeout (Mark Zhang) +- RDMA/rxe: Fix the problem "mutex_destroy missing" (Yanjun.Zhu) +- fs/9p: drop inodes immediately on non-.L too (Joakim Sindholt) +- fs/9p: Revert "fs/9p: fix dups even in uncached mode" (Eric Van Hensbergen) +- fs/9p: remove erroneous nlink init from legacy stat2inode (Eric Van Hensbergen) +- 9p: explicitly deny setlease attempts (Jeff Layton) +- fs/9p: fix the cache always being enabled on files with qid flags (Joakim Sindholt) +- fs/9p: translate O_TRUNC into OTRUNC (Joakim Sindholt) +- fs/9p: only translate RWX permissions for plain 9P2000 (Joakim Sindholt) +- cuse: add kernel-doc comments to cuse_process_init_reply() (Yang Li) +- fuse: fix leaked ENOSYS error on first statx call (Danny Lin) +- fuse: fix parallel dio write on file open in passthrough mode (Amir Goldstein) +- fuse: fix wrong ff->iomode state changes from parallel dio write (Amir Goldstein) +- arm64: hibernate: Fix level3 translation fault in swsusp_save() (Yaxiong Tian) +- arm64/head: Disable MMU at EL2 before clearing HCR_EL2.E2H (Ard Biesheuvel) +- arm64/head: Drop unnecessary pre-disable-MMU workaround (Ard Biesheuvel) +- arm64/hugetlb: Fix page table walk in huge_pte_alloc() (Anshuman Khandual) +- s390/mm: Fix NULL pointer dereference (Sven Schnelle) +- s390/cio: log fake IRB events (Peter Oberparleiter) +- s390/cio: fix race condition during online processing (Peter Oberparleiter) +- s390/qdio: handle deferred cc1 (Peter Oberparleiter) +- bootconfig: Fix the kerneldoc of _xbc_exit() (Masami Hiramatsu (Google)) +- bootconfig: use memblock_free_late to free xbc memory to buddy (Qiang Zhang) +- init/main.c: Fix potential static_command_line memory overflow (Yuntao Wang) +- thermal/debugfs: Add missing count increment to thermal_debug_tz_trip_up() (Rafael J. Wysocki) +- ALSA: seq: ump: Fix conversion from MIDI2 to MIDI1 UMP messages (Takashi Iwai) +- ALSA: hda/realtek - Enable audio jacks of Haier Boyue G42 with ALC269VC (Ai Chao) +- ALSA: hda/realtek: Add quirks for Huawei Matebook D14 NBLB-WAX9N (Mauro Carvalho Chehab) +- ALSA: hda/realtek: Fix volumn control of ThinkBook 16P Gen4 (Huayu Zhang) +- ALSA: hda/realtek: Fixes for Asus GU605M and GA403U sound (Vitalii Torshyn) +- ALSA: hda/tas2781: Add new vendor_id and subsystem_id to support ThinkPad ICE-1 (Shenghao Ding) +- ALSA: hda/tas2781: correct the register for pow calibrated data (Shenghao Ding) +- ALSA: hda/realtek: Add quirk for HP SnowWhite laptops (Vitaly Rodionov) +- drm/xe/vm: prevent UAF with asid based lookup (Matthew Auld) +- drm/xe: Fix bo leak in intel_fb_bo_framebuffer_init (Maarten Lankhorst) +- drm/panel: novatek-nt36682e: don't unregister DSI device (Dmitry Baryshkov) +- drm/panel: visionox-rm69299: don't unregister DSI device (Dmitry Baryshkov) +- drm/nouveau/dp: Don't probe eDP ports twice harder (Lyude Paul) +- drm/nouveau/kms/nv50-: Disable AUX bus for disconnected DP ports (Lyude Paul) +- drm/v3d: Don't increment `enabled_ns` twice (Maíra Canal) +- drm/vmwgfx: Sort primary plane formats by order of preference (Zack Rusin) +- drm/vmwgfx: Fix crtc's atomic check conditional (Zack Rusin) +- drm/vmwgfx: Fix prime import/export (Zack Rusin) +- drm/ttm: stop pooling cached NUMA pages v2 (Christian König) +- drm: nv04: Fix out of bounds access (Mikhail Kobuk) +- nouveau: fix instmem race condition around ptr stores (Dave Airlie) +- drm/radeon: silence UBSAN warning (v3) (Alex Deucher) +- drm/radeon: make -fstrict-flex-arrays=3 happy (Alex Deucher) +- drm/amdgpu: fix visible VRAM handling during faults (Christian König) +- drm/amdgpu: validate the parameters of bo mapping operations more clearly (xinhui pan) +- Revert "drm/amd/display: fix USB-C flag update after enc10 feature init" (Alex Deucher) +- drm/amdkfd: Fix memory leak in create_process failure (Felix Kuehling) +- drm/amdgpu: remove invalid resource->start check v2 (Christian König) +- nilfs2: fix OOB in nilfs_set_de_type (Jeongjun Park) +- MAINTAINERS: update Naoya Horiguchi's email address (Naoya Horiguchi) +- fork: defer linking file vma until vma is fully initialized (Miaohe Lin) +- mm/shmem: inline shmem_is_huge() for disabled transparent hugepages (Sumanth Korikkar) +- mm,page_owner: defer enablement of static branch (Oscar Salvador) +- Squashfs: check the inode number is not the invalid value of zero (Phillip Lougher) +- mm,swapops: update check in is_pfn_swap_entry for hwpoison entries (Oscar Salvador) +- mm/memory-failure: fix deadlock when hugetlb_optimize_vmemmap is enabled (Miaohe Lin) +- mm/userfaultfd: allow hugetlb change protection upon poison entry (Peter Xu) +- mm,page_owner: fix printing of stack records (Oscar Salvador) +- mm,page_owner: fix accounting of pages when migrating (Oscar Salvador) +- mm,page_owner: fix refcount imbalance (Oscar Salvador) +- mm,page_owner: update metadata for tail pages (Oscar Salvador) +- userfaultfd: change src_folio after ensuring it's unpinned in UFFDIO_MOVE (Lokesh Gidra) +- mm/madvise: make MADV_POPULATE_(READ|WRITE) handle VM_FAULT_RETRY properly (David Hildenbrand) +- scsi: core: Fix handling of SCMD_FAIL_IF_RECOVERING (Bart Van Assche) +- scsi: ufs: qcom: Add missing interconnect bandwidth values for Gear 5 (Manivannan Sadhasivam) +- net: ethernet: ti: am65-cpsw-nuss: cleanup DMA Channels before using them (Siddharth Vadapalli) +- net: usb: ax88179_178a: avoid writing the mac address before first reading (Jose Ignacio Tornos Martinez) +- netfilter: nf_tables: fix memleak in map from abort path (Pablo Neira Ayuso) +- netfilter: nf_tables: restore set elements when delete set fails (Pablo Neira Ayuso) +- netfilter: nf_tables: missing iterator type in lookup walk (Pablo Neira Ayuso) +- net: ravb: Fix RX byte accounting for jumbo packets (Paul Barker) +- net: ravb: Fix GbEth jumbo packet RX checksum handling (Paul Barker) +- net: ravb: Allow RX loop to move past DMA mapping errors (Paul Barker) +- net: ravb: Count packets instead of descriptors in R-Car RX path (Paul Barker) +- net: ethernet: mtk_eth_soc: fix WED + wifi reset (Felix Fietkau) +- net:usb:qmi_wwan: support Rolling modules (Vanillan Wang) +- ice: Fix checking for unsupported keys on non-tunnel device (Marcin Szycik) +- ice: tc: allow zero flags in parsing tc flower (Michal Swiatkowski) +- ice: tc: check src_vsi in case of traffic from VF (Michal Swiatkowski) +- selftests: kselftest_harness: fix Clang warning about zero-length format (Jakub Kicinski) +- net/sched: Fix mirred deadlock on device recursion (Eric Dumazet) +- s390/ism: Properly fix receive message buffer allocation (Gerd Bayer) +- net: dsa: mt7530: fix port mirroring for MT7988 SoC switch (Arınç ÜNAL) +- net: dsa: mt7530: fix mirroring frames received on local port (Arınç ÜNAL) +- tun: limit printing rate when illegal packet received by tun dev (Lei Chen) +- net: stmmac: Fix IP-cores specific MAC capabilities (Serge Semin) +- net: stmmac: Fix max-speed being ignored on queue re-init (Serge Semin) +- net: stmmac: Apply half-duplex-less constraint for DW QoS Eth only (Serge Semin) +- selftests/tcp_ao: Printing fixes to confirm with format-security (Dmitry Safonov) +- selftests/tcp_ao: Fix fscanf() call for format-security (Dmitry Safonov) +- selftests/tcp_ao: Zero-init tcp_ao_info_opt (Dmitry Safonov) +- selftests/tcp_ao: Make RST tests less flaky (Dmitry Safonov) +- octeontx2-pf: fix FLOW_DIS_IS_FRAGMENT implementation (Asbjørn Sloth Tønnesen) +- inet: bring NLM_DONE out to a separate recv() again (Jakub Kicinski) +- net: change maximum number of UDP segments to 128 (Yuri Benditovich) +- net/mlx5e: Prevent deadlock while disabling aRFS (Carolina Jubran) +- net/mlx5e: Acquire RTNL lock before RQs/SQs activation/deactivation (Carolina Jubran) +- net/mlx5e: Use channel mdev reference instead of global mdev instance for coalescing (Rahul Rameshbabu) +- net/mlx5: Restore mistakenly dropped parts in register devlink flow (Shay Drory) +- net/mlx5: SD, Handle possible devcom ERR_PTR (Tariq Toukan) +- net/mlx5: Lag, restore buckets number to default after hash LAG deactivation (Shay Drory) +- net: sparx5: flower: fix fragment flags handling (Asbjørn Sloth Tønnesen) +- af_unix: Don't peek OOB data without MSG_OOB. (Kuniyuki Iwashima) +- af_unix: Call manage_oob() for every skb in unix_stream_read_generic(). (Kuniyuki Iwashima) +- netfilter: flowtable: incorrect pppoe tuple (Pablo Neira Ayuso) +- netfilter: flowtable: validate pppoe header (Pablo Neira Ayuso) +- netfilter: nft_set_pipapo: do not free live element (Florian Westphal) +- netfilter: nft_set_pipapo: walk over current view on netlink dump (Pablo Neira Ayuso) +- netfilter: br_netfilter: skip conntrack input hook for promisc packets (Pablo Neira Ayuso) +- netfilter: nf_tables: Fix potential data-race in __nft_obj_type_get() (Ziyang Xuan) +- netfilter: nf_tables: Fix potential data-race in __nft_expr_type_get() (Ziyang Xuan) +- gpiolib: swnode: Remove wrong header inclusion (Andy Shevchenko) +- gpio: lpc32xx: fix module autoloading (Krzysztof Kozlowski) +- gpio: crystalcove: Use -ENOTSUPP consistently (Andy Shevchenko) +- gpio: wcove: Use -ENOTSUPP consistently (Andy Shevchenko) +- Revert "vmgenid: emit uevent when VMGENID updates" (Jason A. Donenfeld) +- random: handle creditable entropy from atomic process context (Jason A. Donenfeld) +- platform/x86/amd/pmc: Extend Framework 13 quirk to more BIOSes (Mario Limonciello) +- platform/x86/intel-uncore-freq: Increase minor number support (Srinivas Pandruvada) +- platform/x86: ISST: Add Granite Rapids-D to HPM CPU list (Srinivas Pandruvada) +- platform/x86/amd: pmf: Add quirk for ROG Zephyrus G14 (Mario Limonciello) +- platform/x86/amd: pmf: Add infrastructure for quirking supported funcs (Mario Limonciello) +- platform/x86/amd: pmf: Decrease error message to debug (Mario Limonciello) +- gitlab-ci: harmonize DataWarehouse tree names (Michael Hofmann) +- redhat/configs: Enable CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON for rhel (Jerry Snitselaar) +- spec: make sure posttrans script doesn't fail if /boot is non-POSIX (glb) +- btrfs: do not wait for short bulk allocation (Qu Wenruo) +- btrfs: zoned: add ASSERT and WARN for EXTENT_BUFFER_ZONED_ZEROOUT handling (Naohiro Aota) +- btrfs: zoned: do not flag ZEROOUT on non-dirty extent buffer (Naohiro Aota) +- dt-bindings: pwm: mediatek,pwm-disp: Document power-domains property (AngeloGioacchino Del Regno) +- pwm: dwc: allow suspend/resume for 16 channels (Raag Jadav) +- Turn on UBSAN for Fedora (Justin M. Forbes) +- Turn on XEN_BALLOON_MEMORY_HOTPLUG for Fedora (Justin M. Forbes) +- NFSD: fix endianness issue in nfsd4_encode_fattr4 (Vasily Gorbik) +- SUNRPC: Fix rpcgss_context trace event acceptor field (Steven Rostedt (Google)) +- bcachefs: set_btree_iter_dontneed also clears should_be_locked (Kent Overstreet) +- bcachefs: fix error path of __bch2_read_super() (Chao Yu) +- bcachefs: Check for backpointer bucket_offset >= bucket size (Kent Overstreet) +- bcachefs: bch_member.btree_allocated_bitmap (Kent Overstreet) +- bcachefs: sysfs internal/trigger_journal_flush (Kent Overstreet) +- bcachefs: Fix bch2_btree_node_fill() for !path (Kent Overstreet) +- bcachefs: add safety checks in bch2_btree_node_fill() (Kent Overstreet) +- bcachefs: Interior known are required to have known key types (Kent Overstreet) +- bcachefs: add missing bounds check in __bch2_bkey_val_invalid() (Kent Overstreet) +- bcachefs: Fix btree node merging on write buffer btrees (Kent Overstreet) +- bcachefs: Disable merges from interior update path (Kent Overstreet) +- bcachefs: Run merges at BCH_WATERMARK_btree (Kent Overstreet) +- bcachefs: Fix missing write refs in fs fio paths (Kent Overstreet) +- bcachefs: Fix deadlock in journal replay (Kent Overstreet) +- bcachefs: Go rw if running any explicit recovery passes (Kent Overstreet) +- bcachefs: Standardize helpers for printing enum strs with bounds checks (Kent Overstreet) +- bcachefs: don't queue btree nodes for rewrites during scan (Kent Overstreet) +- bcachefs: fix race in bch2_btree_node_evict() (Kent Overstreet) +- bcachefs: fix unsafety in bch2_stripe_to_text() (Kent Overstreet) +- bcachefs: fix unsafety in bch2_extent_ptr_to_text() (Kent Overstreet) +- bcachefs: btree node scan: handle encrypted nodes (Kent Overstreet) +- bcachefs: Check for packed bkeys that are too big (Kent Overstreet) +- bcachefs: Fix UAFs of btree_insert_entry array (Kent Overstreet) +- bcachefs: Don't use bch2_btree_node_lock_write_nofail() in btree split path (Kent Overstreet) +- selftests/harness: Prevent infinite loop due to Assert in FIXTURE_TEARDOWN (Shengyu Li) +- selftests/ftrace: Limit length in subsystem-enable tests (Yuanhe Shu) +- Linux 6.9-rc4 (Linus Torvalds) +- kernfs: annotate different lockdep class for of->mutex of writable files (Amir Goldstein) +- x86/cpu/amd: Move TOPOEXT enablement into the topology parser (Thomas Gleixner) +- x86/cpu/amd: Make the NODEID_MSR union actually work (Thomas Gleixner) +- x86/cpu/amd: Make the CPUID 0x80000008 parser correct (Thomas Gleixner) +- x86/bugs: Replace CONFIG_SPECTRE_BHI_{ON,OFF} with CONFIG_MITIGATION_SPECTRE_BHI (Josh Poimboeuf) +- x86/bugs: Remove CONFIG_BHI_MITIGATION_AUTO and spectre_bhi=auto (Josh Poimboeuf) +- x86/bugs: Clarify that syscall hardening isn't a BHI mitigation (Josh Poimboeuf) +- x86/bugs: Fix BHI handling of RRSBA (Josh Poimboeuf) +- x86/bugs: Rename various 'ia32_cap' variables to 'x86_arch_cap_msr' (Ingo Molnar) +- x86/bugs: Cache the value of MSR_IA32_ARCH_CAPABILITIES (Josh Poimboeuf) +- x86/bugs: Fix BHI documentation (Josh Poimboeuf) +- x86/cpu: Actually turn off mitigations by default for SPECULATION_MITIGATIONS=n (Sean Christopherson) +- x86/topology: Don't update cpu_possible_map in topo_set_cpuids() (Thomas Gleixner) +- x86/bugs: Fix return type of spectre_bhi_state() (Daniel Sneddon) +- x86/apic: Force native_apic_mem_read() to use the MOV instruction (Adam Dunlap) +- selftests: kselftest: Fix build failure with NOLIBC (Oleg Nesterov) +- selftests: timers: Fix abs() warning in posix_timers test (John Stultz) +- selftests: kselftest: Mark functions that unconditionally call exit() as __noreturn (Nathan Chancellor) +- selftests: timers: Fix posix_timers ksft_print_msg() warning (John Stultz) +- selftests: timers: Fix valid-adjtimex signed left-shift undefined behavior (John Stultz) +- bug: Fix no-return-statement warning with !CONFIG_BUG (Adrian Hunter) +- timekeeping: Use READ/WRITE_ONCE() for tick_do_timer_cpu (Thomas Gleixner) +- selftests/timers/posix_timers: Reimplement check_timer_distribution() (Oleg Nesterov) +- irqflags: Explicitly ignore lockdep_hrtimer_exit() argument (Arnd Bergmann) +- perf/x86: Fix out of range data (Namhyung Kim) +- locking: Make rwsem_assert_held_write_nolockdep() build with PREEMPT_RT=y (Sebastian Andrzej Siewior) +- irqchip/gic-v3-its: Fix VSYNC referencing an unmapped VPE on GIC v4.1 (Nianyao Tang) +- vhost: correct misleading printing information (Xianting Tian) +- vhost-vdpa: change ioctl # for VDPA_GET_VRING_SIZE (Michael S. Tsirkin) +- virtio: store owner from modules with register_virtio_driver() (Krzysztof Kozlowski) +- vhost: Add smp_rmb() in vhost_enable_notify() (Gavin Shan) +- vhost: Add smp_rmb() in vhost_vq_avail_empty() (Gavin Shan) +- swiotlb: do not set total_used to 0 in swiotlb_create_debugfs_files() (Dexuan Cui) +- swiotlb: fix swiotlb_bounce() to do partial sync's correctly (Michael Kelley) +- swiotlb: extend buffer pre-padding to alloc_align_mask if necessary (Petr Tesarik) +- ata: libata-core: Allow command duration limits detection for ACS-4 drives (Igor Pylypiv) +- ata: libata-scsi: Fix ata_scsi_dev_rescan() error path (Damien Le Moal) +- ata: ahci: Add mask_port_map module parameter (Damien Le Moal) +- zonefs: Use str_plural() to fix Coccinelle warning (Thorsten Blum) +- smb3: fix broken reconnect when password changing on the server by allowing password rotation (Steve French) +- smb: client: instantiate when creating SFU files (Paulo Alcantara) +- smb3: fix Open files on server counter going negative (Steve French) +- smb: client: fix NULL ptr deref in cifs_mark_open_handles_for_deleted_file() (Paulo Alcantara) +- arm64: tlb: Fix TLBI RANGE operand (Gavin Shan) +- MAINTAINERS: Change Krzysztof Kozlowski's email address (Krzysztof Kozlowski) +- cache: sifive_ccache: Partially convert to a platform driver (Samuel Holland) +- firmware: arm_ffa: Fix the partition ID check in ffa_notification_info_get() (Jens Wiklander) +- firmware: arm_scmi: Make raw debugfs entries non-seekable (Cristian Marussi) +- firmware: arm_scmi: Fix wrong fastchannel initialization (Pierre Gondois) +- arm64: dts: imx8qm-ss-dma: fix can lpcg indices (Frank Li) +- arm64: dts: imx8-ss-dma: fix can lpcg indices (Frank Li) +- arm64: dts: imx8-ss-dma: fix adc lpcg indices (Frank Li) +- arm64: dts: imx8-ss-dma: fix pwm lpcg indices (Frank Li) +- arm64: dts: imx8-ss-dma: fix spi lpcg indices (Frank Li) +- arm64: dts: imx8-ss-conn: fix usb lpcg indices (Frank Li) +- arm64: dts: imx8-ss-lsio: fix pwm lpcg indices (Frank Li) +- ARM: dts: imx7s-warp: Pass OV2680 link-frequencies (Fabio Estevam) +- ARM: dts: imx7-mba7: Use 'no-mmc' property (Fabio Estevam) +- arm64: dts: imx8-ss-conn: fix usdhc wrong lpcg clock order (Frank Li) +- arm64: dts: freescale: imx8mp-venice-gw73xx-2x: fix USB vbus regulator (Tim Harvey) +- arm64: dts: freescale: imx8mp-venice-gw72xx-2x: fix USB vbus regulator (Tim Harvey) +- ARM: OMAP2+: fix USB regression on Nokia N8x0 (Aaro Koskinen) +- mmc: omap: restore original power up/down steps (Aaro Koskinen) +- mmc: omap: fix deferred probe (Aaro Koskinen) +- mmc: omap: fix broken slot switch lookup (Aaro Koskinen) +- ARM: OMAP2+: fix N810 MMC gpiod table (Aaro Koskinen) +- ARM: OMAP2+: fix bogus MMC GPIO labels on Nokia N8x0 (Aaro Koskinen) +- iommu/amd: Change log message severity (Vasant Hegde) +- iommu/vt-d: Fix WARN_ON in iommu probe path (Lu Baolu) +- iommu/vt-d: Allocate local memory for page request queue (Jacob Pan) +- iommu/vt-d: Fix wrong use of pasid config (Xuchun Shang) +- iommu: mtk: fix module autoloading (Krzysztof Kozlowski) +- iommu/amd: Do not enable SNP when V2 page table is enabled (Vasant Hegde) +- iommu/amd: Fix possible irq lock inversion dependency issue (Vasant Hegde) +- Revert "PCI: Mark LSI FW643 to avoid bus reset" (Bjorn Helgaas) +- MAINTAINERS: Drop Gustavo Pimentel as PCI DWC Maintainer (Manivannan Sadhasivam) +- block: fix that blk_time_get_ns() doesn't update time after schedule (Yu Kuai) +- raid1: fix use-after-free for original bio in raid1_write_request() (Yu Kuai) +- block: allow device to have both virt_boundary_mask and max segment size (Ming Lei) +- block: fix q->blkg_list corruption during disk rebind (Ming Lei) +- blk-iocost: avoid out of bounds shift (Rik van Riel) +- io-uring: correct typo in comment for IOU_F_TWQ_LAZY_WAKE (Haiyue Wang) +- io_uring/net: restore msg_control on sendzc retry (Pavel Begunkov) +- io_uring: Fix io_cqring_wait() not restoring sigmask on get_timespec64() failure (Alexey Izbyshev) +- MAINTAINERS: remove myself as a Reviewer for Ceph (Jeff Layton) +- ceph: switch to use cap_delay_lock for the unlink delay list (Xiubo Li) +- ceph: redirty page before returning AOP_WRITEPAGE_ACTIVATE (NeilBrown) +- Kconfig: add some hidden tabs on purpose (Linus Torvalds) +- ring-buffer: Only update pages_touched when a new page is touched (Steven Rostedt (Google)) +- tracing: hide unused ftrace_event_id_fops (Arnd Bergmann) +- tracing: Fix FTRACE_RECORD_RECURSION_SIZE Kconfig entry (Prasad Pandit) +- eventfs: Fix kernel-doc comments to functions (Yang Li) +- MIPS: scall: Save thread_info.syscall unconditionally on entry (Jiaxun Yang) +- amdkfd: use calloc instead of kzalloc to avoid integer overflow (Dave Airlie) +- drm/msm/adreno: Set highest_bank_bit for A619 (Luca Weiss) +- drm/msm: fix the `CRASHDUMP_READ` target of `a6xx_get_shader_block()` (Miguel Ojeda) +- dt-bindings: display/msm: sm8150-mdss: add DP node (Dmitry Baryshkov) +- drm/msm/dp: fix typo in dp_display_handle_port_status_changed() (Abhinav Kumar) +- drm/msm/dpu: make error messages at dpu_core_irq_register_callback() more sensible (Dmitry Baryshkov) +- drm/msm/dp: assign correct DP controller ID to x1e80100 interface table (Kuogee Hsieh) +- drm/msm/dpu: don't allow overriding data from catalog (Dmitry Baryshkov) +- drm/msm: Add newlines to some debug prints (Stephen Boyd) +- drm/msm/dp: fix runtime PM leak on connect failure (Johan Hovold) +- drm/msm/dp: fix runtime PM leak on disconnect (Johan Hovold) +- drm/xe: Label RING_CONTEXT_CONTROL as masked (Ashutosh Dixit) +- drm/xe/xe_migrate: Cast to output precision before multiplying operands (Himal Prasad Ghimiray) +- drm/xe/hwmon: Cast result to output precision on left shift of operand (Karthik Poosa) +- drm/xe/display: Fix double mutex initialization (Lucas De Marchi) +- drm/vmwgfx: Enable DMA mappings with SEV (Zack Rusin) +- drm/client: Fully protect modes[] with dev->mode_config.mutex (Ville Syrjälä) +- gpu: host1x: Do not setup DMA for virtual devices (Thierry Reding) +- accel/ivpu: Fix deadlock in context_xa (Jacek Lawrynowicz) +- accel/ivpu: Fix missed error message after VPU rename (Jacek Lawrynowicz) +- accel/ivpu: Return max freq for DRM_IVPU_PARAM_CORE_CLOCK_RATE (Jacek Lawrynowicz) +- accel/ivpu: Improve clarity of MMU error messages (Wachowski, Karol) +- accel/ivpu: Put NPU back to D3hot after failed resume (Jacek Lawrynowicz) +- accel/ivpu: Fix PCI D0 state entry in resume (Wachowski, Karol) +- accel/ivpu: Remove d3hot_after_power_off WA (Jacek Lawrynowicz) +- accel/ivpu: Check return code of ipc->lock init (Wachowski, Karol) +- nouveau: fix function cast warning (Arnd Bergmann) +- nouveau/gsp: Avoid addressing beyond end of rpc->entries (Kees Cook) +- Revert "drm/qxl: simplify qxl_fence_wait" (Alex Constantino) +- drm/ast: Fix soft lockup (Jammy Huang) +- drm/panfrost: Fix the error path in panfrost_mmu_map_fault_addr() (Boris Brezillon) +- drm/amdgpu: differentiate external rev id for gfx 11.5.0 (Yifan Zhang) +- drm/amd/display: Adjust dprefclk by down spread percentage. (Zhongwei) +- drm/amd/display: Set VSC SDP Colorimetry same way for MST and SST (Harry Wentland) +- drm/amd/display: Program VSC SDP colorimetry for all DP sinks >= 1.4 (Harry Wentland) +- drm/amd/display: fix disable otg wa logic in DCN316 (Fudongwang) +- drm/amd/display: Do not recursively call manual trigger programming (Dillon Varone) +- drm/amd/display: always reset ODM mode in context when adding first plane (Wenjing Liu) +- drm/amdgpu: fix incorrect number of active RBs for gfx11 (Tim Huang) +- drm/amd/display: Return max resolution supported by DWB (Alex Hung) +- amd/amdkfd: sync all devices to wait all processes being evicted (Zhigang Luo) +- drm/amdgpu: clear set_q_mode_offs when VM changed (ZhenGuo Yin) +- drm/amdgpu: Fix VCN allocation in CPX partition (Lijo Lazar) +- drm/amd/pm: fix the high voltage issue after unload (Kenneth Feng) +- drm/amd/display: Skip on writeback when it's not applicable (Alex Hung) +- drm/amdgpu: implement IRQ_STATE_ENABLE for SDMA v4.4.2 (Tao Zhou) +- drm/amdgpu: add smu 14.0.1 discovery support (Yifan Zhang) +- drm/amd/swsmu: Update smu v14.0.0 headers to be 14.0.1 compatible (lima1002) +- drm/amdgpu : Increase the mes log buffer size as per new MES FW version (shaoyunl) +- drm/amdgpu : Add mes_log_enable to control mes log feature (shaoyunl) +- drm/amd/pm: fixes a random hang in S4 for SMU v13.0.4/11 (Tim Huang) +- drm/amd/display: add DCN 351 version for microcode load (Li Ma) +- drm/amdgpu: Reset dGPU if suspend got aborted (Lijo Lazar) +- drm/amdgpu/umsch: reinitialize write pointer in hw init (Lang Yu) +- drm/amdgpu: Refine IB schedule error logging (Lijo Lazar) +- drm/amdgpu: always force full reset for SOC21 (Alex Deucher) +- drm/amdkfd: Reset GPU on queue preemption failure (Harish Kasiviswanathan) +- drm/i915/vrr: Disable VRR when using bigjoiner (Ville Syrjälä) +- drm/i915: Disable live M/N updates when using bigjoiner (Ville Syrjälä) +- drm/i915: Disable port sync when bigjoiner is used (Ville Syrjälä) +- drm/i915/psr: Disable PSR when bigjoiner is used (Ville Syrjälä) +- drm/i915/guc: Fix the fix for reset lock confusion (John Harrison) +- drm/i915/hdcp: Fix get remote hdcp capability function (Suraj Kandpal) +- drm/i915/cdclk: Fix voltage_level programming edge case (Ville Syrjälä) +- drm/i915/cdclk: Fix CDCLK programming order when pipes are active (Ville Syrjälä) +- docs: point out that python3-pyyaml is now required (Thorsten Leemhuis) +- cxl: Add checks to access_coordinate calculation to fail missing data (Dave Jiang) +- cxl: Consolidate dport access_coordinate ->hb_coord and ->sw_coord into ->coord (Dave Jiang) +- cxl: Fix incorrect region perf data calculation (Dave Jiang) +- cxl: Fix retrieving of access_coordinates in PCIe path (Dave Jiang) +- cxl: Remove checking of iter in cxl_endpoint_get_perf_coordinates() (Dave Jiang) +- cxl/core: Fix initialization of mbox_cmd.size_out in get event (Kwangjin Ko) +- cxl/core/regs: Fix usage of map->reg_type in cxl_decode_regblock() before assigned (Dave Jiang) +- cxl/mem: Fix for the index of Clear Event Record Handle (Yuquan Wang) +- Drivers: hv: vmbus: Don't free ring buffers that couldn't be re-encrypted (Michael Kelley) +- uio_hv_generic: Don't free decrypted memory (Rick Edgecombe) +- hv_netvsc: Don't free decrypted memory (Rick Edgecombe) +- Drivers: hv: vmbus: Track decrypted status in vmbus_gpadl (Rick Edgecombe) +- Drivers: hv: vmbus: Leak pages if set_memory_encrypted() fails (Rick Edgecombe) +- hv/hv_kvp_daemon: Handle IPv4 and Ipv6 combination for keyfile format (Shradha Gupta) +- hv: vmbus: Convert sprintf() family to sysfs_emit() family (Li Zhijian) +- mshyperv: Introduce hv_numa_node_to_pxm_info() (Nuno Das Neves) +- x86/hyperv: Cosmetic changes for hv_apic.c (Erni Sri Satya Vennela) +- ACPI: bus: allow _UID matching for integer zero (Raag Jadav) +- ACPI: scan: Do not increase dep_unmet for already met dependencies (Hans de Goede) +- PM: s2idle: Make sure CPUs will wakeup directly on resume (Anna-Maria Behnsen) +- net: ena: Set tx_info->xdpf value to NULL (David Arinzon) +- net: ena: Fix incorrect descriptor free behavior (David Arinzon) +- net: ena: Wrong missing IO completions check order (David Arinzon) +- net: ena: Fix potential sign extension issue (David Arinzon) +- Bluetooth: l2cap: Don't double set the HCI_CONN_MGMT_CONNECTED bit (Archie Pusaka) +- Bluetooth: hci_sock: Fix not validating setsockopt user input (Luiz Augusto von Dentz) +- Bluetooth: ISO: Fix not validating setsockopt user input (Luiz Augusto von Dentz) +- Bluetooth: L2CAP: Fix not validating setsockopt user input (Luiz Augusto von Dentz) +- Bluetooth: RFCOMM: Fix not validating setsockopt user input (Luiz Augusto von Dentz) +- Bluetooth: SCO: Fix not validating setsockopt user input (Luiz Augusto von Dentz) +- Bluetooth: Fix memory leak in hci_req_sync_complete() (Dmitry Antipov) +- Bluetooth: hci_sync: Fix using the same interval and window for Coded PHY (Luiz Augusto von Dentz) +- Bluetooth: ISO: Don't reject BT_ISO_QOS if parameters are unset (Luiz Augusto von Dentz) +- af_unix: Fix garbage collector racing against connect() (Michal Luczaj) +- net: dsa: mt7530: trap link-local frames regardless of ST Port State (Arınç ÜNAL) +- Revert "s390/ism: fix receive message buffer allocation" (Gerd Bayer) +- net: sparx5: fix wrong config being used when reconfiguring PCS (Daniel Machon) +- net/mlx5: fix possible stack overflows (Arnd Bergmann) +- net/mlx5: Disallow SRIOV switchdev mode when in multi-PF netdev (Tariq Toukan) +- net/mlx5e: RSS, Block XOR hash with over 128 channels (Carolina Jubran) +- net/mlx5e: Do not produce metadata freelist entries in Tx port ts WQE xmit (Rahul Rameshbabu) +- net/mlx5e: HTB, Fix inconsistencies with QoS SQs number (Carolina Jubran) +- net/mlx5e: Fix mlx5e_priv_init() cleanup flow (Carolina Jubran) +- net/mlx5e: RSS, Block changing channels number when RXFH is configured (Carolina Jubran) +- net/mlx5: Correctly compare pkt reformat ids (Cosmin Ratiu) +- net/mlx5: Properly link new fs rules into the tree (Cosmin Ratiu) +- net/mlx5: offset comp irq index in name by one (Michael Liang) +- net/mlx5: Register devlink first under devlink lock (Shay Drory) +- net/mlx5: E-switch, store eswitch pointer before registering devlink_param (Shay Drory) +- netfilter: complete validation of user input (Eric Dumazet) +- r8169: add missing conditional compiling for call to r8169_remove_leds (Heiner Kallweit) +- net: dsa: mt7530: fix enabling EEE on MT7531 switch on all boards (Arınç ÜNAL) +- r8169: fix LED-related deadlock on module removal (Heiner Kallweit) +- pds_core: Fix pdsc_check_pci_health function to use work thread (Brett Creeley) +- ipv6: fix race condition between ipv6_get_ifaddr and ipv6_del_addr (Jiri Benc) +- nfc: llcp: fix nfc_llcp_setsockopt() unsafe copies (Eric Dumazet) +- mISDN: fix MISDN_TIME_STAMP handling (Eric Dumazet) +- net: add copy_safe_from_sockptr() helper (Eric Dumazet) +- ipv4/route: avoid unused-but-set-variable warning (Arnd Bergmann) +- ipv6: fib: hide unused 'pn' variable (Arnd Bergmann) +- octeontx2-af: Fix NIX SQ mode and BP config (Geetha sowjanya) +- af_unix: Clear stale u->oob_skb. (Kuniyuki Iwashima) +- net: ks8851: Handle softirqs at the end of IRQ thread to fix hang (Marek Vasut) +- net: ks8851: Inline ks8851_rx_skb() (Marek Vasut) +- net: stmmac: mmc_core: Add GMAC mmc tx/rx missing statistics (Minda Chen) +- net: stmmac: mmc_core: Add GMAC LPI statistics (Minda Chen) +- bnxt_en: Reset PTP tx_avail after possible firmware reset (Pavan Chebbi) +- bnxt_en: Fix error recovery for RoCE ulp client (Vikas Gupta) +- bnxt_en: Fix possible memory leak in bnxt_rdma_aux_device_init() (Vikas Gupta) +- s390/ism: fix receive message buffer allocation (Gerd Bayer) +- geneve: fix header validation in geneve[6]_xmit_skb (Eric Dumazet) +- MAINTAINERS: Drop Li Yang as their email address stopped working (Uwe Kleine-König) +- batman-adv: Avoid infinite loop trying to resize local TT (Sven Eckelmann) +- lib: checksum: hide unused expected_csum_ipv6_magic[] (Arnd Bergmann) +- octeontx2-pf: Fix transmit scheduler resource leak (Hariprasad Kelam) +- virtio_net: Do not send RSS key if it is not supported (Breno Leitao) +- xsk: validate user input for XDP_{UMEM|COMPLETION}_FILL_RING (Eric Dumazet) +- u64_stats: fix u64_stats_init() for lockdep when used repeatedly in one file (Petr Tesarik) +- net: openvswitch: fix unwanted error log on timeout policy probing (Ilya Maximets) +- scsi: qla2xxx: Fix off by one in qla_edif_app_getstats() (Dan Carpenter) +- scsi: hisi_sas: Modify the deadline for ata_wait_after_reset() (Xiang Chen) +- scsi: hisi_sas: Handle the NCQ error returned by D2H frame (Xiang Chen) +- scsi: target: Fix SELinux error when systemd-modules loads the target module (Maurizio Lombardi) +- scsi: sg: Avoid race in error handling & drop bogus warn (Alexander Wetzel) +- LoongArch: Include linux/sizes.h in addrspace.h to prevent build errors (Randy Dunlap) +- LoongArch: Update dts for Loongson-2K2000 to support GMAC/GNET (Huacai Chen) +- LoongArch: Update dts for Loongson-2K2000 to support PCI-MSI (Huacai Chen) +- LoongArch: Update dts for Loongson-2K2000 to support ISA/LPC (Huacai Chen) +- LoongArch: Update dts for Loongson-2K1000 to support ISA/LPC (Huacai Chen) +- LoongArch: Make virt_addr_valid()/__virt_addr_valid() work with KFENCE (Huacai Chen) +- LoongArch: Make {virt, phys, page, pfn} translation work with KFENCE (Huacai Chen) +- mm: Move lowmem_page_address() a little later (Huacai Chen) +- bcachefs: Fix __bch2_btree_and_journal_iter_init_node_iter() (Kent Overstreet) +- bcachefs: Kill read lock dropping in bch2_btree_node_lock_write_nofail() (Kent Overstreet) +- bcachefs: Fix a race in btree_update_nodes_written() (Kent Overstreet) +- bcachefs: btree_node_scan: Respect member.data_allowed (Kent Overstreet) +- bcachefs: Don't scan for btree nodes when we can reconstruct (Kent Overstreet) +- bcachefs: Fix check_topology() when using node scan (Kent Overstreet) +- bcachefs: fix eytzinger0_find_gt() (Kent Overstreet) +- bcachefs: fix bch2_get_acl() transaction restart handling (Kent Overstreet) +- bcachefs: fix the count of nr_freed_pcpu after changing bc->freed_nonpcpu list (Hongbo Li) +- bcachefs: Fix gap buffer bug in bch2_journal_key_insert_take() (Kent Overstreet) +- bcachefs: Rename struct field swap to prevent macro naming collision (Thorsten Blum) +- MAINTAINERS: Add entry for bcachefs documentation (Bagas Sanjaya) +- Documentation: filesystems: Add bcachefs toctree (Bagas Sanjaya) +- bcachefs: JOURNAL_SPACE_LOW (Kent Overstreet) +- bcachefs: Disable errors=panic for BCH_IOCTL_FSCK_OFFLINE (Kent Overstreet) +- bcachefs: Fix BCH_IOCTL_FSCK_OFFLINE for encrypted filesystems (Kent Overstreet) +- bcachefs: fix rand_delete unit test (Kent Overstreet) +- bcachefs: fix ! vs ~ typo in __clear_bit_le64() (Dan Carpenter) +- bcachefs: Fix rebalance from durability=0 device (Kent Overstreet) +- bcachefs: Print shutdown journal sequence number (Kent Overstreet) +- bcachefs: Further improve btree_update_to_text() (Kent Overstreet) +- bcachefs: Move btree_updates to debugfs (Kent Overstreet) +- bcachefs: Bump limit in btree_trans_too_many_iters() (Kent Overstreet) +- bcachefs: Make snapshot_is_ancestor() safe (Kent Overstreet) +- bcachefs: create debugfs dir for each btree (Thomas Bertschinger) +- platform/chrome: cros_ec_uart: properly fix race condition (Noah Loomans) +- Use LLVM=1 for clang_lto build (Nikita Popov) +- redhat: fix def_variants.yaml check (Jan Stancek) +- kprobes: Fix possible use-after-free issue on kprobe registration (Zheng Yejian) +- fs/proc: Skip bootloader comment if no embedded kernel parameters (Masami Hiramatsu) +- fs/proc: remove redundant comments from /proc/bootconfig (Zhenhua Huang) +- media: mediatek: vcodec: support 36 bits physical address (Yunfei Dong) +- media: mediatek: vcodec: adding lock to protect encoder context list (Yunfei Dong) +- media: mediatek: vcodec: adding lock to protect decoder context list (Yunfei Dong) +- media: mediatek: vcodec: Fix oops when HEVC init fails (Nicolas Dufresne) +- media: mediatek: vcodec: Handle VP9 superframe bitstream with 8 sub-frames (Irui Wang) +- randomize_kstack: Improve entropy diffusion (Kees Cook) +- ubsan: fix unused variable warning in test module (Arnd Bergmann) +- gcc-plugins/stackleak: Avoid .head.text section (Ard Biesheuvel) +- tools/power turbostat: v2024.04.10 (Len Brown) +- tools/power/turbostat: Add support for Xe sysfs knobs (Zhang Rui) +- tools/power/turbostat: Add support for new i915 sysfs knobs (Zhang Rui) +- tools/power/turbostat: Introduce BIC_SAM_mc6/BIC_SAMMHz/BIC_SAMACTMHz (Zhang Rui) +- tools/power/turbostat: Fix uncore frequency file string (Justin Ernst) +- tools/power/turbostat: Unify graphics sysfs snapshots (Zhang Rui) +- tools/power/turbostat: Cache graphics sysfs path (Zhang Rui) +- tools/power/turbostat: Enable MSR_CORE_C1_RES support for ICX (Zhang Rui) +- tools/power turbostat: Add selftests (Patryk Wlazlyn) +- tools/power turbostat: read RAPL counters via perf (Patryk Wlazlyn) +- tools/power turbostat: Add proper re-initialization for perf file descriptors (Patryk Wlazlyn) +- tools/power turbostat: Clear added counters when in no-msr mode (Patryk Wlazlyn) +- tools/power turbostat: add early exits for permission checks (Patryk Wlazlyn) +- tools/power turbostat: detect and disable unavailable BICs at runtime (Patryk Wlazlyn) +- tools/power turbostat: Add reading aperf and mperf via perf API (Patryk Wlazlyn) +- tools/power turbostat: Add --no-perf option (Patryk Wlazlyn) +- tools/power turbostat: Add --no-msr option (Patryk Wlazlyn) +- tools/power turbostat: enhance -D (debug counter dump) output (Len Brown) +- tools/power turbostat: Fix warning upon failed /dev/cpu_dma_latency read (Len Brown) +- tools/power turbostat: Read base_hz and bclk from CPUID.16H if available (Patryk Wlazlyn) +- tools/power turbostat: Print ucode revision only if valid (Patryk Wlazlyn) +- tools/power turbostat: Expand probe_intel_uncore_frequency() (Len Brown) +- tools/power turbostat: Do not print negative LPI residency (Chen Yu) +- tools/power turbostat: Fix Bzy_MHz documentation typo (Peng Liu) +- tools/power turbostat: Increase the limit for fd opened (Wyes Karny) +- tools/power turbostat: Fix added raw MSR output (Doug Smythies) +- platform/x86: lg-laptop: fix %%s null argument warning (Gergo Koteles) +- platform/x86: intel-vbtn: Update tablet mode switch at end of probe (Gwendal Grignou) +- platform/x86: intel-vbtn: Use acpi_has_method to check for switch (Gwendal Grignou) +- platform/x86: toshiba_acpi: Silence logging for some events (Hans de Goede) +- platform/x86/intel/hid: Add Lunar Lake and Arrow Lake support (Sumeet Pawnikar) +- platform/x86/intel/hid: Don't wake on 5-button releases (David McFarland) +- platform/x86: acer-wmi: Add support for Acer PH18-71 (Bernhard Rosenkränzer) +- redhat: sanity check yaml files (Jan Stancek) +- spec: rework filter-mods and mod-denylist (Jan Stancek) +- nouveau: fix devinit paths to only handle display on GSP. (Dave Airlie) +- compiler.h: Add missing quote in macro comment (Thorsten Blum) +- KVM: x86: Add BHI_NO (Daniel Sneddon) +- x86/bhi: Mitigate KVM by default (Pawan Gupta) +- x86/bhi: Add BHI mitigation knob (Pawan Gupta) +- x86/bhi: Enumerate Branch History Injection (BHI) bug (Pawan Gupta) +- x86/bhi: Define SPEC_CTRL_BHI_DIS_S (Daniel Sneddon) +- x86/bhi: Add support for clearing branch history at syscall entry (Pawan Gupta) +- x86/syscall: Don't force use of indirect calls for system calls (Linus Torvalds) +- x86/bugs: Change commas to semicolons in 'spectre_v2' sysfs file (Josh Poimboeuf) +- btrfs: always clear PERTRANS metadata during commit (Boris Burkov) +- btrfs: make btrfs_clear_delalloc_extent() free delalloc reserve (Boris Burkov) +- btrfs: qgroup: convert PREALLOC to PERTRANS after record_root_in_trans (Boris Burkov) +- btrfs: record delayed inode root in transaction (Boris Burkov) +- btrfs: qgroup: fix qgroup prealloc rsv leak in subvolume operations (Boris Burkov) +- btrfs: qgroup: correctly model root qgroup rsv in convert (Boris Burkov) +- memblock tests: fix undefined reference to `BIT' (Wei Yang) +- memblock tests: fix undefined reference to `panic' (Wei Yang) +- memblock tests: fix undefined reference to `early_pfn_to_nid' (Wei Yang) +- Linux 6.9-rc3 (Linus Torvalds) +- x86/retpoline: Add NOENDBR annotation to the SRSO dummy return thunk (Borislav Petkov (AMD)) +- x86/mce: Make sure to grab mce_sysfs_mutex in set_bank() (Borislav Petkov (AMD)) +- x86/CPU/AMD: Track SNP host status with cc_platform_*() (Borislav Petkov (AMD)) +- x86/cc: Add cc_platform_set/_clear() helpers (Borislav Petkov (AMD)) +- x86/kvm/Kconfig: Have KVM_AMD_SEV select ARCH_HAS_CC_PLATFORM (Borislav Petkov (AMD)) +- x86/coco: Require seeding RNG with RDRAND on CoCo systems (Jason A. Donenfeld) +- x86/numa/32: Include missing (Arnd Bergmann) +- x86/resctrl: Fix uninitialized memory read when last CPU of domain goes offline (Reinette Chatre) +- timers/migration: Return early on deactivation (Anna-Maria Behnsen) +- timers/migration: Fix ignored event due to missing CPU update (Frederic Weisbecker) +- vdso: Use CONFIG_PAGE_SHIFT in vdso/datapage.h (Arnd Bergmann) +- timers: Fix text inconsistencies and spelling (Randy Dunlap) +- tick/sched: Fix struct tick_sched doc warnings (Randy Dunlap) +- tick/sched: Fix various kernel-doc warnings (Randy Dunlap) +- timers: Fix kernel-doc format and add Return values (Randy Dunlap) +- time/timekeeping: Fix kernel-doc warnings and typos (Randy Dunlap) +- time/timecounter: Fix inline documentation (Randy Dunlap) +- perf/x86/intel/ds: Don't clear ->pebs_data_cfg for the last PEBS event (Kan Liang) +- redhat: regenerate test-data (Jan Stancek) [RHEL-29722] +- redhat/Makefile.variables: don't set DISTRO (Jan Stancek) [RHEL-29722] +- redhat/Makefile.variables: set PATCHLIST_URL to none (Jan Stancek) [RHEL-29722] +- redhat/kernel.spec.template: fix with_realtime (Jan Stancek) [RHEL-29722] +- Linux v6.9.0-0.rc4 +Resolves: RHEL-29722 + * Mon Apr 08 2024 Jan Stancek [6.9.0-0.rc2.1.el10] - remove ARK .gitlab-ci.yml (Jan Stancek) - redhat: update rpminspect with c9s one (Jan Stancek) diff --git a/kernel.spec b/kernel.spec index ef4d0ab83..8720c2f10 100644 --- a/kernel.spec +++ b/kernel.spec @@ -163,15 +163,15 @@ Summary: The Linux kernel %define specrpmversion 6.9.0 %define specversion 6.9.0 %define patchversion 6.9 -%define pkgrelease 0.rc2.1 +%define pkgrelease 0.rc4.2 %define kversion 6 -%define tarfile_release 6.9.0-0.rc2.1.el10 +%define tarfile_release 6.9.0-0.rc4.2.el10 # This is needed to do merge window version magic %define patchlevel 9 # This allows pkg_release to have configurable %%{?dist} tag -%define specrelease 0.rc2.1%{?buildid}%{?dist} +%define specrelease 0.rc4.2%{?buildid}%{?dist} # This defines the kabi tarball version -%define kabiversion 6.9.0-0.rc2.1.el10 +%define kabiversion 6.9.0-0.rc4.2.el10 # If this variable is set to 1, a bpf selftests build failure will cause a # fatal kernel package build error @@ -207,7 +207,7 @@ Summary: The Linux kernel # kernel-64k (aarch64 kernel with 64K page_size) %define with_arm64_64k %{?_without_arm64_64k: 0} %{?!_without_arm64_64k: 1} # kernel-rt (x86_64 and aarch64 only PREEMPT_RT enabled kernel) -%define with_realtime %{?_without_realtime: 0} %{?!_with_realtime: 1} +%define with_realtime %{?_without_realtime: 0} %{?!_without_realtime: 1} # Supported variants # with_base with_debug with_gcov @@ -322,7 +322,8 @@ Summary: The Linux kernel %endif %global clang_make_opts HOSTCC=clang CC=clang LLVM_IAS=%{llvm_ias} %if %{with clang_lto} -%global clang_make_opts %{clang_make_opts} LD=ld.lld HOSTLD=ld.lld AR=llvm-ar NM=llvm-nm HOSTAR=llvm-ar HOSTNM=llvm-nm +# LLVM=1 enables use of all LLVM tools. +%global clang_make_opts %{clang_make_opts} LLVM=1 %endif %global make_opts %{make_opts} %{clang_make_opts} # clang does not support the -fdump-ipa-clones option @@ -662,7 +663,9 @@ BuildRequires: bzip2, xz, findutils, m4, perl-interpreter, perl-Carp, perl-devel BuildRequires: gcc, binutils, redhat-rpm-config, hmaccalc, bison, flex, gcc-c++ BuildRequires: net-tools, hostname, bc, elfutils-devel BuildRequires: dwarves +BuildRequires: python3 BuildRequires: python3-devel +BuildRequires: python3-pyyaml BuildRequires: kernel-rpm-macros # glibc-static is required for a consistent build environment (specifically # CONFIG_CC_CAN_LINK_STATIC=y). @@ -671,7 +674,7 @@ BuildRequires: glibc-static BuildRequires: rsync %endif %if %{with_doc} -BuildRequires: xmlto, asciidoc, python3-sphinx, python3-sphinx_rtd_theme, python3-pyyaml +BuildRequires: xmlto, asciidoc, python3-sphinx, python3-sphinx_rtd_theme %endif %if %{with_sparse} BuildRequires: sparse @@ -860,6 +863,7 @@ Source13: redhatsecureboot003.cer Source20: mod-denylist.sh Source21: mod-sign.sh +Source22: filtermods.py %define modsign_cmd %{SOURCE21} @@ -868,7 +872,6 @@ Source23: x509.genkey.rhel Source24: %{name}-aarch64-rhel.config Source25: %{name}-aarch64-debug-rhel.config -Source26: mod-extra.list.rhel Source27: %{name}-ppc64le-rhel.config Source28: %{name}-ppc64le-debug-rhel.config @@ -878,11 +881,7 @@ Source31: %{name}-s390x-zfcpdump-rhel.config Source32: %{name}-x86_64-rhel.config Source33: %{name}-x86_64-debug-rhel.config -Source34: filter-x86_64.sh.rhel -Source35: filter-aarch64.sh.rhel -Source36: filter-ppc64le.sh.rhel -Source37: filter-s390x.sh.rhel -Source38: filter-modules.sh.rhel +Source34: def_variants.yaml.rhel Source41: x509.genkey.centos # ARM64 64K page-size kernel config @@ -893,7 +892,6 @@ Source43: %{name}-aarch64-64k-debug-rhel.config %if 0%{?include_fedora} Source50: x509.genkey.fedora -Source51: mod-extra.list.fedora Source52: %{name}-aarch64-fedora.config Source53: %{name}-aarch64-debug-fedora.config @@ -906,11 +904,7 @@ Source59: %{name}-s390x-debug-fedora.config Source60: %{name}-x86_64-fedora.config Source61: %{name}-x86_64-debug-fedora.config -Source62: filter-x86_64.sh.fedora -Source63: filter-aarch64.sh.fedora -Source64: filter-ppc64le.sh.fedora -Source65: filter-s390x.sh.fedora -Source66: filter-modules.sh.fedora +Source62: def_variants.yaml.fedora %endif Source70: partial-kgcov-snip.config @@ -924,9 +918,6 @@ Source77: partial-clang_lto-aarch64-debug-snip.config Source80: generate_all_configs.sh Source81: process_configs.sh -Source84: mod-internal.list -Source85: mod-partner.list - Source86: dracut-virt.conf Source87: flavors @@ -950,9 +941,6 @@ Source213: Module.kabi_dup_x86_64 Source300: kernel-abi-stablelists-%{kabiversion}.tar.xz Source301: kernel-kabi-dw-%{kabiversion}.tar.xz -# RT specific virt module -Source400: mod-kvm.list - %if %{include_rt} # realtime config files Source474: %{name}-aarch64-rt-rhel.config @@ -1504,6 +1492,7 @@ The meta-package for the %{1} kernel\ Summary: KVM modules for package kernel%{?1:-%{1}}\ Group: System Environment/Kernel\ Requires: kernel-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\ +Requires: kernel%{?1:-%{1}}-modules-core-uname-r = %{KVERREL}%{uname_suffix %{?1:+%{1}}}\ Provides: installonlypkg(kernel-module)\ Provides: kernel%{?1:-%{1}}-kvm-%{_target_cpu} = %{version}-%{release}\ AutoReq: no\ @@ -2524,97 +2513,30 @@ BuildKernel() { ( find $RPM_BUILD_ROOT/lib/modules/$KernelVer -name '*.ko' | xargs /sbin/modinfo -l | \ grep -E -v 'GPL( v2)?$|Dual BSD/GPL$|Dual MPL/GPL$|GPL and additional rights$' ) && exit 1 - remove_depmod_files() - { - # remove files that will be auto generated by depmod at rpm -i time - pushd $RPM_BUILD_ROOT/lib/modules/$KernelVer/ - # in case below list needs to be extended, remember to add a - # matching ghost entry in the files section as well - rm -f modules.{alias,alias.bin,builtin.alias.bin,builtin.bin} \ - modules.{dep,dep.bin,devname,softdep,symbols,symbols.bin} - popd - } - %{log_msg "Remove depmod files"} - remove_depmod_files - - %{log_msg "Identify modules in kenrel-modules-* packages"} - # Identify modules in the kernel-modules-extras package - %{SOURCE20} $RPM_BUILD_ROOT lib/modules/$KernelVer $(realpath configs/mod-extra.list) - # Identify modules in the kernel-modules-internal package - %{SOURCE20} $RPM_BUILD_ROOT lib/modules/$KernelVer %{SOURCE84} internal -%if 0%{!?fedora:1} - # Identify modules in the kernel-modules-partner package - %{SOURCE20} $RPM_BUILD_ROOT lib/modules/$KernelVer %{SOURCE85} partner -%endif - if [[ "$Variant" == "rt" || "$Variant" == "rt-debug" ]]; then - # Identify modules in the kernel-rt-kvm package - %{SOURCE20} $RPM_BUILD_ROOT lib/modules/$KernelVer %{SOURCE400} kvm + if [ $DoModules -eq 0 ]; then + %{log_msg "Create empty files for RPM packaging"} + # Ensure important files/directories exist to let the packaging succeed + echo '%%defattr(-,-,-)' > ../kernel${Variant:+-${Variant}}-modules-core.list + echo '%%defattr(-,-,-)' > ../kernel${Variant:+-${Variant}}-modules.list + echo '%%defattr(-,-,-)' > ../kernel${Variant:+-${Variant}}-modules-extra.list + echo '%%defattr(-,-,-)' > ../kernel${Variant:+-${Variant}}-modules-internal.list + echo '%%defattr(-,-,-)' > ../kernel${Variant:+-${Variant}}-modules-partner.list + mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/kernel + # Add files usually created by make modules, needed to prevent errors + # thrown by depmod during package installation + touch $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.order + touch $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.builtin fi - # - # Generate the kernel-core and kernel-modules files lists - # - %{log_msg "Gemerate the kernel-core and kernel-modules files lists"} - - # Copy the System.map file for depmod to use, and create a backup of the - # full module tree so we can restore it after we're done filtering + # Copy the System.map file for depmod to use cp System.map $RPM_BUILD_ROOT/. - cp configs/filter-*.sh $RPM_BUILD_ROOT/. - pushd $RPM_BUILD_ROOT - mkdir restore - cp -r lib/modules/$KernelVer/* restore/. - - %{log_msg "Remove files in the kernel-modules-* file lists"} - # don't include anything going into kernel-modules-extra in the file lists - xargs rm -rf < mod-extra.list - # don't include anything going into kernel-modules-internal in the file lists - xargs rm -rf < mod-internal.list -%if 0%{!?fedora:1} - # don't include anything going into kernel-modules-partner in the file lists - xargs rm -rf < mod-partner.list -%endif - if [[ "$Variant" == "rt" || "$Variant" == "rt-debug" ]]; then - # don't include anything going into kernel-rt-kvm in the file lists - xargs rm -rf < mod-kvm.list - fi - - if [ $DoModules -eq 1 ]; then - %{log_msg "Filter files into core and modules lists"} - # Find all the module files and filter them out into the core and - # modules lists. This actually removes anything going into -modules - # from the dir. - find lib/modules/$KernelVer/kernel -name *.ko | sort -n > modules.list - ./filter-modules.sh modules.list %{_target_cpu} - rm filter-*.sh - - # Run depmod on the resulting module tree and make sure it isn't broken - depmod -b . -aeF ./System.map $KernelVer &> depmod.out - if [ -s depmod.out ]; then - %{log_msg "Depmod failure"} - cat depmod.out - exit 1 - else - rm depmod.out - fi - else - %{log_msg "Create empty files for RPM packaging"} - # Ensure important files/directories exist to let the packaging succeed - echo '%%defattr(-,-,-)' > modules.list - echo '%%defattr(-,-,-)' > k-d.list - mkdir -p lib/modules/$KernelVer/kernel - # Add files usually created by make modules, needed to prevent errors - # thrown by depmod during package installation - touch lib/modules/$KernelVer/modules.order - touch lib/modules/$KernelVer/modules.builtin - fi if [[ "$Variant" == "rt" || "$Variant" == "rt-debug" ]]; then %{log_msg "Skipping efiuki build"} else %if %{with_efiuki} - %{log_msg "Setup the EFI UKI kernel"} - popd + %{log_msg "Setup the EFI UKI kernel"} KernelUnifiedImageDir="$RPM_BUILD_ROOT/lib/modules/$KernelVer" KernelUnifiedImage="$KernelUnifiedImageDir/$InstallName-virt.efi" @@ -2647,57 +2569,116 @@ BuildKernel() { # signkernel %endif - pushd $RPM_BUILD_ROOT # with_efiuki %endif : # in case of empty block fi # "$Variant" == "rt" || "$Variant" == "rt-debug" - remove_depmod_files - # Go back and find all of the various directories in the tree. We use this - # for the dir lists in kernel-core - find lib/modules/$KernelVer/kernel -mindepth 1 -type d | sort -n > module-dirs.list + # + # Generate the modules files lists + # + move_kmod_list() + { + local module_list="$1" + local subdir_name="$2" + + mkdir -p "$RPM_BUILD_ROOT/lib/modules/$KernelVer/$subdirname" + + set +x + while read -r kmod; do + local target_file="$RPM_BUILD_ROOT/lib/modules/$KernelVer/$subdir_name/$kmod" + local target_dir="${target_file%/*}" + mkdir -p "$target_dir" + mv "$RPM_BUILD_ROOT/lib/modules/$KernelVer/kernel/$kmod" "$target_dir" + done < <(sed -e 's|^kernel/||' "$module_list") + set -x + } + + create_module_file_list() + { + # subdirectory within /lib/modules/$KernelVer where kmods should go + local module_subdir="$1" + # kmod list with relative paths produced by filtermods.py + local relative_kmod_list="$2" + # list with absolute paths to kmods and other files to be included + local absolute_file_list="$3" + # if 1, this adds also all kmod directories to absolute_file_list + local add_all_dirs="$4" + + if [ "$module_subdir" == "kernel" ]; then + # make kmod paths absolute + sed -e 's|^kernel/|/lib/modules/'$KernelVer'/kernel/|' %{?zipsed} $relative_kmod_list > $absolute_file_list + else + # move kmods into subdirs if needed (internal, partner, extra,..) + move_kmod_list $relative_kmod_list $module_subdir + # make kmod paths absolute + sed -e 's|^kernel/|/lib/modules/'$KernelVer'/'$module_subdir'/|' $relative_kmod_list > $absolute_file_list + # run deny-mod script, this adds blacklist-* files to absolute_file_list + %{SOURCE20} "$RPM_BUILD_ROOT" lib/modules/$KernelVer $absolute_file_list +%if %{zipmodules} + # deny-mod script works with kmods as they are now (not compressed), + # but if they will be we need to add compext to all + sed -i %{?zipsed} $absolute_file_list +%endif + # add also dir for the case when there are no kmods + echo "%dir /lib/modules/$KernelVer/$module_subdir" >> $absolute_file_list + fi + + if [ "$add_all_dirs" -eq 1 ]; then + (cd $RPM_BUILD_ROOT; find lib/modules/$KernelVer/kernel -mindepth 1 -type d | sort -n) > ../module-dirs.list + sed -e 's|^lib|%dir /lib|' ../module-dirs.list >> $absolute_file_list + fi + } + + if [ $DoModules -eq 1 ]; then + # save modules.dep for debugging + cp $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.dep ../ + + %{log_msg "Create module list files for all kernel variants"} + variants_param="" + if [[ "$Variant" == "rt" || "$Variant" == "rt-debug" ]]; then + variants_param="-r rt" + fi + # this creates ../modules-*.list output, where each kmod path is as it + # appears in modules.dep (relative to lib/modules/$KernelVer) + %{SOURCE22} sort -d $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.dep -c configs/def_variants.yaml $variants_param -o .. + if [ $? -ne 0 ]; then + echo "8< --- modules.dep ---" + cat $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.dep + echo "--- modules.dep --- >8" + exit 1 + fi + + create_module_file_list "kernel" ../modules-core.list ../kernel${Variant:+-${Variant}}-modules-core.list 1 + create_module_file_list "kernel" ../modules.list ../kernel${Variant:+-${Variant}}-modules.list 0 + create_module_file_list "internal" ../modules-internal.list ../kernel${Variant:+-${Variant}}-modules-internal.list 0 + create_module_file_list "extra" ../modules-extra.list ../kernel${Variant:+-${Variant}}-modules-extra.list 0 + if [[ "$Variant" == "rt" || "$Variant" == "rt-debug" ]]; then + create_module_file_list "kvm" ../modules-rt-kvm.list ../kernel${Variant:+-${Variant}}-modules-rt-kvm.list 0 + fi +%if 0%{!?fedora:1} + create_module_file_list "partner" ../modules-partner.list ../kernel${Variant:+-${Variant}}-modules-partner.list 1 0 +%endif + fi # $DoModules -eq 1 + + remove_depmod_files() + { + # remove files that will be auto generated by depmod at rpm -i time + pushd $RPM_BUILD_ROOT/lib/modules/$KernelVer/ + # in case below list needs to be extended, remember to add a + # matching ghost entry in the files section as well + rm -f modules.{alias,alias.bin,builtin.alias.bin,builtin.bin} \ + modules.{dep,dep.bin,devname,softdep,symbols,symbols.bin} + popd + } # Cleanup %{log_msg "Cleanup build files"} - rm System.map - # Just "cp -r" can be very slow: here, it rewrites _existing files_ - # with open(O_TRUNC). Many filesystems synchronously wait for metadata - # update for such file rewrites (seen in strace as final close syscall - # taking a long time). On a rotational disk, cp was observed to take - # more than 5 minutes on ext4 and more than 15 minutes (!) on xfs. - # With --remove-destination, we avoid this, and copying - # (with enough RAM to cache it) takes 5 seconds: - cp -r --remove-destination restore/* lib/modules/$KernelVer/. - rm -rf restore - popd - - # Make sure the files lists start with absolute paths or rpmbuild fails. - # Also add in the dir entries - %{log_msg "Create module list files for all kernel variants"} - sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/k-d.list > ../kernel${Variant:+-${Variant}}-modules.list - sed -e 's/^lib*/%dir \/lib/' %{?zipsed} $RPM_BUILD_ROOT/module-dirs.list > ../kernel${Variant:+-${Variant}}-modules-core.list - sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/modules.list >> ../kernel${Variant:+-${Variant}}-modules-core.list - sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/mod-extra.list >> ../kernel${Variant:+-${Variant}}-modules-extra.list - if [[ "$Variant" == "rt" || "$Variant" == "rt-debug" ]]; then - sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/mod-kvm.list >> ../kernel${Variant:+-${Variant}}-kvm.list - fi - - # Cleanup kernel variant module lists - %{log_msg "Clean up kernel variant module lists"} - rm -f $RPM_BUILD_ROOT/k-d.list - rm -f $RPM_BUILD_ROOT/modules.list - rm -f $RPM_BUILD_ROOT/module-dirs.list - rm -f $RPM_BUILD_ROOT/mod-extra.list - rm -f $RPM_BUILD_ROOT/mod-internal.list -%if 0%{!?fedora:1} - rm -f $RPM_BUILD_ROOT/mod-partner.list -%endif - if [[ "$Variant" == "rt" || "$Variant" == "rt-debug" ]]; then - rm -f $RPM_BUILD_ROOT/mod-kvm.list - fi + rm -f $RPM_BUILD_ROOT/System.map + %{log_msg "Remove depmod files"} + remove_depmod_files %if %{signmodules} if [ $DoModules -eq 1 ]; then @@ -3466,7 +3447,7 @@ fi\ rm -f %{_localstatedir}/lib/rpm-state/%{name}/installing_core_%{KVERREL}%{?-v:+%{-v*}}\ /bin/kernel-install add %{KVERREL}%{?-v:+%{-v*}} /lib/modules/%{KVERREL}%{?-v:+%{-v*}}/vmlinuz%{?-u:-%{-u*}.efi} || exit $?\ if [[ ! -e "/boot/symvers-%{KVERREL}%{?-v:+%{-v*}}.%compext" ]]; then\ - ln -s "/lib/modules/%{KVERREL}%{?-v:+%{-v*}}/symvers.%compext" "/boot/symvers-%{KVERREL}%{?-v:+%{-v*}}.%compext"\ + cp "/lib/modules/%{KVERREL}%{?-v:+%{-v*}}/symvers.%compext" "/boot/symvers-%{KVERREL}%{?-v:+%{-v*}}.%compext"\ if command -v restorecon &>/dev/null; then\ restorecon "/boot/symvers-%{KVERREL}%{?-v:+%{-v*}}.%compext"\ fi\ @@ -3862,12 +3843,9 @@ fi\ /usr/src/kernels/%{KVERREL}%{?3:+%{3}}\ %{expand:%%files %{?3:%{3}-}devel-matched}\ %{expand:%%files -f kernel-%{?3:%{3}-}modules-extra.list %{?3:%{3}-}modules-extra}\ -%config(noreplace) /etc/modprobe.d/*-blacklist.conf\ -%{expand:%%files %{?3:%{3}-}modules-internal}\ -/lib/modules/%{KVERREL}%{?3:+%{3}}/internal\ +%{expand:%%files -f kernel-%{?3:%{3}-}modules-internal.list %{?3:%{3}-}modules-internal}\ %if 0%{!?fedora:1}\ -%{expand:%%files %{?3:%{3}-}modules-partner}\ -/lib/modules/%{KVERREL}%{?3:+%{3}}/partner\ +%{expand:%%files -f kernel-%{?3:%{3}-}modules-partner.list %{?3:%{3}-}modules-partner}\ %endif\ %if %{with_debuginfo}\ %ifnarch noarch\ @@ -3875,8 +3853,7 @@ fi\ %endif\ %endif\ %if "%{3}" == "rt" || "%{3}" == "rt-debug"\ -%{expand:%%files %{?3:%{3}-}kvm}\ -/lib/modules/%{KVERREL}%{?3:+%{3}}/kvm\ +%{expand:%%files -f kernel-%{?3:%{3}-}modules-rt-kvm.list %{?3:%{3}-}kvm}\ %else\ %if %{with_efiuki}\ %{expand:%%files %{?3:%{3}-}uki-virt}\ @@ -3960,6 +3937,604 @@ fi\ # # %changelog +* Mon Apr 22 2024 Jan Stancek [6.9.0-0.rc4.2.el10] +- blk-iocost: do not WARN if iocg was already offlined (Li Nan) +- block: propagate partition scanning errors to the BLKRRPART ioctl (Christoph Hellwig) +- MAINTAINERS: update to working email address (James Bottomley) +- KVM: x86: Stop compiling vmenter.S with OBJECT_FILES_NON_STANDARD (Sean Christopherson) +- KVM: SVM: Create a stack frame in __svm_sev_es_vcpu_run() (Sean Christopherson) +- KVM: SVM: Save/restore args across SEV-ES VMRUN via host save area (Sean Christopherson) +- KVM: SVM: Save/restore non-volatile GPRs in SEV-ES VMRUN via host save area (Sean Christopherson) +- KVM: SVM: Clobber RAX instead of RBX when discarding spec_ctrl_intercepted (Sean Christopherson) +- KVM: SVM: Drop 32-bit "support" from __svm_sev_es_vcpu_run() (Sean Christopherson) +- KVM: SVM: Wrap __svm_sev_es_vcpu_run() with #ifdef CONFIG_KVM_AMD_SEV (Sean Christopherson) +- KVM: SVM: Create a stack frame in __svm_vcpu_run() for unwinding (Sean Christopherson) +- KVM: SVM: Remove a useless zeroing of allocated memory (Christophe JAILLET) +- KVM: Drop unused @may_block param from gfn_to_pfn_cache_invalidate_start() (Sean Christopherson) +- KVM: selftests: Add coverage of EPT-disabled to vmx_dirty_log_test (David Matlack) +- KVM: x86/mmu: Fix and clarify comments about clearing D-bit vs. write-protecting (David Matlack) +- KVM: x86/mmu: Remove function comments above clear_dirty_{gfn_range,pt_masked}() (David Matlack) +- KVM: x86/mmu: Write-protect L2 SPTEs in TDP MMU when clearing dirty status (David Matlack) +- KVM: x86/mmu: Precisely invalidate MMU root_role during CPUID update (Sean Christopherson) +- KVM: VMX: Disable LBR virtualization if the CPU doesn't support LBR callstacks (Sean Christopherson) +- perf/x86/intel: Expose existence of callback support to KVM (Sean Christopherson) +- KVM: VMX: Snapshot LBR capabilities during module initialization (Sean Christopherson) +- KVM: VMX: Ignore MKTME KeyID bits when intercepting #PF for allow_smaller_maxphyaddr (Tao Su) +- KVM: selftests: fix supported_flags for riscv (Andrew Jones) +- KVM: selftests: fix max_guest_memory_test with more that 256 vCPUs (Maxim Levitsky) +- KVM: selftests: Verify post-RESET value of PERF_GLOBAL_CTRL in PMCs test (Sean Christopherson) +- KVM: x86/pmu: Set enable bits for GP counters in PERF_GLOBAL_CTRL at "RESET" (Sean Christopherson) +- KVM: x86/mmu: x86: Don't overflow lpage_info when checking attributes (Rick Edgecombe) +- KVM: x86/pmu: Disable support for adaptive PEBS (Sean Christopherson) +- KVM: Explicitly disallow activatating a gfn_to_pfn_cache with INVALID_GPA (Sean Christopherson) +- KVM: Check validity of offset+length of gfn_to_pfn_cache prior to activation (Sean Christopherson) +- KVM: Add helpers to consolidate gfn_to_pfn_cache's page split check (Sean Christopherson) +- KVM: x86/pmu: Do not mask LVTPC when handling a PMI on AMD platforms (Sandipan Das) +- KVM: x86: Snapshot if a vCPU's vendor model is AMD vs. Intel compatible (Sean Christopherson) +- selftests/powerpc/papr-vpd: Fix missing variable initialization (Nathan Lynch) +- powerpc/crypto/chacha-p10: Fix failure on non Power10 (Michael Ellerman) +- powerpc/iommu: Refactor spapr_tce_platform_iommu_attach_dev() (Shivaprasad G Bhat) +- clk: mediatek: mt7988-infracfg: fix clocks for 2nd PCIe port (Daniel Golle) +- clk: mediatek: Do a runtime PM get on controllers during probe (Pin-yen Lin) +- clk: Get runtime PM before walking tree for clk_summary (Stephen Boyd) +- clk: Get runtime PM before walking tree during disable_unused (Stephen Boyd) +- clk: Initialize struct clk_core kref earlier (Stephen Boyd) +- clk: Don't hold prepare_lock when calling kref_put() (Stephen Boyd) +- clk: Remove prepare_lock hold assertion in __clk_release() (Stephen Boyd) +- clk: Provide !COMMON_CLK dummy for devm_clk_rate_exclusive_get() (Uwe Kleine-König) +- tools/include: Sync arm64 asm/cputype.h with the kernel sources (Namhyung Kim) +- tools/include: Sync asm-generic/bitops/fls.h with the kernel sources (Namhyung Kim) +- tools/include: Sync x86 asm/msr-index.h with the kernel sources (Namhyung Kim) +- tools/include: Sync x86 asm/irq_vectors.h with the kernel sources (Namhyung Kim) +- tools/include: Sync x86 CPU feature headers with the kernel sources (Namhyung Kim) +- tools/include: Sync uapi/sound/asound.h with the kernel sources (Namhyung Kim) +- tools/include: Sync uapi/linux/kvm.h and asm/kvm.h with the kernel sources (Namhyung Kim) +- tools/include: Sync uapi/linux/fs.h with the kernel sources (Namhyung Kim) +- tools/include: Sync uapi/drm/i915_drm.h with the kernel sources (Namhyung Kim) +- perf lock contention: Add a missing NULL check (Namhyung Kim) +- perf annotate: Make sure to call symbol__annotate2() in TUI (Namhyung Kim) +- ubsan: Add awareness of signed integer overflow traps (Kees Cook) +- configs/hardening: Disable CONFIG_UBSAN_SIGNED_WRAP (Nathan Chancellor) +- configs/hardening: Fix disabling UBSAN configurations (Nathan Chancellor) +- iommufd: Add config needed for iommufd_fail_nth (Muhammad Usama Anjum) +- iommufd: Add missing IOMMUFD_DRIVER kconfig for the selftest (Jason Gunthorpe) +- RDMA/mlx5: Fix port number for counter query in multi-port configuration (Michael Guralnik) +- RDMA/cm: Print the old state when cm_destroy_id gets timeout (Mark Zhang) +- RDMA/rxe: Fix the problem "mutex_destroy missing" (Yanjun.Zhu) +- fs/9p: drop inodes immediately on non-.L too (Joakim Sindholt) +- fs/9p: Revert "fs/9p: fix dups even in uncached mode" (Eric Van Hensbergen) +- fs/9p: remove erroneous nlink init from legacy stat2inode (Eric Van Hensbergen) +- 9p: explicitly deny setlease attempts (Jeff Layton) +- fs/9p: fix the cache always being enabled on files with qid flags (Joakim Sindholt) +- fs/9p: translate O_TRUNC into OTRUNC (Joakim Sindholt) +- fs/9p: only translate RWX permissions for plain 9P2000 (Joakim Sindholt) +- cuse: add kernel-doc comments to cuse_process_init_reply() (Yang Li) +- fuse: fix leaked ENOSYS error on first statx call (Danny Lin) +- fuse: fix parallel dio write on file open in passthrough mode (Amir Goldstein) +- fuse: fix wrong ff->iomode state changes from parallel dio write (Amir Goldstein) +- arm64: hibernate: Fix level3 translation fault in swsusp_save() (Yaxiong Tian) +- arm64/head: Disable MMU at EL2 before clearing HCR_EL2.E2H (Ard Biesheuvel) +- arm64/head: Drop unnecessary pre-disable-MMU workaround (Ard Biesheuvel) +- arm64/hugetlb: Fix page table walk in huge_pte_alloc() (Anshuman Khandual) +- s390/mm: Fix NULL pointer dereference (Sven Schnelle) +- s390/cio: log fake IRB events (Peter Oberparleiter) +- s390/cio: fix race condition during online processing (Peter Oberparleiter) +- s390/qdio: handle deferred cc1 (Peter Oberparleiter) +- bootconfig: Fix the kerneldoc of _xbc_exit() (Masami Hiramatsu (Google)) +- bootconfig: use memblock_free_late to free xbc memory to buddy (Qiang Zhang) +- init/main.c: Fix potential static_command_line memory overflow (Yuntao Wang) +- thermal/debugfs: Add missing count increment to thermal_debug_tz_trip_up() (Rafael J. Wysocki) +- ALSA: seq: ump: Fix conversion from MIDI2 to MIDI1 UMP messages (Takashi Iwai) +- ALSA: hda/realtek - Enable audio jacks of Haier Boyue G42 with ALC269VC (Ai Chao) +- ALSA: hda/realtek: Add quirks for Huawei Matebook D14 NBLB-WAX9N (Mauro Carvalho Chehab) +- ALSA: hda/realtek: Fix volumn control of ThinkBook 16P Gen4 (Huayu Zhang) +- ALSA: hda/realtek: Fixes for Asus GU605M and GA403U sound (Vitalii Torshyn) +- ALSA: hda/tas2781: Add new vendor_id and subsystem_id to support ThinkPad ICE-1 (Shenghao Ding) +- ALSA: hda/tas2781: correct the register for pow calibrated data (Shenghao Ding) +- ALSA: hda/realtek: Add quirk for HP SnowWhite laptops (Vitaly Rodionov) +- drm/xe/vm: prevent UAF with asid based lookup (Matthew Auld) +- drm/xe: Fix bo leak in intel_fb_bo_framebuffer_init (Maarten Lankhorst) +- drm/panel: novatek-nt36682e: don't unregister DSI device (Dmitry Baryshkov) +- drm/panel: visionox-rm69299: don't unregister DSI device (Dmitry Baryshkov) +- drm/nouveau/dp: Don't probe eDP ports twice harder (Lyude Paul) +- drm/nouveau/kms/nv50-: Disable AUX bus for disconnected DP ports (Lyude Paul) +- drm/v3d: Don't increment `enabled_ns` twice (Maíra Canal) +- drm/vmwgfx: Sort primary plane formats by order of preference (Zack Rusin) +- drm/vmwgfx: Fix crtc's atomic check conditional (Zack Rusin) +- drm/vmwgfx: Fix prime import/export (Zack Rusin) +- drm/ttm: stop pooling cached NUMA pages v2 (Christian König) +- drm: nv04: Fix out of bounds access (Mikhail Kobuk) +- nouveau: fix instmem race condition around ptr stores (Dave Airlie) +- drm/radeon: silence UBSAN warning (v3) (Alex Deucher) +- drm/radeon: make -fstrict-flex-arrays=3 happy (Alex Deucher) +- drm/amdgpu: fix visible VRAM handling during faults (Christian König) +- drm/amdgpu: validate the parameters of bo mapping operations more clearly (xinhui pan) +- Revert "drm/amd/display: fix USB-C flag update after enc10 feature init" (Alex Deucher) +- drm/amdkfd: Fix memory leak in create_process failure (Felix Kuehling) +- drm/amdgpu: remove invalid resource->start check v2 (Christian König) +- nilfs2: fix OOB in nilfs_set_de_type (Jeongjun Park) +- MAINTAINERS: update Naoya Horiguchi's email address (Naoya Horiguchi) +- fork: defer linking file vma until vma is fully initialized (Miaohe Lin) +- mm/shmem: inline shmem_is_huge() for disabled transparent hugepages (Sumanth Korikkar) +- mm,page_owner: defer enablement of static branch (Oscar Salvador) +- Squashfs: check the inode number is not the invalid value of zero (Phillip Lougher) +- mm,swapops: update check in is_pfn_swap_entry for hwpoison entries (Oscar Salvador) +- mm/memory-failure: fix deadlock when hugetlb_optimize_vmemmap is enabled (Miaohe Lin) +- mm/userfaultfd: allow hugetlb change protection upon poison entry (Peter Xu) +- mm,page_owner: fix printing of stack records (Oscar Salvador) +- mm,page_owner: fix accounting of pages when migrating (Oscar Salvador) +- mm,page_owner: fix refcount imbalance (Oscar Salvador) +- mm,page_owner: update metadata for tail pages (Oscar Salvador) +- userfaultfd: change src_folio after ensuring it's unpinned in UFFDIO_MOVE (Lokesh Gidra) +- mm/madvise: make MADV_POPULATE_(READ|WRITE) handle VM_FAULT_RETRY properly (David Hildenbrand) +- scsi: core: Fix handling of SCMD_FAIL_IF_RECOVERING (Bart Van Assche) +- scsi: ufs: qcom: Add missing interconnect bandwidth values for Gear 5 (Manivannan Sadhasivam) +- net: ethernet: ti: am65-cpsw-nuss: cleanup DMA Channels before using them (Siddharth Vadapalli) +- net: usb: ax88179_178a: avoid writing the mac address before first reading (Jose Ignacio Tornos Martinez) +- netfilter: nf_tables: fix memleak in map from abort path (Pablo Neira Ayuso) +- netfilter: nf_tables: restore set elements when delete set fails (Pablo Neira Ayuso) +- netfilter: nf_tables: missing iterator type in lookup walk (Pablo Neira Ayuso) +- net: ravb: Fix RX byte accounting for jumbo packets (Paul Barker) +- net: ravb: Fix GbEth jumbo packet RX checksum handling (Paul Barker) +- net: ravb: Allow RX loop to move past DMA mapping errors (Paul Barker) +- net: ravb: Count packets instead of descriptors in R-Car RX path (Paul Barker) +- net: ethernet: mtk_eth_soc: fix WED + wifi reset (Felix Fietkau) +- net:usb:qmi_wwan: support Rolling modules (Vanillan Wang) +- ice: Fix checking for unsupported keys on non-tunnel device (Marcin Szycik) +- ice: tc: allow zero flags in parsing tc flower (Michal Swiatkowski) +- ice: tc: check src_vsi in case of traffic from VF (Michal Swiatkowski) +- selftests: kselftest_harness: fix Clang warning about zero-length format (Jakub Kicinski) +- net/sched: Fix mirred deadlock on device recursion (Eric Dumazet) +- s390/ism: Properly fix receive message buffer allocation (Gerd Bayer) +- net: dsa: mt7530: fix port mirroring for MT7988 SoC switch (Arınç ÜNAL) +- net: dsa: mt7530: fix mirroring frames received on local port (Arınç ÜNAL) +- tun: limit printing rate when illegal packet received by tun dev (Lei Chen) +- net: stmmac: Fix IP-cores specific MAC capabilities (Serge Semin) +- net: stmmac: Fix max-speed being ignored on queue re-init (Serge Semin) +- net: stmmac: Apply half-duplex-less constraint for DW QoS Eth only (Serge Semin) +- selftests/tcp_ao: Printing fixes to confirm with format-security (Dmitry Safonov) +- selftests/tcp_ao: Fix fscanf() call for format-security (Dmitry Safonov) +- selftests/tcp_ao: Zero-init tcp_ao_info_opt (Dmitry Safonov) +- selftests/tcp_ao: Make RST tests less flaky (Dmitry Safonov) +- octeontx2-pf: fix FLOW_DIS_IS_FRAGMENT implementation (Asbjørn Sloth Tønnesen) +- inet: bring NLM_DONE out to a separate recv() again (Jakub Kicinski) +- net: change maximum number of UDP segments to 128 (Yuri Benditovich) +- net/mlx5e: Prevent deadlock while disabling aRFS (Carolina Jubran) +- net/mlx5e: Acquire RTNL lock before RQs/SQs activation/deactivation (Carolina Jubran) +- net/mlx5e: Use channel mdev reference instead of global mdev instance for coalescing (Rahul Rameshbabu) +- net/mlx5: Restore mistakenly dropped parts in register devlink flow (Shay Drory) +- net/mlx5: SD, Handle possible devcom ERR_PTR (Tariq Toukan) +- net/mlx5: Lag, restore buckets number to default after hash LAG deactivation (Shay Drory) +- net: sparx5: flower: fix fragment flags handling (Asbjørn Sloth Tønnesen) +- af_unix: Don't peek OOB data without MSG_OOB. (Kuniyuki Iwashima) +- af_unix: Call manage_oob() for every skb in unix_stream_read_generic(). (Kuniyuki Iwashima) +- netfilter: flowtable: incorrect pppoe tuple (Pablo Neira Ayuso) +- netfilter: flowtable: validate pppoe header (Pablo Neira Ayuso) +- netfilter: nft_set_pipapo: do not free live element (Florian Westphal) +- netfilter: nft_set_pipapo: walk over current view on netlink dump (Pablo Neira Ayuso) +- netfilter: br_netfilter: skip conntrack input hook for promisc packets (Pablo Neira Ayuso) +- netfilter: nf_tables: Fix potential data-race in __nft_obj_type_get() (Ziyang Xuan) +- netfilter: nf_tables: Fix potential data-race in __nft_expr_type_get() (Ziyang Xuan) +- gpiolib: swnode: Remove wrong header inclusion (Andy Shevchenko) +- gpio: lpc32xx: fix module autoloading (Krzysztof Kozlowski) +- gpio: crystalcove: Use -ENOTSUPP consistently (Andy Shevchenko) +- gpio: wcove: Use -ENOTSUPP consistently (Andy Shevchenko) +- Revert "vmgenid: emit uevent when VMGENID updates" (Jason A. Donenfeld) +- random: handle creditable entropy from atomic process context (Jason A. Donenfeld) +- platform/x86/amd/pmc: Extend Framework 13 quirk to more BIOSes (Mario Limonciello) +- platform/x86/intel-uncore-freq: Increase minor number support (Srinivas Pandruvada) +- platform/x86: ISST: Add Granite Rapids-D to HPM CPU list (Srinivas Pandruvada) +- platform/x86/amd: pmf: Add quirk for ROG Zephyrus G14 (Mario Limonciello) +- platform/x86/amd: pmf: Add infrastructure for quirking supported funcs (Mario Limonciello) +- platform/x86/amd: pmf: Decrease error message to debug (Mario Limonciello) +- gitlab-ci: harmonize DataWarehouse tree names (Michael Hofmann) +- redhat/configs: Enable CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON for rhel (Jerry Snitselaar) +- spec: make sure posttrans script doesn't fail if /boot is non-POSIX (glb) +- btrfs: do not wait for short bulk allocation (Qu Wenruo) +- btrfs: zoned: add ASSERT and WARN for EXTENT_BUFFER_ZONED_ZEROOUT handling (Naohiro Aota) +- btrfs: zoned: do not flag ZEROOUT on non-dirty extent buffer (Naohiro Aota) +- dt-bindings: pwm: mediatek,pwm-disp: Document power-domains property (AngeloGioacchino Del Regno) +- pwm: dwc: allow suspend/resume for 16 channels (Raag Jadav) +- Turn on UBSAN for Fedora (Justin M. Forbes) +- Turn on XEN_BALLOON_MEMORY_HOTPLUG for Fedora (Justin M. Forbes) +- NFSD: fix endianness issue in nfsd4_encode_fattr4 (Vasily Gorbik) +- SUNRPC: Fix rpcgss_context trace event acceptor field (Steven Rostedt (Google)) +- bcachefs: set_btree_iter_dontneed also clears should_be_locked (Kent Overstreet) +- bcachefs: fix error path of __bch2_read_super() (Chao Yu) +- bcachefs: Check for backpointer bucket_offset >= bucket size (Kent Overstreet) +- bcachefs: bch_member.btree_allocated_bitmap (Kent Overstreet) +- bcachefs: sysfs internal/trigger_journal_flush (Kent Overstreet) +- bcachefs: Fix bch2_btree_node_fill() for !path (Kent Overstreet) +- bcachefs: add safety checks in bch2_btree_node_fill() (Kent Overstreet) +- bcachefs: Interior known are required to have known key types (Kent Overstreet) +- bcachefs: add missing bounds check in __bch2_bkey_val_invalid() (Kent Overstreet) +- bcachefs: Fix btree node merging on write buffer btrees (Kent Overstreet) +- bcachefs: Disable merges from interior update path (Kent Overstreet) +- bcachefs: Run merges at BCH_WATERMARK_btree (Kent Overstreet) +- bcachefs: Fix missing write refs in fs fio paths (Kent Overstreet) +- bcachefs: Fix deadlock in journal replay (Kent Overstreet) +- bcachefs: Go rw if running any explicit recovery passes (Kent Overstreet) +- bcachefs: Standardize helpers for printing enum strs with bounds checks (Kent Overstreet) +- bcachefs: don't queue btree nodes for rewrites during scan (Kent Overstreet) +- bcachefs: fix race in bch2_btree_node_evict() (Kent Overstreet) +- bcachefs: fix unsafety in bch2_stripe_to_text() (Kent Overstreet) +- bcachefs: fix unsafety in bch2_extent_ptr_to_text() (Kent Overstreet) +- bcachefs: btree node scan: handle encrypted nodes (Kent Overstreet) +- bcachefs: Check for packed bkeys that are too big (Kent Overstreet) +- bcachefs: Fix UAFs of btree_insert_entry array (Kent Overstreet) +- bcachefs: Don't use bch2_btree_node_lock_write_nofail() in btree split path (Kent Overstreet) +- selftests/harness: Prevent infinite loop due to Assert in FIXTURE_TEARDOWN (Shengyu Li) +- selftests/ftrace: Limit length in subsystem-enable tests (Yuanhe Shu) +- Linux 6.9-rc4 (Linus Torvalds) +- kernfs: annotate different lockdep class for of->mutex of writable files (Amir Goldstein) +- x86/cpu/amd: Move TOPOEXT enablement into the topology parser (Thomas Gleixner) +- x86/cpu/amd: Make the NODEID_MSR union actually work (Thomas Gleixner) +- x86/cpu/amd: Make the CPUID 0x80000008 parser correct (Thomas Gleixner) +- x86/bugs: Replace CONFIG_SPECTRE_BHI_{ON,OFF} with CONFIG_MITIGATION_SPECTRE_BHI (Josh Poimboeuf) +- x86/bugs: Remove CONFIG_BHI_MITIGATION_AUTO and spectre_bhi=auto (Josh Poimboeuf) +- x86/bugs: Clarify that syscall hardening isn't a BHI mitigation (Josh Poimboeuf) +- x86/bugs: Fix BHI handling of RRSBA (Josh Poimboeuf) +- x86/bugs: Rename various 'ia32_cap' variables to 'x86_arch_cap_msr' (Ingo Molnar) +- x86/bugs: Cache the value of MSR_IA32_ARCH_CAPABILITIES (Josh Poimboeuf) +- x86/bugs: Fix BHI documentation (Josh Poimboeuf) +- x86/cpu: Actually turn off mitigations by default for SPECULATION_MITIGATIONS=n (Sean Christopherson) +- x86/topology: Don't update cpu_possible_map in topo_set_cpuids() (Thomas Gleixner) +- x86/bugs: Fix return type of spectre_bhi_state() (Daniel Sneddon) +- x86/apic: Force native_apic_mem_read() to use the MOV instruction (Adam Dunlap) +- selftests: kselftest: Fix build failure with NOLIBC (Oleg Nesterov) +- selftests: timers: Fix abs() warning in posix_timers test (John Stultz) +- selftests: kselftest: Mark functions that unconditionally call exit() as __noreturn (Nathan Chancellor) +- selftests: timers: Fix posix_timers ksft_print_msg() warning (John Stultz) +- selftests: timers: Fix valid-adjtimex signed left-shift undefined behavior (John Stultz) +- bug: Fix no-return-statement warning with !CONFIG_BUG (Adrian Hunter) +- timekeeping: Use READ/WRITE_ONCE() for tick_do_timer_cpu (Thomas Gleixner) +- selftests/timers/posix_timers: Reimplement check_timer_distribution() (Oleg Nesterov) +- irqflags: Explicitly ignore lockdep_hrtimer_exit() argument (Arnd Bergmann) +- perf/x86: Fix out of range data (Namhyung Kim) +- locking: Make rwsem_assert_held_write_nolockdep() build with PREEMPT_RT=y (Sebastian Andrzej Siewior) +- irqchip/gic-v3-its: Fix VSYNC referencing an unmapped VPE on GIC v4.1 (Nianyao Tang) +- vhost: correct misleading printing information (Xianting Tian) +- vhost-vdpa: change ioctl # for VDPA_GET_VRING_SIZE (Michael S. Tsirkin) +- virtio: store owner from modules with register_virtio_driver() (Krzysztof Kozlowski) +- vhost: Add smp_rmb() in vhost_enable_notify() (Gavin Shan) +- vhost: Add smp_rmb() in vhost_vq_avail_empty() (Gavin Shan) +- swiotlb: do not set total_used to 0 in swiotlb_create_debugfs_files() (Dexuan Cui) +- swiotlb: fix swiotlb_bounce() to do partial sync's correctly (Michael Kelley) +- swiotlb: extend buffer pre-padding to alloc_align_mask if necessary (Petr Tesarik) +- ata: libata-core: Allow command duration limits detection for ACS-4 drives (Igor Pylypiv) +- ata: libata-scsi: Fix ata_scsi_dev_rescan() error path (Damien Le Moal) +- ata: ahci: Add mask_port_map module parameter (Damien Le Moal) +- zonefs: Use str_plural() to fix Coccinelle warning (Thorsten Blum) +- smb3: fix broken reconnect when password changing on the server by allowing password rotation (Steve French) +- smb: client: instantiate when creating SFU files (Paulo Alcantara) +- smb3: fix Open files on server counter going negative (Steve French) +- smb: client: fix NULL ptr deref in cifs_mark_open_handles_for_deleted_file() (Paulo Alcantara) +- arm64: tlb: Fix TLBI RANGE operand (Gavin Shan) +- MAINTAINERS: Change Krzysztof Kozlowski's email address (Krzysztof Kozlowski) +- cache: sifive_ccache: Partially convert to a platform driver (Samuel Holland) +- firmware: arm_ffa: Fix the partition ID check in ffa_notification_info_get() (Jens Wiklander) +- firmware: arm_scmi: Make raw debugfs entries non-seekable (Cristian Marussi) +- firmware: arm_scmi: Fix wrong fastchannel initialization (Pierre Gondois) +- arm64: dts: imx8qm-ss-dma: fix can lpcg indices (Frank Li) +- arm64: dts: imx8-ss-dma: fix can lpcg indices (Frank Li) +- arm64: dts: imx8-ss-dma: fix adc lpcg indices (Frank Li) +- arm64: dts: imx8-ss-dma: fix pwm lpcg indices (Frank Li) +- arm64: dts: imx8-ss-dma: fix spi lpcg indices (Frank Li) +- arm64: dts: imx8-ss-conn: fix usb lpcg indices (Frank Li) +- arm64: dts: imx8-ss-lsio: fix pwm lpcg indices (Frank Li) +- ARM: dts: imx7s-warp: Pass OV2680 link-frequencies (Fabio Estevam) +- ARM: dts: imx7-mba7: Use 'no-mmc' property (Fabio Estevam) +- arm64: dts: imx8-ss-conn: fix usdhc wrong lpcg clock order (Frank Li) +- arm64: dts: freescale: imx8mp-venice-gw73xx-2x: fix USB vbus regulator (Tim Harvey) +- arm64: dts: freescale: imx8mp-venice-gw72xx-2x: fix USB vbus regulator (Tim Harvey) +- ARM: OMAP2+: fix USB regression on Nokia N8x0 (Aaro Koskinen) +- mmc: omap: restore original power up/down steps (Aaro Koskinen) +- mmc: omap: fix deferred probe (Aaro Koskinen) +- mmc: omap: fix broken slot switch lookup (Aaro Koskinen) +- ARM: OMAP2+: fix N810 MMC gpiod table (Aaro Koskinen) +- ARM: OMAP2+: fix bogus MMC GPIO labels on Nokia N8x0 (Aaro Koskinen) +- iommu/amd: Change log message severity (Vasant Hegde) +- iommu/vt-d: Fix WARN_ON in iommu probe path (Lu Baolu) +- iommu/vt-d: Allocate local memory for page request queue (Jacob Pan) +- iommu/vt-d: Fix wrong use of pasid config (Xuchun Shang) +- iommu: mtk: fix module autoloading (Krzysztof Kozlowski) +- iommu/amd: Do not enable SNP when V2 page table is enabled (Vasant Hegde) +- iommu/amd: Fix possible irq lock inversion dependency issue (Vasant Hegde) +- Revert "PCI: Mark LSI FW643 to avoid bus reset" (Bjorn Helgaas) +- MAINTAINERS: Drop Gustavo Pimentel as PCI DWC Maintainer (Manivannan Sadhasivam) +- block: fix that blk_time_get_ns() doesn't update time after schedule (Yu Kuai) +- raid1: fix use-after-free for original bio in raid1_write_request() (Yu Kuai) +- block: allow device to have both virt_boundary_mask and max segment size (Ming Lei) +- block: fix q->blkg_list corruption during disk rebind (Ming Lei) +- blk-iocost: avoid out of bounds shift (Rik van Riel) +- io-uring: correct typo in comment for IOU_F_TWQ_LAZY_WAKE (Haiyue Wang) +- io_uring/net: restore msg_control on sendzc retry (Pavel Begunkov) +- io_uring: Fix io_cqring_wait() not restoring sigmask on get_timespec64() failure (Alexey Izbyshev) +- MAINTAINERS: remove myself as a Reviewer for Ceph (Jeff Layton) +- ceph: switch to use cap_delay_lock for the unlink delay list (Xiubo Li) +- ceph: redirty page before returning AOP_WRITEPAGE_ACTIVATE (NeilBrown) +- Kconfig: add some hidden tabs on purpose (Linus Torvalds) +- ring-buffer: Only update pages_touched when a new page is touched (Steven Rostedt (Google)) +- tracing: hide unused ftrace_event_id_fops (Arnd Bergmann) +- tracing: Fix FTRACE_RECORD_RECURSION_SIZE Kconfig entry (Prasad Pandit) +- eventfs: Fix kernel-doc comments to functions (Yang Li) +- MIPS: scall: Save thread_info.syscall unconditionally on entry (Jiaxun Yang) +- amdkfd: use calloc instead of kzalloc to avoid integer overflow (Dave Airlie) +- drm/msm/adreno: Set highest_bank_bit for A619 (Luca Weiss) +- drm/msm: fix the `CRASHDUMP_READ` target of `a6xx_get_shader_block()` (Miguel Ojeda) +- dt-bindings: display/msm: sm8150-mdss: add DP node (Dmitry Baryshkov) +- drm/msm/dp: fix typo in dp_display_handle_port_status_changed() (Abhinav Kumar) +- drm/msm/dpu: make error messages at dpu_core_irq_register_callback() more sensible (Dmitry Baryshkov) +- drm/msm/dp: assign correct DP controller ID to x1e80100 interface table (Kuogee Hsieh) +- drm/msm/dpu: don't allow overriding data from catalog (Dmitry Baryshkov) +- drm/msm: Add newlines to some debug prints (Stephen Boyd) +- drm/msm/dp: fix runtime PM leak on connect failure (Johan Hovold) +- drm/msm/dp: fix runtime PM leak on disconnect (Johan Hovold) +- drm/xe: Label RING_CONTEXT_CONTROL as masked (Ashutosh Dixit) +- drm/xe/xe_migrate: Cast to output precision before multiplying operands (Himal Prasad Ghimiray) +- drm/xe/hwmon: Cast result to output precision on left shift of operand (Karthik Poosa) +- drm/xe/display: Fix double mutex initialization (Lucas De Marchi) +- drm/vmwgfx: Enable DMA mappings with SEV (Zack Rusin) +- drm/client: Fully protect modes[] with dev->mode_config.mutex (Ville Syrjälä) +- gpu: host1x: Do not setup DMA for virtual devices (Thierry Reding) +- accel/ivpu: Fix deadlock in context_xa (Jacek Lawrynowicz) +- accel/ivpu: Fix missed error message after VPU rename (Jacek Lawrynowicz) +- accel/ivpu: Return max freq for DRM_IVPU_PARAM_CORE_CLOCK_RATE (Jacek Lawrynowicz) +- accel/ivpu: Improve clarity of MMU error messages (Wachowski, Karol) +- accel/ivpu: Put NPU back to D3hot after failed resume (Jacek Lawrynowicz) +- accel/ivpu: Fix PCI D0 state entry in resume (Wachowski, Karol) +- accel/ivpu: Remove d3hot_after_power_off WA (Jacek Lawrynowicz) +- accel/ivpu: Check return code of ipc->lock init (Wachowski, Karol) +- nouveau: fix function cast warning (Arnd Bergmann) +- nouveau/gsp: Avoid addressing beyond end of rpc->entries (Kees Cook) +- Revert "drm/qxl: simplify qxl_fence_wait" (Alex Constantino) +- drm/ast: Fix soft lockup (Jammy Huang) +- drm/panfrost: Fix the error path in panfrost_mmu_map_fault_addr() (Boris Brezillon) +- drm/amdgpu: differentiate external rev id for gfx 11.5.0 (Yifan Zhang) +- drm/amd/display: Adjust dprefclk by down spread percentage. (Zhongwei) +- drm/amd/display: Set VSC SDP Colorimetry same way for MST and SST (Harry Wentland) +- drm/amd/display: Program VSC SDP colorimetry for all DP sinks >= 1.4 (Harry Wentland) +- drm/amd/display: fix disable otg wa logic in DCN316 (Fudongwang) +- drm/amd/display: Do not recursively call manual trigger programming (Dillon Varone) +- drm/amd/display: always reset ODM mode in context when adding first plane (Wenjing Liu) +- drm/amdgpu: fix incorrect number of active RBs for gfx11 (Tim Huang) +- drm/amd/display: Return max resolution supported by DWB (Alex Hung) +- amd/amdkfd: sync all devices to wait all processes being evicted (Zhigang Luo) +- drm/amdgpu: clear set_q_mode_offs when VM changed (ZhenGuo Yin) +- drm/amdgpu: Fix VCN allocation in CPX partition (Lijo Lazar) +- drm/amd/pm: fix the high voltage issue after unload (Kenneth Feng) +- drm/amd/display: Skip on writeback when it's not applicable (Alex Hung) +- drm/amdgpu: implement IRQ_STATE_ENABLE for SDMA v4.4.2 (Tao Zhou) +- drm/amdgpu: add smu 14.0.1 discovery support (Yifan Zhang) +- drm/amd/swsmu: Update smu v14.0.0 headers to be 14.0.1 compatible (lima1002) +- drm/amdgpu : Increase the mes log buffer size as per new MES FW version (shaoyunl) +- drm/amdgpu : Add mes_log_enable to control mes log feature (shaoyunl) +- drm/amd/pm: fixes a random hang in S4 for SMU v13.0.4/11 (Tim Huang) +- drm/amd/display: add DCN 351 version for microcode load (Li Ma) +- drm/amdgpu: Reset dGPU if suspend got aborted (Lijo Lazar) +- drm/amdgpu/umsch: reinitialize write pointer in hw init (Lang Yu) +- drm/amdgpu: Refine IB schedule error logging (Lijo Lazar) +- drm/amdgpu: always force full reset for SOC21 (Alex Deucher) +- drm/amdkfd: Reset GPU on queue preemption failure (Harish Kasiviswanathan) +- drm/i915/vrr: Disable VRR when using bigjoiner (Ville Syrjälä) +- drm/i915: Disable live M/N updates when using bigjoiner (Ville Syrjälä) +- drm/i915: Disable port sync when bigjoiner is used (Ville Syrjälä) +- drm/i915/psr: Disable PSR when bigjoiner is used (Ville Syrjälä) +- drm/i915/guc: Fix the fix for reset lock confusion (John Harrison) +- drm/i915/hdcp: Fix get remote hdcp capability function (Suraj Kandpal) +- drm/i915/cdclk: Fix voltage_level programming edge case (Ville Syrjälä) +- drm/i915/cdclk: Fix CDCLK programming order when pipes are active (Ville Syrjälä) +- docs: point out that python3-pyyaml is now required (Thorsten Leemhuis) +- cxl: Add checks to access_coordinate calculation to fail missing data (Dave Jiang) +- cxl: Consolidate dport access_coordinate ->hb_coord and ->sw_coord into ->coord (Dave Jiang) +- cxl: Fix incorrect region perf data calculation (Dave Jiang) +- cxl: Fix retrieving of access_coordinates in PCIe path (Dave Jiang) +- cxl: Remove checking of iter in cxl_endpoint_get_perf_coordinates() (Dave Jiang) +- cxl/core: Fix initialization of mbox_cmd.size_out in get event (Kwangjin Ko) +- cxl/core/regs: Fix usage of map->reg_type in cxl_decode_regblock() before assigned (Dave Jiang) +- cxl/mem: Fix for the index of Clear Event Record Handle (Yuquan Wang) +- Drivers: hv: vmbus: Don't free ring buffers that couldn't be re-encrypted (Michael Kelley) +- uio_hv_generic: Don't free decrypted memory (Rick Edgecombe) +- hv_netvsc: Don't free decrypted memory (Rick Edgecombe) +- Drivers: hv: vmbus: Track decrypted status in vmbus_gpadl (Rick Edgecombe) +- Drivers: hv: vmbus: Leak pages if set_memory_encrypted() fails (Rick Edgecombe) +- hv/hv_kvp_daemon: Handle IPv4 and Ipv6 combination for keyfile format (Shradha Gupta) +- hv: vmbus: Convert sprintf() family to sysfs_emit() family (Li Zhijian) +- mshyperv: Introduce hv_numa_node_to_pxm_info() (Nuno Das Neves) +- x86/hyperv: Cosmetic changes for hv_apic.c (Erni Sri Satya Vennela) +- ACPI: bus: allow _UID matching for integer zero (Raag Jadav) +- ACPI: scan: Do not increase dep_unmet for already met dependencies (Hans de Goede) +- PM: s2idle: Make sure CPUs will wakeup directly on resume (Anna-Maria Behnsen) +- net: ena: Set tx_info->xdpf value to NULL (David Arinzon) +- net: ena: Fix incorrect descriptor free behavior (David Arinzon) +- net: ena: Wrong missing IO completions check order (David Arinzon) +- net: ena: Fix potential sign extension issue (David Arinzon) +- Bluetooth: l2cap: Don't double set the HCI_CONN_MGMT_CONNECTED bit (Archie Pusaka) +- Bluetooth: hci_sock: Fix not validating setsockopt user input (Luiz Augusto von Dentz) +- Bluetooth: ISO: Fix not validating setsockopt user input (Luiz Augusto von Dentz) +- Bluetooth: L2CAP: Fix not validating setsockopt user input (Luiz Augusto von Dentz) +- Bluetooth: RFCOMM: Fix not validating setsockopt user input (Luiz Augusto von Dentz) +- Bluetooth: SCO: Fix not validating setsockopt user input (Luiz Augusto von Dentz) +- Bluetooth: Fix memory leak in hci_req_sync_complete() (Dmitry Antipov) +- Bluetooth: hci_sync: Fix using the same interval and window for Coded PHY (Luiz Augusto von Dentz) +- Bluetooth: ISO: Don't reject BT_ISO_QOS if parameters are unset (Luiz Augusto von Dentz) +- af_unix: Fix garbage collector racing against connect() (Michal Luczaj) +- net: dsa: mt7530: trap link-local frames regardless of ST Port State (Arınç ÜNAL) +- Revert "s390/ism: fix receive message buffer allocation" (Gerd Bayer) +- net: sparx5: fix wrong config being used when reconfiguring PCS (Daniel Machon) +- net/mlx5: fix possible stack overflows (Arnd Bergmann) +- net/mlx5: Disallow SRIOV switchdev mode when in multi-PF netdev (Tariq Toukan) +- net/mlx5e: RSS, Block XOR hash with over 128 channels (Carolina Jubran) +- net/mlx5e: Do not produce metadata freelist entries in Tx port ts WQE xmit (Rahul Rameshbabu) +- net/mlx5e: HTB, Fix inconsistencies with QoS SQs number (Carolina Jubran) +- net/mlx5e: Fix mlx5e_priv_init() cleanup flow (Carolina Jubran) +- net/mlx5e: RSS, Block changing channels number when RXFH is configured (Carolina Jubran) +- net/mlx5: Correctly compare pkt reformat ids (Cosmin Ratiu) +- net/mlx5: Properly link new fs rules into the tree (Cosmin Ratiu) +- net/mlx5: offset comp irq index in name by one (Michael Liang) +- net/mlx5: Register devlink first under devlink lock (Shay Drory) +- net/mlx5: E-switch, store eswitch pointer before registering devlink_param (Shay Drory) +- netfilter: complete validation of user input (Eric Dumazet) +- r8169: add missing conditional compiling for call to r8169_remove_leds (Heiner Kallweit) +- net: dsa: mt7530: fix enabling EEE on MT7531 switch on all boards (Arınç ÜNAL) +- r8169: fix LED-related deadlock on module removal (Heiner Kallweit) +- pds_core: Fix pdsc_check_pci_health function to use work thread (Brett Creeley) +- ipv6: fix race condition between ipv6_get_ifaddr and ipv6_del_addr (Jiri Benc) +- nfc: llcp: fix nfc_llcp_setsockopt() unsafe copies (Eric Dumazet) +- mISDN: fix MISDN_TIME_STAMP handling (Eric Dumazet) +- net: add copy_safe_from_sockptr() helper (Eric Dumazet) +- ipv4/route: avoid unused-but-set-variable warning (Arnd Bergmann) +- ipv6: fib: hide unused 'pn' variable (Arnd Bergmann) +- octeontx2-af: Fix NIX SQ mode and BP config (Geetha sowjanya) +- af_unix: Clear stale u->oob_skb. (Kuniyuki Iwashima) +- net: ks8851: Handle softirqs at the end of IRQ thread to fix hang (Marek Vasut) +- net: ks8851: Inline ks8851_rx_skb() (Marek Vasut) +- net: stmmac: mmc_core: Add GMAC mmc tx/rx missing statistics (Minda Chen) +- net: stmmac: mmc_core: Add GMAC LPI statistics (Minda Chen) +- bnxt_en: Reset PTP tx_avail after possible firmware reset (Pavan Chebbi) +- bnxt_en: Fix error recovery for RoCE ulp client (Vikas Gupta) +- bnxt_en: Fix possible memory leak in bnxt_rdma_aux_device_init() (Vikas Gupta) +- s390/ism: fix receive message buffer allocation (Gerd Bayer) +- geneve: fix header validation in geneve[6]_xmit_skb (Eric Dumazet) +- MAINTAINERS: Drop Li Yang as their email address stopped working (Uwe Kleine-König) +- batman-adv: Avoid infinite loop trying to resize local TT (Sven Eckelmann) +- lib: checksum: hide unused expected_csum_ipv6_magic[] (Arnd Bergmann) +- octeontx2-pf: Fix transmit scheduler resource leak (Hariprasad Kelam) +- virtio_net: Do not send RSS key if it is not supported (Breno Leitao) +- xsk: validate user input for XDP_{UMEM|COMPLETION}_FILL_RING (Eric Dumazet) +- u64_stats: fix u64_stats_init() for lockdep when used repeatedly in one file (Petr Tesarik) +- net: openvswitch: fix unwanted error log on timeout policy probing (Ilya Maximets) +- scsi: qla2xxx: Fix off by one in qla_edif_app_getstats() (Dan Carpenter) +- scsi: hisi_sas: Modify the deadline for ata_wait_after_reset() (Xiang Chen) +- scsi: hisi_sas: Handle the NCQ error returned by D2H frame (Xiang Chen) +- scsi: target: Fix SELinux error when systemd-modules loads the target module (Maurizio Lombardi) +- scsi: sg: Avoid race in error handling & drop bogus warn (Alexander Wetzel) +- LoongArch: Include linux/sizes.h in addrspace.h to prevent build errors (Randy Dunlap) +- LoongArch: Update dts for Loongson-2K2000 to support GMAC/GNET (Huacai Chen) +- LoongArch: Update dts for Loongson-2K2000 to support PCI-MSI (Huacai Chen) +- LoongArch: Update dts for Loongson-2K2000 to support ISA/LPC (Huacai Chen) +- LoongArch: Update dts for Loongson-2K1000 to support ISA/LPC (Huacai Chen) +- LoongArch: Make virt_addr_valid()/__virt_addr_valid() work with KFENCE (Huacai Chen) +- LoongArch: Make {virt, phys, page, pfn} translation work with KFENCE (Huacai Chen) +- mm: Move lowmem_page_address() a little later (Huacai Chen) +- bcachefs: Fix __bch2_btree_and_journal_iter_init_node_iter() (Kent Overstreet) +- bcachefs: Kill read lock dropping in bch2_btree_node_lock_write_nofail() (Kent Overstreet) +- bcachefs: Fix a race in btree_update_nodes_written() (Kent Overstreet) +- bcachefs: btree_node_scan: Respect member.data_allowed (Kent Overstreet) +- bcachefs: Don't scan for btree nodes when we can reconstruct (Kent Overstreet) +- bcachefs: Fix check_topology() when using node scan (Kent Overstreet) +- bcachefs: fix eytzinger0_find_gt() (Kent Overstreet) +- bcachefs: fix bch2_get_acl() transaction restart handling (Kent Overstreet) +- bcachefs: fix the count of nr_freed_pcpu after changing bc->freed_nonpcpu list (Hongbo Li) +- bcachefs: Fix gap buffer bug in bch2_journal_key_insert_take() (Kent Overstreet) +- bcachefs: Rename struct field swap to prevent macro naming collision (Thorsten Blum) +- MAINTAINERS: Add entry for bcachefs documentation (Bagas Sanjaya) +- Documentation: filesystems: Add bcachefs toctree (Bagas Sanjaya) +- bcachefs: JOURNAL_SPACE_LOW (Kent Overstreet) +- bcachefs: Disable errors=panic for BCH_IOCTL_FSCK_OFFLINE (Kent Overstreet) +- bcachefs: Fix BCH_IOCTL_FSCK_OFFLINE for encrypted filesystems (Kent Overstreet) +- bcachefs: fix rand_delete unit test (Kent Overstreet) +- bcachefs: fix ! vs ~ typo in __clear_bit_le64() (Dan Carpenter) +- bcachefs: Fix rebalance from durability=0 device (Kent Overstreet) +- bcachefs: Print shutdown journal sequence number (Kent Overstreet) +- bcachefs: Further improve btree_update_to_text() (Kent Overstreet) +- bcachefs: Move btree_updates to debugfs (Kent Overstreet) +- bcachefs: Bump limit in btree_trans_too_many_iters() (Kent Overstreet) +- bcachefs: Make snapshot_is_ancestor() safe (Kent Overstreet) +- bcachefs: create debugfs dir for each btree (Thomas Bertschinger) +- platform/chrome: cros_ec_uart: properly fix race condition (Noah Loomans) +- Use LLVM=1 for clang_lto build (Nikita Popov) +- redhat: fix def_variants.yaml check (Jan Stancek) +- kprobes: Fix possible use-after-free issue on kprobe registration (Zheng Yejian) +- fs/proc: Skip bootloader comment if no embedded kernel parameters (Masami Hiramatsu) +- fs/proc: remove redundant comments from /proc/bootconfig (Zhenhua Huang) +- media: mediatek: vcodec: support 36 bits physical address (Yunfei Dong) +- media: mediatek: vcodec: adding lock to protect encoder context list (Yunfei Dong) +- media: mediatek: vcodec: adding lock to protect decoder context list (Yunfei Dong) +- media: mediatek: vcodec: Fix oops when HEVC init fails (Nicolas Dufresne) +- media: mediatek: vcodec: Handle VP9 superframe bitstream with 8 sub-frames (Irui Wang) +- randomize_kstack: Improve entropy diffusion (Kees Cook) +- ubsan: fix unused variable warning in test module (Arnd Bergmann) +- gcc-plugins/stackleak: Avoid .head.text section (Ard Biesheuvel) +- tools/power turbostat: v2024.04.10 (Len Brown) +- tools/power/turbostat: Add support for Xe sysfs knobs (Zhang Rui) +- tools/power/turbostat: Add support for new i915 sysfs knobs (Zhang Rui) +- tools/power/turbostat: Introduce BIC_SAM_mc6/BIC_SAMMHz/BIC_SAMACTMHz (Zhang Rui) +- tools/power/turbostat: Fix uncore frequency file string (Justin Ernst) +- tools/power/turbostat: Unify graphics sysfs snapshots (Zhang Rui) +- tools/power/turbostat: Cache graphics sysfs path (Zhang Rui) +- tools/power/turbostat: Enable MSR_CORE_C1_RES support for ICX (Zhang Rui) +- tools/power turbostat: Add selftests (Patryk Wlazlyn) +- tools/power turbostat: read RAPL counters via perf (Patryk Wlazlyn) +- tools/power turbostat: Add proper re-initialization for perf file descriptors (Patryk Wlazlyn) +- tools/power turbostat: Clear added counters when in no-msr mode (Patryk Wlazlyn) +- tools/power turbostat: add early exits for permission checks (Patryk Wlazlyn) +- tools/power turbostat: detect and disable unavailable BICs at runtime (Patryk Wlazlyn) +- tools/power turbostat: Add reading aperf and mperf via perf API (Patryk Wlazlyn) +- tools/power turbostat: Add --no-perf option (Patryk Wlazlyn) +- tools/power turbostat: Add --no-msr option (Patryk Wlazlyn) +- tools/power turbostat: enhance -D (debug counter dump) output (Len Brown) +- tools/power turbostat: Fix warning upon failed /dev/cpu_dma_latency read (Len Brown) +- tools/power turbostat: Read base_hz and bclk from CPUID.16H if available (Patryk Wlazlyn) +- tools/power turbostat: Print ucode revision only if valid (Patryk Wlazlyn) +- tools/power turbostat: Expand probe_intel_uncore_frequency() (Len Brown) +- tools/power turbostat: Do not print negative LPI residency (Chen Yu) +- tools/power turbostat: Fix Bzy_MHz documentation typo (Peng Liu) +- tools/power turbostat: Increase the limit for fd opened (Wyes Karny) +- tools/power turbostat: Fix added raw MSR output (Doug Smythies) +- platform/x86: lg-laptop: fix %%s null argument warning (Gergo Koteles) +- platform/x86: intel-vbtn: Update tablet mode switch at end of probe (Gwendal Grignou) +- platform/x86: intel-vbtn: Use acpi_has_method to check for switch (Gwendal Grignou) +- platform/x86: toshiba_acpi: Silence logging for some events (Hans de Goede) +- platform/x86/intel/hid: Add Lunar Lake and Arrow Lake support (Sumeet Pawnikar) +- platform/x86/intel/hid: Don't wake on 5-button releases (David McFarland) +- platform/x86: acer-wmi: Add support for Acer PH18-71 (Bernhard Rosenkränzer) +- redhat: sanity check yaml files (Jan Stancek) +- spec: rework filter-mods and mod-denylist (Jan Stancek) +- nouveau: fix devinit paths to only handle display on GSP. (Dave Airlie) +- compiler.h: Add missing quote in macro comment (Thorsten Blum) +- KVM: x86: Add BHI_NO (Daniel Sneddon) +- x86/bhi: Mitigate KVM by default (Pawan Gupta) +- x86/bhi: Add BHI mitigation knob (Pawan Gupta) +- x86/bhi: Enumerate Branch History Injection (BHI) bug (Pawan Gupta) +- x86/bhi: Define SPEC_CTRL_BHI_DIS_S (Daniel Sneddon) +- x86/bhi: Add support for clearing branch history at syscall entry (Pawan Gupta) +- x86/syscall: Don't force use of indirect calls for system calls (Linus Torvalds) +- x86/bugs: Change commas to semicolons in 'spectre_v2' sysfs file (Josh Poimboeuf) +- btrfs: always clear PERTRANS metadata during commit (Boris Burkov) +- btrfs: make btrfs_clear_delalloc_extent() free delalloc reserve (Boris Burkov) +- btrfs: qgroup: convert PREALLOC to PERTRANS after record_root_in_trans (Boris Burkov) +- btrfs: record delayed inode root in transaction (Boris Burkov) +- btrfs: qgroup: fix qgroup prealloc rsv leak in subvolume operations (Boris Burkov) +- btrfs: qgroup: correctly model root qgroup rsv in convert (Boris Burkov) +- memblock tests: fix undefined reference to `BIT' (Wei Yang) +- memblock tests: fix undefined reference to `panic' (Wei Yang) +- memblock tests: fix undefined reference to `early_pfn_to_nid' (Wei Yang) +- Linux 6.9-rc3 (Linus Torvalds) +- x86/retpoline: Add NOENDBR annotation to the SRSO dummy return thunk (Borislav Petkov (AMD)) +- x86/mce: Make sure to grab mce_sysfs_mutex in set_bank() (Borislav Petkov (AMD)) +- x86/CPU/AMD: Track SNP host status with cc_platform_*() (Borislav Petkov (AMD)) +- x86/cc: Add cc_platform_set/_clear() helpers (Borislav Petkov (AMD)) +- x86/kvm/Kconfig: Have KVM_AMD_SEV select ARCH_HAS_CC_PLATFORM (Borislav Petkov (AMD)) +- x86/coco: Require seeding RNG with RDRAND on CoCo systems (Jason A. Donenfeld) +- x86/numa/32: Include missing (Arnd Bergmann) +- x86/resctrl: Fix uninitialized memory read when last CPU of domain goes offline (Reinette Chatre) +- timers/migration: Return early on deactivation (Anna-Maria Behnsen) +- timers/migration: Fix ignored event due to missing CPU update (Frederic Weisbecker) +- vdso: Use CONFIG_PAGE_SHIFT in vdso/datapage.h (Arnd Bergmann) +- timers: Fix text inconsistencies and spelling (Randy Dunlap) +- tick/sched: Fix struct tick_sched doc warnings (Randy Dunlap) +- tick/sched: Fix various kernel-doc warnings (Randy Dunlap) +- timers: Fix kernel-doc format and add Return values (Randy Dunlap) +- time/timekeeping: Fix kernel-doc warnings and typos (Randy Dunlap) +- time/timecounter: Fix inline documentation (Randy Dunlap) +- perf/x86/intel/ds: Don't clear ->pebs_data_cfg for the last PEBS event (Kan Liang) +- redhat: regenerate test-data (Jan Stancek) [RHEL-29722] +- redhat/Makefile.variables: don't set DISTRO (Jan Stancek) [RHEL-29722] +- redhat/Makefile.variables: set PATCHLIST_URL to none (Jan Stancek) [RHEL-29722] +- redhat/kernel.spec.template: fix with_realtime (Jan Stancek) [RHEL-29722] +- Linux v6.9.0-0.rc4 + * Mon Apr 08 2024 Jan Stancek [6.9.0-0.rc2.1.el10] - remove ARK .gitlab-ci.yml (Jan Stancek) - redhat: update rpminspect with c9s one (Jan Stancek) diff --git a/mod-denylist.sh b/mod-denylist.sh index a143c15b6..e5e65a236 100755 --- a/mod-denylist.sh +++ b/mod-denylist.sh @@ -1,18 +1,16 @@ #! /bin/bash # shellcheck disable=SC2164 -RpmDir=$1 -ModDir=$2 -Dir="$1/$2" -# Note the list filename must have the format mod-[PACKAGE].list, for example, -# mod-internal.list or mod-extra.list. The PACKAGE is used to create a -# override directory for the modules. -List=$3 -Dest="$4" +rpm_buildroot="$1" +module_dir="$2" +module_list="$3" + +blacklist_conf_files="$(mktemp)" blacklist() { - cat > "$RpmDir/etc/modprobe.d/$1-blacklist.conf" <<-__EOF__ + mkdir -p "$rpm_buildroot/etc/modprobe.d/" + cat > "$rpm_buildroot/etc/modprobe.d/$1-blacklist.conf" <<-__EOF__ # This kernel module can be automatically loaded by non-root users. To # enhance system security, the module is blacklisted by default to ensure # system administrators make the module available for use as needed. @@ -21,11 +19,12 @@ blacklist() # Remove the blacklist by adding a comment # at the start of the line. blacklist $1 __EOF__ + echo "%config(noreplace) /etc/modprobe.d/$1-blacklist.conf" >> "$blacklist_conf_files" } check_blacklist() { - mod=$(find "$RpmDir/$ModDir" -name "$1") + mod="$rpm_buildroot/$1" [ ! "$mod" ] && return 0 if modinfo "$mod" | grep -q '^alias:\s\+net-'; then mod="${1##*/}" @@ -35,28 +34,6 @@ check_blacklist() fi } -find_depends() -{ - dep=$1 - depends=$(modinfo "$dep" | sed -n -e "/^depends/ s/^depends:[ \t]*//p") - [ -z "$depends" ] && exit - for mod in ${depends//,/ } - do - match=$(grep "^$mod.ko" "$ListName") - [ -z "$match" ] && continue - # check if the module we are looking at is in mod-* too. - # if so we do not need to mark the dep as required. - mod2=${dep##*/} # same as $(basename $dep), but faster - match2=$(grep "^$mod2" "$ListName") - if [ -n "$match2" ] - then - #echo $mod2 >> notreq.list - continue - fi - echo "$mod".ko >> req.list - done -} - foreachp() { P=$(nproc) @@ -74,80 +51,17 @@ foreachp() wait } -# Destination was specified on the command line -test -n "$4" && echo "$0: Override Destination $Dest has been specified." - -pushd "$Dir" - -OverrideDir=$(basename "$List") -OverrideDir=${OverrideDir%.*} -OverrideDir=${OverrideDir#*-} -mkdir -p "$OverrideDir" - -rm -rf modnames -find . -name "*.ko" -type f > modnames -# Look through all of the modules, and throw any that have a dependency in -# our list into the list as well. -rm -rf dep.list dep2.list -rm -rf req.list req2.list -touch dep.list req.list -cp "$List" . - -# This variable needs to be exported because it is used in sub-script -# executed by xargs -ListName=$(basename "$List") -export ListName - -foreachp find_depends < modnames - -sort -u req.list > req2.list -sort -u "$ListName" > modules2.list -join -v 1 modules2.list req2.list > modules3.list - -while IFS= read -r mod -do - # get the path for the module - modpath=$(grep /"$mod" modnames) - [ -z "$modpath" ] && continue - echo "$modpath" >> dep.list -done < modules3.list - -sort -u dep.list > dep2.list - -if [ -n "$Dest" ]; then - # now move the modules into the $Dest directory - while IFS= read -r mod - do - newpath=$(dirname "$mod" | sed -e "s/kernel\\//$Dest\//") - mkdir -p "$newpath" - mv "$mod" "$newpath" - echo "$mod" | sed -e "s/kernel\\//$Dest\//" | sed -e "s|^.|${ModDir}|g" >> "$RpmDir"/"$ListName" - done < dep2.list -fi - -popd - -if [ -z "$Dest" ]; then - sed -e "s|^.|${ModDir}|g" "$Dir"/dep2.list > "$RpmDir/$ListName" - echo "$RpmDir/$ListName created." - [ -d "$RpmDir/etc/modprobe.d/" ] || mkdir -p "$RpmDir/etc/modprobe.d/" - foreachp check_blacklist < "$List" -fi - # Many BIOS-es export a PNP-id which causes the floppy driver to autoload # even though most modern systems don't have a 3.5" floppy driver anymore # this replaces the old die_floppy_die.patch which removed the PNP-id from # the module -floppylist=("$RpmDir"/"$ModDir"/kernel/drivers/block/floppy.ko*) +floppylist=("$rpm_buildroot"/"$module_dir"/kernel/drivers/block/floppy.ko*) if [[ -n ${floppylist[0]} && -f ${floppylist[0]} ]]; then blacklist "floppy" fi -# avoid an empty kernel-extra package -echo "$ModDir/$OverrideDir" >> "$RpmDir/$ListName" +foreachp check_blacklist < "$module_list" -pushd "$Dir" -rm modnames dep.list dep2.list req.list req2.list -rm "$ListName" modules2.list modules3.list -popd +cat "$blacklist_conf_files" >> "$module_list" +rm -f "$blacklist_conf_files" diff --git a/mod-extra.list.rhel b/mod-extra.list.rhel deleted file mode 100644 index 27be547ba..000000000 --- a/mod-extra.list.rhel +++ /dev/null @@ -1,326 +0,0 @@ -6pack.ko -a3d.ko -act200l-sir.ko -actisys-sir.ko -adi.ko -aer_inject.ko -af_802154.ko -affs.ko -ali-ircc.ko -analog.ko -appletalk.ko -arptable_filter.ko -arp_tables.ko -arpt_mangle.ko -atm.ko -avma1_cs.ko -avm_cs.ko -avmfritz.ko -ax25.ko -b1.ko -bas_gigaset.ko -batman-adv.ko -baycom_par.ko -baycom_ser_fdx.ko -baycom_ser_hdx.ko -befs.ko -bpqether.ko -br2684.ko -br_netfilter.ko -capi.ko -c_can.ko -c_can_platform.ko -clip.ko -cobra.ko -coda.ko -cuse.ko -db9.ko -dccp_diag.ko -dccp_ipv4.ko -dccp_ipv6.ko -dccp.ko -dccp_probe.ko -diva_idi.ko -divas.ko -ds1wm.ko -ds2482.ko -ds2490.ko -dss1_divert.ko -ebt_802_3.ko -ebtable_broute.ko -ebtable_filter.ko -ebtable_nat.ko -ebtables.ko -ebt_among.ko -ebt_arp.ko -ebt_arpreply.ko -ebt_dnat.ko -ebt_ip6.ko -ebt_ip.ko -ebt_limit.ko -ebt_log.ko -ebt_mark.ko -ebt_mark_m.ko -ebt_nflog.ko -ebt_pkttype.ko -ebt_redirect.ko -ebt_snat.ko -ebt_stp.ko -ebt_vlan.ko -elsa_cs.ko -ems_pci.ko -ems_usb.ko -esd_usb2.ko -esi-sir.ko -gamecon.ko -gf2k.ko -gigaset.ko -girbil-sir.ko -grip.ko -grip_mp.ko -guillemot.ko -hdlcdrv.ko -hfc4s8s_l1.ko -hfcmulti.ko -hfcpci.ko -hisax.ko -hwa-rc.ko -hysdn.ko -i2400m.ko -i2400m-sdio.ko -i2400m-usb.ko -ieee802154.ko -iforce.ko -interact.ko -ip6table_filter.ko -ip6table_mangle.ko -ip6table_nat.ko -ip6table_raw.ko -ip6table_security.ko -ip6_tables.ko -ip6t_ah.ko -ip6t_eui64.ko -ip6t_frag.ko -ip6t_hbh.ko -ip6t_ipv6header.ko -ip6t_mh.ko -ip6t_NPT.ko -ip6t_REJECT.ko -ip6t_rpfilter.ko -ip6t_rt.ko -ipddp.ko -ip_set_bitmap_ip.ko -ip_set_bitmap_ipmac.ko -ip_set_bitmap_port.ko -ip_set_hash_ip.ko -ip_set_hash_ipmac.ko -ip_set_hash_ipmark.ko -ip_set_hash_ipportip.ko -ip_set_hash_ipport.ko -ip_set_hash_ipportnet.ko -ip_set_hash_mac.ko -ip_set_hash_netiface.ko -ip_set_hash_net.ko -ip_set_hash_netnet.ko -ip_set_hash_netport.ko -ip_set_hash_netportnet.ko -ip_set.ko -ip_set_list_set.ko -iptable_filter.ko -iptable_mangle.ko -iptable_nat.ko -iptable_raw.ko -iptable_security.ko -ip_tables.ko -ipt_ah.ko -ipt_ECN.ko -ipt_REJECT.ko -ipt_rpfilter.ko -ipx.ko -isdn.ko -joydump.ko -kingsun-sir.ko -ks959-sir.ko -ksdazzle-sir.ko -kvaser_pci.ko -l2tp_core.ko -l2tp_debugfs.ko -l2tp_eth.ko -l2tp_ip.ko -l2tp_ip6.ko -l2tp_netlink.ko -l2tp_ppp.ko -lec.ko -ma600-sir.ko -magellan.ko -mcp2120-sir.ko -mISDN_core.ko -mISDN_dsp.ko -mkiss.ko -mptbase.ko -mptctl.ko -mptfc.ko -nci.ko -ncpfs.ko -netjet.ko -netrom.ko -nfc.ko -nft_compat.ko -nilfs2.ko -ocfs2_dlmfs.ko -ocfs2_dlm.ko -ocfs2.ko -ocfs2_nodemanager.ko -ocfs2_stackglue.ko -ocfs2_stack_o2cb.ko -ocfs2_stack_user.ko -old_belkin-sir.ko -orinoco_cs.ko -orinoco.ko -orinoco_nortel.ko -orinoco_pci.ko -orinoco_plx.ko -orinoco_usb.ko -plx_pci.ko -pn_pep.ko -pppoatm.ko -rds.ko -rds_rdma.ko -rds_tcp.ko -rose.ko -sch_atm.ko -sch_cbq.ko -sch_choke.ko -sch_drr.ko -sch_dsmark.ko -sch_gred.ko -sch_mqprio.ko -sch_multiq.ko -sch_netem.ko -sch_qfq.ko -sch_red.ko -sch_sfb.ko -sch_teql.ko -sctp.ko -sctp_diag.ko -sctp_probe.ko -sidewinder.ko -sja1000.ko -sja1000_platform.ko -slcan.ko -slip.ko -softing_cs.ko -softing.ko -spaceball.ko -spaceorb.ko -stinger.ko -sysv.ko -tcp_bic.ko -tcp_highspeed.ko -tcp_htcp.ko -tcp_hybla.ko -tcp_illinois.ko -tcp_lp.ko -tcp_scalable.ko -tcp_vegas.ko -tcp_veno.ko -tcp_westwood.ko -tcp_yeah.ko -tekram-sir.ko -tmdc.ko -toim3232-sir.ko -trancevibrator.ko -turbografx.ko -twidjoy.ko -ubifs.ko -ufs.ko -umc.ko -usbip-core.ko -usbip-host.ko -uwb.ko -vcan.ko -vhci-hcd.ko -w1_bq27000.ko -w1_ds2408.ko -w1_ds2423.ko -w1_ds2431.ko -w1_ds2433.ko -w1_ds2760.ko -w1_ds2780.ko -w1_ds2781.ko -w1_ds28e04.ko -w1_smem.ko -w1_therm.ko -w6692.ko -walkera0701.ko -wanrouter.ko -warrior.ko -whci.ko -wire.ko -xt_addrtype.ko -xt_AUDIT.ko -xt_bpf.ko -xt_cgroup.ko -xt_CHECKSUM.ko -xt_CLASSIFY.ko -xt_cluster.ko -xt_comment.ko -xt_connbytes.ko -xt_connlabel.ko -xt_connlimit.ko -xt_connmark.ko -xt_CONNSECMARK.ko -xt_conntrack.ko -xt_cpu.ko -xt_CT.ko -xt_dccp.ko -xt_devgroup.ko -xt_dscp.ko -xt_DSCP.ko -xt_ecn.ko -xt_esp.ko -xt_hashlimit.ko -xt_helper.ko -xt_hl.ko -xt_HL.ko -xt_HMARK.ko -xt_IDLETIMER.ko -xt_iprange.ko -xt_ipvs.ko -xt_length.ko -xt_limit.ko -xt_LOG.ko -xt_mac.ko -xt_mark.ko -xt_MASQUERADE.ko -xt_multiport.ko -xt_nat.ko -xt_NETMAP.ko -xt_NFLOG.ko -xt_NFQUEUE.ko -xt_osf.ko -xt_owner.ko -xt_physdev.ko -xt_pkttype.ko -xt_policy.ko -xt_quota.ko -xt_rateest.ko -xt_RATEEST.ko -xt_realm.ko -xt_recent.ko -xt_REDIRECT.ko -xt_sctp.ko -xt_SECMARK.ko -xt_set.ko -xt_socket.ko -xt_state.ko -xt_statistic.ko -xt_string.ko -xt_tcpmss.ko -xt_TCPMSS.ko -xt_TCPOPTSTRIP.ko -xt_TEE.ko -xt_TPROXY.ko -xt_TRACE.ko -yam.ko -zhenhua.ko diff --git a/mod-internal.list b/mod-internal.list deleted file mode 100644 index aaa4d1dcf..000000000 --- a/mod-internal.list +++ /dev/null @@ -1,105 +0,0 @@ -bitfield_kunit -checksum_kunit -cfg80211-tests -clk-fractional-divider_test -clk-gate_test -clk_test -cmdline_kunit -cpumask_kunit -cros_kunit -dev_addr_lists_test -dmatest -drm_buddy_test -drm_cmdline_parser_test -drm_connector_test -drm_damage_helper_test -drm_dp_mst_helper_test -drm_exec_test -drm_format_helper_test -drm_format_test -drm_framebuffer_test -drm_gem_shmem_test -drm_kunit_helpers -drm_managed_test -drm_mm_test -drm_modes_test -drm_plane_helper_test -drm_probe_helper_test -drm_rect_test -ext4-inode-test -fat_test -fortify_kunit -gso_test -gss_krb5_test -handshake-test -hashtable_test -hid-uclogic-test -iio-test-format -iio-test-gts -iio-test-rescale -input_test -is_signed_type_kunit -iwlwifi-tests -kasan_test -kfence_test -kunit -kunit-test -lib_test -list-test -locktorture -mac80211_hwsim -mac80211-tests -mean_and_variance_test -memcpy_kunit -mptcp_crypto_test -mptcp_token_test -mtty -netdevsim -of_test -overflow_kunit -pktgen -property-entry-test -rational-test -rcuscale -rcutorture -refscale -regmap-kunit -resource_kunit -rocker -scftorture -siphash_kunit -slub_kunit -snd-hda-cirrus-scodec-test -snd-soc-cs-amp-lib-test -soc-topology-test -soc-utils-test -sound_kunit -stackinit_kunit -strcat_kunit -string_kunit -string_helpers_kunit -strscpy_kunit -sysctl-test -test_bits -test_bpf -test_hash -test_hmm -test_kasan -test_klp_atomic_replace -test_klp_callbacks_busy -test_klp_callbacks_demo -test_klp_callbacks_demo2 -test_klp_callbacks_mod -test_klp_livepatch -test_klp_shadow_vars -test_klp_state -test_klp_state2 -test_klp_state3 -test_kprobes -test_linear_ranges -test_list_sort -test_sort -test_vmalloc -time_test -torture -wwan_hwsim diff --git a/mod-kvm.list b/mod-kvm.list deleted file mode 100644 index 38f5c49de..000000000 --- a/mod-kvm.list +++ /dev/null @@ -1,5 +0,0 @@ -kvm-amd -kvm-intel -kvm -kvmgt -ptp_kvm diff --git a/mod-partner.list b/mod-partner.list deleted file mode 100644 index 9cd36e549..000000000 --- a/mod-partner.list +++ /dev/null @@ -1,2 +0,0 @@ -afs -rxrpc diff --git a/sources b/sources index e6949dde4..6fd1e1172 100644 --- a/sources +++ b/sources @@ -1,5 +1,5 @@ SHA512 (kernel-abi-stablelists-6.6.0.tar.bz2) = 4f917598056dee5e23814621ec96ff2e4a411c8c4ba9d56ecb01b23cb96431825bedbecfcbaac9338efbf5cb21694d85497fa0bf43e7c80d9cd10bc6dd144dbd SHA512 (kernel-kabi-dw-6.6.0.tar.bz2) = 19308cd976031d05e18ef7f5d093218acdb89446418bab0cd956ff12cf66369915b9e64bb66fa9f20939428a60e81884fec5be3529c6c7461738d6540d3cc5c6 -SHA512 (linux-6.9.0-0.rc2.1.el10.tar.xz) = 5e1c79daae860dd27e08437cdd76bc93b9d3d9c384224dde81d9809c9b6e2720ae739855699534304614615be846ceb7786063b9c04285ab5e30c906da4b2047 -SHA512 (kernel-abi-stablelists-6.9.0-0.rc2.1.el10.tar.xz) = bcf25ff385b68659950020231f80e9d9418ee3df42ac6b9bbbe5220ede4a08fff87cbcba7c2825ee1abf6c6896c0a57b7afad7e013c7d6dbfe8fa127fb40c7e0 -SHA512 (kernel-kabi-dw-6.9.0-0.rc2.1.el10.tar.xz) = 2eedb40175a8cf953cccee1acdacbcc61cd3cff97f900367cff8edbe3c0d659cd6b18068765dda427c3d541bdd176409406bbc5db4844825ef6b329615131c3c +SHA512 (linux-6.9.0-0.rc4.2.el10.tar.xz) = 5d7b131235d511988610d155763bc5bfc4b1198f2a1f00873a5390f8b0c60a08b39e1359d0adaaca1832c80df019f5ee9e2baebd8915458e3720d7ad56073154 +SHA512 (kernel-abi-stablelists-6.9.0-0.rc4.2.el10.tar.xz) = fc4bc9a9bf9e6e5618b1b1850839d6ae10b09336d73bd531886e921e7edc5f43b96952a985b29a42532d1012565b347825f8a302f534cae15c214abc815c2446 +SHA512 (kernel-kabi-dw-6.9.0-0.rc4.2.el10.tar.xz) = 2eedb40175a8cf953cccee1acdacbcc61cd3cff97f900367cff8edbe3c0d659cd6b18068765dda427c3d541bdd176409406bbc5db4844825ef6b329615131c3c