Skip to contentSkip to conversation

Linux 5.19.12

DISCUSSION Greg Kroah-Hartman 1 participant 2 messages Sep 28, 2022 Stable branch

lore
Share & tools
lore

Greg Kroah-Hartman

author maintainer
#0 lore raw

I'm announcing the release of the 5.19.12 kernel.

All users of the 5.19 kernel series must upgrade.

The updated 5.19.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-5.19.y
and can be browsed at the normal kernel.org git web browser:
https://git.kernel.org/?p=linux/kernel/git/stable/linux-stable.git;a=summary

thanks,

greg k-h

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

 Makefile                                                       |    2 
 arch/arm/boot/dts/lan966x.dtsi                                 |    4 
 arch/arm64/boot/dts/freescale/imx8mm-mx8menlo.dts              |   10 
 arch/arm64/boot/dts/freescale/imx8mm-tqma8mqml-mba8mx.dts      |    1 
 arch/arm64/boot/dts/freescale/imx8mm-tqma8mqml.dtsi            |    1 
 arch/arm64/boot/dts/freescale/imx8mm-verdin.dtsi               |   10 
 arch/arm64/boot/dts/freescale/imx8mn.dtsi                      |    1 
 arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dts         |   12 
 arch/arm64/boot/dts/freescale/imx8ulp.dtsi                     |    3 
 arch/arm64/boot/dts/rockchip/px30-engicam-px30-core.dtsi       |    4 
 arch/arm64/boot/dts/rockchip/rk3399-gru-bob.dts                |    5 
 arch/arm64/boot/dts/rockchip/rk3399-gru-chromebook.dtsi        |    9 
 arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi                  |    1 
 arch/arm64/boot/dts/rockchip/rk3566-quartz64-a.dts             |    1 
 arch/arm64/boot/dts/rockchip/rk3566-quartz64-b.dts             |    2 
 arch/arm64/boot/dts/rockchip/rk3568-evb1-v10.dts               |    2 
 arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts                |    2 
 arch/arm64/kernel/topology.c                                   |    2 
 arch/mips/lantiq/clk.c                                         |    1 
 arch/mips/loongson32/common/platform.c                         |   16 
 arch/riscv/Kconfig                                             |    1 
 arch/riscv/kernel/signal.c                                     |    2 
 arch/um/kernel/um_arch.c                                       |    2 
 arch/x86/include/asm/kvm_host.h                                |    1 
 arch/x86/kvm/cpuid.c                                           |   11 
 arch/x86/kvm/emulate.c                                         |    3 
 arch/x86/kvm/x86.c                                             |   10 
 block/blk-core.c                                               |   43 -
 block/blk-mq-debugfs.c                                         |    8 
 block/blk-mq.c                                                 |   43 -
 block/blk-sysfs.c                                              |    5 
 block/blk.h                                                    |    3 
 block/bsg-lib.c                                                |    4 
 block/genhd.c                                                  |   45 -
 certs/Kconfig                                                  |    2 
 drivers/block/ataflop.c                                        |    1 
 drivers/block/loop.c                                           |    1 
 drivers/block/mtip32xx/mtip32xx.c                              |    2 
 drivers/block/rnbd/rnbd-clt.c                                  |    2 
 drivers/block/sx8.c                                            |    4 
 drivers/block/virtio_blk.c                                     |    1 
 drivers/block/z2ram.c                                          |    1 
 drivers/cdrom/gdrom.c                                          |    1 
 drivers/dax/hmem/device.c                                      |    1 
 drivers/dma/ti/k3-udma-private.c                               |    6 
 drivers/firmware/arm_scmi/reset.c                              |   10 
 drivers/firmware/efi/libstub/secureboot.c                      |    8 
 drivers/firmware/efi/libstub/x86-stub.c                        |    7 
 drivers/gpio/gpio-ixp4xx.c                                     |   17 
 drivers/gpio/gpio-mockup.c                                     |    6 
 drivers/gpio/gpio-mt7621.c                                     |   21 
 drivers/gpio/gpio-tqmx86.c                                     |    4 
 drivers/gpio/gpiolib-cdev.c                                    |    5 
 drivers/gpu/drm/amd/amdgpu/amdgpu_display.c                    |   13 
 drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c                        |    2 
 drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h                        |    1 
 drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c                        |    3 
 drivers/gpu/drm/amd/amdgpu/nbio_v7_7.c                         |    9 
 drivers/gpu/drm/amd/display/dc/dml/dcn30/display_mode_vba_30.c |    3 
 drivers/gpu/drm/amd/display/dc/dml/dcn31/display_mode_vba_31.c |  420 ++--------
 drivers/gpu/drm/amd/display/modules/color/color_gamma.c        |    4 
 drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c        |   11 
 drivers/gpu/drm/gma500/cdv_device.c                            |    4 
 drivers/gpu/drm/gma500/gem.c                                   |    4 
 drivers/gpu/drm/gma500/gma_display.c                           |   11 
 drivers/gpu/drm/gma500/oaktrail_device.c                       |    5 
 drivers/gpu/drm/gma500/power.c                                 |    8 
 drivers/gpu/drm/gma500/psb_drv.c                               |    2 
 drivers/gpu/drm/gma500/psb_drv.h                               |    5 
 drivers/gpu/drm/gma500/psb_irq.c                               |   15 
 drivers/gpu/drm/gma500/psb_irq.h                               |    2 
 drivers/gpu/drm/hisilicon/hibmc/Kconfig                        |    1 
 drivers/gpu/drm/i915/display/g4x_dp.c                          |   22 
 drivers/gpu/drm/i915/display/icl_dsi.c                         |   18 
 drivers/gpu/drm/i915/display/intel_backlight.c                 |   23 
 drivers/gpu/drm/i915/display/intel_bios.c                      |  384 +++++----
 drivers/gpu/drm/i915/display/intel_bios.h                      |    4 
 drivers/gpu/drm/i915/display/intel_ddi.c                       |   22 
 drivers/gpu/drm/i915/display/intel_ddi_buf_trans.c             |    9 
 drivers/gpu/drm/i915/display/intel_display_types.h             |   69 +
 drivers/gpu/drm/i915/display/intel_dp.c                        |   40 
 drivers/gpu/drm/i915/display/intel_dp.h                        |    2 
 drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c          |    6 
 drivers/gpu/drm/i915/display/intel_drrs.c                      |    3 
 drivers/gpu/drm/i915/display/intel_dsi.c                       |    2 
 drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.c         |    9 
 drivers/gpu/drm/i915/display/intel_dsi_vbt.c                   |   56 -
 drivers/gpu/drm/i915/display/intel_lvds.c                      |    6 
 drivers/gpu/drm/i915/display/intel_panel.c                     |   13 
 drivers/gpu/drm/i915/display/intel_pps.c                       |   70 +
 drivers/gpu/drm/i915/display/intel_psr.c                       |   35 
 drivers/gpu/drm/i915/display/intel_sdvo.c                      |    3 
 drivers/gpu/drm/i915/display/vlv_dsi.c                         |   21 
 drivers/gpu/drm/i915/gem/i915_gem_context.c                    |    8 
 drivers/gpu/drm/i915/i915_drv.h                                |   63 -
 drivers/gpu/drm/i915/i915_gem.c                                |    3 
 drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c                    |    2 
 drivers/gpu/drm/mediatek/mtk_dsi.c                             |   24 
 drivers/gpu/drm/panel/panel-simple.c                           |    2 
 drivers/gpu/drm/rockchip/cdn-dp-core.c                         |    5 
 drivers/hv/vmbus_drv.c                                         |   10 
 drivers/i2c/busses/i2c-imx.c                                   |    2 
 drivers/i2c/busses/i2c-mlxbf.c                                 |   68 -
 drivers/i2c/i2c-mux.c                                          |    5 
 drivers/iommu/intel/iommu.c                                    |    2 
 drivers/media/usb/b2c2/flexcop-usb.c                           |    2 
 drivers/memstick/core/ms_block.c                               |    1 
 drivers/memstick/core/mspro_block.c                            |    1 
 drivers/mmc/core/block.c                                       |    1 
 drivers/mmc/core/queue.c                                       |    1 
 drivers/net/bonding/bond_3ad.c                                 |    5 
 drivers/net/bonding/bond_main.c                                |   72 +
 drivers/net/can/flexcan/flexcan-core.c                         |   10 
 drivers/net/can/usb/gs_usb.c                                   |    4 
 drivers/net/ethernet/broadcom/bnxt/bnxt.c                      |   10 
 drivers/net/ethernet/broadcom/bnxt/bnxt_ptp.c                  |    4 
 drivers/net/ethernet/freescale/enetc/Makefile                  |    1 
 drivers/net/ethernet/freescale/enetc/enetc.c                   |   53 -
 drivers/net/ethernet/freescale/enetc/enetc.h                   |   12 
 drivers/net/ethernet/freescale/enetc/enetc_pf.c                |   32 
 drivers/net/ethernet/freescale/enetc/enetc_qos.c               |   23 
 drivers/net/ethernet/freescale/enetc/enetc_vf.c                |   17 
 drivers/net/ethernet/google/gve/gve_rx_dqo.c                   |    2 
 drivers/net/ethernet/intel/i40e/i40e_main.c                    |   32 
 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c             |   20 
 drivers/net/ethernet/intel/iavf/iavf_txrx.c                    |    9 
 drivers/net/ethernet/intel/iavf/iavf_virtchnl.c                |    7 
 drivers/net/ethernet/intel/ice/ice_lib.c                       |   42 -
 drivers/net/ethernet/intel/ice/ice_main.c                      |   25 
 drivers/net/ethernet/intel/ice/ice_txrx.c                      |    5 
 drivers/net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_mdio.c     |    6 
 drivers/net/ethernet/microsoft/mana/gdma_main.c                |   10 
 drivers/net/ethernet/renesas/ravb_main.c                       |    2 
 drivers/net/ethernet/renesas/sh_eth.c                          |    2 
 drivers/net/ethernet/sfc/efx_channels.c                        |    2 
 drivers/net/ethernet/sfc/siena/efx_channels.c                  |    2 
 drivers/net/ethernet/sfc/siena/tx.c                            |    2 
 drivers/net/ethernet/sfc/tx.c                                  |    2 
 drivers/net/ethernet/sun/sunhme.c                              |    4 
 drivers/net/ipa/ipa_qmi.c                                      |    8 
 drivers/net/ipa/ipa_qmi_msg.c                                  |    8 
 drivers/net/ipa/ipa_qmi_msg.h                                  |   37 
 drivers/net/ipa/ipa_table.c                                    |    2 
 drivers/net/ipa/ipa_table.h                                    |    3 
 drivers/net/ipvlan/ipvlan_core.c                               |    6 
 drivers/net/mdio/of_mdio.c                                     |    1 
 drivers/net/netdevsim/hwstats.c                                |    6 
 drivers/net/phy/aquantia_main.c                                |   53 +
 drivers/net/phy/micrel.c                                       |   18 
 drivers/net/team/team.c                                        |   24 
 drivers/net/wireguard/netlink.c                                |   13 
 drivers/net/wireguard/selftest/ratelimiter.c                   |   25 
 drivers/net/wireless/intel/iwlwifi/Kconfig                     |    1 
 drivers/net/wireless/mediatek/mt76/mt7615/mac.c                |    2 
 drivers/nvdimm/pmem.c                                          |    6 
 drivers/nvme/host/apple.c                                      |    2 
 drivers/nvme/host/core.c                                       |    1 
 drivers/nvme/host/fc.c                                         |   12 
 drivers/nvme/host/pci.c                                        |    2 
 drivers/nvme/host/rdma.c                                       |   12 
 drivers/nvme/host/tcp.c                                        |   12 
 drivers/nvme/target/loop.c                                     |   12 
 drivers/perf/arm-cmn.c                                         |    2 
 drivers/phy/marvell/phy-mvebu-a3700-comphy.c                   |   87 --
 drivers/s390/block/dasd.c                                      |    2 
 drivers/s390/block/dasd_alias.c                                |    9 
 drivers/s390/block/dasd_genhd.c                                |    4 
 drivers/scsi/hosts.c                                           |   16 
 drivers/scsi/mpt3sas/mpt3sas_base.c                            |    2 
 drivers/scsi/qla2xxx/qla_target.c                              |    4 
 drivers/scsi/scsi_lib.c                                        |   12 
 drivers/scsi/scsi_priv.h                                       |    2 
 drivers/scsi/scsi_scan.c                                       |    1 
 drivers/scsi/scsi_sysfs.c                                      |    3 
 drivers/scsi/sd.c                                              |    4 
 drivers/scsi/sr.c                                              |    4 
 drivers/thunderbolt/icm.c                                      |    1 
 drivers/thunderbolt/nhi.h                                      |    1 
 drivers/tty/serial/fsl_lpuart.c                                |    9 
 drivers/tty/serial/serial-tegra.c                              |    5 
 drivers/tty/serial/tegra-tcu.c                                 |    2 
 drivers/ufs/core/ufshcd.c                                      |    4 
 drivers/usb/core/hub.c                                         |    2 
 drivers/usb/dwc3/core.c                                        |   13 
 drivers/usb/serial/option.c                                    |    6 
 drivers/xen/xenbus/xenbus_client.c                             |    9 
 fs/btrfs/disk-io.c                                             |   42 -
 fs/btrfs/zoned.c                                               |   40 
 fs/cifs/cifsfs.c                                               |    6 
 fs/cifs/smb2ops.c                                              |   69 +
 fs/dax.c                                                       |    3 
 fs/exfat/fatent.c                                              |    3 
 fs/ext4/ext4.h                                                 |   10 
 fs/ext4/extents.c                                              |    4 
 fs/ext4/ialloc.c                                               |    2 
 fs/ext4/mballoc.c                                              |  317 +++----
 fs/ext4/mballoc.h                                              |    1 
 include/asm-generic/vmlinux.lds.h                              |    3 
 include/linux/blk-mq.h                                         |    3 
 include/linux/blkdev.h                                         |    6 
 include/linux/cpumask.h                                        |    5 
 include/linux/serial_core.h                                    |   17 
 include/net/bond_3ad.h                                         |    2 
 include/net/bonding.h                                          |    3 
 include/scsi/scsi_host.h                                       |    2 
 include/uapi/linux/xfrm.h                                      |    2 
 io_uring/io_uring.c                                            |    3 
 kernel/cgroup/cgroup.c                                         |    5 
 kernel/workqueue.c                                             |    6 
 lib/Kconfig.debug                                              |    4 
 mm/slab_common.c                                               |    5 
 mm/slub.c                                                      |   18 
 net/batman-adv/hard-interface.c                                |    4 
 net/bridge/netfilter/ebtables.c                                |    4 
 net/core/flow_dissector.c                                      |    5 
 net/ipv6/af_inet6.c                                            |    4 
 net/netfilter/nf_conntrack_ftp.c                               |    6 
 net/netfilter/nf_conntrack_irc.c                               |   34 
 net/netfilter/nf_conntrack_sip.c                               |    4 
 net/netfilter/nf_tables_api.c                                  |    8 
 net/netfilter/nfnetlink_osf.c                                  |    4 
 net/sched/cls_api.c                                            |    1 
 net/sched/sch_taprio.c                                         |   18 
 net/smc/smc_core.c                                             |    5 
 scripts/Makefile.debug                                         |   21 
 sound/core/init.c                                              |   10 
 sound/pci/hda/hda_bind.c                                       |    4 
 sound/pci/hda/hda_intel.c                                      |    2 
 sound/pci/hda/patch_hdmi.c                                     |   24 
 sound/pci/hda/patch_realtek.c                                  |   33 
 sound/usb/endpoint.c                                           |   23 
 sound/usb/endpoint.h                                           |    6 
 sound/usb/pcm.c                                                |   14 
 tools/lib/perf/evlist.c                                        |    5 
 tools/perf/util/bpf_counter_cgroup.c                           |    4 
 tools/perf/util/bpf_skel/bperf_cgroup.bpf.c                    |    2 
 tools/perf/util/genelf.c                                       |   14 
 tools/perf/util/genelf.h                                       |    4 
 tools/perf/util/symbol-elf.c                                   |    7 
 tools/perf/util/synthetic-events.c                             |   17 
 tools/testing/selftests/net/forwarding/sch_red.sh              |    1 
 241 files changed, 2011 insertions(+), 1655 deletions(-)

Adrian Hunter (2):
libperf evlist: Fix polling of system-wide events perf kcore_copy: Do not check /proc/modules is unchanged

Al Viro (1):
riscv: fix a nasty sigreturn bug...

Alan Stern (1):
USB: core: Fix RST error in hub.c

Alex Deucher (2):
drm/amdgpu: add HDP remap functionality to nbio 7.7 drm/amdgpu: don't register a dirty callback for non-atomic

Alex Elder (1):
net: ipa: properly limit modem routing table use

Allen-KH Cheng (1):
drm/mediatek: Fix wrong dither settings

Andy Shevchenko (1):
gpio: mockup: Fix potential resource leakage when register a chip

AngeloGioacchino Del Regno (1):
drm/mediatek: dsi: Add atomic {destroy,duplicate}_state, reset callbacks

Antony Antony (1):
xfrm: fix XFRMA_LASTUSED comment

Ard Biesheuvel (2):
efi: x86: Wipe setup_data on pure EFI boot
efi: libstub: check Shim mode using MokSBStateRT

Asmaa Mnebhi (3):
i2c: mlxbf: incorrect base address passed during io write
i2c: mlxbf: prevent stack overflow in mlxbf_i2c_smbus_start_transaction()
i2c: mlxbf: Fix frequency calculation

Bart Van Assche (1):
scsi: core: Fix a use-after-free

Bartosz Golaszewski (1):
gpio: mockup: fix NULL pointer dereference when removing debugfs

Benjamin Poirier (3):
net: bonding: Share lacpdu_mcast_addr definition
net: bonding: Unsync device addresses on ndo_stop
net: team: Unsync device addresses on ndo_stop

Brett Creeley (1):
iavf: Fix cached head and tail value for iavf_get_tx_pending

Brian Norris (1):
arm64: dts: rockchip: Pull up wlan wake# on Gru-Bob

Callum Osmotherly (2):
ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5570 laptop
ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5530 laptop

Candice Li (1):
drm/amdgpu: Skip reset error status for psp v13_0_0

Carl Yin(殷张成) (1):

      USB: serial: option: add Quectel BG95 0x0203 composition

Chao Yu (1):
mm/slub: fix to return errno if kmalloc() fails

Chris Wilson (1):
drm/i915/gem: Really move i915_gem_context.link under ref protection

Christian Lamparter (1):
um: fix default console kernel parameter

Christoph Hellwig (6):
block: remove QUEUE_FLAG_DEAD
block: stop setting the nomerges flags in blk_cleanup_queue
block: simplify disk shutdown
blk-mq: fix error handling in __blk_mq_alloc_disk
block: call blk_mq_exit_queue from disk_release for never added disks Revert "block: freeze the queue earlier in del_gendisk"

Cristian Marussi (2):
firmware: arm_scmi: Harden accesses to the reset domains
firmware: arm_scmi: Fix the asynchronous reset requests

Dan Carpenter (1):
i2c: mux: harden i2c_mux_alloc() against integer overflows

Dan Williams (1):
devdax: Fix soft-reservation memory description

Daniel Houldsworth (1):
ALSA: hda/realtek: Add a quirk for HP OMEN 16 (8902) mute LED

Dave Ertman (1):
ice: Don't double unplug aux on peer initiated reset

David Howells (2):
smb3: Move the flush out of smb2_copychunk_range() into its callers
smb3: fix temporary data corruption in insert range

David Leadbeater (1):
netfilter: nf_conntrack_irc: Tighten matching on DCC message

David Thompson (1):
mlxbf_gige: clear MDIO gateway lock after read

Ding Hui (1):
ice: Fix crash by keep old cfg when update TCs more than queues

Dongliang Mu (1):
gpio: tqmx86: fix uninitialized variable girq

Dr. David Alan Gilbert (1):
KVM: x86: Always enable legacy FP/SSE in allowed user XFEATURES

Fabio Estevam (3):
arm64: dts: rockchip: Remove 'enable-active-low' from rk3399-puma
arm64: dts: rockchip: Remove 'enable-active-low' from rk3566-quartz64-a
arm64: dts: tqma8mqml: Include phy-imx8-pcie.h header

Felix Fietkau (1):
wifi: mt76: fix reading current per-tid starting sequence number for aggregation

Feng Tang (1):
mm/slab_common: fix possible double free of kmem_cache

Filipe Manana (2):
btrfs: fix hang during unmount when stopping block group reclaim worker
btrfs: fix hang during unmount when stopping a space reclaim worker

Florian Westphal (2):
netfilter: ebtables: fix memory leak when blob is malformed
netfilter: nf_ct_ftp: fix deadlock when nat rewrite is needed

Geert Uytterhoeven (2):
net: ravb: Fix PHY state warning splat during system resume
net: sh_eth: Fix PHY state warning splat during system resume

Gil Fine (1):
thunderbolt: Add support for Intel Maple Ridge single port controller

Greg Kroah-Hartman (3):
Revert "usb: add quirks for Lenovo OneLink+ Dock" Revert "usb: gadget: udc-xilinx: replace memcpy with memcpy_toio" Linux 5.19.12

Guchun Chen (1):
drm/amd/pm: disable BACO entry/exit completely on several sienna cichlid cards

Haiyang Zhang (1):
net: mana: Add rmb after checking owner bits

Hamza Mahfooz (1):
drm/amdgpu: use dirty framebuffer helper

Hangbin Liu (1):
selftests: forwarding: add shebang for sch_red.sh

Hangyu Hua (1):
net: sched: fix possible refcount leak in tc_new_tfilter()

Hans de Goede (3):
drm/gma500: Fix BUG: sleeping function called from invalid context errors drm/gma500: Fix WARN_ON(lock->magic != lock) error drm/gma500: Fix (vblank) IRQs not working after suspend/resume

Heiko Schocher (1):
drm/panel: simple: Fix innolux_g121i1_l01 bus_format

Horatiu Vultur (1):
ARM: dts: lan966x: Fix the interrupt number for internal PHYs

Ido Schimmel (2):
netdevsim: Fix hwstats debugfs file permissions
ipv6: Fix crash when IPv6 is administratively disabled

Igor Ryzhov (1):
netfilter: nf_conntrack_sip: fix ct_sip_walk_headers

Ilkka Koskinen (1):
perf/arm-cmn: Add more bits to child node address offset field

Ilpo Järvinen (3):
serial: Create uart_xmit_advance()
serial: tegra: Use uart_xmit_advance(), fixes icount.tx accounting
serial: tegra-tcu: Use uart_xmit_advance(), fixes icount.tx accounting

Ioana Ciornei (1):
net: phy: aquantia: wait for the suspend/resume operations to finish

Jagan Teki (1):
arm64: dts: rockchip: Fix typo in lisense text for PX30.Core

Jakub Kicinski (1):
bnxt: prevent skb UAF after handing over to PTP worker

Jan Kara (6):
ext4: make mballoc try target group first even with mb_optimize_scan
ext4: avoid unnecessary spreading of allocations among groups
ext4: use locality group preallocation for small closed files
ext4: use buckets for cr 1 block scan instead of rbtree
ext4: fixup possible uninitialized variable access in ext4_mb_choose_next_group_cr1()
ext4: make directory inode spreading reflect flexbg size

Jane Chu (1):
pmem: fix a name collision

Jani Nikula (2):
drm/i915/dsi: filter invalid backlight and CABC ports drm/i915/dsi: fix dual-link DSI backlight and CABC ports for display 11+

Janusz Krzysztofik (1):
drm/i915/gem: Flush contexts on driver release

Jason A. Donenfeld (2):
wireguard: ratelimiter: disable timings test by default
wireguard: netlink: avoid variable-sized memcpy on sockaddr

Jean-Francois Le Fillatre (1):
usb: add quirks for Lenovo OneLink+ Dock

Jens Axboe (1):
io_uring: ensure that cached task references are always put on exit

Johan Hovold (1):
media: flexcop-usb: fix endpoint type check

Jonathan Toppins (1):
bonding: fix NULL deref in bond_rr_gen_slave_id

José Roberto de Souza (1):
drm/i915/display: Fix handling of enable_psr parameter

Juergen Gross (1):
xen/xenbus: fix xenbus_setup_ring()

Kai Vehmanen (1):
ALSA: hda: add Intel 5 Series / 3400 PCI DID

Larysa Zaremba (1):
ice: Fix ice_xdp_xmit() when XDP TX queue number is not sufficient

Li Jinlin (1):
fsdax: Fix infinite loop in dax_iomap_rw()

Liang He (2):
dmaengine: ti: k3-udma-private: Fix refcount leak bug in of_xudma_dev_get()
of: mdio: Add of_node_put() when breaking out of for_each_xx

Lieven Hey (1):
perf jit: Include program header in ELF files

Linus Walleij (1):
gpio: ixp4xx: Make irqchip immutable

Lu Wei (1):

      ipvlan: Fix out-of-bound bugs caused by unset skb->mac_header

Ludovic Cintrat (1):
net: core: fix flow symmetric hash

Lukas Wunner (1):
serial: fsl_lpuart: Reset prior to registration

Luke D. Jones (3):
ALSA: hda/realtek: Add pincfg for ASUS G513 HP jack
ALSA: hda/realtek: Add pincfg for ASUS G533Z HP jack
ALSA: hda/realtek: Add quirk for ASUS GA503R laptop

Luís Henriques (1):

      ext4: fix bug in extents parsing when eh_entries == 0 and eh_depth > 0

Marc Kleine-Budde (2):
can: flexcan: flexcan_mailbox_read() fix return value for drop = true
can: gs_usb: gs_can_open(): fix race dev->can.state condition

Marco Felsch (1):
arm64: dts: imx8mn: remove GPU power domain reset

Marek Vasut (1):
arm64: dts: imx8mm: Reverse CPLD_Dn GPIO label mapping on MX8Menlo

Masahiro Yamada (1):
certs: make system keyring depend on built-in x509 parser

Mateusz Palczewski (1):
ice: Fix interface being down after reset with link-down-on-close flag on

Maurizio Lombardi (1):
mm: slub: fix flush_cpu_slab()/__free_slab() invocations in task context.

Meng Li (1):
gpiolib: cdev: Set lineevent_state::irq after IRQ register successfully

Michael Riesch (2):
arm64: dts: rockchip: fix property for usb2 phy supply on rock-3a
arm64: dts: rockchip: fix property for usb2 phy supply on rk3568-evb1-v10

Michael Walle (1):
net: phy: micrel: fix shared interrupt on LAN8814

Michal Jaron (3):
iavf: Fix set max MTU size with port VLAN and jumbo frames
i40e: Fix VF set max MTU size
i40e: Fix set max_tx_rate when it is lower than 1 Mbps

Michal Swiatkowski (1):
ice: config netdev tc before setting queues number

Ming Lei (1):
cgroup: cgroup_get_from_id() must check the looked-up kn is a directory

Mohan Kumar (2):
ALSA: hda/tegra: set depop delay for tegra
ALSA: hda: Fix Nvidia dp infoframe

Namhyung Kim (3):
perf stat: Fix BPF program section name
perf stat: Fix cpu map index in bperf cgroup code perf tools: Honor namespace when synthesizing build-ids

Naohiro Aota (1):
btrfs: zoned: wait for extent buffer IOs before finishing a zone

Nathan Chancellor (3):
drm/amd/display: Reduce number of arguments of dml31's CalculateWatermarksAndDRAMSpeedChangeSupport() drm/amd/display: Reduce number of arguments of dml31's CalculateFlipSchedule() drm/amd/display: Mark dml30's UseMinimumDCFCLK() as noinline for stack usage

Nathan Huckleberry (1):
drm/rockchip: Fix return type of cdn_dp_connector_mode_valid

Nick Desaulniers (2):
Makefile.debug: set -g unconditional on CONFIG_DEBUG_INFO_SPLIT Makefile.debug: re-enable debug info for .S files

Nicolas Frattaroli (1):
arm64: dts: rockchip: Lower sd speed on quartz64-b

Norbert Zulinski (1):
iavf: Fix bad page state

Nícolas F. R. A. Prado (1):
drm/mediatek: dsi: Move mtk_dsi_stop() call back to mtk_dsi_poweroff()

Pablo Neira Ayuso (1):
netfilter: nfnetlink_osf: fix possible bogus match in nf_osf_find()

Pali Rohár (1):
phy: marvell: phy-mvebu-a3700-comphy: Remove broken reset support

Peng Fan (1):
arm64: dts: imx8ulp: add #reset-cells for pcc

Peter Collingbourne (1):
kasan: call kasan_malloc() from __kmalloc_*track_caller()

Phil Auld (1):
drivers/base: Fix unsigned comparison to -1 in CPUMAP_FILE_MAX_BYTES

Philippe Schenker (1):
arm64: dts: imx8mm-verdin: extend pmic voltages

Piyush Mehta (1):
usb: gadget: udc-xilinx: replace memcpy with memcpy_toio

Rafael Mendonca (2):
scsi: qla2xxx: Fix memory leak in __qlt_24xx_handle_abts()
block: Do not call blk_put_queue() if gendisk allocation fails

Randy Dunlap (3):
riscv: fix RISCV_ISA_SVPBMT kconfig dependency warning
MIPS: lantiq: export clk_get_io() for lantiq_wdt.ko drm/hisilicon: Add depends on MMU

Sean Anderson (1):
net: sunhme: Fix packet reception for len < RX_COPY_THRESHOLD

Sean Christopherson (2):
KVM: x86: Reinstate kvm_vcpu_arch.guest_supported_xcr0
KVM: x86: Inject #UD on emulated XSETBV if XSAVES isn't enabled

Serge Semin (1):
MIPS: Loongson32: Fix PHY-mode being left unspecified

Sergey Shtylyov (1):
arm64: topology: fix possible overflow in amu_fie_setup()

Sergio Paracuellos (1):
gpio: mt7621: Make the irqchip immutable

Shailend Chand (1):
gve: Fix GFP flags when allocing pages

Shigeru Yoshida (1):
batman-adv: Fix hang up with small MTU hard-interface

Sreekanth Reddy (1):
scsi: mpt3sas: Fix return value check of dma_get_required_mask()

Stefan Haberland (1):
s390/dasd: fix Oops in dasd_alias_get_start_dev due to missing pavgroup

Steve French (2):
smb3: fix temporary data corruption in collapse range
smb3: use filemap_write_and_wait_range instead of filemap_write_and_wait

Takashi Iwai (4):
Revert "ALSA: usb-audio: Split endpoint setups for hw_params and prepare"
ALSA: core: Fix double-free at snd_card_new()
ALSA: hda: Fix hang at HD-audio codec unbinding due to refcount saturation
ALSA: hda/realtek: Re-arrange quirk table entries

Tetsuo Handa (3):
netfilter: nf_tables: fix nft_counters_enabled underflow at nf_tables_addchain()
netfilter: nf_tables: fix percpu memory leak at nf_tables_addchain()
workqueue: don't skip lockdep work dependency in cancel_work_sync()

Theodore Ts'o (1):
ext4: limit the number of retries after discarding preallocations blocks

Tim Harvey (3):
arm64: dts: imx8mp-venice-gw74xx: fix CAN STBY polarity
arm64: dts: imx8mp-venice-gw74xx: fix ksz9477 cpu port
arm64: dts: imx8mp-venice-gw74xx: fix port/phy validation

Toke Høiland-Jørgensen (1):
wifi: iwlwifi: Mark IWLMEI as broken

Uwe Kleine-König (1):
i2c: imx: If pm_runtime_get_sync() returned 1 device access is possible

Vadim Fedorenko (1):
bnxt_en: fix flags to check for supported fw version

Ville Syrjälä (5):
drm/i915: Extract intel_edp_fixup_vbt_bpp() drm/i915/pps: Split pps_init_delays() into distinct parts drm/i915/bios: Split parse_driver_features() into two parts drm/i915/bios: Split VBT parsing to global vs. panel specific parts drm/i915/bios: Split VBT data into per-panel vs. global parts

Vitaly Kuznetsov (1):
Drivers: hv: Never allocate anything besides framebuffer from framebuffer memory region

Vladimir Oltean (4):
net: enetc: move enetc_set_psfp() out of the common enetc_set_features()
net: enetc: deny offload of tc-based TSN features on VF interfaces net/sched: taprio: avoid disabling offload when it was never enabled net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs

Wen Gu (1):
net/smc: Stop the CLC flow if no link to map buffers on

Will Deacon (1):
vmlinux.lds.h: CFI: Reduce alignment of jump-table to function alignment

William Wu (1):
usb: dwc3: core: leave default DMA if the controller does not support 64-bit DMA

Yang Wang (1):
drm/amdgpu: change the alignment size of TMR BO to 1M

Yao Wang1 (1):
drm/amd/display: Limit user regamma to a valid value

Yi Liu (1):
iommu/vt-d: Check correct capability for sagaw determination

Yuezhang Mo (1):
exfat: fix overflow for large capacity partition

huangwenhui (1):
ALSA: hda/realtek: Add quirk for Huawei WRT-WX9

jerry meng (1):
USB: serial: option: add Quectel RM520N

zain wang (1):
arm64: dts: rockchip: Set RK3399-Gru PCLK_EDP to 24 MHz

Íñigo Huguet (4):
sfc: fix TX channel offset when using legacy interrupts
sfc: fix null pointer dereference in efx_hard_start_xmit sfc/siena: fix TX channel offset when using legacy interrupts sfc/siena: fix null pointer dereference in efx_hard_start_xmit

author maintainer
#1 lore raw
Makefile +1 -1
index 01463a22926d..7df4c195c8ab 100644
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0
 VERSION = 5
 PATCHLEVEL = 19
-SUBLEVEL = 11
+SUBLEVEL = 12
 EXTRAVERSION =
 NAME = Superb Owl
 
arch/arm/boot/dts/lan966x.dtsi +2 -2
index 38e90a31d2dd..25c19f9d0a12 100644
@@ -515,13 +515,13 @@ mdio1: mdio@e200413c {
 
 			phy0: ethernet-phy@1 {
 				reg = <1>;
-				interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
+				interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
 				status = "disabled";
 			};
 
 			phy1: ethernet-phy@2 {
 				reg = <2>;
-				interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
+				interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
 				status = "disabled";
 			};
 		};
arch/arm64/boot/dts/freescale/imx8mm-mx8menlo.dts +5 -5
index 92eaf4ef4563..57ecdfa0dfc0 100644
@@ -152,11 +152,11 @@ &gpio4 {
 	 * CPLD_reset is RESET_SOFT in schematic
 	 */
 	gpio-line-names =
-		"CPLD_D[1]", "CPLD_int", "CPLD_reset", "",
-		"", "CPLD_D[0]", "", "",
-		"", "", "", "CPLD_D[2]",
-		"CPLD_D[3]", "CPLD_D[4]", "CPLD_D[5]", "CPLD_D[6]",
-		"CPLD_D[7]", "", "", "",
+		"CPLD_D[6]", "CPLD_int", "CPLD_reset", "",
+		"", "CPLD_D[7]", "", "",
+		"", "", "", "CPLD_D[5]",
+		"CPLD_D[4]", "CPLD_D[3]", "CPLD_D[2]", "CPLD_D[1]",
+		"CPLD_D[0]", "", "", "",
 		"", "", "", "",
 		"", "", "", "KBD_intK",
 		"", "", "", "";
arch/arm64/boot/dts/freescale/imx8mm-tqma8mqml-mba8mx.dts +0 -1
index 286d2df01cfa..7e0aeb2db305 100644
@@ -5,7 +5,6 @@
 
 /dts-v1/;
 
-#include <dt-bindings/phy/phy-imx8-pcie.h>
 #include "imx8mm-tqma8mqml.dtsi"
 #include "mba8mx.dtsi"
 
arch/arm64/boot/dts/freescale/imx8mm-tqma8mqml.dtsi +1 -0
index 16ee9b5179e6..f649dfacb4b6 100644
@@ -3,6 +3,7 @@
  * Copyright 2020-2021 TQ-Systems GmbH
  */
 
+#include <dt-bindings/phy/phy-imx8-pcie.h>
 #include "imx8mm.dtsi"
 
 / {
arch/arm64/boot/dts/freescale/imx8mm-verdin.dtsi +5 -5
index c2d4da25482f..44b473494d0f 100644
@@ -359,8 +359,8 @@ reg_vdd_arm: BUCK2 {
 				nxp,dvs-standby-voltage = <850000>;
 				regulator-always-on;
 				regulator-boot-on;
-				regulator-max-microvolt = <950000>;
-				regulator-min-microvolt = <850000>;
+				regulator-max-microvolt = <1050000>;
+				regulator-min-microvolt = <805000>;
 				regulator-name = "On-module +VDD_ARM (BUCK2)";
 				regulator-ramp-delay = <3125>;
 			};
@@ -368,8 +368,8 @@ reg_vdd_arm: BUCK2 {
 			reg_vdd_dram: BUCK3 {
 				regulator-always-on;
 				regulator-boot-on;
-				regulator-max-microvolt = <950000>;
-				regulator-min-microvolt = <850000>;
+				regulator-max-microvolt = <1000000>;
+				regulator-min-microvolt = <805000>;
 				regulator-name = "On-module +VDD_GPU_VPU_DDR (BUCK3)";
 			};
 
@@ -408,7 +408,7 @@ reg_nvcc_snvs: LDO1 {
 			reg_vdd_snvs: LDO2 {
 				regulator-always-on;
 				regulator-boot-on;
-				regulator-max-microvolt = <900000>;
+				regulator-max-microvolt = <800000>;
 				regulator-min-microvolt = <800000>;
 				regulator-name = "On-module +V0.8_SNVS (LDO2)";
 			};
arch/arm64/boot/dts/freescale/imx8mn.dtsi +0 -1
index e41e1d56f980..7bd4eecd592e 100644
@@ -672,7 +672,6 @@ pgc_gpumix: power-domain@2 {
 							 <&clk IMX8MN_CLK_GPU_SHADER>,
 							 <&clk IMX8MN_CLK_GPU_BUS_ROOT>,
 							 <&clk IMX8MN_CLK_GPU_AHB>;
-						resets = <&src IMX8MQ_RESET_GPU_RESET>;
 					};
 
 					pgc_dispmix: power-domain@3 {
arch/arm64/boot/dts/freescale/imx8mp-venice-gw74xx.dts +8 -4
index 6630ec561dc2..211e6a1b296e 100644
@@ -123,8 +123,7 @@ reg_can2_stby: regulator-can2-stby {
 		pinctrl-names = "default";
 		pinctrl-0 = <&pinctrl_reg_can>;
 		regulator-name = "can2_stby";
-		gpio = <&gpio3 19 GPIO_ACTIVE_HIGH>;
-		enable-active-high;
+		gpio = <&gpio3 19 GPIO_ACTIVE_LOW>;
 		regulator-min-microvolt = <3300000>;
 		regulator-max-microvolt = <3300000>;
 	};
@@ -484,35 +483,40 @@ ports {
 			lan1: port@0 {
 				reg = <0>;
 				label = "lan1";
+				phy-mode = "internal";
 				local-mac-address = [00 00 00 00 00 00];
 			};
 
 			lan2: port@1 {
 				reg = <1>;
 				label = "lan2";
+				phy-mode = "internal";
 				local-mac-address = [00 00 00 00 00 00];
 			};
 
 			lan3: port@2 {
 				reg = <2>;
 				label = "lan3";
+				phy-mode = "internal";
 				local-mac-address = [00 00 00 00 00 00];
 			};
 
 			lan4: port@3 {
 				reg = <3>;
 				label = "lan4";
+				phy-mode = "internal";
 				local-mac-address = [00 00 00 00 00 00];
 			};
 
 			lan5: port@4 {
 				reg = <4>;
 				label = "lan5";
+				phy-mode = "internal";
 				local-mac-address = [00 00 00 00 00 00];
 			};
 
-			port@6 {
-				reg = <6>;
+			port@5 {
+				reg = <5>;
 				label = "cpu";
 				ethernet = <&fec>;
 				phy-mode = "rgmii-id";
arch/arm64/boot/dts/freescale/imx8ulp.dtsi +3 -0
index 09f7364dd1d0..1cd389b1b95d 100644
@@ -172,6 +172,7 @@ pcc3: clock-controller@292d0000 {
 				compatible = "fsl,imx8ulp-pcc3";
 				reg = <0x292d0000 0x10000>;
 				#clock-cells = <1>;
+				#reset-cells = <1>;
 			};
 
 			tpm5: tpm@29340000 {
@@ -270,6 +271,7 @@ pcc4: clock-controller@29800000 {
 				compatible = "fsl,imx8ulp-pcc4";
 				reg = <0x29800000 0x10000>;
 				#clock-cells = <1>;
+				#reset-cells = <1>;
 			};
 
 			lpi2c6: i2c@29840000 {
@@ -414,6 +416,7 @@ pcc5: clock-controller@2da70000 {
 				compatible = "fsl,imx8ulp-pcc5";
 				reg = <0x2da70000 0x10000>;
 				#clock-cells = <1>;
+				#reset-cells = <1>;
 			};
 		};
 
arch/arm64/boot/dts/rockchip/px30-engicam-px30-core.dtsi +2 -2
index 7249871530ab..5eecbefa8a33 100644
@@ -2,8 +2,8 @@
 /*
  * Copyright (c) 2020 Fuzhou Rockchip Electronics Co., Ltd
  * Copyright (c) 2020 Engicam srl
- * Copyright (c) 2020 Amarula Solutons
- * Copyright (c) 2020 Amarula Solutons(India)
+ * Copyright (c) 2020 Amarula Solutions
+ * Copyright (c) 2020 Amarula Solutions(India)
  */
 
 #include <dt-bindings/gpio/gpio.h>
arch/arm64/boot/dts/rockchip/rk3399-gru-bob.dts +5 -0
index 31ebb4e5fd33..0f9cc042d9bf 100644
@@ -88,3 +88,8 @@ h1_int_od_l: h1-int-od-l {
 		};
 	};
 };
+
+&wlan_host_wake_l {
+	/* Kevin has an external pull up, but Bob does not. */
+	rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>;
+};
arch/arm64/boot/dts/rockchip/rk3399-gru-chromebook.dtsi +9 -0
index 50d459ee4831..af5810e5f5b7 100644
@@ -244,6 +244,14 @@ &dmc {
 &edp {
 	status = "okay";
 
+	/*
+	 * eDP PHY/clk don't sync reliably at anything other than 24 MHz. Only
+	 * set this here, because rk3399-gru.dtsi ensures we can generate this
+	 * off GPLL=600MHz, whereas some other RK3399 boards may not.
+	 */
+	assigned-clocks = <&cru PCLK_EDP>;
+	assigned-clock-rates = <24000000>;
+
 	ports {
 		edp_out: port@1 {
 			reg = <1>;
@@ -578,6 +586,7 @@ wifi_perst_l: wifi-perst-l {
 	};
 
 	wlan_host_wake_l: wlan-host-wake-l {
+		/* Kevin has an external pull up, but Bob does not */
 		rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
 	};
 };
arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi +0 -1
index b1ac3a89f259..aa3e21bd6c8f 100644
@@ -62,7 +62,6 @@ vcc3v3_sys: vcc3v3-sys {
 	vcc5v0_host: vcc5v0-host-regulator {
 		compatible = "regulator-fixed";
 		gpio = <&gpio4 RK_PA3 GPIO_ACTIVE_LOW>;
-		enable-active-low;
 		pinctrl-names = "default";
 		pinctrl-0 = <&vcc5v0_host_en>;
 		regulator-name = "vcc5v0_host";
arch/arm64/boot/dts/rockchip/rk3566-quartz64-a.dts +0 -1
index fa953b736642..fdbfdf3634e4 100644
@@ -163,7 +163,6 @@ vcc5v0_usb20_otg: vcc5v0_usb20_otg {
 
 	vcc3v3_sd: vcc3v3_sd {
 		compatible = "regulator-fixed";
-		enable-active-low;
 		gpio = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>;
 		pinctrl-names = "default";
 		pinctrl-0 = <&vcc_sd_h>;
arch/arm64/boot/dts/rockchip/rk3566-quartz64-b.dts +1 -1
index 02d5f5a8ca03..528bb4e8ac77 100644
@@ -506,7 +506,7 @@ &sdmmc0 {
 	disable-wp;
 	pinctrl-names = "default";
 	pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>;
-	sd-uhs-sdr104;
+	sd-uhs-sdr50;
 	vmmc-supply = <&vcc3v3_sd>;
 	vqmmc-supply = <&vccio_sd>;
 	status = "okay";
arch/arm64/boot/dts/rockchip/rk3568-evb1-v10.dts +1 -1
index 622be8be9813..282f5c74d5cd 100644
@@ -618,7 +618,7 @@ &usb2phy0_host {
 };
 
 &usb2phy0_otg {
-	vbus-supply = <&vcc5v0_usb_otg>;
+	phy-supply = <&vcc5v0_usb_otg>;
 	status = "okay";
 };
 
arch/arm64/boot/dts/rockchip/rk3568-rock-3a.dts +1 -1
index 0813c0c5abde..26912f02684c 100644
@@ -543,7 +543,7 @@ &usb2phy0_host {
 };
 
 &usb2phy0_otg {
-	vbus-supply = <&vcc5v0_usb_otg>;
+	phy-supply = <&vcc5v0_usb_otg>;
 	status = "okay";
 };
 
arch/arm64/kernel/topology.c +1 -1
index 707b5451929d..d4abb948eb14 100644
@@ -251,7 +251,7 @@ static void amu_fie_setup(const struct cpumask *cpus)
 	for_each_cpu(cpu, cpus) {
 		if (!freq_counters_valid(cpu) ||
 		    freq_inv_set_max_ratio(cpu,
-					   cpufreq_get_hw_max_freq(cpu) * 1000,
+					   cpufreq_get_hw_max_freq(cpu) * 1000ULL,
 					   arch_timer_get_rate()))
 			return;
 	}
arch/mips/lantiq/clk.c +1 -0
index 7a623684d9b5..2d5a0bcb0cec 100644
@@ -50,6 +50,7 @@ struct clk *clk_get_io(void)
 {
 	return &cpu_clk_generic[2];
 }
+EXPORT_SYMBOL_GPL(clk_get_io);
 
 struct clk *clk_get_ppe(void)
 {
arch/mips/loongson32/common/platform.c +8 -8
index 794c96c2a4cd..311dc1580bbd 100644
@@ -98,7 +98,7 @@ int ls1x_eth_mux_init(struct platform_device *pdev, void *priv)
 	if (plat_dat->bus_id) {
 		__raw_writel(__raw_readl(LS1X_MUX_CTRL0) | GMAC1_USE_UART1 |
 			     GMAC1_USE_UART0, LS1X_MUX_CTRL0);
-		switch (plat_dat->interface) {
+		switch (plat_dat->phy_interface) {
 		case PHY_INTERFACE_MODE_RGMII:
 			val &= ~(GMAC1_USE_TXCLK | GMAC1_USE_PWM23);
 			break;
@@ -107,12 +107,12 @@ int ls1x_eth_mux_init(struct platform_device *pdev, void *priv)
 			break;
 		default:
 			pr_err("unsupported mii mode %d\n",
-			       plat_dat->interface);
+			       plat_dat->phy_interface);
 			return -ENOTSUPP;
 		}
 		val &= ~GMAC1_SHUT;
 	} else {
-		switch (plat_dat->interface) {
+		switch (plat_dat->phy_interface) {
 		case PHY_INTERFACE_MODE_RGMII:
 			val &= ~(GMAC0_USE_TXCLK | GMAC0_USE_PWM01);
 			break;
@@ -121,7 +121,7 @@ int ls1x_eth_mux_init(struct platform_device *pdev, void *priv)
 			break;
 		default:
 			pr_err("unsupported mii mode %d\n",
-			       plat_dat->interface);
+			       plat_dat->phy_interface);
 			return -ENOTSUPP;
 		}
 		val &= ~GMAC0_SHUT;
@@ -131,7 +131,7 @@ int ls1x_eth_mux_init(struct platform_device *pdev, void *priv)
 	plat_dat = dev_get_platdata(&pdev->dev);
 
 	val &= ~PHY_INTF_SELI;
-	if (plat_dat->interface == PHY_INTERFACE_MODE_RMII)
+	if (plat_dat->phy_interface == PHY_INTERFACE_MODE_RMII)
 		val |= 0x4 << PHY_INTF_SELI_SHIFT;
 	__raw_writel(val, LS1X_MUX_CTRL1);
 
@@ -146,9 +146,9 @@ static struct plat_stmmacenet_data ls1x_eth0_pdata = {
 	.bus_id			= 0,
 	.phy_addr		= -1,
 #if defined(CONFIG_LOONGSON1_LS1B)
-	.interface		= PHY_INTERFACE_MODE_MII,
+	.phy_interface		= PHY_INTERFACE_MODE_MII,
 #elif defined(CONFIG_LOONGSON1_LS1C)
-	.interface		= PHY_INTERFACE_MODE_RMII,
+	.phy_interface		= PHY_INTERFACE_MODE_RMII,
 #endif
 	.mdio_bus_data		= &ls1x_mdio_bus_data,
 	.dma_cfg		= &ls1x_eth_dma_cfg,
@@ -186,7 +186,7 @@ struct platform_device ls1x_eth0_pdev = {
 static struct plat_stmmacenet_data ls1x_eth1_pdata = {
 	.bus_id			= 1,
 	.phy_addr		= -1,
-	.interface		= PHY_INTERFACE_MODE_MII,
+	.phy_interface		= PHY_INTERFACE_MODE_MII,
 	.mdio_bus_data		= &ls1x_mdio_bus_data,
 	.dma_cfg		= &ls1x_eth_dma_cfg,
 	.has_gmac		= 1,
arch/riscv/Kconfig +1 -0
index fcbb81feb7ad..1f02f1556974 100644
@@ -361,6 +361,7 @@ config RISCV_ISA_C
 config RISCV_ISA_SVPBMT
 	bool "SVPBMT extension support"
 	depends on 64BIT && MMU
+	depends on !XIP_KERNEL
 	select RISCV_ALTERNATIVE
 	default y
 	help
arch/riscv/kernel/signal.c +2 -0
index 5a2de6b6f882..5c591123c440 100644
@@ -124,6 +124,8 @@ SYSCALL_DEFINE0(rt_sigreturn)
 	if (restore_altstack(&frame->uc.uc_stack))
 		goto badframe;
 
+	regs->cause = -1UL;
+
 	return regs->a0;
 
 badframe:
arch/um/kernel/um_arch.c +1 -1
index e0de60e503b9..d9e023c78f56 100644
@@ -33,7 +33,7 @@
 #include "um_arch.h"
 
 #define DEFAULT_COMMAND_LINE_ROOT "root=98:0"
-#define DEFAULT_COMMAND_LINE_CONSOLE "console=tty"
+#define DEFAULT_COMMAND_LINE_CONSOLE "console=tty0"
 
 /* Changed in add_arg and setup_arch, which run before SMP is started */
 static char __initdata command_line[COMMAND_LINE_SIZE] = { 0 };
arch/x86/include/asm/kvm_host.h +1 -0
index 4c0e812f2f04..19c04412f6e1 100644
@@ -713,6 +713,7 @@ struct kvm_vcpu_arch {
 	struct fpu_guest guest_fpu;
 
 	u64 xcr0;
+	u64 guest_supported_xcr0;
 
 	struct kvm_pio_request pio;
 	void *pio_data;
arch/x86/kvm/cpuid.c +8 -3
index de6d44e07e34..3ab498165639 100644
@@ -283,7 +283,6 @@ static void kvm_vcpu_after_set_cpuid(struct kvm_vcpu *vcpu)
 {
 	struct kvm_lapic *apic = vcpu->arch.apic;
 	struct kvm_cpuid_entry2 *best;
-	u64 guest_supported_xcr0;
 
 	best = kvm_find_cpuid_entry(vcpu, 1, 0);
 	if (best && apic) {
@@ -295,10 +294,16 @@ static void kvm_vcpu_after_set_cpuid(struct kvm_vcpu *vcpu)
 		kvm_apic_set_version(vcpu);
 	}
 
-	guest_supported_xcr0 =
+	vcpu->arch.guest_supported_xcr0 =
 		cpuid_get_supported_xcr0(vcpu->arch.cpuid_entries, vcpu->arch.cpuid_nent);
 
-	vcpu->arch.guest_fpu.fpstate->user_xfeatures = guest_supported_xcr0;
+	/*
+	 * FP+SSE can always be saved/restored via KVM_{G,S}ET_XSAVE, even if
+	 * XSAVE/XCRO are not exposed to the guest, and even if XSAVE isn't
+	 * supported by the host.
+	 */
+	vcpu->arch.guest_fpu.fpstate->user_xfeatures = vcpu->arch.guest_supported_xcr0 |
+						       XFEATURE_MASK_FPSSE;
 
 	kvm_update_pv_runtime(vcpu);
 
arch/x86/kvm/emulate.c +3 -0
index 09fa8a94807b..0c4a866813b3 100644
@@ -4134,6 +4134,9 @@ static int em_xsetbv(struct x86_emulate_ctxt *ctxt)
 {
 	u32 eax, ecx, edx;
 
+	if (!(ctxt->ops->get_cr(ctxt, 4) & X86_CR4_OSXSAVE))
+		return emulate_ud(ctxt);
+
 	eax = reg_read(ctxt, VCPU_REGS_RAX);
 	edx = reg_read(ctxt, VCPU_REGS_RDX);
 	ecx = reg_read(ctxt, VCPU_REGS_RCX);
arch/x86/kvm/x86.c +3 -7
index 5b3686652856..8c2815151864 100644
@@ -1025,15 +1025,10 @@ void kvm_load_host_xsave_state(struct kvm_vcpu *vcpu)
 }
 EXPORT_SYMBOL_GPL(kvm_load_host_xsave_state);
 
-static inline u64 kvm_guest_supported_xcr0(struct kvm_vcpu *vcpu)
-{
-	return vcpu->arch.guest_fpu.fpstate->user_xfeatures;
-}
-
 #ifdef CONFIG_X86_64
 static inline u64 kvm_guest_supported_xfd(struct kvm_vcpu *vcpu)
 {
-	return kvm_guest_supported_xcr0(vcpu) & XFEATURE_MASK_USER_DYNAMIC;
+	return vcpu->arch.guest_supported_xcr0 & XFEATURE_MASK_USER_DYNAMIC;
 }
 #endif
 
@@ -1056,7 +1051,7 @@ static int __kvm_set_xcr(struct kvm_vcpu *vcpu, u32 index, u64 xcr)
 	 * saving.  However, xcr0 bit 0 is always set, even if the
 	 * emulated CPU does not support XSAVE (see kvm_vcpu_reset()).
 	 */
-	valid_bits = kvm_guest_supported_xcr0(vcpu) | XFEATURE_MASK_FP;
+	valid_bits = vcpu->arch.guest_supported_xcr0 | XFEATURE_MASK_FP;
 	if (xcr0 & ~valid_bits)
 		return 1;
 
@@ -1084,6 +1079,7 @@ static int __kvm_set_xcr(struct kvm_vcpu *vcpu, u32 index, u64 xcr)
 
 int kvm_emulate_xsetbv(struct kvm_vcpu *vcpu)
 {
+	/* Note, #UD due to CR4.OSXSAVE=0 has priority over the intercept. */
 	if (static_call(kvm_x86_get_cpl)(vcpu) != 0 ||
 	    __kvm_set_xcr(vcpu, kvm_rcx_read(vcpu), kvm_read_edx_eax(vcpu))) {
 		kvm_inject_gp(vcpu, 0);
block/blk-core.c +0 -43

49 lines not on this page · raw message

block/blk-mq-debugfs.c +3 -5
index 61f179e5f151..28adb01f6441 100644
@@ -116,7 +116,6 @@ static const char *const blk_queue_flag_name[] = {
 	QUEUE_FLAG_NAME(NOXMERGES),
 	QUEUE_FLAG_NAME(ADD_RANDOM),
 	QUEUE_FLAG_NAME(SAME_FORCE),
-	QUEUE_FLAG_NAME(DEAD),
 	QUEUE_FLAG_NAME(INIT_DONE),
 	QUEUE_FLAG_NAME(STABLE_WRITES),
 	QUEUE_FLAG_NAME(POLL),
@@ -151,11 +150,10 @@ static ssize_t queue_state_write(void *data, const char __user *buf,
 	char opbuf[16] = { }, *op;
 
 	/*
-	 * The "state" attribute is removed after blk_cleanup_queue() has called
-	 * blk_mq_free_queue(). Return if QUEUE_FLAG_DEAD has been set to avoid
-	 * triggering a use-after-free.
+	 * The "state" attribute is removed when the queue is removed.  Don't
+	 * allow setting the state on a dying queue to avoid a use-after-free.
 	 */
-	if (blk_queue_dead(q))
+	if (blk_queue_dying(q))
 		return -ENOENT;
 
 	if (count >= sizeof(opbuf)) {
block/blk-mq.c +41 -2

67 lines not on this page · raw message

block/blk-sysfs.c +0 -5
index 9b905e9443e4..84d7f8701567 100644
@@ -748,11 +748,6 @@ static void blk_free_queue_rcu(struct rcu_head *rcu_head)
  * decremented with blk_put_queue(). Once the refcount reaches 0 this function
  * is called.
  *
- * For drivers that have a request_queue on a gendisk and added with
- * __device_add_disk() the refcount to request_queue will reach 0 with
- * the last put_disk() called by the driver. For drivers which don't use
- * __device_add_disk() this happens with blk_cleanup_queue().
- *
  * Drivers exist which depend on the release of the request_queue to be
  * synchronous, it should not be deferred.
  *
block/blk.h +3 -0
index 434017701403..0d6668663ab5 100644
@@ -411,6 +411,9 @@ int bdev_resize_partition(struct gendisk *disk, int partno, sector_t start,
 		sector_t length);
 void blk_drop_partitions(struct gendisk *disk);
 
+struct gendisk *__alloc_disk_node(struct request_queue *q, int node_id,
+		struct lock_class_key *lkclass);
+
 int bio_add_hw_page(struct request_queue *q, struct bio *bio,
 		struct page *page, unsigned int len, unsigned int offset,
 		unsigned int max_sectors, bool *same_page);
block/bsg-lib.c +2 -2
index acfe1357bf6c..fd4cd5e68282 100644
@@ -324,7 +324,7 @@ void bsg_remove_queue(struct request_queue *q)
 			container_of(q->tag_set, struct bsg_set, tag_set);
 
 		bsg_unregister_queue(bset->bd);
-		blk_cleanup_queue(q);
+		blk_mq_destroy_queue(q);
 		blk_mq_free_tag_set(&bset->tag_set);
 		kfree(bset);
 	}
@@ -399,7 +399,7 @@ struct request_queue *bsg_setup_queue(struct device *dev, const char *name,
 
 	return q;
 out_cleanup_queue:
-	blk_cleanup_queue(q);
+	blk_mq_destroy_queue(q);
 out_queue:
 	blk_mq_free_tag_set(set);
 out_tag_set:
block/genhd.c +31 -14

112 lines not on this page · raw message

certs/Kconfig +1 -1
index bf9b511573d7..1f109b070877 100644
@@ -43,7 +43,7 @@ config SYSTEM_TRUSTED_KEYRING
 	bool "Provide system-wide ring of trusted keys"
 	depends on KEYS
 	depends on ASYMMETRIC_KEY_TYPE
-	depends on X509_CERTIFICATE_PARSER
+	depends on X509_CERTIFICATE_PARSER = y
 	help
 	  Provide a system keyring to which trusted keys can be added.  Keys in
 	  the keyring are considered to be trusted.  Keys may be added at will
drivers/block/ataflop.c +0 -1
index e232cc4fd444..c6e41ee18aaa 100644
@@ -2045,7 +2045,6 @@ static void atari_floppy_cleanup(void)
 			if (!unit[i].disk[type])
 				continue;
 			del_gendisk(unit[i].disk[type]);
-			blk_cleanup_queue(unit[i].disk[type]->queue);
 			put_disk(unit[i].disk[type]);
 		}
 		blk_mq_free_tag_set(&unit[i].tag_set);
drivers/block/loop.c +0 -1
index a59910ef948e..1c036ef686fb 100644
@@ -2062,7 +2062,6 @@ static void loop_remove(struct loop_device *lo)
 {
 	/* Make this loop device unreachable from pathname. */
 	del_gendisk(lo->lo_disk);
-	blk_cleanup_queue(lo->lo_disk->queue);
 	blk_mq_free_tag_set(&lo->tag_set);
 
 	mutex_lock(&loop_ctl_mutex);
drivers/block/mtip32xx/mtip32xx.c +0 -2
index 6699e4b2f7f4..06994a35acc7 100644
@@ -3677,7 +3677,6 @@ static int mtip_block_shutdown(struct driver_data *dd)
 	if (test_bit(MTIP_DDF_INIT_DONE_BIT, &dd->dd_flag))
 		del_gendisk(dd->disk);
 
-	blk_cleanup_queue(dd->queue);
 	blk_mq_free_tag_set(&dd->tags);
 	put_disk(dd->disk);
 	return 0;
@@ -4040,7 +4039,6 @@ static void mtip_pci_remove(struct pci_dev *pdev)
 		dev_info(&dd->pdev->dev, "device %s surprise removal\n",
 						dd->disk->disk_name);
 
-	blk_cleanup_queue(dd->queue);
 	blk_mq_free_tag_set(&dd->tags);
 
 	/* De-initialize the protocol layer. */
drivers/block/rnbd/rnbd-clt.c +1 -1
index 409c76b81aed..a4470374f54f 100644
@@ -1755,7 +1755,7 @@ static void rnbd_destroy_sessions(void)
 		list_for_each_entry_safe(dev, tn, &sess->devs_list, list) {
 			/*
 			 * Here unmap happens in parallel for only one reason:
-			 * blk_cleanup_queue() takes around half a second, so
+			 * del_gendisk() takes around half a second, so
 			 * on huge amount of devices the whole module unload
 			 * procedure takes minutes.
 			 */
drivers/block/sx8.c +2 -2
index 63b4f6431d2e..75057dbbcfbe 100644
@@ -1536,7 +1536,7 @@ static int carm_init_one (struct pci_dev *pdev, const struct pci_device_id *ent)
 		clear_bit(0, &carm_major_alloc);
 	else if (host->major == 161)
 		clear_bit(1, &carm_major_alloc);
-	blk_cleanup_queue(host->oob_q);
+	blk_mq_destroy_queue(host->oob_q);
 	blk_mq_free_tag_set(&host->tag_set);
 err_out_dma_free:
 	dma_free_coherent(&pdev->dev, CARM_SHM_SIZE, host->shm, host->shm_dma);
@@ -1570,7 +1570,7 @@ static void carm_remove_one (struct pci_dev *pdev)
 		clear_bit(0, &carm_major_alloc);
 	else if (host->major == 161)
 		clear_bit(1, &carm_major_alloc);
-	blk_cleanup_queue(host->oob_q);
+	blk_mq_destroy_queue(host->oob_q);
 	blk_mq_free_tag_set(&host->tag_set);
 	dma_free_coherent(&pdev->dev, CARM_SHM_SIZE, host->shm, host->shm_dma);
 	iounmap(host->mmio);
drivers/block/virtio_blk.c +0 -1
index d756423e0059..59d6d5faf739 100644
@@ -1107,7 +1107,6 @@ static void virtblk_remove(struct virtio_device *vdev)
 	flush_work(&vblk->config_work);
 
 	del_gendisk(vblk->disk);
-	blk_cleanup_queue(vblk->disk->queue);
 	blk_mq_free_tag_set(&vblk->tag_set);
 
 	mutex_lock(&vblk->vdev_mutex);
drivers/block/z2ram.c +0 -1
index 7a6ed83481b8..18ad43d9933e 100644
@@ -384,7 +384,6 @@ static void __exit z2_exit(void)
 
 	for (i = 0; i < Z2MINOR_COUNT; i++) {
 		del_gendisk(z2ram_gendisk[i]);
-		blk_cleanup_queue(z2ram_gendisk[i]->queue);
 		put_disk(z2ram_gendisk[i]);
 	}
 	blk_mq_free_tag_set(&tag_set);
drivers/cdrom/gdrom.c +0 -1
index 8e78b37d0f6a..f4cc90ea6198 100644
@@ -831,7 +831,6 @@ static int probe_gdrom(struct platform_device *devptr)
 
 static int remove_gdrom(struct platform_device *devptr)
 {
-	blk_cleanup_queue(gd.gdrom_rq);
 	blk_mq_free_tag_set(&gd.tag_set);
 	free_irq(HW_EVENT_GDROM_CMD, &gd);
 	free_irq(HW_EVENT_GDROM_DMA, &gd);
drivers/dax/hmem/device.c +1 -0
index cb6401c9e9a4..acf31cc1dbcc 100644
@@ -15,6 +15,7 @@ void hmem_register_device(int target_nid, struct resource *r)
 		.start = r->start,
 		.end = r->end,
 		.flags = IORESOURCE_MEM,
+		.desc = IORES_DESC_SOFT_RESERVED,
 	};
 	struct platform_device *pdev;
 	struct memregion_info info;
drivers/dma/ti/k3-udma-private.c +3 -3
index d4f1e4e9603a..85e00701473c 100644
@@ -31,14 +31,14 @@ struct udma_dev *of_xudma_dev_get(struct device_node *np, const char *property)
 	}
 
 	pdev = of_find_device_by_node(udma_node);
+	if (np != udma_node)
+		of_node_put(udma_node);
+
 	if (!pdev) {
 		pr_debug("UDMA device not found\n");
 		return ERR_PTR(-EPROBE_DEFER);
 	}
 
-	if (np != udma_node)
-		of_node_put(udma_node);
-
 	ud = platform_get_drvdata(pdev);
 	if (!ud) {
 		pr_debug("UDMA has not been probed\n");
drivers/firmware/arm_scmi/reset.c +7 -3
index 673f3eb498f4..e9afa8cab730 100644
@@ -166,9 +166,13 @@ static int scmi_domain_reset(const struct scmi_protocol_handle *ph, u32 domain,
 	struct scmi_xfer *t;
 	struct scmi_msg_reset_domain_reset *dom;
 	struct scmi_reset_info *pi = ph->get_priv(ph);
-	struct reset_dom_info *rdom = pi->dom_info + domain;
+	struct reset_dom_info *rdom;
 
-	if (rdom->async_reset)
+	if (domain >= pi->num_domains)
+		return -EINVAL;
+
+	rdom = pi->dom_info + domain;
+	if (rdom->async_reset && flags & AUTONOMOUS_RESET)
 		flags |= ASYNCHRONOUS_RESET;
 
 	ret = ph->xops->xfer_get_init(ph, RESET, sizeof(*dom), 0, &t);
@@ -180,7 +184,7 @@ static int scmi_domain_reset(const struct scmi_protocol_handle *ph, u32 domain,
 	dom->flags = cpu_to_le32(flags);
 	dom->reset_state = cpu_to_le32(state);
 
-	if (rdom->async_reset)
+	if (flags & ASYNCHRONOUS_RESET)
 		ret = ph->xops->do_xfer_with_response(ph, t);
 	else
 		ret = ph->xops->do_xfer(ph, t);
drivers/firmware/efi/libstub/secureboot.c +4 -4
index 8a18930f3eb6..516f4f0069bd 100644
@@ -14,7 +14,7 @@
 
 /* SHIM variables */
 static const efi_guid_t shim_guid = EFI_SHIM_LOCK_GUID;
-static const efi_char16_t shim_MokSBState_name[] = L"MokSBState";
+static const efi_char16_t shim_MokSBState_name[] = L"MokSBStateRT";
 
 static efi_status_t get_var(efi_char16_t *name, efi_guid_t *vendor, u32 *attr,
 			    unsigned long *data_size, void *data)
@@ -43,8 +43,8 @@ enum efi_secureboot_mode efi_get_secureboot(void)
 
 	/*
 	 * See if a user has put the shim into insecure mode. If so, and if the
-	 * variable doesn't have the runtime attribute set, we might as well
-	 * honor that.
+	 * variable doesn't have the non-volatile attribute set, we might as
+	 * well honor that.
 	 */
 	size = sizeof(moksbstate);
 	status = get_efi_var(shim_MokSBState_name, &shim_guid,
@@ -53,7 +53,7 @@ enum efi_secureboot_mode efi_get_secureboot(void)
 	/* If it fails, we don't care why. Default to secure */
 	if (status != EFI_SUCCESS)
 		goto secure_boot_enabled;
-	if (!(attr & EFI_VARIABLE_RUNTIME_ACCESS) && moksbstate == 1)
+	if (!(attr & EFI_VARIABLE_NON_VOLATILE) && moksbstate == 1)
 		return efi_secureboot_mode_disabled;
 
 secure_boot_enabled:
drivers/firmware/efi/libstub/x86-stub.c +7 -0
index 05ae8bcc9d67..9780f32a9f24 100644
@@ -517,6 +517,13 @@ efi_status_t __efiapi efi_pe_entry(efi_handle_t handle,
 	hdr->ramdisk_image = 0;
 	hdr->ramdisk_size = 0;
 
+	/*
+	 * Disregard any setup data that was provided by the bootloader:
+	 * setup_data could be pointing anywhere, and we have no way of
+	 * authenticating or validating the payload.
+	 */
+	hdr->setup_data = 0;
+
 	efi_stub_entry(handle, sys_table_arg, boot_params);
 	/* not reached */
 
drivers/gpio/gpio-ixp4xx.c +14 -3
index 312309be0287..56656fb519f8 100644
@@ -63,6 +63,14 @@ static void ixp4xx_gpio_irq_ack(struct irq_data *d)
 	__raw_writel(BIT(d->hwirq), g->base + IXP4XX_REG_GPIS);
 }
 
+static void ixp4xx_gpio_mask_irq(struct irq_data *d)
+{
+	struct gpio_chip *gc = irq_data_get_irq_chip_data(d);
+
+	irq_chip_mask_parent(d);
+	gpiochip_disable_irq(gc, d->hwirq);
+}
+
 static void ixp4xx_gpio_irq_unmask(struct irq_data *d)
 {
 	struct gpio_chip *gc = irq_data_get_irq_chip_data(d);
@@ -72,6 +80,7 @@ static void ixp4xx_gpio_irq_unmask(struct irq_data *d)
 	if (!(g->irq_edge & BIT(d->hwirq)))
 		ixp4xx_gpio_irq_ack(d);
 
+	gpiochip_enable_irq(gc, d->hwirq);
 	irq_chip_unmask_parent(d);
 }
 
@@ -149,12 +158,14 @@ static int ixp4xx_gpio_irq_set_type(struct irq_data *d, unsigned int type)
 	return irq_chip_set_type_parent(d, IRQ_TYPE_LEVEL_HIGH);
 }
 
-static struct irq_chip ixp4xx_gpio_irqchip = {
+static const struct irq_chip ixp4xx_gpio_irqchip = {
 	.name = "IXP4GPIO",
 	.irq_ack = ixp4xx_gpio_irq_ack,
-	.irq_mask = irq_chip_mask_parent,
+	.irq_mask = ixp4xx_gpio_mask_irq,
 	.irq_unmask = ixp4xx_gpio_irq_unmask,
 	.irq_set_type = ixp4xx_gpio_irq_set_type,
+	.flags = IRQCHIP_IMMUTABLE,
+	GPIOCHIP_IRQ_RESOURCE_HELPERS,
 };
 
 static int ixp4xx_gpio_child_to_parent_hwirq(struct gpio_chip *gc,
@@ -263,7 +274,7 @@ static int ixp4xx_gpio_probe(struct platform_device *pdev)
 	g->gc.owner = THIS_MODULE;
 
 	girq = &g->gc.irq;
-	girq->chip = &ixp4xx_gpio_irqchip;
+	gpio_irq_chip_set_chip(girq, &ixp4xx_gpio_irqchip);
 	girq->fwnode = g->fwnode;
 	girq->parent_domain = parent;
 	girq->child_to_parent_hwirq = ixp4xx_gpio_child_to_parent_hwirq;
drivers/gpio/gpio-mockup.c +4 -2
index a2e505a7545c..523dfd17dd92 100644
@@ -533,8 +533,10 @@ static int __init gpio_mockup_register_chip(int idx)
 	}
 
 	fwnode = fwnode_create_software_node(properties, NULL);
-	if (IS_ERR(fwnode))
+	if (IS_ERR(fwnode)) {
+		kfree_strarray(line_names, ngpio);
 		return PTR_ERR(fwnode);
+	}
 
 	pdevinfo.name = "gpio-mockup";
 	pdevinfo.id = idx;
@@ -597,9 +599,9 @@ static int __init gpio_mockup_init(void)
 
 static void __exit gpio_mockup_exit(void)
 {
+	gpio_mockup_unregister_pdevs();
 	debugfs_remove_recursive(gpio_mockup_dbg_dir);
 	platform_driver_unregister(&gpio_mockup_driver);
-	gpio_mockup_unregister_pdevs();
 }
 
 module_init(gpio_mockup_init);
drivers/gpio/gpio-mt7621.c +15 -6
index d8a26e503ca5..f163f5ca857b 100644
@@ -112,6 +112,8 @@ mediatek_gpio_irq_unmask(struct irq_data *d)
 	unsigned long flags;
 	u32 rise, fall, high, low;
 
+	gpiochip_enable_irq(gc, d->hwirq);
+
 	spin_lock_irqsave(&rg->lock, flags);
 	rise = mtk_gpio_r32(rg, GPIO_REG_REDGE);
 	fall = mtk_gpio_r32(rg, GPIO_REG_FEDGE);
@@ -143,6 +145,8 @@ mediatek_gpio_irq_mask(struct irq_data *d)
 	mtk_gpio_w32(rg, GPIO_REG_HLVL, high & ~BIT(pin));
 	mtk_gpio_w32(rg, GPIO_REG_LLVL, low & ~BIT(pin));
 	spin_unlock_irqrestore(&rg->lock, flags);
+
+	gpiochip_disable_irq(gc, d->hwirq);
 }
 
 static int
@@ -204,6 +208,16 @@ mediatek_gpio_xlate(struct gpio_chip *chip,
 	return gpio % MTK_BANK_WIDTH;
 }
 
+static const struct irq_chip mt7621_irq_chip = {
+	.name		= "mt7621-gpio",
+	.irq_mask_ack	= mediatek_gpio_irq_mask,
+	.irq_mask	= mediatek_gpio_irq_mask,
+	.irq_unmask	= mediatek_gpio_irq_unmask,
+	.irq_set_type	= mediatek_gpio_irq_type,
+	.flags		= IRQCHIP_IMMUTABLE,
+	GPIOCHIP_IRQ_RESOURCE_HELPERS,
+};
+
 static int
 mediatek_gpio_bank_probe(struct device *dev, int bank)
 {
@@ -238,11 +252,6 @@ mediatek_gpio_bank_probe(struct device *dev, int bank)
 		return -ENOMEM;
 
 	rg->chip.offset = bank * MTK_BANK_WIDTH;
-	rg->irq_chip.name = dev_name(dev);
-	rg->irq_chip.irq_unmask = mediatek_gpio_irq_unmask;
-	rg->irq_chip.irq_mask = mediatek_gpio_irq_mask;
-	rg->irq_chip.irq_mask_ack = mediatek_gpio_irq_mask;
-	rg->irq_chip.irq_set_type = mediatek_gpio_irq_type;
 
 	if (mtk->gpio_irq) {
 		struct gpio_irq_chip *girq;
@@ -262,7 +271,7 @@ mediatek_gpio_bank_probe(struct device *dev, int bank)
 		}
 
 		girq = &rg->chip.irq;
-		girq->chip = &rg->irq_chip;
+		gpio_irq_chip_set_chip(girq, &mt7621_irq_chip);
 		/* This will let us handle the parent IRQ in the driver */
 		girq->parent_handler = NULL;
 		girq->num_parents = 0;
drivers/gpio/gpio-tqmx86.c +2 -2
index fa4bc7481f9a..e739dcea61b2 100644
@@ -307,6 +307,8 @@ static int tqmx86_gpio_probe(struct platform_device *pdev)
 		girq->default_type = IRQ_TYPE_NONE;
 		girq->handler = handle_simple_irq;
 		girq->init_valid_mask = tqmx86_init_irq_valid_mask;
+
+		irq_domain_set_pm_device(girq->domain, dev);
 	}
 
 	ret = devm_gpiochip_add_data(dev, chip, gpio);
@@ -315,8 +317,6 @@ static int tqmx86_gpio_probe(struct platform_device *pdev)
 		goto out_pm_dis;
 	}
 
-	irq_domain_set_pm_device(girq->domain, dev);
-
 	dev_info(dev, "GPIO functionality initialized with %d pins\n",
 		 chip->ngpio);
 
drivers/gpio/gpiolib-cdev.c +3 -2
index b26e64338376..21fee9ed7f0d 100644
@@ -1975,7 +1975,6 @@ static int lineevent_create(struct gpio_device *gdev, void __user *ip)
 		ret = -ENODEV;
 		goto out_free_le;
 	}
-	le->irq = irq;
 
 	if (eflags & GPIOEVENT_REQUEST_RISING_EDGE)
 		irqflags |= test_bit(FLAG_ACTIVE_LOW, &desc->flags) ?
@@ -1989,7 +1988,7 @@ static int lineevent_create(struct gpio_device *gdev, void __user *ip)
 	init_waitqueue_head(&le->wait);
 
 	/* Request a thread to read the events */
-	ret = request_threaded_irq(le->irq,
+	ret = request_threaded_irq(irq,
 				   lineevent_irq_handler,
 				   lineevent_irq_thread,
 				   irqflags,
@@ -1998,6 +1997,8 @@ static int lineevent_create(struct gpio_device *gdev, void __user *ip)
 	if (ret)
 		goto out_free_le;
 
+	le->irq = irq;
+
 	fd = get_unused_fd_flags(O_RDONLY | O_CLOEXEC);
 	if (fd < 0) {
 		ret = fd;
drivers/gpu/drm/amd/amdgpu/amdgpu_display.c +12 -1
index 4dfd6724b3ca..0a8c15c3a04c 100644
@@ -35,6 +35,8 @@
 #include <linux/pci.h>
 #include <linux/pm_runtime.h>
 #include <drm/drm_crtc_helper.h>
+#include <drm/drm_damage_helper.h>
+#include <drm/drm_drv.h>
 #include <drm/drm_edid.h>
 #include <drm/drm_gem_framebuffer_helper.h>
 #include <drm/drm_fb_helper.h>
@@ -495,6 +497,12 @@ static const struct drm_framebuffer_funcs amdgpu_fb_funcs = {
 	.create_handle = drm_gem_fb_create_handle,
 };
 
+static const struct drm_framebuffer_funcs amdgpu_fb_funcs_atomic = {
+	.destroy = drm_gem_fb_destroy,
+	.create_handle = drm_gem_fb_create_handle,
+	.dirty = drm_atomic_helper_dirtyfb,
+};
+
 uint32_t amdgpu_display_supported_domains(struct amdgpu_device *adev,
 					  uint64_t bo_flags)
 {
@@ -1069,7 +1077,10 @@ static int amdgpu_display_gem_fb_verify_and_init(struct drm_device *dev,
 	if (ret)
 		goto err;
 
-	ret = drm_framebuffer_init(dev, &rfb->base, &amdgpu_fb_funcs);
+	if (drm_drv_uses_atomic_modeset(dev))
+		ret = drm_framebuffer_init(dev, &rfb->base, &amdgpu_fb_funcs_atomic);
+	else
+		ret = drm_framebuffer_init(dev, &rfb->base, &amdgpu_fb_funcs);
 	if (ret)
 		goto err;
 
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c +1 -1
index b19bf0c3f373..79ce654bd3da 100644
@@ -748,7 +748,7 @@ static int psp_tmr_init(struct psp_context *psp)
 	}
 
 	pptr = amdgpu_sriov_vf(psp->adev) ? &tmr_buf : NULL;
-	ret = amdgpu_bo_create_kernel(psp->adev, tmr_size, PSP_TMR_SIZE(psp->adev),
+	ret = amdgpu_bo_create_kernel(psp->adev, tmr_size, PSP_TMR_ALIGNMENT,
 				      AMDGPU_GEM_DOMAIN_VRAM,
 				      &psp->tmr_bo, &psp->tmr_mc_addr, pptr);
 
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h +1 -0
index e431f4994931..cd366c7f311f 100644
@@ -36,6 +36,7 @@
 #define PSP_CMD_BUFFER_SIZE	0x1000
 #define PSP_1_MEG		0x100000
 #define PSP_TMR_SIZE(adev)	((adev)->asic_type == CHIP_ALDEBARAN ? 0x800000 : 0x400000)
+#define PSP_TMR_ALIGNMENT	0x100000
 #define PSP_FW_NAME_LEN		0x24
 
 enum psp_shared_mem_size {
drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c +2 -1
index dac202ae864d..9193ca5d6fe7 100644
@@ -1805,7 +1805,8 @@ static void amdgpu_ras_log_on_err_counter(struct amdgpu_device *adev)
 		amdgpu_ras_query_error_status(adev, &info);
 
 		if (adev->ip_versions[MP0_HWIP][0] != IP_VERSION(11, 0, 2) &&
-		    adev->ip_versions[MP0_HWIP][0] != IP_VERSION(11, 0, 4)) {
+		    adev->ip_versions[MP0_HWIP][0] != IP_VERSION(11, 0, 4) &&
+		    adev->ip_versions[MP0_HWIP][0] != IP_VERSION(13, 0, 0)) {
 			if (amdgpu_ras_reset_error_status(adev, info.head.block))
 				dev_warn(adev->dev, "Failed to reset error counter and error status");
 		}
drivers/gpu/drm/amd/amdgpu/nbio_v7_7.c +9 -0
index cdc0c9779848..6c1fd471a4c7 100644
@@ -28,6 +28,14 @@
 #include "nbio/nbio_7_7_0_sh_mask.h"
 #include <uapi/linux/kfd_ioctl.h>
 
+static void nbio_v7_7_remap_hdp_registers(struct amdgpu_device *adev)
+{
+	WREG32_SOC15(NBIO, 0, regBIF_BX0_REMAP_HDP_MEM_FLUSH_CNTL,
+		     adev->rmmio_remap.reg_offset + KFD_MMIO_REMAP_HDP_MEM_FLUSH_CNTL);
+	WREG32_SOC15(NBIO, 0, regBIF_BX0_REMAP_HDP_REG_FLUSH_CNTL,
+		     adev->rmmio_remap.reg_offset + KFD_MMIO_REMAP_HDP_REG_FLUSH_CNTL);
+}
+
 static u32 nbio_v7_7_get_rev_id(struct amdgpu_device *adev)
 {
 	u32 tmp;
@@ -237,4 +245,5 @@ const struct amdgpu_nbio_funcs nbio_v7_7_funcs = {
 	.ih_doorbell_range = nbio_v7_7_ih_doorbell_range,
 	.ih_control = nbio_v7_7_ih_control,
 	.init_registers = nbio_v7_7_init_registers,
+	.remap_hdp_registers = nbio_v7_7_remap_hdp_registers,
 };
drivers/gpu/drm/amd/display/dc/dml/dcn30/display_mode_vba_30.c +1 -2
index f47d82da115c..42a567e71439 100644
@@ -6651,8 +6651,7 @@ static double CalculateUrgentLatency(
 	return ret;
 }
 
-
-static void UseMinimumDCFCLK(
+static noinline_for_stack void UseMinimumDCFCLK(
 		struct display_mode_lib *mode_lib,
 		int MaxInterDCNTileRepeaters,
 		int MaxPrefetchMode,
drivers/gpu/drm/amd/display/dc/dml/dcn31/display_mode_vba_31.c +99 -321

722 lines not on this page · raw message

drivers/gpu/drm/amd/display/modules/color/color_gamma.c +4 -0
index 64a38f08f497..5a51be753e87 100644
@@ -1603,6 +1603,7 @@ static void interpolate_user_regamma(uint32_t hw_points_num,
 	struct fixed31_32 lut2;
 	struct fixed31_32 delta_lut;
 	struct fixed31_32 delta_index;
+	const struct fixed31_32 one = dc_fixpt_from_int(1);
 
 	i = 0;
 	/* fixed_pt library has problems handling too small values */
@@ -1631,6 +1632,9 @@ static void interpolate_user_regamma(uint32_t hw_points_num,
 			} else
 				hw_x = coordinates_x[i].x;
 
+			if (dc_fixpt_le(one, hw_x))
+				hw_x = one;
+
 			norm_x = dc_fixpt_mul(norm_factor, hw_x);
 			index = dc_fixpt_floor(norm_x);
 			if (index < 0 || index > 255)
drivers/gpu/drm/amd/pm/swsmu/smu11/sienna_cichlid_ppt.c +11 -0
index 32bb6b1d9526..d13e455c8827 100644
@@ -368,6 +368,17 @@ static void sienna_cichlid_check_bxco_support(struct smu_context *smu)
 		smu_baco->platform_support =
 			(val & RCC_BIF_STRAP0__STRAP_PX_CAPABLE_MASK) ? true :
 									false;
+
+		/*
+		 * Disable BACO entry/exit completely on below SKUs to
+		 * avoid hardware intermittent failures.
+		 */
+		if (((adev->pdev->device == 0x73A1) &&
+		    (adev->pdev->revision == 0x00)) ||
+		    ((adev->pdev->device == 0x73BF) &&
+		    (adev->pdev->revision == 0xCF)))
+			smu_baco->platform_support = false;
+
 	}
 }
 
drivers/gpu/drm/gma500/cdv_device.c +1 -3
index dd32b484dd82..ce96234f3df2 100644
@@ -581,11 +581,9 @@ static const struct psb_offset cdv_regmap[2] = {
 static int cdv_chip_setup(struct drm_device *dev)
 {
 	struct drm_psb_private *dev_priv = to_drm_psb_private(dev);
-	struct pci_dev *pdev = to_pci_dev(dev->dev);
 	INIT_WORK(&dev_priv->hotplug_work, cdv_hotplug_work_func);
 
-	if (pci_enable_msi(pdev))
-		dev_warn(dev->dev, "Enabling MSI failed!\n");
+	dev_priv->use_msi = true;
 	dev_priv->regmap = cdv_regmap;
 	gma_get_core_freq(dev);
 	psb_intel_opregion_init(dev);
drivers/gpu/drm/gma500/gem.c +2 -2
index dffe37490206..4b7627a72637 100644
@@ -112,12 +112,12 @@ static void psb_gem_free_object(struct drm_gem_object *obj)
 {
 	struct psb_gem_object *pobj = to_psb_gem_object(obj);
 
-	drm_gem_object_release(obj);
-
 	/* Undo the mmap pin if we are destroying the object */
 	if (pobj->mmapping)
 		psb_gem_unpin(pobj);
 
+	drm_gem_object_release(obj);
+
 	WARN_ON(pobj->in_gart && !pobj->stolen);
 
 	release_resource(&pobj->resource);
drivers/gpu/drm/gma500/gma_display.c +7 -4
index 34ec3fca09ba..12287c9bb4d8 100644
@@ -531,15 +531,18 @@ int gma_crtc_page_flip(struct drm_crtc *crtc,
 		WARN_ON(drm_crtc_vblank_get(crtc) != 0);
 
 		gma_crtc->page_flip_event = event;
+		spin_unlock_irqrestore(&dev->event_lock, flags);
 
 		/* Call this locked if we want an event at vblank interrupt. */
 		ret = crtc_funcs->mode_set_base(crtc, crtc->x, crtc->y, old_fb);
 		if (ret) {
-			gma_crtc->page_flip_event = NULL;
-			drm_crtc_vblank_put(crtc);
+			spin_lock_irqsave(&dev->event_lock, flags);
+			if (gma_crtc->page_flip_event) {
+				gma_crtc->page_flip_event = NULL;
+				drm_crtc_vblank_put(crtc);
+			}
+			spin_unlock_irqrestore(&dev->event_lock, flags);
 		}
-
-		spin_unlock_irqrestore(&dev->event_lock, flags);
 	} else {
 		ret = crtc_funcs->mode_set_base(crtc, crtc->x, crtc->y, old_fb);
 	}
drivers/gpu/drm/gma500/oaktrail_device.c +1 -4
index 5923a9c89312..f90e628cb482 100644
@@ -501,12 +501,9 @@ static const struct psb_offset oaktrail_regmap[2] = {
 static int oaktrail_chip_setup(struct drm_device *dev)
 {
 	struct drm_psb_private *dev_priv = to_drm_psb_private(dev);
-	struct pci_dev *pdev = to_pci_dev(dev->dev);
 	int ret;
 
-	if (pci_enable_msi(pdev))
-		dev_warn(dev->dev, "Enabling MSI failed!\n");
-
+	dev_priv->use_msi = true;
 	dev_priv->regmap = oaktrail_regmap;
 
 	ret = mid_chip_setup(dev);
drivers/gpu/drm/gma500/power.c +1 -7
index b91de6d36e41..66873085d450 100644
@@ -139,8 +139,6 @@ static void gma_suspend_pci(struct pci_dev *pdev)
 	dev_priv->regs.saveBSM = bsm;
 	pci_read_config_dword(pdev, 0xFC, &vbt);
 	dev_priv->regs.saveVBT = vbt;
-	pci_read_config_dword(pdev, PSB_PCIx_MSI_ADDR_LOC, &dev_priv->msi_addr);
-	pci_read_config_dword(pdev, PSB_PCIx_MSI_DATA_LOC, &dev_priv->msi_data);
 
 	pci_disable_device(pdev);
 	pci_set_power_state(pdev, PCI_D3hot);
@@ -168,9 +166,6 @@ static bool gma_resume_pci(struct pci_dev *pdev)
 	pci_restore_state(pdev);
 	pci_write_config_dword(pdev, 0x5c, dev_priv->regs.saveBSM);
 	pci_write_config_dword(pdev, 0xFC, dev_priv->regs.saveVBT);
-	/* restoring MSI address and data in PCIx space */
-	pci_write_config_dword(pdev, PSB_PCIx_MSI_ADDR_LOC, dev_priv->msi_addr);
-	pci_write_config_dword(pdev, PSB_PCIx_MSI_DATA_LOC, dev_priv->msi_data);
 	ret = pci_enable_device(pdev);
 
 	if (ret != 0)
@@ -223,8 +218,7 @@ int gma_power_resume(struct device *_dev)
 	mutex_lock(&power_mutex);
 	gma_resume_pci(pdev);
 	gma_resume_display(pdev);
-	gma_irq_preinstall(dev);
-	gma_irq_postinstall(dev);
+	gma_irq_install(dev);
 	mutex_unlock(&power_mutex);
 	return 0;
 }
drivers/gpu/drm/gma500/psb_drv.c +1 -1
index 1d8744f3e702..54e756b48606 100644
@@ -383,7 +383,7 @@ static int psb_driver_load(struct drm_device *dev, unsigned long flags)
 	PSB_WVDC32(0xFFFFFFFF, PSB_INT_MASK_R);
 	spin_unlock_irqrestore(&dev_priv->irqmask_lock, irqflags);
 
-	gma_irq_install(dev, pdev->irq);
+	gma_irq_install(dev);
 
 	dev->max_vblank_count = 0xffffff; /* only 24 bits of frame count */
 
drivers/gpu/drm/gma500/psb_drv.h +1 -4
index 0ddfec1a0851..4c3fc5eaf6ad 100644
@@ -490,6 +490,7 @@ struct drm_psb_private {
 	int rpm_enabled;
 
 	/* MID specific */
+	bool use_msi;
 	bool has_gct;
 	struct oaktrail_gct_data gct_data;
 
@@ -499,10 +500,6 @@ struct drm_psb_private {
 	/* Register state */
 	struct psb_save_area regs;
 
-	/* MSI reg save */
-	uint32_t msi_addr;
-	uint32_t msi_data;
-
 	/* Hotplug handling */
 	struct work_struct hotplug_work;
 
drivers/gpu/drm/gma500/psb_irq.c +12 -3
index e6e6d61bbeab..038f18ed0a95 100644
@@ -316,17 +316,24 @@ void gma_irq_postinstall(struct drm_device *dev)
 	spin_unlock_irqrestore(&dev_priv->irqmask_lock, irqflags);
 }
 
-int gma_irq_install(struct drm_device *dev, unsigned int irq)
+int gma_irq_install(struct drm_device *dev)
 {
+	struct drm_psb_private *dev_priv = to_drm_psb_private(dev);
+	struct pci_dev *pdev = to_pci_dev(dev->dev);
 	int ret;
 
-	if (irq == IRQ_NOTCONNECTED)
+	if (dev_priv->use_msi && pci_enable_msi(pdev)) {
+		dev_warn(dev->dev, "Enabling MSI failed!\n");
+		dev_priv->use_msi = false;
+	}
+
+	if (pdev->irq == IRQ_NOTCONNECTED)
 		return -ENOTCONN;
 
 	gma_irq_preinstall(dev);
 
 	/* PCI devices require shared interrupts. */
-	ret = request_irq(irq, gma_irq_handler, IRQF_SHARED, dev->driver->name, dev);
+	ret = request_irq(pdev->irq, gma_irq_handler, IRQF_SHARED, dev->driver->name, dev);
 	if (ret)
 		return ret;
 
@@ -369,6 +376,8 @@ void gma_irq_uninstall(struct drm_device *dev)
 	spin_unlock_irqrestore(&dev_priv->irqmask_lock, irqflags);
 
 	free_irq(pdev->irq, dev);
+	if (dev_priv->use_msi)
+		pci_disable_msi(pdev);
 }
 
 int gma_crtc_enable_vblank(struct drm_crtc *crtc)
drivers/gpu/drm/gma500/psb_irq.h +1 -1
index b51e395194ff..7648f69824a5 100644
@@ -17,7 +17,7 @@ struct drm_device;
 
 void gma_irq_preinstall(struct drm_device *dev);
 void gma_irq_postinstall(struct drm_device *dev);
-int  gma_irq_install(struct drm_device *dev, unsigned int irq);
+int  gma_irq_install(struct drm_device *dev);
 void gma_irq_uninstall(struct drm_device *dev);
 
 int  gma_crtc_enable_vblank(struct drm_crtc *crtc);
drivers/gpu/drm/hisilicon/hibmc/Kconfig +1 -0
index 073adfe438dd..4e41c144a290 100644
@@ -2,6 +2,7 @@
 config DRM_HISI_HIBMC
 	tristate "DRM Support for Hisilicon Hibmc"
 	depends on DRM && PCI && (ARM64 || COMPILE_TEST)
+	depends on MMU
 	select DRM_KMS_HELPER
 	select DRM_VRAM_HELPER
 	select DRM_TTM
drivers/gpu/drm/i915/display/g4x_dp.c +2 -20
index 5a957acebfd6..82ad8fe7440c 100644
@@ -395,26 +395,8 @@ static void intel_dp_get_config(struct intel_encoder *encoder,
 		intel_dotclock_calculate(pipe_config->port_clock,
 					 &pipe_config->dp_m_n);
 
-	if (intel_dp_is_edp(intel_dp) && dev_priv->vbt.edp.bpp &&
-	    pipe_config->pipe_bpp > dev_priv->vbt.edp.bpp) {
-		/*
-		 * This is a big fat ugly hack.
-		 *
-		 * Some machines in UEFI boot mode provide us a VBT that has 18
-		 * bpp and 1.62 GHz link bandwidth for eDP, which for reasons
-		 * unknown we fail to light up. Yet the same BIOS boots up with
-		 * 24 bpp and 2.7 GHz link. Use the same bpp as the BIOS uses as
-		 * max, not what it tells us to use.
-		 *
-		 * Note: This will still be broken if the eDP panel is not lit
-		 * up by the BIOS, and thus we can't get the mode at module
-		 * load.
-		 */
-		drm_dbg_kms(&dev_priv->drm,
-			    "pipe has %d bpp for eDP panel, overriding BIOS-provided max %d bpp\n",
-			    pipe_config->pipe_bpp, dev_priv->vbt.edp.bpp);
-		dev_priv->vbt.edp.bpp = pipe_config->pipe_bpp;
-	}
+	if (intel_dp_is_edp(intel_dp))
+		intel_edp_fixup_vbt_bpp(encoder, pipe_config->pipe_bpp);
 }
 
 static void
drivers/gpu/drm/i915/display/icl_dsi.c +14 -4
index 5508ebb9eb43..f416499dad6f 100644
@@ -1864,7 +1864,8 @@ static void icl_dphy_param_init(struct intel_dsi *intel_dsi)
 {
 	struct drm_device *dev = intel_dsi->base.base.dev;
 	struct drm_i915_private *dev_priv = to_i915(dev);
-	struct mipi_config *mipi_config = dev_priv->vbt.dsi.config;
+	struct intel_connector *connector = intel_dsi->attached_connector;
+	struct mipi_config *mipi_config = connector->panel.vbt.dsi.config;
 	u32 tlpx_ns;
 	u32 prepare_cnt, exit_zero_cnt, clk_zero_cnt, trail_cnt;
 	u32 ths_prepare_ns, tclk_trail_ns;
@@ -2051,6 +2052,8 @@ void icl_dsi_init(struct drm_i915_private *dev_priv)
 	/* attach connector to encoder */
 	intel_connector_attach_encoder(intel_connector, encoder);
 
+	intel_bios_init_panel(dev_priv, &intel_connector->panel);
+
 	mutex_lock(&dev->mode_config.mutex);
 	intel_panel_add_vbt_lfp_fixed_mode(intel_connector);
 	mutex_unlock(&dev->mode_config.mutex);
@@ -2064,13 +2067,20 @@ void icl_dsi_init(struct drm_i915_private *dev_priv)
 
 	intel_backlight_setup(intel_connector, INVALID_PIPE);
 
-	if (dev_priv->vbt.dsi.config->dual_link)
+	if (intel_connector->panel.vbt.dsi.config->dual_link)
 		intel_dsi->ports = BIT(PORT_A) | BIT(PORT_B);
 	else
 		intel_dsi->ports = BIT(port);
 
-	intel_dsi->dcs_backlight_ports = dev_priv->vbt.dsi.bl_ports;
-	intel_dsi->dcs_cabc_ports = dev_priv->vbt.dsi.cabc_ports;
+	if (drm_WARN_ON(&dev_priv->drm, intel_connector->panel.vbt.dsi.bl_ports & ~intel_dsi->ports))
+		intel_connector->panel.vbt.dsi.bl_ports &= intel_dsi->ports;
+
+	intel_dsi->dcs_backlight_ports = intel_connector->panel.vbt.dsi.bl_ports;
+
+	if (drm_WARN_ON(&dev_priv->drm, intel_connector->panel.vbt.dsi.cabc_ports & ~intel_dsi->ports))
+		intel_connector->panel.vbt.dsi.cabc_ports &= intel_dsi->ports;
+
+	intel_dsi->dcs_cabc_ports = intel_connector->panel.vbt.dsi.cabc_ports;
 
 	for_each_dsi_port(port, intel_dsi->ports) {
 		struct intel_dsi_host *host;
drivers/gpu/drm/i915/display/intel_backlight.c +12 -11
index 3e200a2e4ba2..5182bb66bd28 100644
@@ -1158,9 +1158,10 @@ static u32 vlv_hz_to_pwm(struct intel_connector *connector, u32 pwm_freq_hz)
 	return DIV_ROUND_CLOSEST(clock, pwm_freq_hz * mul);
 }
 
-static u16 get_vbt_pwm_freq(struct drm_i915_private *dev_priv)
+static u16 get_vbt_pwm_freq(struct intel_connector *connector)
 {
-	u16 pwm_freq_hz = dev_priv->vbt.backlight.pwm_freq_hz;
+	struct drm_i915_private *dev_priv = to_i915(connector->base.dev);
+	u16 pwm_freq_hz = connector->panel.vbt.backlight.pwm_freq_hz;
 
 	if (pwm_freq_hz) {
 		drm_dbg_kms(&dev_priv->drm,
@@ -1180,7 +1181,7 @@ static u32 get_backlight_max_vbt(struct intel_connector *connector)
 {
 	struct drm_i915_private *dev_priv = to_i915(connector->base.dev);
 	struct intel_panel *panel = &connector->panel;
-	u16 pwm_freq_hz = get_vbt_pwm_freq(dev_priv);
+	u16 pwm_freq_hz = get_vbt_pwm_freq(connector);
 	u32 pwm;
 
 	if (!panel->backlight.pwm_funcs->hz_to_pwm) {
@@ -1217,11 +1218,11 @@ static u32 get_backlight_min_vbt(struct intel_connector *connector)
 	 * against this by letting the minimum be at most (arbitrarily chosen)
 	 * 25% of the max.
 	 */
-	min = clamp_t(int, dev_priv->vbt.backlight.min_brightness, 0, 64);
-	if (min != dev_priv->vbt.backlight.min_brightness) {
+	min = clamp_t(int, connector->panel.vbt.backlight.min_brightness, 0, 64);
+	if (min != connector->panel.vbt.backlight.min_brightness) {
 		drm_dbg_kms(&dev_priv->drm,
 			    "clamping VBT min backlight %d/255 to %d/255\n",
-			    dev_priv->vbt.backlight.min_brightness, min);
+			    connector->panel.vbt.backlight.min_brightness, min);
 	}
 
 	/* vbt value is a coefficient in range [0..255] */
@@ -1410,7 +1411,7 @@ bxt_setup_backlight(struct intel_connector *connector, enum pipe unused)
 	struct intel_panel *panel = &connector->panel;
 	u32 pwm_ctl, val;
 
-	panel->backlight.controller = dev_priv->vbt.backlight.controller;
+	panel->backlight.controller = connector->panel.vbt.backlight.controller;
 
 	pwm_ctl = intel_de_read(dev_priv,
 				BXT_BLC_PWM_CTL(panel->backlight.controller));
@@ -1483,7 +1484,7 @@ static int ext_pwm_setup_backlight(struct intel_connector *connector,
 	u32 level;
 
 	/* Get the right PWM chip for DSI backlight according to VBT */
-	if (dev_priv->vbt.dsi.config->pwm_blc == PPS_BLC_PMIC) {
+	if (connector->panel.vbt.dsi.config->pwm_blc == PPS_BLC_PMIC) {
 		panel->backlight.pwm = pwm_get(dev->dev, "pwm_pmic_backlight");
 		desc = "PMIC";
 	} else {
@@ -1512,11 +1513,11 @@ static int ext_pwm_setup_backlight(struct intel_connector *connector,
 
 		drm_dbg_kms(&dev_priv->drm, "PWM already enabled at freq %ld, VBT freq %d, level %d\n",
 			    NSEC_PER_SEC / (unsigned long)panel->backlight.pwm_state.period,
-			    get_vbt_pwm_freq(dev_priv), level);
+			    get_vbt_pwm_freq(connector), level);
 	} else {
 		/* Set period from VBT frequency, leave other settings at 0. */
 		panel->backlight.pwm_state.period =
-			NSEC_PER_SEC / get_vbt_pwm_freq(dev_priv);
+			NSEC_PER_SEC / get_vbt_pwm_freq(connector);
 	}
 
 	drm_info(&dev_priv->drm, "Using %s PWM for LCD backlight control\n",
@@ -1601,7 +1602,7 @@ int intel_backlight_setup(struct intel_connector *connector, enum pipe pipe)
 	struct intel_panel *panel = &connector->panel;
 	int ret;
 
-	if (!dev_priv->vbt.backlight.present) {
+	if (!connector->panel.vbt.backlight.present) {
 		if (dev_priv->quirks & QUIRK_BACKLIGHT_PRESENT) {
 			drm_dbg_kms(&dev_priv->drm,
 				    "no backlight present per VBT, but present per quirk\n");
drivers/gpu/drm/i915/display/intel_bios.c +212 -172

849 lines not on this page · raw message

drivers/gpu/drm/i915/display/intel_bios.h +4 -0
index 4709c4d29805..86129f015718 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/display/intel_ddi.c +2 -20
index 9e6fa59eabba..333871cf3a2c 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/display/intel_ddi_buf_trans.c +5 -4
index 85f58dd3df72..b490acd0ab69 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/display/intel_display_types.h +69 -0

69 lines not on this page · raw message

drivers/gpu/drm/i915/display/intel_dp.c +35 -5
index fe8b6b72970a..0efec6023fbe 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/display/intel_dp.h +2 -0
index d457e17bdc57..a54902c713a3 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c +3 -3
index fb6cf30ee628..c92d5bb2326a 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/display/intel_drrs.c +0 -3
index 166caf293f7b..7da4a9cbe4ba 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/display/intel_dsi.c +1 -1
index 389a8c24cdc1..35e121cd226c 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.c +3 -6
index 7d234429e71e..1bc7118c56a2 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/display/intel_dsi_vbt.c +33 -23

56 lines not on this page · raw message

drivers/gpu/drm/i915/display/intel_lvds.c +4 -2
index e8478161f8b9..9f250a70519a 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/display/intel_panel.c +6 -7
index d1d1b59102d6..d055e4118558 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/display/intel_pps.c +51 -19

70 lines not on this page · raw message

drivers/gpu/drm/i915/display/intel_psr.c +19 -16
index 06db407e2749..8f09203e0cf0 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/display/intel_sdvo.c +3 -0
index d81855d57cdc..14a64bd61176 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/display/vlv_dsi.c +16 -5
index 1954f07f0d3e..02f75e95b2ec 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/gem/i915_gem_context.c +4 -4
index 321af109d484..8da42af0256a 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/i915/i915_drv.h +0 -63

63 lines not on this page · raw message

drivers/gpu/drm/i915/i915_gem.c +2 -1
index 702e5b89be22..b605d0ceaefa 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c +1 -1
index 5d7504a72b11..e244aa408d9d 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/mediatek/mtk_dsi.c +13 -11
index af2f123e9a9a..9a3b86c29b50 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/panel/panel-simple.c +1 -1
index 4a2e580a2f7b..0e001ce8a40f 100644

Lines of this file are not shown. View the raw message.

drivers/gpu/drm/rockchip/cdn-dp-core.c +3 -2
index c204e9b95c1f..518ee13b1d6f 100644

Lines of this file are not shown. View the raw message.

drivers/hv/vmbus_drv.c +9 -1
index 547ae334e5cd..027029efb008 100644

Lines of this file are not shown. View the raw message.

drivers/i2c/busses/i2c-imx.c +1 -1
index e47fa3465671..3082183bd66a 100644

Lines of this file are not shown. View the raw message.

drivers/i2c/busses/i2c-mlxbf.c +27 -41

68 lines not on this page · raw message

drivers/i2c/i2c-mux.c +3 -2
index 774507b54b57..313904be5f3b 100644

Lines of this file are not shown. View the raw message.

drivers/iommu/intel/iommu.c +1 -1
index 861a239d905a..3ed15e8ca677 100644

Lines of this file are not shown. View the raw message.

drivers/media/usb/b2c2/flexcop-usb.c +1 -1
index 7835bb0f32fc..e012b21c4fd7 100644

Lines of this file are not shown. View the raw message.

drivers/memstick/core/ms_block.c +0 -1
index f8fdf88fb240..ecbc46714e68 100644

Lines of this file are not shown. View the raw message.

drivers/memstick/core/mspro_block.c +0 -1
index 725ba74ded30..72e91c06c618 100644

Lines of this file are not shown. View the raw message.

drivers/mmc/core/block.c +0 -1
index 912a398a9a76..2f89ae55c177 100644

Lines of this file are not shown. View the raw message.

drivers/mmc/core/queue.c +0 -1
index fa5324ceeebe..f824cfdab75a 100644

Lines of this file are not shown. View the raw message.

drivers/net/bonding/bond_3ad.c +3 -2
index 1f0120cbe9e8..8ad095c19f27 100644

Lines of this file are not shown. View the raw message.

drivers/net/bonding/bond_main.c +42 -30

72 lines not on this page · raw message

drivers/net/can/flexcan/flexcan-core.c +5 -5
index d060088047f1..131467d37a45 100644

Lines of this file are not shown. View the raw message.

drivers/net/can/usb/gs_usb.c +2 -2
index d3a658b444b5..092cd51b3926 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/broadcom/bnxt/bnxt.c +5 -5
index 964354536f9c..111a952f880e 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/broadcom/bnxt/bnxt_ptp.c +2 -2
index 7f3c0875b6f5..8e316367f6ce 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/freescale/enetc/Makefile +0 -1
index a139f2e9d59f..e0e8dfd13793 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/freescale/enetc/enetc.c +2 -51

53 lines not on this page · raw message

drivers/net/ethernet/freescale/enetc/enetc.h +8 -4
index 29922c20531f..2cfe6944ebd3 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/freescale/enetc/enetc_pf.c +30 -2
index c4a0e836d4f0..bb7750222691 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/freescale/enetc/enetc_qos.c +23 -0
index 582a663ed0ba..f8a2f02ce22d 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/freescale/enetc/enetc_vf.c +15 -2
index 17924305afa2..dfcaac302e24 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/google/gve/gve_rx_dqo.c +1 -1
index 8c939628e2d8..2e6461b0ea8b 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/intel/i40e/i40e_main.c +26 -6
index 1aaf0c5ddf6c..57e27f2024d3 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c +20 -0
index 86b0f21287dc..67fbaaad3985 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/intel/iavf/iavf_txrx.c +6 -3
index 06d18797d25a..18b6a702a1d6 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/intel/iavf/iavf_virtchnl.c +5 -2
index 1603e99bae4a..498797a0a0a9 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/intel/ice/ice_lib.c +26 -16

42 lines not on this page · raw message

drivers/net/ethernet/intel/ice/ice_main.c +14 -11
index 4c6bb7482b36..48befe1e2872 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/intel/ice/ice_txrx.c +4 -1
index 836dce840712..97453d1dfafe 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_mdio.c +6 -0
index 85155cd9405c..4aeb927c3715 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/microsoft/mana/gdma_main.c +10 -0
index 49b85ca578b0..9820efce72ff 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/renesas/ravb_main.c +2 -0
index b357ac4c56c5..7e32b04eb0c7 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/renesas/sh_eth.c +2 -0
index 67ade78fb767..7fd8828d3a84 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/sfc/efx_channels.c +1 -1
index 032b8c0bd788..5b4d661ab986 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/sfc/siena/efx_channels.c +1 -1
index 017212a40df3..f54ebd007286 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/sfc/siena/tx.c +1 -1
index e166dcb9b99c..91e87594ed1e 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/sfc/tx.c +1 -1
index 138bca611341..80ed7f760bd3 100644

Lines of this file are not shown. View the raw message.

drivers/net/ethernet/sun/sunhme.c +2 -2
index 8594ee839628..88aa0d310aee 100644

Lines of this file are not shown. View the raw message.

drivers/net/ipa/ipa_qmi.c +4 -4
index ec010cf2e816..6f874f99b910 100644

Lines of this file are not shown. View the raw message.

drivers/net/ipa/ipa_qmi_msg.c +4 -4
index 6838e8065072..75d3fc0092e9 100644

Lines of this file are not shown. View the raw message.

drivers/net/ipa/ipa_qmi_msg.h +21 -16
index 495e85abe50b..9651aa59b596 100644

Lines of this file are not shown. View the raw message.

drivers/net/ipa/ipa_table.c +0 -2
index 2f5a58bfc529..69efe672ca52 100644

Lines of this file are not shown. View the raw message.

drivers/net/ipa/ipa_table.h +3 -0
index b6a9a0d79d68..1538e2e1732f 100644

Lines of this file are not shown. View the raw message.

drivers/net/ipvlan/ipvlan_core.c +4 -2
index 6ffb27419e64..c58123e13689 100644

Lines of this file are not shown. View the raw message.

drivers/net/mdio/of_mdio.c +1 -0
index 9e3c815a070f..796e9c7857d0 100644

Lines of this file are not shown. View the raw message.

drivers/net/netdevsim/hwstats.c +3 -3
index 605a38e16db0..0e58aa7f0374 100644

Lines of this file are not shown. View the raw message.

drivers/net/phy/aquantia_main.c +49 -4

53 lines not on this page · raw message

drivers/net/phy/micrel.c +12 -6
index 34483a4bd688..e8e1101911b2 100644

Lines of this file are not shown. View the raw message.

drivers/net/team/team.c +18 -6
index b07dde6f0abf..b9899913d246 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireguard/netlink.c +6 -7
index d0f3b6d7f408..5c804bcabfe6 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireguard/selftest/ratelimiter.c +10 -15
index ba87d294604f..d4bb40a695ab 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/intel/iwlwifi/Kconfig +1 -0
index a647a406b87b..b20409f8c13a 100644

Lines of this file are not shown. View the raw message.

drivers/net/wireless/mediatek/mt76/mt7615/mac.c +1 -1
index 9e832b27170f..a4eb025f504f 100644

Lines of this file are not shown. View the raw message.

drivers/nvdimm/pmem.c +3 -3
index 629d10fcf53b..b9f1a8e9f88c 100644

Lines of this file are not shown. View the raw message.

drivers/nvme/host/apple.c +1 -1
index d702d7d60235..2d23b7d41f7e 100644

Lines of this file are not shown. View the raw message.

drivers/nvme/host/core.c +0 -1
index 2f965356f345..6d76fc608b74 100644

Lines of this file are not shown. View the raw message.

drivers/nvme/host/fc.c +6 -6
index 4aff83b1b0c0..9a5ce70d7f21 100644

Lines of this file are not shown. View the raw message.

drivers/nvme/host/pci.c +1 -1
index 9f6614f7dbeb..3516678d3754 100644

Lines of this file are not shown. View the raw message.

drivers/nvme/host/rdma.c +6 -6
index 46c2dcf72f7e..240024dd5d85 100644

Lines of this file are not shown. View the raw message.

drivers/nvme/host/tcp.c +6 -6
index daa0e160e121..d7e5bbdb9b75 100644

Lines of this file are not shown. View the raw message.

drivers/nvme/target/loop.c +6 -6
index 59024af2da2e..0f5c77e22a0a 100644

Lines of this file are not shown. View the raw message.

drivers/perf/arm-cmn.c +1 -1
index 80d8309652a4..b80a9b74662b 100644

Lines of this file are not shown. View the raw message.

drivers/phy/marvell/phy-mvebu-a3700-comphy.c +17 -70

87 lines not on this page · raw message

drivers/s390/block/dasd.c +1 -1
index ba6d78789660..e8489331f12b 100644

Lines of this file are not shown. View the raw message.

drivers/s390/block/dasd_alias.c +7 -2
index dc78a523a69f..b6b938aa6615 100644

Lines of this file are not shown. View the raw message.

drivers/s390/block/dasd_genhd.c +2 -2
index a7a33ebf4bbe..5a83f0a39901 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/hosts.c +13 -3
index 8352f90d997d..ae9a107c520d 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/mpt3sas/mpt3sas_base.c +1 -1
index 9a1ae52bb621..a6d3471a6105 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/qla2xxx/qla_target.c +3 -1
index 62666df1a59e..4acff4e84b90 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/scsi_lib.c +8 -4
index f5c876d03c1a..7e990f7a9f16 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/scsi_priv.h +1 -1
index 5c4786310a31..a0ee31d55f5f 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/scsi_scan.c +1 -0
index 91ac901a6682..5d27f5196de6 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/scsi_sysfs.c +2 -1
index 43949798a2e4..5d61f58399dc 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/sd.c +2 -2
index a1a2ac09066f..cb587e488601 100644

Lines of this file are not shown. View the raw message.

drivers/scsi/sr.c +2 -2
index 32d3b8274f14..a278b739d0c5 100644

Lines of this file are not shown. View the raw message.

drivers/thunderbolt/icm.c +1 -0
index fff0c740c8f3..6f088dd0ba4f 100644

Lines of this file are not shown. View the raw message.

drivers/thunderbolt/nhi.h +1 -0
index 69083aab2736..5091677b3f4b 100644

Lines of this file are not shown. View the raw message.

drivers/tty/serial/fsl_lpuart.c +5 -4
index 2945c1b89088..cb83c66bd8a8 100644

Lines of this file are not shown. View the raw message.

drivers/tty/serial/serial-tegra.c +2 -3
index d942ab152f5a..24aa1dcc5ef7 100644

Lines of this file are not shown. View the raw message.

drivers/tty/serial/tegra-tcu.c +1 -1
index 4877c54c613d..889b701ba7c6 100644

Lines of this file are not shown. View the raw message.

drivers/ufs/core/ufshcd.c +2 -2
index 829da9cb14a8..55bb0d0422d5 100644

Lines of this file are not shown. View the raw message.

drivers/usb/core/hub.c +1 -1
index dfef85a18eb5..80b29f937c60 100644

Lines of this file are not shown. View the raw message.

drivers/usb/dwc3/core.c +7 -6
index 1db9f51f98ae..08ca65ffe57b 100644

Lines of this file are not shown. View the raw message.

drivers/usb/serial/option.c +6 -0
index a5e8374a8d71..697683e3fbff 100644

Lines of this file are not shown. View the raw message.

drivers/xen/xenbus/xenbus_client.c +6 -3
index d5f3f763717e..d4b251925796 100644

Lines of this file are not shown. View the raw message.

fs/btrfs/disk-io.c +36 -6

42 lines not on this page · raw message

fs/btrfs/zoned.c +38 -2
index 1386362fad3b..4448b7b6ea22 100644

Lines of this file are not shown. View the raw message.

fs/cifs/cifsfs.c +6 -0
index 8f2e003e0590..97278c43f8dc 100644

Lines of this file are not shown. View the raw message.

fs/cifs/smb2ops.c +42 -27

69 lines not on this page · raw message

fs/dax.c +3 -0
index 4155a6107fa1..7ab248ed21aa 100644

Lines of this file are not shown. View the raw message.

fs/exfat/fatent.c +1 -2
index 9de6a6b844c9..e541a004f8ef 100644

Lines of this file are not shown. View the raw message.

fs/ext4/ext4.h +5 -5
index adfc30ee4b7b..0d86931269bf 100644

Lines of this file are not shown. View the raw message.

fs/ext4/extents.c +4 -0
index c148bb97b527..5235974126bd 100644

Lines of this file are not shown. View the raw message.

fs/ext4/ialloc.c +1 -1
index f73e5eb43eae..208b87ce8858 100644

Lines of this file are not shown. View the raw message.

fs/ext4/mballoc.c +143 -174

317 lines not on this page · raw message

fs/ext4/mballoc.h +0 -1
index 39da92ceabf8..dcda2a943cee 100644

Lines of this file are not shown. View the raw message.

include/asm-generic/vmlinux.lds.h +1 -2
index 7515a465ec03..7c90b1ab3e00 100644

Lines of this file are not shown. View the raw message.

include/linux/blk-mq.h +3 -0
index e2d9daf7e8dd..0fd96e92c6c6 100644

Lines of this file are not shown. View the raw message.

include/linux/blkdev.h +1 -5
index 62e3ff52ab03..83eb8869a8c9 100644

Lines of this file are not shown. View the raw message.

include/linux/cpumask.h +3 -2
index 4592d0845941..57aa459c6618 100644

Lines of this file are not shown. View the raw message.

include/linux/serial_core.h +17 -0
index fde258b3decd..037a8d81a66c 100644

Lines of this file are not shown. View the raw message.

include/net/bond_3ad.h +0 -2
index 184105d68294..f2273bd5a4c5 100644

Lines of this file are not shown. View the raw message.

include/net/bonding.h +3 -0
index 3b816ae8b1f3..7ac1773b9922 100644

Lines of this file are not shown. View the raw message.

include/scsi/scsi_host.h +2 -0
index 667d889b92b5..3e1cea155049 100644

Lines of this file are not shown. View the raw message.

include/uapi/linux/xfrm.h +1 -1
index 65e13a099b1a..a9f5d884560a 100644

Lines of this file are not shown. View the raw message.

io_uring/io_uring.c +3 -0
index 602da2cfd57c..15a6f1e93e5a 100644

Lines of this file are not shown. View the raw message.

kernel/cgroup/cgroup.c +4 -1
index e702ca368539..80c23f48f3b4 100644

Lines of this file are not shown. View the raw message.

kernel/workqueue.c +2 -4
index aa8a82bc6738..fc6e4f252345 100644

Lines of this file are not shown. View the raw message.

lib/Kconfig.debug +3 -1
index 2e24db4bff19..c399ab486557 100644

Lines of this file are not shown. View the raw message.

mm/slab_common.c +4 -1
index dbd4b6f9b0e7..29ae1358d5f0 100644

Lines of this file are not shown. View the raw message.

mm/slub.c +16 -2
index b1281b8654bd..1eec942b8336 100644

Lines of this file are not shown. View the raw message.

net/batman-adv/hard-interface.c +4 -0
index b8f8da7ee3de..41c1ad33d009 100644

Lines of this file are not shown. View the raw message.

net/bridge/netfilter/ebtables.c +3 -1
index 9a0ae59cdc50..4f385d52a1c4 100644

Lines of this file are not shown. View the raw message.

net/core/flow_dissector.c +2 -3
index 6aee04f75e3e..bcba61ef5b37 100644

Lines of this file are not shown. View the raw message.

net/ipv6/af_inet6.c +2 -2
index 9f6f4a41245d..1012012a061f 100644

Lines of this file are not shown. View the raw message.

net/netfilter/nf_conntrack_ftp.c +4 -2
index 0d9332e9cf71..617f744a2e3a 100644

Lines of this file are not shown. View the raw message.

net/netfilter/nf_conntrack_irc.c +28 -6
index 992decbcaa5c..5703846bea3b 100644

Lines of this file are not shown. View the raw message.

net/netfilter/nf_conntrack_sip.c +2 -2
index b83dc9bf0a5d..78fd9122b70c 100644

Lines of this file are not shown. View the raw message.

net/netfilter/nf_tables_api.c +4 -4
index 848cc81d6992..2fde193c3d26 100644

Lines of this file are not shown. View the raw message.

net/netfilter/nfnetlink_osf.c +3 -1
index 0fa2e2030427..ee6840bd5933 100644

Lines of this file are not shown. View the raw message.

net/sched/cls_api.c +1 -0
index ac366c99086f..7d7f7bac0216 100644

Lines of this file are not shown. View the raw message.

net/sched/sch_taprio.c +11 -7
index 0b941dd63d26..86675a79da1e 100644

Lines of this file are not shown. View the raw message.

net/smc/smc_core.c +4 -1
index 1f3bb1f6b1f7..8095876b66eb 100644

Lines of this file are not shown. View the raw message.

scripts/Makefile.debug +10 -11
index 9f39b0130551..8cf1cb22dd93 100644

Lines of this file are not shown. View the raw message.

sound/core/init.c +5 -5
index 726a8353201f..4eacfafa4173 100644

Lines of this file are not shown. View the raw message.

sound/pci/hda/hda_bind.c +2 -2
index c572fb5886d5..7af251573595 100644

Lines of this file are not shown. View the raw message.

sound/pci/hda/hda_intel.c +2 -0
index b20694fd69de..6f30c374f896 100644

Lines of this file are not shown. View the raw message.

sound/pci/hda/patch_hdmi.c +20 -4
index 6c209cd26c0c..c9d9aa6351ec 100644

Lines of this file are not shown. View the raw message.

sound/pci/hda/patch_realtek.c +30 -3
index 799f6bf266dd..9614b63415a8 100644

Lines of this file are not shown. View the raw message.

sound/usb/endpoint.c +14 -9
index ff2aa13b7b26..5d105c44b46d 100644

Lines of this file are not shown. View the raw message.

sound/usb/endpoint.h +2 -4
index e67ea28faa54..6a9af04cf175 100644

Lines of this file are not shown. View the raw message.

sound/usb/pcm.c +4 -10
index 02035b545f9d..e692ae04436a 100644

Lines of this file are not shown. View the raw message.

tools/lib/perf/evlist.c +3 -2
index 6b1bafe267a4..8ec5b9f344e0 100644

Lines of this file are not shown. View the raw message.

tools/perf/util/bpf_counter_cgroup.c +2 -2
index 63b9db657442..97c69a249c6e 100644

Lines of this file are not shown. View the raw message.

tools/perf/util/bpf_skel/bperf_cgroup.bpf.c +1 -1
index 292c430768b5..c72f8ad96f75 100644

Lines of this file are not shown. View the raw message.

tools/perf/util/genelf.c +14 -0
index 953338b9e887..02cd9f75e3d2 100644

Lines of this file are not shown. View the raw message.

tools/perf/util/genelf.h +4 -0
index ae138afe6c56..b5c909546e3f 100644

Lines of this file are not shown. View the raw message.

tools/perf/util/symbol-elf.c +2 -5
index 75bec32d4f57..647b7dff8ef3 100644

Lines of this file are not shown. View the raw message.

tools/perf/util/synthetic-events.c +14 -3
index 84d17bd4efae..64e273b2b1b2 100644

Lines of this file are not shown. View the raw message.

tools/testing/selftests/net/forwarding/sch_red.sh +1 -0
index e714bae473fb..81f31179ac88 100755

Lines of this file are not shown. View the raw message.

The rest of this diff is not shown. View the raw message.

Part of the diff is not shown here. View the raw message.