Linux 5.11.12
Greg Kroah-Hartman
maintainerI'm announcing the release of the 5.11.12 kernel.
All users of the 5.11 kernel series must upgrade.
The updated 5.11.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-5.11.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/arm64/mm/mmu.c | 20 arch/powerpc/platforms/pseries/lpar.c | 3 arch/powerpc/platforms/pseries/mobility.c | 48 arch/riscv/include/asm/uaccess.h | 7 arch/s390/include/asm/vdso/data.h | 2 arch/s390/kernel/time.c | 1 arch/x86/include/asm/smp.h | 1 arch/x86/kernel/acpi/boot.c | 25 arch/x86/kernel/setup.c | 8 arch/x86/kernel/smpboot.c | 2 arch/x86/kvm/svm/nested.c | 28 arch/xtensa/kernel/coprocessor.S | 64 arch/xtensa/mm/fault.c | 5 drivers/acpi/processor_idle.c | 7 drivers/acpi/scan.c | 12 drivers/acpi/tables.c | 42 drivers/base/dd.c | 3 drivers/base/power/runtime.c | 10 drivers/extcon/extcon.c | 1 drivers/firewire/nosy.c | 9 drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 4 drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 10 drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.c | 2 drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 6 drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h | 2 drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c | 2 drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_v9.c | 2 drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_vi.c | 2 drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 8 drivers/gpu/drm/amd/pm/powerplay/hwmgr/smu7_hwmgr.c | 3 drivers/gpu/drm/amd/pm/swsmu/smu11/vangogh_ppt.c | 5 drivers/gpu/drm/imx/imx-drm-core.c | 2 drivers/gpu/drm/nouveau/nouveau_bo.c | 8 drivers/gpu/drm/tegra/dc.c | 20 drivers/gpu/drm/tegra/sor.c | 7 drivers/net/can/Makefile | 7 drivers/net/can/dev.c | 1339 ----------- drivers/net/can/dev/Makefile | 7 drivers/net/can/dev/dev.c | 1341 ++++++++++++ drivers/net/can/dev/rx-offload.c | 376 +++ drivers/net/can/m_can/tcan4x5x.c | 2 drivers/net/can/rx-offload.c | 376 --- drivers/net/can/slcan.c | 4 drivers/net/can/vcan.c | 2 drivers/net/can/vxcan.c | 6 drivers/net/ethernet/aquantia/atlantic/aq_main.c | 4 drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c | 4 drivers/net/ipa/gsi.c | 28 drivers/net/ipa/gsi.h | 5 drivers/net/ipa/gsi_reg.h | 31 drivers/net/ipa/ipa_cmd.c | 32 drivers/net/netdevsim/dev.c | 40 drivers/net/wan/lmc/lmc_main.c | 2 drivers/net/wireless/ath/ath10k/wmi-tlv.c | 7 drivers/net/wireless/ath/ath11k/mac.c | 7 drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 7 drivers/net/wireless/intel/iwlwifi/pcie/trans.c | 11 drivers/net/wireless/intel/iwlwifi/pcie/tx-gen2.c | 5 drivers/net/wireless/intel/iwlwifi/pcie/tx.c | 22 drivers/net/wireless/realtek/rtw88/rtw8821c.c | 16 drivers/nvme/target/tcp.c | 2 drivers/pinctrl/pinctrl-microchip-sgpio.c | 2 drivers/pinctrl/pinctrl-rockchip.c | 13 drivers/pinctrl/qcom/pinctrl-lpass-lpi.c | 2 drivers/pinctrl/qcom/pinctrl-sc7280.c | 16 drivers/pinctrl/qcom/pinctrl-sdx55.c | 2 drivers/scsi/qla2xxx/qla_target.h | 2 drivers/scsi/st.c | 2 drivers/soc/qcom/qcom-geni-se.c | 74 drivers/staging/comedi/drivers/cb_pcidas.c | 2 drivers/staging/comedi/drivers/cb_pcidas64.c | 2 drivers/staging/rtl8192e/rtllib.h | 2 drivers/staging/rtl8192e/rtllib_rx.c | 2 drivers/thermal/thermal_sysfs.c | 3 drivers/tty/serial/qcom_geni_serial.c | 7 drivers/usb/class/cdc-acm.c | 61 drivers/usb/core/quirks.c | 4 drivers/usb/dwc2/hcd.c | 5 drivers/usb/dwc3/dwc3-pci.c | 2 drivers/usb/dwc3/dwc3-qcom.c | 3 drivers/usb/dwc3/gadget.c | 8 drivers/usb/gadget/udc/amd5536udc_pci.c | 10 drivers/usb/host/xhci-mtk.c | 10 drivers/usb/musb/musb_core.c | 12 drivers/usb/usbip/vhci_hcd.c | 2 drivers/vfio/pci/Kconfig | 2 drivers/vhost/vhost.c | 2 drivers/video/fbdev/core/fbcon.c | 3 drivers/video/fbdev/hyperv_fb.c | 3 fs/ext4/balloc.c | 38 fs/ext4/ext4.h | 1 fs/ext4/inode.c | 6 fs/ext4/namei.c | 18 fs/ext4/super.c | 5 fs/ext4/sysfs.c | 7 fs/fuse/virtio_fs.c | 9 fs/io_uring.c | 41 fs/iomap/swapfile.c | 10 fs/nfsd/Kconfig | 1 fs/nfsd/nfs4callback.c | 1 fs/reiserfs/xattr.h | 2 include/drm/ttm/ttm_bo_api.h | 6 include/linux/acpi.h | 9 include/linux/can/can-ml.h | 12 include/linux/extcon.h | 23 include/linux/firmware/intel/stratix10-svc-client.h | 2 include/linux/netdevice.h | 34 include/linux/qcom-geni-se.h | 2 include/linux/ww_mutex.h | 5 kernel/locking/mutex.c | 25 kernel/reboot.c | 2 kernel/static_call.c | 14 kernel/trace/trace.c | 3 mm/memory.c | 2 net/9p/client.c | 4 net/appletalk/ddp.c | 33 net/can/af_can.c | 34 net/can/j1939/main.c | 22 net/can/j1939/socket.c | 13 net/can/proc.c | 19 net/core/filter.c | 12 net/core/flow_dissector.c | 6 net/mptcp/options.c | 3 net/mptcp/protocol.c | 111 net/mptcp/protocol.h | 4 net/mptcp/subflow.c | 83 net/sunrpc/auth_gss/svcauth_gss.c | 11 sound/pci/hda/hda_intel.c | 8 sound/pci/hda/patch_realtek.c | 4 sound/soc/codecs/cs42l42.c | 74 sound/soc/codecs/cs42l42.h | 13 sound/soc/codecs/es8316.c | 9 sound/soc/codecs/rt1015.c | 1 sound/soc/codecs/rt5640.c | 4 sound/soc/codecs/rt5651.c | 4 sound/soc/codecs/rt5659.c | 5 sound/soc/codecs/rt711.c | 8 sound/soc/codecs/sgtl5000.c | 2 sound/soc/mediatek/mt8192/mt8192-dai-tdm.c | 4 sound/soc/mediatek/mt8192/mt8192-reg.h | 8 sound/soc/soc-core.c | 4 sound/usb/quirks.c | 1 tools/testing/selftests/net/forwarding/tc_flower.sh | 38 144 files changed, 2794 insertions(+), 2350 deletions(-)
Adrian Hunter (2):
PM: runtime: Fix race getting/putting suppliers at probe
PM: runtime: Fix ordering in pm_runtime_get_suppliers()
Ahmad Fatoum (1):
driver core: clear deferred probe reason on probe retry
Alex Deucher (1):
drm/amdgpu/vangogh: don't check for dpm in is_dpm_running when in suspend
Alex Elder (3):
net: ipa: remove two unused register definitions
net: ipa: use a separate pointer for adjusted GSI memory
net: ipa: fix register write command validation
Alexey Dobriyan (1):
scsi: qla2xxx: Fix broken #endif placement
Andy Shevchenko (1):
usb: dwc3: pci: Enable dis_uX_susphy_quirk for Intel Merrifield
Aneesh Kumar K.V (1):
powerpc/mm/book3s64: Use the correct storage key value when calling H_PROTECT
Arnd Bergmann (1):
pinctrl: qcom: fix unintentional string concatenation
Artur Petrosyan (2):
usb: dwc2: Fix HPRT0.PrtSusp bit setting for HiKey 960 board.
usb: dwc2: Prevent core suspend when port connection flag is 0
Atul Gopinathan (2):
staging: rtl8192e: Fix incorrect source in memcpy()
staging: rtl8192e: Change state information from u16 to u8
Bard Liao (1):
ASoC: rt711: add snd_soc_component remove callback
Ben Dooks (1):
riscv: evaluate put_user() arg before enabling user access
Benjamin Rood (1):
ASoC: sgtl5000: set DAP_AVC_CTRL register to correct default value on probe
Christian König (1):
drm/ttm: make ttm_bo_unpin more defensive
Chunfeng Yun (1):
usb: xhci-mtk: fix broken streams issue on 0.96 xHCI
Dan Carpenter (1):
mptcp: fix bit MPTCP_PUSH_PENDING tests
David S. Miller (1):
Revert "net: bonding: fix error return code of bond_neigh_init()"
Davide Caratti (1):
flow_dissector: fix TTL and TOS dissection on IPv4 fragments
Dinghao Liu (1):
extcon: Fix error handling in extcon_dev_register
Doug Brown (1):
appletalk: Fix skb allocation size in loopback case
Du Cheng (1):
drivers: video: fbcon: fix NULL dereference in fbcon_cursor()
Elad Grupi (1):
nvmet-tcp: fix kmap leak when data digest in use
Eric Whitney (1):
ext4: shrink race window in ext4_should_retry_alloc()
Evan Quan (1):
drm/amd/pm: no need to force MCLK to highest when no display connected
Florian Westphal (1):
mptcp: provide subflow aware release function
Greg Kroah-Hartman (1):
Linux 5.11.12
Guo-Feng Fan (1):
rtw88: coex: 8821c: correct antenna switch function
Hans de Goede (4):
ASoC: rt5640: Fix dac- and adc- vol-tlv values being off by a factor of 10
ASoC: rt5651: Fix dac- and adc- vol-tlv values being off by a factor of 10
ASoC: es8316: Simplify adc_pga_gain_tlv table
ACPI: scan: Fix _STA getting called on devices with unmet dependencies
Heiko Carstens (2):
s390/vdso: copy tod_steering_delta value to vdso_data page s390/vdso: fix tod_steering_delta type
Huacai Chen (1):
drm/amdgpu: Set a suitable dev_info.gart_page_size
Hui Wang (2):
ALSA: hda/realtek: fix a determine_headset_type issue for a Dell AIO
ALSA: hda/realtek: call alc_update_headset_mode() in hp_automute_hook
Ido Schimmel (1):
netdevsim: dev: Initialize FIB module after debugfs
Ikjoon Jang (1):
ALSA: usb-audio: Apply sample rate quirk to Logitech Connect
Ilya Lipnitskiy (1):
mm: fix race by making init_zero_pfn() early_initcall
J. Bruce Fields (1):
rpc: fix NULL dereference on kmalloc failure
Jack Yu (1):
ASoC: rt1015: fix i2c communication error
Jason Gunthorpe (1):
vfio/nvlink: Add missing SPAPR_TCE_IOMMU depends
Jens Axboe (2):
kernel: freezer should treat PF_IO_WORKER like PF_KTHREAD for freezing Revert "kernel: freezer should treat PF_IO_WORKER like PF_KTHREAD for freezing"
Jeremy Szu (1):
ALSA: hda/realtek: fix mute/micmute LEDs for HP 640 G8
Jesper Dangaard Brouer (1):
bpf: Remove MTU check in __bpf_skb_max_len
Jia-Ju Bai (1):
net: bonding: fix error return code of bond_neigh_init()
Jiaxin Yu (1):
ASoC: mediatek: mt8192: fix tdm out data is valid on rising edge
Jisheng Zhang (1):
net: 9p: advance iov on empty read
Johan Hovold (2):
USB: cdc-acm: fix double free on probe failure
USB: cdc-acm: fix use-after-free after probe failure
Johannes Berg (1):
iwlwifi: pcie: don't disable interrupts for reg_lock
Jon Hunter (1):
ASoC: soc-core: Prevent warning if no DMI table is present
Jonathan Marek (1):
pinctrl: qcom: lpass lpi: use default pullup/strength values
Josef Bacik (1):
Revert "PM: ACPI: reboot: Use S5 for reboot"
Julian Braha (1):
fs: nfsd: fix kconfig dependency warning for NFSD_V4
Krzysztof Kozlowski (1):
extcon: Add stubs for extcon_register_notifier_all() functions
Lars Povlsen (1):
pinctrl: microchip-sgpio: Fix wrong register offset for IRQ trigger
Laurent Vivier (1):
vhost: Fix vhost_vq_reset()
Luca Pesce (1):
brcmfmac: clear EAP/association status bits on linkdown events
Lucas Tanure (4):
ASoC: cs42l42: Fix Bitclock polarity inversion
ASoC: cs42l42: Fix channel width support
ASoC: cs42l42: Fix mixer volume control
ASoC: cs42l42: Always wait at least 3ms after reset
Lv Yunlong (2):
scsi: st: Fix a use after free in st_open()
video: hyperv_fb: Fix a double free in hvfb_probe
Manaf Meethalavalappu Pallikunhi (1):
thermal/core: Add NULL pointer check before using cooling device stats
Marc Kleine-Budde (1):
can: dev: move driver related infrastructure into separate subdir
Max Filippov (2):
xtensa: fix uaccess-related livelock in do_page_fault
xtensa: move coprocessor_flush to the .text section
Nathan Lynch (2):
powerpc/pseries/mobility: use struct for shared state powerpc/pseries/mobility: handle premature return from H_JOIN
Nathan Rossi (1):
net: ethernet: aquantia: Handle error cleanup of start on open
Nirmoy Das (1):
drm/amdgpu: fix offset calculation in amdgpu_vm_bo_clear_mappings()
Oleksij Rempel (1):
net: introduce CAN specific pointer in the struct net_device
Olga Kornievskaia (1):
NFSD: fix error handling in NFSv4.0 callbacks
Oliver Neukum (3):
cdc-acm: fix BREAK rx code path adding necessary calls
USB: cdc-acm: untangle a circular dependency between callback and softint
USB: cdc-acm: downgrade message to debug
Pan Bian (1):
drm/imx: fix memory leak when fails to init
Paolo Abeni (6):
mptcp: deliver ssk errors to msk
mptcp: fix poll after shutdown
mptcp: init mptcp request socket earlier
mptcp: add a missing retransmission timer scheduling
mptcp: fix DATA_FIN processing for orphaned sockets
mptcp: fix race in release_cb
Paolo Bonzini (2):
KVM: SVM: load control fields from VMCB12 before checking them
KVM: SVM: ensure that EFER.SVME is set when running nested guest or on nested vmexit
Pavel Begunkov (3):
io_uring: fix ->flags races by linked timeouts
io_uring: halt SQO submission on ctx exit
io_uring: do ctx sqd ejection in a clear context
Pavel Tatashin (1):
arm64: mm: correct the inside linear map range during hotplug check
Peter Zijlstra (1):
static_call: Align static_call_is_init() patching condition
Qu Huang (1):
drm/amdkfd: dqm fence memory corruption
Rafael J. Wysocki (1):
ACPI: tables: x86: Reserve memory occupied by ACPI tables
Rajendra Nayak (2):
pinctrl: qcom: sc7280: Fix SDC_QDSD_PINGROUP and UFS_RESET offsets
pinctrl: qcom: sc7280: Fix SDC1_RCLK configurations
Richard Gong (1):
firmware: stratix10-svc: reset COMMAND_RECONFIG_FLAG_PARTIAL to 0
Ritesh Harjani (1):
iomap: Fix negative assignment to unsigned sis->pages in iomap_swapfile_activate
Roja Rani Yarubandi (1):
soc: qcom-geni-se: Cleanup the code to remove proxy votes
Sameer Pujar (1):
ASoC: rt5659: Update MCLK rate in set_sysclk()
Sasha Levin (2):
net: mvpp2: fix interrupt mask/unmask skip condition
can: tcan4x5x: fix max register value
Shawn Guo (1):
usb: dwc3: qcom: skip interconnect init for ACPI probe
Shuah Khan (2):
ath10k: hold RCU lock when calling ieee80211_find_sta_by_ifaddr()
usbip: vhci_hcd fix shift out-of-bounds in vhci_hub_control()
Stefan Metzmacher (2):
io_uring: imply MSG_NOSIGNAL for send[msg]()/recv[msg]() calls
io_uring: call req_set_fail_links() on short send[msg]()/recv[msg]() with MSG_WAITALL
Steven Rostedt (VMware) (1):
tracing: Fix stack trace event size
Takashi Iwai (2):
ALSA: hda: Re-add dropped snd_poewr_change_state() calls
ALSA: hda: Add missing sanity checks in PM prepare/complete callbacks
Tetsuo Handa (1):
reiserfs: update reiserfs_xattrs_initialized() condition
Thierry Reding (2):
drm/tegra: dc: Restore coupling of display controllers drm/tegra: sor: Grab runtime PM reference across reset
Tobias Klausmann (1):
nouveau: Skip unvailable ttm page entries
Tong Zhang (4):
staging: comedi: cb_pcidas: fix request_irq() warn
staging: comedi: cb_pcidas64: fix request_irq() warn
net: wan/lmc: unregister device when no matching device is found
usb: gadget: udc: amd5536udc_pci fix null-ptr-dereference
Tony Lindgren (1):
usb: musb: Fix suspend with devices connected for a64
Vincent Palatin (1):
USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem
Vitaly Kuznetsov (1):
ACPI: processor: Fix CPU0 wakeup in acpi_idle_play_dead()
Vivek Goyal (1):
virtiofs: Fail dax mount if device does not support it
Waiman Long (2):
locking/ww_mutex: Simplify use_ww_ctx & ww_ctx handling locking/ww_mutex: Fix acquire/release imbalance in ww_acquire_init()/ww_acquire_fini()
Wang Panzhenzhuan (1):
pinctrl: rockchip: fix restore error in resume
Wen Gong (1):
ath11k: add ieee80211_unregister_hw to avoid kernel crash caused by NULL pointer
Wesley Cheng (1):
usb: dwc3: gadget: Clear DEP flags after stop transfers in ep disable
Xℹ Ruoyao (1):
drm/amdgpu: check alignment on CPU page for bo map
Zhaolong Zhang (1):
ext4: fix bh ref count on error paths
Zheyu Ma (1):
firewire: nosy: Fix a use-after-free bug in nosy_ioctl()
zhangyi (F) (1):
ext4: do not iput inode under running transaction in ext4_rename()
Greg Kroah-Hartman
maintainerMakefile +1 -1
@@ -1,7 +1,7 @@ # SPDX-License-Identifier: GPL-2.0 VERSION = 5 PATCHLEVEL = 11 -SUBLEVEL = 11 +SUBLEVEL = 12 EXTRAVERSION = NAME = 💕 Valentine's Day Edition 💕
arch/arm64/mm/mmu.c +18 -2
@@ -1445,14 +1445,30 @@ static void __remove_pgd_mapping(pgd_t *pgdir, unsigned long start, u64 size)static bool inside_linear_region (u64 start,u64 size) { +u64 start_linear_pa =__pa (_PAGE_OFFSET (vabits_actual)); +u64 end_linear_pa =__pa (PAGE_END -1 ); + +if (IS_ENABLED (CONFIG_RANDOMIZE_BASE )) { +/* +* Check for a wrap, it is possible because of randomized linear +* mapping the start physical address is actually bigger than +* the end physical address. In this case set start to zero +* because [0, end_linear_pa] range must still be able to cover +* all addressable physical addresses. +*/ +if (start_linear_pa > end_linear_pa) + start_linear_pa =0 ; + } + +WARN_ON (start_linear_pa > end_linear_pa); +/* * Linear mapping region is the range [PAGE_OFFSET..(PAGE_END - 1)] * accommodating both its ends but excluding PAGE_END. Max physical * range which can be mapped inside this linear mapping range, must * also be derived from its end points. */ -return start >=__pa (_PAGE_OFFSET (vabits_actual)) && - (start + size -1 ) <=__pa (PAGE_END -1 ); +return start >= start_linear_pa && (start + size -1 ) <= end_linear_pa; } int arch_add_memory(int nid, u64 start, u64 size,
arch/powerpc/platforms/pseries/lpar.c +2 -1
@@ -887,7 +887,8 @@ static long pSeries_lpar_hpte_updatepp(unsigned long slot, want_v =hpte_encode_avpn (vpn, psize, ssize); - flags = (newpp &7 ) |H_AVPN ; + flags = (newpp & (HPTE_R_PP |HPTE_R_N |HPTE_R_KEY_LO )) |H_AVPN ; + flags |= (newpp &HPTE_R_KEY_HI ) >>48 ;if (mmu_has_feature (MMU_FTR_KERNEL_RO ))/* Move pp0 into bit 8 (IBM 55) */ flags |= (newpp &HPTE_R_PP0 ) >>55 ;
arch/powerpc/platforms/pseries/mobility.c +44 -4
81 lines not on this page · raw message
arch/riscv/include/asm/uaccess.h +5 -2
@@ -306,7 +306,9 @@ do { \* data types like structures or arrays. * * @ptr must have pointer-to-simple-variable type, and @x must be assignable -* to the result of dereferencing @ptr. +* to the result of dereferencing @ptr. The value of @x is copied to avoid +* re-ordering where @x is evaluated inside the block that enables user-space +* access (thus bypassing user space protection if @x is a function). * * Caller must check the pointer with access_ok() before calling this * function.
@@ -316,12 +318,13 @@ do { \#define __put_user (x, ptr) \ ({ \ __typeof__(*(ptr)) __user *__gu_ptr = (ptr); \ + __typeof__(*__gu_ptr) __val = (x); \ long __pu_err = 0; \ \ __chk_user_ptr(__gu_ptr); \ \ __enable_user_access(); \ - __put_user_nocheck(x, __gu_ptr, __pu_err); \ + __put_user_nocheck(__val, __gu_ptr, __pu_err); \ __disable_user_access(); \ \ __pu_err; \
arch/s390/include/asm/vdso/data.h +1 -1
@@ -6,7 +6,7 @@#include <vdso/datapage.h> struct arch_vdso_data { -__u64 tod_steering_delta; +__s64 tod_steering_delta;__u64 tod_steering_end; };
arch/s390/kernel/time.c +1 -0
@@ -398,6 +398,7 @@ static void clock_sync_global(unsigned long long delta) tod_steering_delta); tod_steering_end = now + (abs (tod_steering_delta) <<15 ); vdso_data->arch_data.tod_steering_end = tod_steering_end; + vdso_data->arch_data.tod_steering_delta = tod_steering_delta;/* Update LPAR offset. */ if (ptff_query (PTFF_QTO ) &&ptff (&qto,sizeof (qto),PTFF_QTO ) ==0 )
arch/x86/include/asm/smp.h +1 -0
@@ -132,6 +132,7 @@ void native_play_dead(void);void play_dead_common (void );void wbinvd_on_cpu (int cpu);int wbinvd_on_all_cpus (void ); +bool wakeup_cpu0 (void );void native_smp_send_reschedule (int cpu);void native_send_call_func_ipi (const struct cpumask *mask);
arch/x86/kernel/acpi/boot.c +12 -13
@@ -1554,10 +1554,18 @@ void __init acpi_boot_table_init(void)/* * Initialize the ACPI boot-time table parser. */ -if (acpi_table_init ()) { +if (acpi_locate_initial_tables ())disable_acpi (); -return ; - } +else +acpi_reserve_initial_tables (); +} + +int __init early_acpi_boot_init (void ) +{ +if (acpi_disabled) +return 1 ; + +acpi_table_init_complete ();acpi_table_parse (ACPI_SIG_BOOT , acpi_parse_sbf);
@@ -1570,18 +1578,9 @@ void __init acpi_boot_table_init(void) }else { printk(KERN_WARNING PREFIX "Disabling ACPI support\n");disable_acpi (); -return ; +return 1 ; } } -} - -int __init early_acpi_boot_init (void ) -{ -/* -* If acpi_disabled, bail out -*/ -if (acpi_disabled) -return 1 ;/* * Process the Multiple APIC Description Table (MADT), if present
arch/x86/kernel/setup.c +3 -5
@@ -1046,6 +1046,9 @@ void __init setup_arch(char **cmdline_p)cleanup_highmap (); +/* Look for ACPI tables and reserve memory occupied by them. */ +acpi_boot_table_init (); +memblock_set_current_limit (ISA_END_ADDRESS );e820__memblock_setup ();
@@ -1137,11 +1140,6 @@ void __init setup_arch(char **cmdline_p)early_platform_quirks (); -/* -* Parse the ACPI tables for possible boot-time SMP configuration. -*/ -acpi_boot_table_init (); -early_acpi_boot_init ();initmem_init ();
arch/x86/kernel/smpboot.c +1 -1
@@ -1659,7 +1659,7 @@ void play_dead_common(void)local_irq_disable (); } -static bool wakeup_cpu0 (void ) +bool wakeup_cpu0 (void ) {if (smp_processor_id () ==0 && enable_start_cpu0)return true;
arch/x86/kvm/svm/nested.c +23 -5
@@ -246,11 +246,18 @@ static bool nested_vmcb_check_controls(struct vmcb_control_area *control)return true; } -static bool nested_vmcb_checks (struct vcpu_svm *svm,struct vmcb *vmcb12) +static bool nested_vmcb_check_save (struct vcpu_svm *svm,struct vmcb *vmcb12) {struct kvm_vcpu *vcpu = &svm->vcpu;bool vmcb12_lma; +/* +* FIXME: these should be done after copying the fields, +* to avoid TOC/TOU races. For these save area checks +* the possible damage is limited since kvm_set_cr0 and +* kvm_set_cr4 handle failure; EFER_SVME is an exception +* so it is force-set later in nested_prepare_vmcb_save. +*/ if ((vmcb12->save.efer &EFER_SVME ) ==0 )return false;
@@ -271,7 +278,7 @@ static bool nested_vmcb_checks(struct vcpu_svm *svm, struct vmcb *vmcb12)if (!kvm_is_valid_cr4 (&svm->vcpu, vmcb12->save.cr4))return false; -return nested_vmcb_check_controls (&vmcb12->control); +return true; } static void load_nested_vmcb_control(struct vcpu_svm *svm,
@@ -396,7 +403,14 @@ static void nested_prepare_vmcb_save(struct vcpu_svm *svm, struct vmcb *vmcb12) svm->vmcb->save.gdtr = vmcb12->save.gdtr; svm->vmcb->save.idtr = vmcb12->save.idtr;kvm_set_rflags (&svm->vcpu, vmcb12->save.rflags |X86_EFLAGS_FIXED ); -svm_set_efer (&svm->vcpu, vmcb12->save.efer); + +/* +* Force-set EFER_SVME even though it is checked earlier on the +* VMCB12, because the guest can flip the bit between the check +* and now. Clearing EFER_SVME would call svm_free_nested. +*/ +svm_set_efer (&svm->vcpu, vmcb12->save.efer |EFER_SVME ); +svm_set_cr0 (&svm->vcpu, vmcb12->save.cr0);svm_set_cr4 (&svm->vcpu, vmcb12->save.cr4); svm->vmcb->save.cr2 = svm->vcpu.arch.cr2 = vmcb12->save.cr2;
@@ -454,7 +468,6 @@ int enter_svm_guest_mode(struct vcpu_svm *svm, u64 vmcb12_gpa,int ret; svm->nested.vmcb12_gpa = vmcb12_gpa; -load_nested_vmcb_control (svm, &vmcb12->control);nested_prepare_vmcb_save (svm, vmcb12);nested_prepare_vmcb_control (svm);
@@ -501,7 +514,10 @@ int nested_svm_vmrun(struct vcpu_svm *svm)if (WARN_ON_ONCE (!svm->nested.initialized))return -EINVAL ; -if (!nested_vmcb_checks (svm, vmcb12)) { +load_nested_vmcb_control (svm, &vmcb12->control); + +if (!nested_vmcb_check_save (svm, vmcb12) || + !nested_vmcb_check_controls (&svm->nested.ctl)) { vmcb12->control.exit_code =SVM_EXIT_ERR ; vmcb12->control.exit_code_hi =0 ; vmcb12->control.exit_info_1 =0 ;
@@ -1207,6 +1223,8 @@ static int svm_set_nested_state(struct kvm_vcpu *vcpu,*/ if (!(save->cr0 &X86_CR0_PG )) goto out_free; +if (!(save->efer &EFER_SVME )) + goto out_free;/* * All checks done, we can enter guest mode. L1 control fields
arch/xtensa/kernel/coprocessor.S +33 -31
76 lines not on this page · raw message
arch/xtensa/mm/fault.c +4 -1
@@ -112,8 +112,11 @@ void do_page_fault(struct pt_regs *regs)*/ fault =handle_mm_fault (vma, address, flags, regs); -if (fault_signal_pending (fault, regs)) +if (fault_signal_pending (fault, regs)) { +if (!user_mode (regs)) + goto bad_page_fault;return ; + }if (unlikely (fault &VM_FAULT_ERROR )) {if (fault &VM_FAULT_OOM )
drivers/acpi/processor_idle.c +7 -0
@@ -29,6 +29,7 @@*/ #ifdef CONFIG_X86 #include <asm/apic.h> +#include <asm/cpu.h> #endif #define _COMPONENT ACPI_PROCESSOR_COMPONENT
@@ -541,6 +542,12 @@ static int acpi_idle_play_dead(struct cpuidle_device *dev, int index)wait_for_freeze (); }else return -ENODEV ; + +#if defined(CONFIG_X86 ) && defined(CONFIG_HOTPLUG_CPU ) +/* If NMI wants to wake up CPU0, start CPU0. */ +if (wakeup_cpu0 ()) +start_cpu0 (); +#endif }/* Never reached */
drivers/acpi/scan.c +11 -1
@@ -1669,6 +1669,8 @@ void acpi_init_device_object(struct acpi_device *device, acpi_handle handle,device_initialize (&device->dev);dev_set_uevent_suppress (&device->dev, true);acpi_init_coherency (device); +/* Assume there are unmet deps to start with. */ + device->dep_unmet =1 ; }void acpi_device_add_finalize (struct acpi_device *device)
@@ -1934,6 +1936,8 @@ static void acpi_scan_dep_init(struct acpi_device *adev) {struct acpi_dep_data *dep; + adev->dep_unmet =0 ; +mutex_lock (&acpi_dep_list_lock);list_for_each_entry (dep, &acpi_dep_list, node) {
@@ -1981,7 +1985,13 @@ static acpi_status acpi_bus_check_add(acpi_handle handle, bool check_dep,return AE_CTRL_DEPTH ;acpi_scan_init_hotplug (device); -if (!check_dep) +/* +* If check_dep is true at this point, the device has no dependencies, +* or the creation of the device object would have been postponed above. +*/ +if (check_dep) + device->dep_unmet =0 ; +else acpi_scan_dep_init (device); out:
drivers/acpi/tables.c +39 -3
62 lines not on this page · raw message
drivers/base/dd.c +3 -0
@@ -97,6 +97,9 @@ static void deferred_probe_work_func(struct work_struct *work)get_device (dev); +kfree (dev->p->deferred_probe_reason); + dev->p->deferred_probe_reason =NULL ; +/* * Drop the mutex while probing each device; the probe path may * manipulate the deferred list
drivers/base/power/runtime.c +8 -2
@@ -1690,8 +1690,8 @@ void pm_runtime_get_suppliers(struct device *dev) device_links_read_lock_held())if (link->flags &DL_FLAG_PM_RUNTIME ) { link->supplier_preactivated = true; -refcount_inc (&link->rpm_active);pm_runtime_get_sync (link->supplier); +refcount_inc (&link->rpm_active); }device_links_read_unlock (idx);
@@ -1704,6 +1704,8 @@ void pm_runtime_get_suppliers(struct device *dev)void pm_runtime_put_suppliers (struct device *dev) {struct device_link *link; +unsigned long flags; +bool put;int idx; idx =device_links_read_lock ();
@@ -1712,7 +1714,11 @@ void pm_runtime_put_suppliers(struct device *dev) device_links_read_lock_held())if (link->supplier_preactivated) { link->supplier_preactivated = false; -if (refcount_dec_not_one (&link->rpm_active)) +spin_lock_irqsave (&dev->power.lock, flags); + put =pm_runtime_status_suspended (dev) && +refcount_dec_not_one (&link->rpm_active); +spin_unlock_irqrestore (&dev->power.lock, flags); +if (put)pm_runtime_put (link->supplier); }
drivers/extcon/extcon.c +1 -0
@@ -1241,6 +1241,7 @@ int extcon_dev_register(struct extcon_dev *edev) sizeof(*edev->nh), GFP_KERNEL);if (!edev->nh) { ret = -ENOMEM ; +device_unregister (&edev->dev); goto err_dev; }
drivers/firewire/nosy.c +7 -2
@@ -346,6 +346,7 @@ nosy_ioctl(struct file *file, unsigned int cmd, unsigned long arg)struct client *client = file->private_data;spinlock_t *client_list_lock = &client->lynx->client_list_lock;struct nosy_stats stats; +int ret;switch (cmd) {case NOSY_IOC_GET_STATS :
@@ -360,11 +361,15 @@ nosy_ioctl(struct file *file, unsigned int cmd, unsigned long arg)return 0 ;case NOSY_IOC_START : + ret = -EBUSY ;spin_lock_irq (client_list_lock); -list_add_tail (&client->link, &client->lynx->client_list); +if (list_empty (&client->link)) { +list_add_tail (&client->link, &client->lynx->client_list); + ret =0 ; + }spin_unlock_irq (client_list_lock); -return 0 ; +return ret;case NOSY_IOC_STOP :spin_lock_irq (client_list_lock);
drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c +2 -2
@@ -780,9 +780,9 @@ int amdgpu_info_ioctl(struct drm_device *dev, void *data, struct drm_file *filp) dev_info->high_va_offset =AMDGPU_GMC_HOLE_END ; dev_info->high_va_max =AMDGPU_GMC_HOLE_END | vm_size; } - dev_info->virtual_address_alignment =max ((int )PAGE_SIZE ,AMDGPU_GPU_PAGE_SIZE ); + dev_info->virtual_address_alignment =max_t (u32,PAGE_SIZE ,AMDGPU_GPU_PAGE_SIZE ); dev_info->pte_fragment_size = (1 << adev->vm_manager.fragment_size) *AMDGPU_GPU_PAGE_SIZE ; - dev_info->gart_page_size =AMDGPU_GPU_PAGE_SIZE ; + dev_info->gart_page_size =max_t (u32,PAGE_SIZE ,AMDGPU_GPU_PAGE_SIZE ); dev_info->cu_active_number = adev->gfx.cu_info.number; dev_info->cu_ao_mask = adev->gfx.cu_info.ao_cu_mask; dev_info->ce_ram_size = adev->gfx.ce_ram_size;
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c +5 -5
@@ -2195,8 +2195,8 @@ int amdgpu_vm_bo_map(struct amdgpu_device *adev,uint64_t eaddr;/* validate the parameters */ -if (saddr &AMDGPU_GPU_PAGE_MASK || offset &AMDGPU_GPU_PAGE_MASK || - size ==0 || size &AMDGPU_GPU_PAGE_MASK ) +if (saddr & ~PAGE_MASK || offset & ~PAGE_MASK || + size ==0 || size & ~PAGE_MASK )return -EINVAL ;/* make sure object fit at this offset */
@@ -2261,8 +2261,8 @@ int amdgpu_vm_bo_replace_map(struct amdgpu_device *adev,int r;/* validate the parameters */ -if (saddr &AMDGPU_GPU_PAGE_MASK || offset &AMDGPU_GPU_PAGE_MASK || - size ==0 || size &AMDGPU_GPU_PAGE_MASK ) +if (saddr & ~PAGE_MASK || offset & ~PAGE_MASK || + size ==0 || size & ~PAGE_MASK )return -EINVAL ;/* make sure object fit at this offset */
@@ -2407,7 +2407,7 @@ int amdgpu_vm_bo_clear_mappings(struct amdgpu_device *adev, after->start = eaddr +1 ; after->last = tmp->last; after->offset = tmp->offset; - after->offset += after->start - tmp->start; + after->offset += (after->start - tmp->start) <<PAGE_SHIFT ; after->flags = tmp->flags; after->bo_va = tmp->bo_va;list_add (&after->list, &tmp->bo_va->invalids);
drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.c +1 -1
@@ -155,7 +155,7 @@ static int dbgdev_diq_submit_ib(struct kfd_dbgdev *dbgdev,/* Wait till CP writes sync code: */ status =amdkfd_fence_wait_timeout ( - (unsigned int *) rm_state, + rm_state,QUEUESTATE__ACTIVE ,1500 );kfd_gtt_sa_free (dbgdev->dev, mem_obj);
drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c +3 -3
@@ -1167,7 +1167,7 @@ static int start_cpsch(struct device_queue_manager *dqm)if (retval) goto fail_allocate_vidmem; - dqm->fence_addr = dqm->fence_mem->cpu_ptr; + dqm->fence_addr = (uint64_t *)dqm->fence_mem->cpu_ptr; dqm->fence_gpu_addr = dqm->fence_mem->gpu_addr;init_interrupts (dqm);
@@ -1340,8 +1340,8 @@ static int create_queue_cpsch(struct device_queue_manager *dqm, struct queue *q,return retval; } -int amdkfd_fence_wait_timeout (unsigned int *fence_addr, -unsigned int fence_value, +int amdkfd_fence_wait_timeout (uint64_t *fence_addr, +uint64_t fence_value,unsigned int timeout_ms) {unsigned long end_jiffies =msecs_to_jiffies (timeout_ms) + jiffies;
drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h +1 -1
@@ -192,7 +192,7 @@ struct device_queue_manager {uint16_t vmid_pasid[VMID_NUM ];uint64_t pipelines_addr;uint64_t fence_gpu_addr; -unsigned int *fence_addr; +uint64_t *fence_addr;struct kfd_mem_obj *fence_mem;bool active_runlist;int sched_policy;
drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c +1 -1
@@ -347,7 +347,7 @@ int pm_send_runlist(struct packet_manager *pm, struct list_head *dqm_queues) }int pm_send_query_status (struct packet_manager *pm,uint64_t fence_address, -uint32_t fence_value) +uint64_t fence_value) {uint32_t *buffer, size;int retval =0 ;
drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_v9.c +1 -1
@@ -283,7 +283,7 @@ static int pm_unmap_queues_v9(struct packet_manager *pm, uint32_t *buffer, }static int pm_query_status_v9 (struct packet_manager *pm,uint32_t *buffer, -uint64_t fence_address,uint32_t fence_value) +uint64_t fence_address,uint64_t fence_value) {struct pm4_mes_query_status *packet;
drivers/gpu/drm/amd/amdkfd/kfd_packet_manager_vi.c +1 -1
@@ -263,7 +263,7 @@ static int pm_unmap_queues_vi(struct packet_manager *pm, uint32_t *buffer, }static int pm_query_status_vi (struct packet_manager *pm,uint32_t *buffer, -uint64_t fence_address,uint32_t fence_value) +uint64_t fence_address,uint64_t fence_value) {struct pm4_mes_query_status *packet;
drivers/gpu/drm/amd/amdkfd/kfd_priv.h +4 -4
@@ -1003,8 +1003,8 @@ int pqm_get_wave_state(struct process_queue_manager *pqm, u32 *ctl_stack_used_size, u32 *save_area_used_size); -int amdkfd_fence_wait_timeout (unsigned int *fence_addr, -unsigned int fence_value, +int amdkfd_fence_wait_timeout (uint64_t *fence_addr, +uint64_t fence_value,unsigned int timeout_ms);/* Packet Manager */
@@ -1040,7 +1040,7 @@ struct packet_manager_funcs { uint32_t filter_param, bool reset, unsigned int sdma_engine);int (*query_status)(struct packet_manager *pm,uint32_t *buffer, -uint64_t fence_address,uint32_t fence_value); +uint64_t fence_address,uint64_t fence_value);int (*release_mem)(uint64_t gpu_addr,uint32_t *buffer);/* Packet sizes */
@@ -1062,7 +1062,7 @@ int pm_send_set_resources(struct packet_manager *pm, struct scheduling_resources *res);int pm_send_runlist (struct packet_manager *pm,struct list_head *dqm_queues);int pm_send_query_status (struct packet_manager *pm,uint64_t fence_address, -uint32_t fence_value); +uint64_t fence_value); int pm_send_unmap_queue(struct packet_manager *pm, enum kfd_queue_type type, enum kfd_unmap_queues_filter mode,
drivers/gpu/drm/amd/pm/powerplay/hwmgr/smu7_hwmgr.c +2 -1
@@ -3330,7 +3330,8 @@ static int smu7_apply_state_adjust_rules(struct pp_hwmgr *hwmgr, disable_mclk_switching_for_display = ((1 < hwmgr->display_config->num_display) && !hwmgr->display_config->multi_monitor_in_sync) || -smu7_vblank_too_short (hwmgr, hwmgr->display_config->min_vblank_time); + (hwmgr->display_config->num_display && +smu7_vblank_too_short (hwmgr, hwmgr->display_config->min_vblank_time)); disable_mclk_switching = disable_mclk_switching_for_frame_lock || disable_mclk_switching_for_display;
drivers/gpu/drm/amd/pm/swsmu/smu11/vangogh_ppt.c +5 -0
@@ -388,10 +388,15 @@ static int vangogh_get_allowed_feature_mask(struct smu_context *smu,static bool vangogh_is_dpm_running (struct smu_context *smu) { +struct amdgpu_device *adev = smu->adev;int ret =0 ;uint32_t feature_mask[2 ];uint64_t feature_enabled; +/* we need to re-init after suspend so return false */ +if (adev->in_suspend) +return false; + ret =smu_cmn_get_enabled_32_bits_mask (smu, feature_mask,2 );if (ret)
drivers/gpu/drm/imx/imx-drm-core.c +1 -1
@@ -215,7 +215,7 @@ static int imx_drm_bind(struct device *dev) ret =drmm_mode_config_init (drm);if (ret) -return ret; + goto err_kms; ret =drm_vblank_init (drm,MAX_CRTC );if (ret)
drivers/gpu/drm/nouveau/nouveau_bo.c +8 -0
@@ -551,6 +551,10 @@ nouveau_bo_sync_for_device(struct nouveau_bo *nvbo)if (!ttm_dma)return ; +if (!ttm_dma->pages) { +NV_DEBUG (drm,"ttm_dma 0x%p: pages NULL\n" , ttm_dma); +return ; + }/* Don't waste time looping if the object is coherent */ if (nvbo->force_coherent)
@@ -583,6 +587,10 @@ nouveau_bo_sync_for_cpu(struct nouveau_bo *nvbo)if (!ttm_dma)return ; +if (!ttm_dma->pages) { +NV_DEBUG (drm,"ttm_dma 0x%p: pages NULL\n" , ttm_dma); +return ; + }/* Don't waste time looping if the object is coherent */ if (nvbo->force_coherent)
drivers/gpu/drm/tegra/dc.c +8 -12
@@ -2501,22 +2501,18 @@ static int tegra_dc_couple(struct tegra_dc *dc)* POWER_CONTROL registers during CRTC enabling. */ if (dc->soc->coupled_pm && dc->pipe ==1 ) { -u32 flags =DL_FLAG_PM_RUNTIME |DL_FLAG_AUTOREMOVE_CONSUMER ; -struct device_link *link; -struct device *partner; +struct device *companion; +struct tegra_dc *parent; - partner =driver_find_device (dc->dev->driver,NULL ,NULL , - tegra_dc_match_by_pipe); -if (!partner) + companion =driver_find_device (dc->dev->driver,NULL , (const void *)0 , + tegra_dc_match_by_pipe); +if (!companion)return -EPROBE_DEFER ; - link =device_link_add (dc->dev, partner, flags); -if (!link) { -dev_err (dc->dev,"failed to link controllers\n" ); -return -EINVAL ; - } + parent =dev_get_drvdata (companion); + dc->client.parent = &parent->client; -dev_dbg (dc->dev,"coupled to %s\n" ,dev_name (partner)); +dev_dbg (dc->dev,"coupled to %s\n" ,dev_name (companion)); }return 0 ;
drivers/gpu/drm/tegra/sor.c +7 -0
@@ -3115,6 +3115,12 @@ static int tegra_sor_init(struct host1x_client *client)* kernel is possible. */ if (sor->rst) { + err =pm_runtime_resume_and_get (sor->dev); +if (err <0 ) { +dev_err (sor->dev,"failed to get runtime PM: %d\n" , err); +return err; + } + err =reset_control_acquire (sor->rst);if (err <0 ) { dev_err(sor->dev, "failed to acquire SOR reset: %d\n",
@@ -3148,6 +3154,7 @@ static int tegra_sor_init(struct host1x_client *client) }reset_control_release (sor->rst); +pm_runtime_put (sor->dev); } err =clk_prepare_enable (sor->clk_safe);
drivers/net/can/Makefile +1 -6
@@ -7,12 +7,7 @@ obj-$(CONFIG_CAN_VCAN) += vcan.o obj-$(CONFIG_CAN_VXCAN) += vxcan.o obj-$(CONFIG_CAN_SLCAN) += slcan.o -obj-$(CONFIG_CAN_DEV) += can-dev.o -can-dev-y += dev.o -can-dev-y += rx-offload.o - -can-dev-$(CONFIG_CAN_LEDS) += led.o - +obj-y += dev/ obj-y += rcar/ obj-y += spi/ obj-y += usb/
drivers/net/can/dev.c deleted +0 -1339
1,339 lines not on this page · raw message
drivers/net/can/dev/Makefile new file +7 -0
@@ -0,0 +1,7 @@ +# SPDX-License-Identifier: GPL-2.0 + +obj-$(CONFIG_CAN_DEV) += can-dev.o +can-dev-y += dev.o +can-dev-y += rx-offload.o + +can-dev-$(CONFIG_CAN_LEDS) += led.o
drivers/net/can/dev/dev.c new file +1341 -0
837 lines not on this page · raw message
drivers/net/can/dev/rx-offload.c new file +376 -0
376 lines not on this page · raw message
drivers/net/can/rx-offload.c deleted +0 -376
376 lines not on this page · raw message
drivers/net/ethernet/aquantia/atlantic/aq_main.c +3 -1
Lines of this file are not shown. View the raw message.
drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c +2 -2
Lines of this file are not shown. View the raw message.
drivers/net/wireless/ath/ath10k/wmi-tlv.c +5 -2
Lines of this file are not shown. View the raw message.
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c +5 -2
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/iwlwifi/pcie/trans.c +5 -6
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/iwlwifi/pcie/tx-gen2.c +2 -3
Lines of this file are not shown. View the raw message.
drivers/net/wireless/intel/iwlwifi/pcie/tx.c +9 -13
Lines of this file are not shown. View the raw message.
drivers/net/wireless/realtek/rtw88/rtw8821c.c +8 -8
Lines of this file are not shown. View the raw message.
drivers/pinctrl/pinctrl-microchip-sgpio.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/pinctrl/qcom/pinctrl-lpass-lpi.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/soc/qcom/qcom-geni-se.c +0 -74
74 lines not on this page · raw message
drivers/staging/comedi/drivers/cb_pcidas.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/staging/comedi/drivers/cb_pcidas64.c +1 -1
Lines of this file are not shown. View the raw message.
drivers/usb/class/cdc-acm.c +42 -19
61 lines not on this page · raw message
drivers/usb/gadget/udc/amd5536udc_pci.c +5 -5
Lines of this file are not shown. View the raw message.
fs/io_uring.c +32 -9
41 lines not on this page · raw message
include/linux/firmware/intel/stratix10-svc-client.h +1 -1
Lines of this file are not shown. View the raw message.
net/mptcp/protocol.c +91 -20
111 lines not on this page · raw message
net/mptcp/subflow.c +59 -24
83 lines not on this page · raw message
sound/soc/codecs/cs42l42.c +34 -40
74 lines not on this page · raw message
sound/soc/mediatek/mt8192/mt8192-dai-tdm.c +3 -1
Lines of this file are not shown. View the raw message.
tools/testing/selftests/net/forwarding/tc_flower.sh +37 -1
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.