Skip to contentSkip to conversation

Linux 5.15.143

DISCUSSION Greg Kroah-Hartman 1 participant 2 messages Dec 13, 2023 Stable branch

lore
Share & tools
lore

Greg Kroah-Hartman

author maintainer
#0 lore raw

I'm announcing the release of the 5.15.143 kernel.

All users of the 5.15 kernel series must upgrade.

The updated 5.15.y git tree can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-5.15.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

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

 Documentation/ABI/testing/sysfs-bus-optee-devices         |    9 
 Documentation/process/howto.rst                           |    2 
 Documentation/translations/it_IT/process/howto.rst        |    2 
 Documentation/translations/ja_JP/howto.rst                |    2 
 Documentation/translations/ko_KR/howto.rst                |    2 
 Documentation/translations/zh_CN/process/howto.rst        |    2 
 Documentation/translations/zh_TW/process/howto.rst        |    2 
 Makefile                                                  |    2 
 arch/arm/boot/dts/imx28-xea.dts                           |    1 
 arch/arm/boot/dts/imx6ul-pico.dtsi                        |    2 
 arch/arm/boot/dts/imx7s.dtsi                              |    8 
 arch/arm/mach-imx/mmdc.c                                  |    7 
 arch/arm64/boot/dts/freescale/imx8mp.dtsi                 |    2 
 arch/arm64/boot/dts/freescale/imx8mq.dtsi                 |    4 
 arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts  |    2 
 arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts              |    2 
 arch/arm64/boot/dts/mediatek/mt8173-evb.dts               |    4 
 arch/arm64/boot/dts/mediatek/mt8173.dtsi                  |    2 
 arch/arm64/boot/dts/mediatek/mt8183-evb.dts               |   50 +-
 arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi    |    8 
 arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi            |   90 ++---
 arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dts           |   12 
 arch/arm64/boot/dts/mediatek/mt8183.dtsi                  |  242 +++++++-------
 arch/arm64/boot/dts/rockchip/rk3399.dtsi                  |    6 
 arch/mips/Kconfig                                         |    2 
 arch/mips/include/asm/mach-loongson64/boot_param.h        |    3 
 arch/mips/loongson64/env.c                                |   10 
 arch/mips/loongson64/init.c                               |    5 
 arch/riscv/kernel/traps_misaligned.c                      |    6 
 arch/s390/mm/pgtable.c                                    |    2 
 arch/x86/kernel/cpu/amd.c                                 |    3 
 arch/x86/kvm/svm/svm.c                                    |    8 
 drivers/android/binder.c                                  |    1 
 drivers/base/devcoredump.c                                |   86 ++++
 drivers/base/regmap/regcache.c                            |    3 
 drivers/gpio/gpiolib-sysfs.c                              |   15 
 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c                    |    2 
 drivers/gpu/drm/amd/amdgpu/amdgpu_display.c               |   49 +-
 drivers/hwmon/acpi_power_meter.c                          |    4 
 drivers/hwmon/nzxt-kraken2.c                              |    4 
 drivers/hwtracing/coresight/coresight-etm4x-core.c        |   13 
 drivers/i2c/busses/i2c-designware-common.c                |   16 
 drivers/infiniband/core/umem.c                            |    6 
 drivers/infiniband/hw/bnxt_re/main.c                      |    2 
 drivers/infiniband/hw/hns/hns_roce_hw_v2.c                |   13 
 drivers/infiniband/hw/irdma/hw.c                          |   10 
 drivers/infiniband/hw/irdma/main.c                        |    2 
 drivers/infiniband/hw/irdma/main.h                        |    2 
 drivers/infiniband/hw/irdma/verbs.c                       |   28 +
 drivers/infiniband/hw/irdma/verbs.h                       |    1 
 drivers/infiniband/ulp/rtrs/rtrs-clt.c                    |    7 
 drivers/infiniband/ulp/rtrs/rtrs-srv.c                    |   37 +-
 drivers/md/md.c                                           |  174 +++++-----
 drivers/misc/mei/client.c                                 |    4 
 drivers/net/arcnet/arcdevice.h                            |    2 
 drivers/net/arcnet/com20020-pci.c                         |   89 ++---
 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c              |    1 
 drivers/net/ethernet/broadcom/tg3.c                       |   42 ++
 drivers/net/ethernet/broadcom/tg3.h                       |    4 
 drivers/net/ethernet/hisilicon/hns/hns_dsaf_mac.c         |   29 +
 drivers/net/ethernet/intel/i40e/i40e_main.c               |    2 
 drivers/net/ethernet/marvell/octeontx2/af/rvu_devlink.c   |    5 
 drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.c       |    8 
 drivers/net/ethernet/marvell/octeontx2/af/rvu_reg.c       |    4 
 drivers/net/ethernet/marvell/octeontx2/nic/otx2_ethtool.c |    6 
 drivers/net/ethernet/pensando/ionic/ionic_dev.h           |    2 
 drivers/net/ethernet/pensando/ionic/ionic_lif.c           |   16 
 drivers/net/ethernet/realtek/r8169_main.c                 |    7 
 drivers/net/ethernet/stmicro/stmmac/dwmac5.c              |   45 +-
 drivers/net/ethernet/stmicro/stmmac/dwmac5.h              |    4 
 drivers/net/ethernet/stmicro/stmmac/dwxgmac2_core.c       |    3 
 drivers/net/ethernet/stmicro/stmmac/hwif.h                |    4 
 drivers/net/ethernet/stmicro/stmmac/stmmac_main.c         |    8 
 drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c           |    1 
 drivers/net/hyperv/Kconfig                                |    1 
 drivers/net/usb/r8152.c                                   |  110 +++---
 drivers/nvme/host/nvme.h                                  |    5 
 drivers/nvme/host/pci.c                                   |   16 
 drivers/of/dynamic.c                                      |    5 
 drivers/parport/parport_pc.c                              |   21 +
 drivers/platform/mellanox/mlxbf-bootctl.c                 |   39 +-
 drivers/platform/mellanox/mlxbf-pmc.c                     |   14 
 drivers/platform/surface/aggregator/core.c                |    5 
 drivers/platform/x86/Kconfig                              |    2 
 drivers/platform/x86/asus-nb-wmi.c                        |   46 +-
 drivers/platform/x86/asus-wmi.c                           |  118 +++---
 drivers/platform/x86/asus-wmi.h                           |   10 
 drivers/platform/x86/wmi.c                                |   56 ++-
 drivers/scsi/be2iscsi/be_main.c                           |    1 
 drivers/tee/optee/device.c                                |   17 
 drivers/tty/serial/8250/8250_early.c                      |    1 
 drivers/tty/serial/8250/8250_omap.c                       |   14 
 drivers/tty/serial/amba-pl011.c                           |  112 +++---
 drivers/tty/serial/sc16is7xx.c                            |   12 
 drivers/usb/gadget/function/f_hid.c                       |    7 
 drivers/usb/host/xhci-pci.c                               |    2 
 drivers/usb/typec/class.c                                 |    5 
 drivers/vdpa/mlx5/net/mlx5_vnet.c                         |    7 
 fs/btrfs/disk-io.c                                        |    1 
 fs/btrfs/super.c                                          |    5 
 fs/cifs/cifsfs.c                                          |    4 
 fs/cifs/smb2ops.c                                         |    2 
 fs/nilfs2/sufile.c                                        |   42 ++
 fs/nilfs2/the_nilfs.c                                     |    6 
 include/linux/cpuhotplug.h                                |    1 
 include/linux/hrtimer.h                                   |    4 
 include/linux/kallsyms.h                                  |    7 
 include/linux/kprobes.h                                   |    7 
 include/linux/perf_event.h                                |    2 
 include/linux/platform_data/x86/asus-wmi.h                |    1 
 include/linux/stmmac.h                                    |    1 
 include/net/genetlink.h                                   |    7 
 include/rdma/ib_umem.h                                    |    9 
 include/rdma/ib_verbs.h                                   |    1 
 include/uapi/linux/perf_event.h                           |    5 
 io_uring/io_uring.c                                       |   64 ---
 kernel/cpu.c                                              |    8 
 kernel/events/core.c                                      |   80 +++-
 kernel/events/ring_buffer.c                               |    5 
 kernel/kallsyms.c                                         |    2 
 kernel/kprobes.c                                          |    4 
 kernel/time/hrtimer.c                                     |   33 -
 kernel/trace/ring_buffer.c                                |   19 -
 kernel/trace/trace.c                                      |  177 ++++------
 mm/filemap.c                                              |    2 
 net/core/drop_monitor.c                                   |    4 
 net/core/filter.c                                         |   19 +
 net/core/scm.c                                            |    6 
 net/ipv4/ip_gre.c                                         |   11 
 net/ipv4/tcp_input.c                                      |    6 
 net/ipv6/ip6_fib.c                                        |    6 
 net/netfilter/ipset/ip_set_core.c                         |   14 
 net/netfilter/nf_tables_api.c                             |    5 
 net/netfilter/nft_dynset.c                                |   13 
 net/netfilter/nft_set_pipapo.c                            |    3 
 net/netfilter/xt_owner.c                                  |   16 
 net/netlink/genetlink.c                                   |    3 
 net/packet/af_packet.c                                    |   16 
 net/packet/internal.h                                     |    2 
 net/psample/psample.c                                     |    3 
 scripts/checkstack.pl                                     |    8 
 scripts/kconfig/symbol.c                                  |   14 
 sound/core/pcm.c                                          |    1 
 sound/pci/hda/patch_realtek.c                             |    1 
 sound/soc/codecs/wm_adsp.c                                |    8 
 sound/usb/mixer_quirks.c                                  |   30 +
 tools/include/uapi/linux/perf_event.h                     |    5 
 147 files changed, 1539 insertions(+), 1045 deletions(-)

Akira Yokosawa (1):
docs/process/howto: Replace C89 with C11

Alex Bee (1):
arm64: dts: rockchip: Expand reg size of vdec node for RK3399

Alex Pakhunov (2):
tg3: Move the [rt]x_dropped counters to tg3_napi
tg3: Increment tx_dropped in tg3_tso_bug()

AngeloGioacchino Del Regno (3):
arm64: dts: mediatek: mt8173-evb: Fix regulator-fixed node names
arm64: dts: mediatek: mt8183: Fix unit address for scp reserved memory
arm64: dts: mediatek: mt8183: Move thermal-zones to the root node

Armin Wolf (2):
platform/x86: wmi: Skip blocks with zero instances
hwmon: (acpi_power_meter) Fix 4.29 MW bug

Arnd Bergmann (1):
ARM: PL011: Fix DMA support

Bin Li (1):
ALSA: hda/realtek: Enable headset on Lenovo M90 Gen5

Boerge Struempfel (1):
gpiolib: sysfs: Fix error handling on failed export

Borislav Petkov (AMD) (1):
x86/CPU/AMD: Check vendor in the AMD microcode callback

Brett Creeley (1):
ionic: Fix dim work handling in split interrupt mode

Cameron Williams (1):
parport: Add support for Brainboxes IX/UC/PX parallel cards

Carlos Llamas (1):
binder: fix memory leaks of spam and pending work

Christophe JAILLET (1):
hwmon: (nzxt-kraken2) Fix error handling path in kraken2_probe()

ChunHao Lin (1):
r8169: fix rtl8125b PAUSE frames blasting when suspended

Claudio Imbrenda (1):
KVM: s390/mm: Properly reset no-dat

Clément Léger (1):
riscv: fix misaligned access handling of C.SWSP and C.SDSP

Daniel Borkmann (1):
packet: Move reference count in packet_sock to atomic_long_t

Daniel Mack (1):
serial: sc16is7xx: address RX timeout interrupt errata

David Howells (1):
cifs: Fix non-availability of dedup breaking generic/304

David Thompson (1):
mlxbf-bootctl: correctly identify secure boot with development keys

Dinghao Liu (3):
net: bnxt: fix a potential use-after-free in bnxt_init_tc
ASoC: wm_adsp: fix memleak in wm_adsp_buffer_populate
scsi: be2iscsi: Fix a memleak in beiscsi_init_wrb_handle()

Douglas Anderson (5):

      r8152: Rename RTL8152_UNPLUG to RTL8152_INACCESSIBLE
      r8152: Add RTL8152_INACCESSIBLE checks to more loops
      r8152: Add RTL8152_INACCESSIBLE to r8156b_wait_loading_flash()
      r8152: Add RTL8152_INACCESSIBLE to r8153_pre_firmware_1()
      r8152: Add RTL8152_INACCESSIBLE to r8153_aldps_en()

Eric Dumazet (2):
ipv6: fix potential NULL deref in fib6_add()
tcp: do not accept ACK of bytes we never sent

Eugen Hristev (2):
arm64: dts: mediatek: mt7622: fix memory node warning check
arm64: dts: mediatek: mt8183-kukui-jacuzzi: fix dsi unnecessary cells properties

Fabio Estevam (2):
ARM: dts: imx6ul-pico: Describe the Ethernet PHY clock
ARM: dts: imx28-xea: Pass the 'model' property

Florian Westphal (1):
netfilter: nft_set_pipapo: skip inactive elements during set walk

Francesco Dolcini (1):
platform/surface: aggregator: fix recv_buf() return value

Georg Gottleuber (1):
nvme-pci: Add sleep quirk for Kingston drives

Greg Kroah-Hartman (2):
Revert "btrfs: add dmesg output for first mount and last unmount of a filesystem" Linux 5.15.143

Hans de Goede (4):
platform/x86: asus-wmi: Simplify tablet-mode-switch probing platform/x86: asus-wmi: Simplify tablet-mode-switch handling platform/x86: asus-wmi: Move i8042 filter install to shared asus-wmi code platform/x86: asus-wmi: Fix kbd_dock_devid tablet-switch reporting

Heiko Carstens (1):
checkstack: fix printed address

Hsin-Yi Wang (1):
arm64: dts: mt8183: kukui: Fix underscores in node names

Hugh Dickins (1):
mm: fix oops when filemap_map_pmd() without prealloc_pte

Ido Schimmel (2):
psample: Require 'CAP_NET_ADMIN' when joining "packets" group
drop_monitor: Require 'CAP_SYS_ADMIN' when joining "events" group

Ivan Vecera (1):
i40e: Fix unexpected MFS warning message

JP Kobryn (1):
kprobes: consistent rcu api usage for kretprobe holder

Jack Wang (4):
RDMA/rtrs-srv: Do not unconditionally enable irq RDMA/rtrs-clt: Start hb after path_up RDMA/rtrs-clt: Fix the max_send_wr setting RDMA/rtrs-clt: Remove the warnings for req in_use check

Jakub Kicinski (1):
net: add missing kdoc for struct genl_multicast_group::flags

Jan Bottorff (1):
i2c: designware: Fix corrupted memory seen in the ISR

Jason Zhang (1):
ALSA: pcm: fix out-of-bounds in snd_pcm_state_names

Jianheng Zhang (1):
net: stmmac: fix FPE events losing

Jiaxun Yang (2):
MIPS: Loongson64: Reserve vgabios memory on boot
MIPS: Loongson64: Enable DMA noncoherent support

Jiri Olsa (1):
kallsyms: Make kallsyms_on_each_symbol generally available

John Fastabend (1):
bpf: sockmap, updating the sg structure should also update curr

Jozsef Kadlecsik (1):
netfilter: ipset: fix race condition between swap/destroy and kernel side add/del/test

Junxian Huang (1):
RDMA/hns: Fix unnecessary err return when using invalid congest control algorithm

Kalesh AP (1):
RDMA/bnxt_re: Correct module description string

Konstantin Aladyshev (1):
usb: gadget: f_hid: fix report descriptor allocation

Krzysztof Kozlowski (2):
arm64: dts: mediatek: align thermal zone node names with dtschema
arm64: dts: mediatek: add missing space before {

Kunwu Chan (3):
platform/mellanox: Add null pointer checks for devm_kasprintf() platform/mellanox: Check devm_hwmon_device_register_with_groups() return value
ARM: imx: Check return value of devm_kasprintf in imx_mmdc_perf_init

Luca Ceresoli (1):
of: dynamic: Fix of_reconfig_get_state_change() return value documentation

Luke D. Jones (2):
platform/x86: asus-wmi: Adjust tablet/lidflip handling to use enum platform/x86: asus-wmi: Add support for ROG X13 tablet mode

Mario Limonciello (1):
platform/x86: wmi: Allow duplicate GUIDs for drivers that use struct wmi_driver

Masahiro Yamada (1):
kconfig: fix memory leak from range properties

Mathias Nyman (1):
Revert "xhci: Loosen RPM as default policy to cover for AMD xHC 1.1"

Matthias Reichl (1):
regmap: fix bogus error on regcache_sync success

Md Haris Iqbal (3):
RDMA/rtrs-srv: Check return values while processing info request RDMA/rtrs-srv: Free srv_mr iu only when always_invalidate is true RDMA/rtrs-srv: Destroy path files after making sure no IOs in-flight

Mike Marciniszyn (1):
RDMA/core: Fix umem iterator when PAGE_SIZE is greater then HCA pgsz

Mukesh Ojha (2):
devcoredump : Serialize devcd_del work
devcoredump: Send uevent once devcd is ready

Mustafa Ismail (2):
RDMA/irdma: Do not modify to SQD on error
RDMA/irdma: Add wait for suspend on SQD

Namhyung Kim (2):
tools headers UAPI: Sync linux/perf_event.h with the kernel sources perf/core: Add a new read format to get a number of lost samples

Nathan Rossi (1):
arm64: dts: imx8mp: imx8mq: Add parkmode-disable-ss-quirk on DWC3

Pablo Neira Ayuso (2):
netfilter: nf_tables: bail out on mismatching dynset and set expressions
netfilter: nf_tables: validate family when identifying table via handle

Paulo Alcantara (1):
smb: client: fix potential NULL deref in parse_dfs_referrals()

Pavel Begunkov (2):
io_uring: fix mutex_unlock with unreferenced ctx io_uring/af_unix: disable sending io_uring over sockets

Peng Fan (1):
arm64: dts: imx8mq: drop usb3-resume-missing-cas from usb

Peter Zijlstra (1):
perf: Fix perf_event_validate_size()

Petr Pavlu (3):
tracing: Fix a warning when allocating buffered events fails
tracing: Fix incomplete locking when disabling buffered events
tracing: Fix a possible race when disabling buffered events

Phil Sutter (1):

      netfilter: xt_owner: Fix for unsafe access of sk->sk_socket

Philipp Zabel (1):
ARM: dts: imx7: Declare timers compatible with fsl,imx6dl-gpt

Prike Liang (1):
drm/amdgpu: correct the amdgpu runtime dereference usage count

RD Babiera (1):
usb: typec: class: fix typec_altmode_put_partner to put plugs

Rahul Bhansali (1):
octeontx2-af: Update Tx link register range

Randy Dunlap (1):
hv_netvsc: rndis_filter needs to select NLS

Ronald Wahl (3):
serial: 8250: 8250_omap: Clear UART_HAS_RHR_IT_DIS bit
serial: 8250: 8250_omap: Do not start RX DMA on THRI interrupt
serial: 8250_omap: Add earlycon support for the AM654 UART controller

Ryusuke Konishi (2):
nilfs2: fix missing error check for sb_set_blocksize call
nilfs2: prevent WARNING in nilfs_sufile_set_segment_usage()

Sarah Grant (1):
ALSA: usb-audio: Add Pioneer DJM-450 mixer controls

Sean Christopherson (1):
KVM: SVM: Update EFER software model on CR0 trap for SEV-ES

Shannon Nelson (1):
ionic: fix snprintf format length warning

Shifeng Li (1):
RDMA/irdma: Avoid free the non-cqp_request scratch

Shigeru Yoshida (1):
ipv4: ip_gre: Avoid skb_pull() failure in ipgre_xmit()

Srinivasan Shanmugam (1):
drm/amd/amdgpu: Fix warnings in amdgpu/amdgpu_display.c

Steve Sistare (1):
vdpa/mlx5: preserve CVQ vringh index

Steven Rostedt (Google) (4):
tracing: Always update snapshot buffer size
tracing: Disable snapshot buffer when stopping instance tracers
ring-buffer: Force absolute timestamp on discard of event
tracing: Stop current tracer when resizing buffer

Su Hui (2):
misc: mei: client.c: return negative error code in mei_cl_write
misc: mei: client.c: fix problem of return '-EOVERFLOW' in mei_cl_write

Subbaraya Sundeep (2):
octeontx2-pf: Add missing mutex lock in otx2_get_pauseparam
octeontx2-af: Check return value of nix_get_nixlf before using nixlf

Sumit Garg (1):
tee: optee: Fix supplicant based device enumeration

Thomas Gleixner (1):
hrtimers: Push pending hrtimers away from outgoing CPU earlier

Thomas Reichinger (1):
arcnet: restoring support for multiple Sohard Arcnet cards

Uwe Kleine-König (2):
coresight: etm4x: Make etm4_remove_dev() return void
coresight: etm4x: Remove bogous __exit annotation for some functions

Ye Bin (1):
md: introduce md_ro_state

Yonglong Liu (1):
net: hns: fix fake link up on xge port

Yu Kuai (1):
md: don't leave 'MD_RECOVERY_FROZEN' in error path of md_set_readonly()

YuanShang (1):
drm/amdgpu: correct chunk_ptr to a pointer to chunk.

Zheng Yejian (1):
tracing: Set actual size after ring buffer resize

Zhipeng Lu (1):
octeontx2-af: fix a use-after-free in rvu_npa_register_reporters

author maintainer
#1 lore raw
Documentation/ABI/testing/sysfs-bus-optee-devices +9 -0
index 0f58701367b6..af31e5a22d89 100644
@@ -6,3 +6,12 @@ Description:
 		OP-TEE bus provides reference to registered drivers under this directory. The <uuid>
 		matches Trusted Application (TA) driver and corresponding TA in secure OS. Drivers
 		are free to create needed API under optee-ta-<uuid> directory.
+
+What:		/sys/bus/tee/devices/optee-ta-<uuid>/need_supplicant
+Date:		November 2023
+KernelVersion:	6.7
+Contact:	[email protected]
+Description:
+		Allows to distinguish whether an OP-TEE based TA/device requires user-space
+		tee-supplicant to function properly or not. This attribute will be present for
+		devices which depend on tee-supplicant to be running.
Documentation/process/howto.rst +1 -1
index e4beeca57e5f..12a4e7ebcbab 100644
@@ -36,7 +36,7 @@ experience, the following books are good for, if anything, reference:
  - "C:  A Reference Manual" by Harbison and Steele [Prentice Hall]
 
 The kernel is written using GNU C and the GNU toolchain.  While it
-adheres to the ISO C89 standard, it uses a number of extensions that are
+adheres to the ISO C11 standard, it uses a number of extensions that are
 not featured in the standard.  The kernel is a freestanding C
 environment, with no reliance on the standard C library, so some
 portions of the C standard are not supported.  Arbitrary long long
Documentation/translations/it_IT/process/howto.rst +1 -1
index 9554368a2ae2..d02df35d0f6b 100644
@@ -44,7 +44,7 @@ altro, utili riferimenti:
 - "C:  A Reference Manual" di Harbison and Steele [Prentice Hall]
 
 Il kernel è stato scritto usando GNU C e la toolchain GNU.
-Sebbene si attenga allo standard ISO C89, esso utilizza una serie di
+Sebbene si attenga allo standard ISO C11, esso utilizza una serie di
 estensioni che non sono previste in questo standard. Il kernel è un
 ambiente C indipendente, che non ha alcuna dipendenza dalle librerie
 C standard, così alcune parti del C standard non sono supportate.
Documentation/translations/ja_JP/howto.rst +1 -1
index d667f9d8a02a..6a00e43868a2 100644
@@ -65,7 +65,7 @@ Linux カーネル開発のやり方
  - 『新・詳説 C 言語 H&S リファレンス』 (サミュエル P ハービソン/ガイ L スティール共著 斉藤 信男監訳)[ソフトバンク]
 
 カーネルは GNU C と GNU ツールチェインを使って書かれています。カーネル
-は ISO C89 仕様に準拠して書く一方で、標準には無い言語拡張を多く使って
+は ISO C11 仕様に準拠して書く一方で、標準には無い言語拡張を多く使って
 います。カーネルは標準 C ライブラリに依存しない、C 言語非依存環境です。
 そのため、C の標準の中で使えないものもあります。特に任意の long long
 の除算や浮動小数点は使えません。カーネルがツールチェインや C 言語拡張
Documentation/translations/ko_KR/howto.rst +1 -1
index e3cdf0c84892..a787d31dcdbf 100644
@@ -62,7 +62,7 @@ Documentation/process/howto.rst
  - "Practical C Programming" by Steve Oualline [O'Reilly]
  - "C:  A Reference Manual" by Harbison and Steele [Prentice Hall]
 
-커널은 GNU C와 GNU 툴체인을 사용하여 작성되었다. 이 툴들은 ISO C89 표준을
+커널은 GNU C와 GNU 툴체인을 사용하여 작성되었다. 이 툴들은 ISO C11 표준을
 따르는 반면 표준에 있지 않은 많은 확장기능도 가지고 있다. 커널은 표준 C
 라이브러리와는 관계없이 freestanding C 환경이어서 C 표준의 일부는
 지원되지 않는다. 임의의 long long 나누기나 floating point는 지원되지 않는다.
Documentation/translations/zh_CN/process/howto.rst +1 -1
index ee3dee476d57..2a910e3e904e 100644
@@ -45,7 +45,7 @@ Linux内核大部分是由C语言写成的,一些体系结构相关的代码
  - "C:  A Reference Manual" by Harbison and Steele [Prentice Hall]
    《C语言参考手册(原书第5版)》(邱仲潘 等译)[机械工业出版社]
 
-Linux内核使用GNU C和GNU工具链开发。虽然它遵循ISO C89标准,但也用到了一些
+Linux内核使用GNU C和GNU工具链开发。虽然它遵循ISO C11标准,但也用到了一些
 标准中没有定义的扩展。内核是自给自足的C环境,不依赖于标准C库的支持,所以
 并不支持C标准中的部分定义。比如long long类型的大数除法和浮点运算就不允许
 使用。有时候确实很难弄清楚内核对工具链的要求和它所使用的扩展,不幸的是目
Documentation/translations/zh_TW/process/howto.rst +1 -1
index 2043691b92e3..ce14d4ed5c5b 100644
@@ -48,7 +48,7 @@ Linux內核大部分是由C語言寫成的,一些體系結構相關的代碼
  - "C:  A Reference Manual" by Harbison and Steele [Prentice Hall]
    《C語言參考手冊(原書第5版)》(邱仲潘 等譯)[機械工業出版社]
 
-Linux內核使用GNU C和GNU工具鏈開發。雖然它遵循ISO C89標準,但也用到了一些
+Linux內核使用GNU C和GNU工具鏈開發。雖然它遵循ISO C11標準,但也用到了一些
 標準中沒有定義的擴展。內核是自給自足的C環境,不依賴於標準C庫的支持,所以
 並不支持C標準中的部分定義。比如long long類型的大數除法和浮點運算就不允許
 使用。有時候確實很難弄清楚內核對工具鏈的要求和它所使用的擴展,不幸的是目
Makefile +1 -1
index 678e712591f8..3e6550575904 100644
@@ -1,7 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0
 VERSION = 5
 PATCHLEVEL = 15
-SUBLEVEL = 142
+SUBLEVEL = 143
 EXTRAVERSION =
 NAME = Trick or Treat
 
arch/arm/boot/dts/imx28-xea.dts +1 -0
index a400c108f66a..6c5e6856648a 100644
@@ -8,6 +8,7 @@
 #include "imx28-lwe.dtsi"
 
 / {
+	model = "Liebherr XEA board";
 	compatible = "lwn,imx28-xea", "fsl,imx28";
 };
 
arch/arm/boot/dts/imx6ul-pico.dtsi +2 -0
index 357ffb2f5ad6..dd6790852b0d 100644
@@ -121,6 +121,8 @@ ethphy1: ethernet-phy@1 {
 			max-speed = <100>;
 			interrupt-parent = <&gpio5>;
 			interrupts = <6 IRQ_TYPE_LEVEL_LOW>;
+			clocks = <&clks IMX6UL_CLK_ENET_REF>;
+			clock-names = "rmii-ref";
 		};
 	};
 };
arch/arm/boot/dts/imx7s.dtsi +4 -4
index c978aab1d0e3..406e8870c680 100644
@@ -438,7 +438,7 @@ iomuxc_lpsr: iomuxc-lpsr@302c0000 {
 			};
 
 			gpt1: timer@302d0000 {
-				compatible = "fsl,imx7d-gpt", "fsl,imx6sx-gpt";
+				compatible = "fsl,imx7d-gpt", "fsl,imx6dl-gpt";
 				reg = <0x302d0000 0x10000>;
 				interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
 				clocks = <&clks IMX7D_GPT1_ROOT_CLK>,
@@ -447,7 +447,7 @@ gpt1: timer@302d0000 {
 			};
 
 			gpt2: timer@302e0000 {
-				compatible = "fsl,imx7d-gpt", "fsl,imx6sx-gpt";
+				compatible = "fsl,imx7d-gpt", "fsl,imx6dl-gpt";
 				reg = <0x302e0000 0x10000>;
 				interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
 				clocks = <&clks IMX7D_GPT2_ROOT_CLK>,
@@ -457,7 +457,7 @@ gpt2: timer@302e0000 {
 			};
 
 			gpt3: timer@302f0000 {
-				compatible = "fsl,imx7d-gpt", "fsl,imx6sx-gpt";
+				compatible = "fsl,imx7d-gpt", "fsl,imx6dl-gpt";
 				reg = <0x302f0000 0x10000>;
 				interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
 				clocks = <&clks IMX7D_GPT3_ROOT_CLK>,
@@ -467,7 +467,7 @@ gpt3: timer@302f0000 {
 			};
 
 			gpt4: timer@30300000 {
-				compatible = "fsl,imx7d-gpt", "fsl,imx6sx-gpt";
+				compatible = "fsl,imx7d-gpt", "fsl,imx6dl-gpt";
 				reg = <0x30300000 0x10000>;
 				interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
 				clocks = <&clks IMX7D_GPT4_ROOT_CLK>,
arch/arm/mach-imx/mmdc.c +6 -1
index b9efe9da06e0..3d76e8c28c51 100644
@@ -502,6 +502,10 @@ static int imx_mmdc_perf_init(struct platform_device *pdev, void __iomem *mmdc_b
 
 	name = devm_kasprintf(&pdev->dev,
 				GFP_KERNEL, "mmdc%d", ret);
+	if (!name) {
+		ret = -ENOMEM;
+		goto pmu_release_id;
+	}
 
 	pmu_mmdc->mmdc_ipg_clk = mmdc_ipg_clk;
 	pmu_mmdc->devtype_data = (struct fsl_mmdc_devtype_data *)of_id->data;
@@ -524,9 +528,10 @@ static int imx_mmdc_perf_init(struct platform_device *pdev, void __iomem *mmdc_b
 
 pmu_register_err:
 	pr_warn("MMDC Perf PMU failed (%d), disabled\n", ret);
-	ida_simple_remove(&mmdc_ida, pmu_mmdc->id);
 	cpuhp_state_remove_instance_nocalls(cpuhp_mmdc_state, &pmu_mmdc->node);
 	hrtimer_cancel(&pmu_mmdc->hrtimer);
+pmu_release_id:
+	ida_simple_remove(&mmdc_ida, pmu_mmdc->id);
 pmu_free:
 	kfree(pmu_mmdc);
 	return ret;
arch/arm64/boot/dts/freescale/imx8mp.dtsi +2 -0
index ab670b5d641b..4e8cde8972e8 100644
@@ -913,6 +913,7 @@ usb_dwc3_0: usb@38100000 {
 				phys = <&usb3_phy0>, <&usb3_phy0>;
 				phy-names = "usb2-phy", "usb3-phy";
 				snps,gfladj-refclk-lpm-sel-quirk;
+				snps,parkmode-disable-ss-quirk;
 			};
 
 		};
@@ -954,6 +955,7 @@ usb_dwc3_1: usb@38200000 {
 				phys = <&usb3_phy1>, <&usb3_phy1>;
 				phy-names = "usb2-phy", "usb3-phy";
 				snps,gfladj-refclk-lpm-sel-quirk;
+				snps,parkmode-disable-ss-quirk;
 			};
 		};
 
arch/arm64/boot/dts/freescale/imx8mq.dtsi +2 -2
index 2a698c5b87bc..e41e1c553bd3 100644
@@ -1382,7 +1382,7 @@ usb_dwc3_0: usb@38100000 {
 			phys = <&usb3_phy0>, <&usb3_phy0>;
 			phy-names = "usb2-phy", "usb3-phy";
 			power-domains = <&pgc_otg1>;
-			usb3-resume-missing-cas;
+			snps,parkmode-disable-ss-quirk;
 			status = "disabled";
 		};
 
@@ -1414,7 +1414,7 @@ usb_dwc3_1: usb@38200000 {
 			phys = <&usb3_phy1>, <&usb3_phy1>;
 			phy-names = "usb2-phy", "usb3-phy";
 			power-domains = <&pgc_otg2>;
-			usb3-resume-missing-cas;
+			snps,parkmode-disable-ss-quirk;
 			status = "disabled";
 		};
 
arch/arm64/boot/dts/mediatek/mt7622-bananapi-bpi-r64.dts +1 -1
index 6b99d903b479..cdbd70bf5dd9 100644
@@ -69,7 +69,7 @@ red {
 		};
 	};
 
-	memory {
+	memory@40000000 {
 		reg = <0 0x40000000 0 0x40000000>;
 	};
 
arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts +1 -1
index f2dc850010f1..ee454a26b459 100644
@@ -55,7 +55,7 @@ wps {
 		};
 	};
 
-	memory {
+	memory@40000000 {
 		reg = <0 0x40000000 0 0x20000000>;
 	};
 
arch/arm64/boot/dts/mediatek/mt8173-evb.dts +2 -2
index 4fa1e93302c7..4e0c3aa264a5 100644
@@ -43,7 +43,7 @@ extcon_usb: extcon_iddig {
 		id-gpio = <&pio 16 GPIO_ACTIVE_HIGH>;
 	};
 
-	usb_p1_vbus: regulator@0 {
+	usb_p1_vbus: regulator-usb-p1 {
 		compatible = "regulator-fixed";
 		regulator-name = "usb_vbus";
 		regulator-min-microvolt = <5000000>;
@@ -52,7 +52,7 @@ usb_p1_vbus: regulator@0 {
 		enable-active-high;
 	};
 
-	usb_p0_vbus: regulator@1 {
+	usb_p0_vbus: regulator-usb-p0 {
 		compatible = "regulator-fixed";
 		regulator-name = "vbus";
 		regulator-min-microvolt = <5000000>;
arch/arm64/boot/dts/mediatek/mt8173.dtsi +1 -1
index d9e005ae5bb0..c71a5155702d 100644
@@ -273,7 +273,7 @@ cpum_ck: oscillator2 {
 	};
 
 	thermal-zones {
-		cpu_thermal: cpu_thermal {
+		cpu_thermal: cpu-thermal {
 			polling-delay-passive = <1000>; /* milliseconds */
 			polling-delay = <1000>; /* milliseconds */
 
arch/arm64/boot/dts/mediatek/mt8183-evb.dts +25 -25

128 lines not on this page · raw message

arch/arm64/boot/dts/mediatek/mt8183-kukui-jacuzzi.dtsi +5 -3
index d8826c82bcda..c1153580ef95 100644
@@ -102,6 +102,8 @@ cros_ec_pwm: ec-pwm {
 
 &dsi0 {
 	status = "okay";
+	/delete-property/#size-cells;
+	/delete-property/#address-cells;
 	/delete-node/panel@0;
 	ports {
 		port {
@@ -438,20 +440,20 @@ pins2 {
 	};
 
 	touchscreen_pins: touchscreen-pins {
-		touch_int_odl {
+		touch-int-odl {
 			pinmux = <PINMUX_GPIO155__FUNC_GPIO155>;
 			input-enable;
 			bias-pull-up;
 		};
 
-		touch_rst_l {
+		touch-rst-l {
 			pinmux = <PINMUX_GPIO156__FUNC_GPIO156>;
 			output-high;
 		};
 	};
 
 	trackpad_pins: trackpad-pins {
-		trackpad_int {
+		trackpad-int {
 			pinmux = <PINMUX_GPIO7__FUNC_GPIO7>;
 			input-enable;
 			bias-disable; /* pulled externally */
arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi +45 -45

328 lines not on this page · raw message

arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dts +6 -6
index ee912825cfc6..b7f3c266d3dd 100644
@@ -165,7 +165,7 @@ &mmc1 {
 
 &pio {
 	i2c_pins_0: i2c0 {
-		pins_i2c{
+		pins_i2c {
 			pinmux = <PINMUX_GPIO82__FUNC_SDA0>,
 				 <PINMUX_GPIO83__FUNC_SCL0>;
 			mediatek,pull-up-adv = <3>;
@@ -174,7 +174,7 @@ pins_i2c{
 	};
 
 	i2c_pins_1: i2c1 {
-		pins_i2c{
+		pins_i2c {
 			pinmux = <PINMUX_GPIO81__FUNC_SDA1>,
 				 <PINMUX_GPIO84__FUNC_SCL1>;
 			mediatek,pull-up-adv = <3>;
@@ -183,7 +183,7 @@ pins_i2c{
 	};
 
 	i2c_pins_2: i2c2 {
-		pins_i2c{
+		pins_i2c {
 			pinmux = <PINMUX_GPIO103__FUNC_SCL2>,
 				 <PINMUX_GPIO104__FUNC_SDA2>;
 			mediatek,pull-up-adv = <3>;
@@ -192,7 +192,7 @@ pins_i2c{
 	};
 
 	i2c_pins_3: i2c3 {
-		pins_i2c{
+		pins_i2c {
 			pinmux = <PINMUX_GPIO50__FUNC_SCL3>,
 				 <PINMUX_GPIO51__FUNC_SDA3>;
 			mediatek,pull-up-adv = <3>;
@@ -201,7 +201,7 @@ pins_i2c{
 	};
 
 	i2c_pins_4: i2c4 {
-		pins_i2c{
+		pins_i2c {
 			pinmux = <PINMUX_GPIO105__FUNC_SCL4>,
 				 <PINMUX_GPIO106__FUNC_SDA4>;
 			mediatek,pull-up-adv = <3>;
@@ -210,7 +210,7 @@ pins_i2c{
 	};
 
 	i2c_pins_5: i2c5 {
-		pins_i2c{
+		pins_i2c {
 			pinmux = <PINMUX_GPIO48__FUNC_SCL5>,
 				 <PINMUX_GPIO49__FUNC_SDA5>;
 			mediatek,pull-up-adv = <3>;
arch/arm64/boot/dts/mediatek/mt8183.dtsi +121 -121

252 lines not on this page · raw message

arch/arm64/boot/dts/rockchip/rk3399.dtsi +4 -2
index 4255e2d7a72f..9e33f0e6ed50 100644
@@ -993,7 +993,9 @@ power-domain@RK3399_PD_VCODEC {
 			power-domain@RK3399_PD_VDU {
 				reg = <RK3399_PD_VDU>;
 				clocks = <&cru ACLK_VDU>,
-					 <&cru HCLK_VDU>;
+					 <&cru HCLK_VDU>,
+					 <&cru SCLK_VDU_CA>,
+					 <&cru SCLK_VDU_CORE>;
 				pm_qos = <&qos_video_m1_r>,
 					 <&qos_video_m1_w>;
 				#power-domain-cells = <0>;
@@ -1260,7 +1262,7 @@ vpu_mmu: iommu@ff650800 {
 
 	vdec: video-codec@ff660000 {
 		compatible = "rockchip,rk3399-vdec";
-		reg = <0x0 0xff660000 0x0 0x400>;
+		reg = <0x0 0xff660000 0x0 0x480>;
 		interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH 0>;
 		clocks = <&cru ACLK_VDU>, <&cru HCLK_VDU>,
 			 <&cru SCLK_VDU_CA>, <&cru SCLK_VDU_CORE>;
arch/mips/Kconfig +2 -0
index 13b09c7516e9..b2869b606fd8 100644
@@ -480,6 +480,7 @@ config MACH_LOONGSON2EF
 
 config MACH_LOONGSON64
 	bool "Loongson 64-bit family of machines"
+	select ARCH_DMA_DEFAULT_COHERENT
 	select ARCH_SPARSEMEM_ENABLE
 	select ARCH_MIGHT_HAVE_PC_PARPORT
 	select ARCH_MIGHT_HAVE_PC_SERIO
@@ -1379,6 +1380,7 @@ config CPU_LOONGSON64
 	select CPU_SUPPORTS_MSA
 	select CPU_DIEI_BROKEN if !LOONGSON3_ENHANCEMENT
 	select CPU_MIPSR2_IRQ_VI
+	select DMA_NONCOHERENT
 	select WEAK_ORDERING
 	select WEAK_REORDERING_BEYOND_LLSC
 	select MIPS_ASID_BITS_VARIABLE
arch/mips/include/asm/mach-loongson64/boot_param.h +2 -1
index 035b1a69e2d0..c454ef734c45 100644
@@ -117,7 +117,8 @@ struct irq_source_routing_table {
 	u64 pci_io_start_addr;
 	u64 pci_io_end_addr;
 	u64 pci_config_addr;
-	u32 dma_mask_bits;
+	u16 dma_mask_bits;
+	u16 dma_noncoherent;
 } __packed;
 
 struct interface_info {
arch/mips/loongson64/env.c +9 -1
index c961e2999f15..ef3750a6ffac 100644
@@ -13,6 +13,8 @@
  * Copyright (C) 2009 Lemote Inc.
  * Author: Wu Zhangjin, [email protected]
  */
+
+#include <linux/dma-map-ops.h>
 #include <linux/export.h>
 #include <linux/pci_ids.h>
 #include <asm/bootinfo.h>
@@ -147,8 +149,14 @@ void __init prom_lefi_init_env(void)
 
 	loongson_sysconf.dma_mask_bits = eirq_source->dma_mask_bits;
 	if (loongson_sysconf.dma_mask_bits < 32 ||
-		loongson_sysconf.dma_mask_bits > 64)
+			loongson_sysconf.dma_mask_bits > 64) {
 		loongson_sysconf.dma_mask_bits = 32;
+		dma_default_coherent = true;
+	} else {
+		dma_default_coherent = !eirq_source->dma_noncoherent;
+	}
+
+	pr_info("Firmware: Coherent DMA: %s\n", dma_default_coherent ? "on" : "off");
 
 	loongson_sysconf.restart_addr = boot_p->reset_system.ResetWarm;
 	loongson_sysconf.poweroff_addr = boot_p->reset_system.Shutdown;
arch/mips/loongson64/init.c +5 -0
index 76e0a9636a0e..c1498fdd5c79 100644
@@ -86,6 +86,11 @@ void __init szmem(unsigned int node)
 			break;
 		}
 	}
+
+	/* Reserve vgabios if it comes from firmware */
+	if (loongson_sysconf.vgabios_addr)
+		memblock_reserve(virt_to_phys((void *)loongson_sysconf.vgabios_addr),
+				SZ_256K);
 }
 
 #ifndef CONFIG_NUMA
arch/riscv/kernel/traps_misaligned.c +2 -4
index 46c4dafe3ba0..b246c3dc6993 100644
@@ -344,16 +344,14 @@ int handle_misaligned_store(struct pt_regs *regs)
 	} else if ((insn & INSN_MASK_C_SD) == INSN_MATCH_C_SD) {
 		len = 8;
 		val.data_ulong = GET_RS2S(insn, regs);
-	} else if ((insn & INSN_MASK_C_SDSP) == INSN_MATCH_C_SDSP &&
-		   ((insn >> SH_RD) & 0x1f)) {
+	} else if ((insn & INSN_MASK_C_SDSP) == INSN_MATCH_C_SDSP) {
 		len = 8;
 		val.data_ulong = GET_RS2C(insn, regs);
 #endif
 	} else if ((insn & INSN_MASK_C_SW) == INSN_MATCH_C_SW) {
 		len = 4;
 		val.data_ulong = GET_RS2S(insn, regs);
-	} else if ((insn & INSN_MASK_C_SWSP) == INSN_MATCH_C_SWSP &&
-		   ((insn >> SH_RD) & 0x1f)) {
+	} else if ((insn & INSN_MASK_C_SWSP) == INSN_MATCH_C_SWSP) {
 		len = 4;
 		val.data_ulong = GET_RS2C(insn, regs);
 	} else {
arch/s390/mm/pgtable.c +1 -1
index df0adb7e2fe8..c5ea4dedc1e1 100644
@@ -731,7 +731,7 @@ void ptep_zap_unused(struct mm_struct *mm, unsigned long addr,
 		pte_clear(mm, addr, ptep);
 	}
 	if (reset)
-		pgste_val(pgste) &= ~_PGSTE_GPS_USAGE_MASK;
+		pgste_val(pgste) &= ~(_PGSTE_GPS_USAGE_MASK | _PGSTE_GPS_NODAT);
 	pgste_set_unlock(ptep, pgste);
 	preempt_enable();
 }
arch/x86/kernel/cpu/amd.c +3 -0
index 39f038956108..dba7fe7ecea9 100644
@@ -1316,6 +1316,9 @@ static void zenbleed_check_cpu(void *unused)
 
 void amd_check_microcode(void)
 {
+	if (boot_cpu_data.x86_vendor != X86_VENDOR_AMD)
+		return;
+
 	on_each_cpu(zenbleed_check_cpu, NULL, 1);
 }
 
arch/x86/kvm/svm/svm.c +5 -3
index 8e9a6c41f9ee..059d9c255e01 100644
@@ -1750,15 +1750,17 @@ void svm_set_cr0(struct kvm_vcpu *vcpu, unsigned long cr0)
 	bool old_paging = is_paging(vcpu);
 
 #ifdef CONFIG_X86_64
-	if (vcpu->arch.efer & EFER_LME && !vcpu->arch.guest_state_protected) {
+	if (vcpu->arch.efer & EFER_LME) {
 		if (!is_paging(vcpu) && (cr0 & X86_CR0_PG)) {
 			vcpu->arch.efer |= EFER_LMA;
-			svm->vmcb->save.efer |= EFER_LMA | EFER_LME;
+			if (!vcpu->arch.guest_state_protected)
+				svm->vmcb->save.efer |= EFER_LMA | EFER_LME;
 		}
 
 		if (is_paging(vcpu) && !(cr0 & X86_CR0_PG)) {
 			vcpu->arch.efer &= ~EFER_LMA;
-			svm->vmcb->save.efer &= ~(EFER_LMA | EFER_LME);
+			if (!vcpu->arch.guest_state_protected)
+				svm->vmcb->save.efer &= ~(EFER_LMA | EFER_LME);
 		}
 	}
 #endif
drivers/android/binder.c +1 -0
index cbbed43baf05..b63322e7e101 100644
@@ -4620,6 +4620,7 @@ static void binder_release_work(struct binder_proc *proc,
 				"undelivered TRANSACTION_ERROR: %u\n",
 				e->cmd);
 		} break;
+		case BINDER_WORK_TRANSACTION_ONEWAY_SPAM_SUSPECT:
 		case BINDER_WORK_TRANSACTION_COMPLETE: {
 			binder_debug(BINDER_DEBUG_DEAD_TRANSACTION,
 				"undelivered TRANSACTION_COMPLETE\n");
drivers/base/devcoredump.c +84 -2

135 lines not on this page · raw message

drivers/base/regmap/regcache.c +1 -2
index b04e8c90aca2..aff2cd48305f 100644
@@ -404,8 +404,7 @@ int regcache_sync(struct regmap *map)
 			rb_entry(node, struct regmap_range_node, node);
 
 		/* If there's nothing in the cache there's nothing to sync */
-		ret = regcache_read(map, this->selector_reg, &i);
-		if (ret != 0)
+		if (regcache_read(map, this->selector_reg, &i) != 0)
 			continue;
 
 		ret = _regmap_write(map, this->selector_reg, i);
drivers/gpio/gpiolib-sysfs.c +9 -6
index 44c1ad51b3fe..95bd1a4a08d1 100644
@@ -480,14 +480,17 @@ static ssize_t export_store(struct class *class,
 		goto done;
 
 	status = gpiod_set_transitory(desc, false);
-	if (!status) {
-		status = gpiod_export(desc, true);
-		if (status < 0)
-			gpiod_free(desc);
-		else
-			set_bit(FLAG_SYSFS, &desc->flags);
+	if (status) {
+		gpiod_free(desc);
+		goto done;
 	}
 
+	status = gpiod_export(desc, true);
+	if (status < 0)
+		gpiod_free(desc);
+	else
+		set_bit(FLAG_SYSFS, &desc->flags);
+
 done:
 	if (status)
 		pr_debug("%s: status %d\n", __func__, status);
drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c +1 -1
index 2d8f71dde980..f293d0dfec61 100644
@@ -142,7 +142,7 @@ static int amdgpu_cs_parser_init(struct amdgpu_cs_parser *p, union drm_amdgpu_cs
 	}
 
 	for (i = 0; i < p->nchunks; i++) {
-		struct drm_amdgpu_cs_chunk __user **chunk_ptr = NULL;
+		struct drm_amdgpu_cs_chunk __user *chunk_ptr = NULL;
 		struct drm_amdgpu_cs_chunk user_chunk;
 		uint32_t __user *cdata;
 
drivers/gpu/drm/amd/amdgpu/amdgpu_display.c +27 -22

137 lines not on this page · raw message

drivers/hwmon/acpi_power_meter.c +4 -0
index 014505b1faf7..1336f7710617 100644
@@ -31,6 +31,7 @@
 #define POWER_METER_CAN_NOTIFY	(1 << 3)
 #define POWER_METER_IS_BATTERY	(1 << 8)
 #define UNKNOWN_HYSTERESIS	0xFFFFFFFF
+#define UNKNOWN_POWER		0xFFFFFFFF
 
 #define METER_NOTIFY_CONFIG	0x80
 #define METER_NOTIFY_TRIP	0x81
@@ -348,6 +349,9 @@ static ssize_t show_power(struct device *dev,
 	update_meter(resource);
 	mutex_unlock(&resource->lock);
 
+	if (resource->power == UNKNOWN_POWER)
+		return -ENODATA;
+
 	return sprintf(buf, "%llu\n", resource->power * 1000);
 }
 
drivers/hwmon/nzxt-kraken2.c +2 -2
index 89f7ea4f42d4..badbcaf01f90 100644
@@ -161,13 +161,13 @@ static int kraken2_probe(struct hid_device *hdev,
 	ret = hid_hw_start(hdev, HID_CONNECT_HIDRAW);
 	if (ret) {
 		hid_err(hdev, "hid hw start failed with %d\n", ret);
-		goto fail_and_stop;
+		return ret;
 	}
 
 	ret = hid_hw_open(hdev);
 	if (ret) {
 		hid_err(hdev, "hid hw open failed with %d\n", ret);
-		goto fail_and_close;
+		goto fail_and_stop;
 	}
 
 	priv->hwmon_dev = hwmon_device_register_with_info(&hdev->dev, "kraken2",
drivers/hwtracing/coresight/coresight-etm4x-core.c +5 -8
index 2b22343918d6..26d0d4485ae9 100644
@@ -2041,7 +2041,7 @@ static void clear_etmdrvdata(void *info)
 	etmdrvdata[cpu] = NULL;
 }
 
-static int __exit etm4_remove_dev(struct etmv4_drvdata *drvdata)
+static void etm4_remove_dev(struct etmv4_drvdata *drvdata)
 {
 	etm_perf_symlink(drvdata->csdev, false);
 	/*
@@ -2062,11 +2062,9 @@ static int __exit etm4_remove_dev(struct etmv4_drvdata *drvdata)
 
 	cscfg_unregister_csdev(drvdata->csdev);
 	coresight_unregister(drvdata->csdev);
-
-	return 0;
 }
 
-static void __exit etm4_remove_amba(struct amba_device *adev)
+static void etm4_remove_amba(struct amba_device *adev)
 {
 	struct etmv4_drvdata *drvdata = dev_get_drvdata(&adev->dev);
 
@@ -2074,15 +2072,14 @@ static void __exit etm4_remove_amba(struct amba_device *adev)
 		etm4_remove_dev(drvdata);
 }
 
-static int __exit etm4_remove_platform_dev(struct platform_device *pdev)
+static int etm4_remove_platform_dev(struct platform_device *pdev)
 {
-	int ret = 0;
 	struct etmv4_drvdata *drvdata = dev_get_drvdata(&pdev->dev);
 
 	if (drvdata)
-		ret = etm4_remove_dev(drvdata);
+		etm4_remove_dev(drvdata);
 	pm_runtime_disable(&pdev->dev);
-	return ret;
+	return 0;
 }
 
 static const struct amba_id etm4_ids[] = {
drivers/i2c/busses/i2c-designware-common.c +8 -8
index 4e752321b95e..cb1d8d192ac0 100644
@@ -63,7 +63,7 @@ static int dw_reg_read(void *context, unsigned int reg, unsigned int *val)
 {
 	struct dw_i2c_dev *dev = context;
 
-	*val = readl_relaxed(dev->base + reg);
+	*val = readl(dev->base + reg);
 
 	return 0;
 }
@@ -72,7 +72,7 @@ static int dw_reg_write(void *context, unsigned int reg, unsigned int val)
 {
 	struct dw_i2c_dev *dev = context;
 
-	writel_relaxed(val, dev->base + reg);
+	writel(val, dev->base + reg);
 
 	return 0;
 }
@@ -81,7 +81,7 @@ static int dw_reg_read_swab(void *context, unsigned int reg, unsigned int *val)
 {
 	struct dw_i2c_dev *dev = context;
 
-	*val = swab32(readl_relaxed(dev->base + reg));
+	*val = swab32(readl(dev->base + reg));
 
 	return 0;
 }
@@ -90,7 +90,7 @@ static int dw_reg_write_swab(void *context, unsigned int reg, unsigned int val)
 {
 	struct dw_i2c_dev *dev = context;
 
-	writel_relaxed(swab32(val), dev->base + reg);
+	writel(swab32(val), dev->base + reg);
 
 	return 0;
 }
@@ -99,8 +99,8 @@ static int dw_reg_read_word(void *context, unsigned int reg, unsigned int *val)
 {
 	struct dw_i2c_dev *dev = context;
 
-	*val = readw_relaxed(dev->base + reg) |
-		(readw_relaxed(dev->base + reg + 2) << 16);
+	*val = readw(dev->base + reg) |
+		(readw(dev->base + reg + 2) << 16);
 
 	return 0;
 }
@@ -109,8 +109,8 @@ static int dw_reg_write_word(void *context, unsigned int reg, unsigned int val)
 {
 	struct dw_i2c_dev *dev = context;
 
-	writew_relaxed(val, dev->base + reg);
-	writew_relaxed(val >> 16, dev->base + reg + 2);
+	writew(val, dev->base + reg);
+	writew(val >> 16, dev->base + reg + 2);
 
 	return 0;
 }
drivers/infiniband/core/umem.c +0 -6
index 957634eceba8..8ce569bf7525 100644
@@ -96,12 +96,6 @@ unsigned long ib_umem_find_best_pgsz(struct ib_umem *umem,
 		return page_size;
 	}
 
-	/* rdma_for_each_block() has a bug if the page size is smaller than the
-	 * page size used to build the umem. For now prevent smaller page sizes
-	 * from being returned.
-	 */
-	pgsz_bitmap &= GENMASK(BITS_PER_LONG - 1, PAGE_SHIFT);
-
 	/* The best result is the smallest page size that results in the minimum
 	 * number of required pages. Compute the largest page size that could
 	 * work based on VA address bits that don't change.
drivers/infiniband/hw/bnxt_re/main.c +1 -1
index 7b85eef113fc..c7ea2eedd60c 100644
@@ -70,7 +70,7 @@ static char version[] =
 		BNXT_RE_DESC "\n";
 
 MODULE_AUTHOR("Eddie Wai <[email protected]>");
-MODULE_DESCRIPTION(BNXT_RE_DESC " Driver");
+MODULE_DESCRIPTION(BNXT_RE_DESC);
 MODULE_LICENSE("Dual BSD/GPL");
 
 /* globals */
drivers/infiniband/hw/hns/hns_roce_hw_v2.c +9 -4
index f034021f3adc..6d8f3aa9d6aa 100644
@@ -4586,10 +4586,15 @@ static int check_cong_type(struct ib_qp *ibqp,
 		cong_alg->wnd_mode_sel = WND_LIMIT;
 		break;
 	default:
-		ibdev_err(&hr_dev->ib_dev,
-			  "error type(%u) for congestion selection.\n",
-			  hr_dev->caps.cong_type);
-		return -EINVAL;
+		ibdev_warn(&hr_dev->ib_dev,
+			   "invalid type(%u) for congestion selection.\n",
+			   hr_dev->caps.cong_type);
+		hr_dev->caps.cong_type = CONG_TYPE_DCQCN;
+		cong_alg->alg_sel = CONG_DCQCN;
+		cong_alg->alg_sub_sel = UNSUPPORT_CONG_LEVEL;
+		cong_alg->dip_vld = DIP_INVALID;
+		cong_alg->wnd_mode_sel = WND_LIMIT;
+		break;
 	}
 
 	return 0;
drivers/infiniband/hw/irdma/hw.c +6 -4
index 70dffa9a9f67..0359f415280c 100644
@@ -322,7 +322,11 @@ static void irdma_process_aeq(struct irdma_pci_f *rf)
 			break;
 		case IRDMA_AE_QP_SUSPEND_COMPLETE:
 			if (iwqp->iwdev->vsi.tc_change_pending) {
-				atomic_dec(&iwqp->sc_qp.vsi->qp_suspend_reqs);
+				if (!atomic_dec_return(&qp->vsi->qp_suspend_reqs))
+					wake_up(&iwqp->iwdev->suspend_wq);
+			}
+			if (iwqp->suspend_pending) {
+				iwqp->suspend_pending = false;
 				wake_up(&iwqp->iwdev->suspend_wq);
 			}
 			break;
@@ -1165,7 +1169,6 @@ static enum irdma_status_code irdma_create_ceq(struct irdma_pci_f *rf,
 	enum irdma_status_code status;
 	struct irdma_ceq_init_info info = {};
 	struct irdma_sc_dev *dev = &rf->sc_dev;
-	u64 scratch;
 	u32 ceq_size;
 
 	info.ceq_id = ceq_id;
@@ -1186,14 +1189,13 @@ static enum irdma_status_code irdma_create_ceq(struct irdma_pci_f *rf,
 	iwceq->sc_ceq.ceq_id = ceq_id;
 	info.dev = dev;
 	info.vsi = vsi;
-	scratch = (uintptr_t)&rf->cqp.sc_cqp;
 	status = irdma_sc_ceq_init(&iwceq->sc_ceq, &info);
 	if (!status) {
 		if (dev->ceq_valid)
 			status = irdma_cqp_ceq_cmd(&rf->sc_dev, &iwceq->sc_ceq,
 						   IRDMA_OP_CEQ_CREATE);
 		else
-			status = irdma_sc_cceq_create(&iwceq->sc_ceq, scratch);
+			status = irdma_sc_cceq_create(&iwceq->sc_ceq, 0);
 	}
 
 	if (status) {
drivers/infiniband/hw/irdma/main.c +1 -1
index c556a36e7670..232db2c8b6ae 100644
@@ -48,7 +48,7 @@ static void irdma_prep_tc_change(struct irdma_device *iwdev)
 	/* Wait for all qp's to suspend */
 	wait_event_timeout(iwdev->suspend_wq,
 			   !atomic_read(&iwdev->vsi.qp_suspend_reqs),
-			   IRDMA_EVENT_TIMEOUT);
+			   msecs_to_jiffies(IRDMA_EVENT_TIMEOUT_MS));
 	irdma_ws_reset(&iwdev->vsi);
 }
 
drivers/infiniband/hw/irdma/main.h +1 -1
index bd13cc38e5ae..0e998e080198 100644
@@ -79,7 +79,7 @@ extern struct auxiliary_driver i40iw_auxiliary_drv;
 
 #define MAX_DPC_ITERATIONS	128
 
-#define IRDMA_EVENT_TIMEOUT		50000
+#define IRDMA_EVENT_TIMEOUT_MS		5000
 #define IRDMA_VCHNL_EVENT_TIMEOUT	100000
 #define IRDMA_RST_TIMEOUT_HZ		4
 
drivers/infiniband/hw/irdma/verbs.c +21 -7
index 8ccbe761b860..1af1df8a734b 100644
@@ -1082,6 +1082,21 @@ static int irdma_query_pkey(struct ib_device *ibdev, u32 port, u16 index,
 	return 0;
 }
 
+static int irdma_wait_for_suspend(struct irdma_qp *iwqp)
+{
+	if (!wait_event_timeout(iwqp->iwdev->suspend_wq,
+				!iwqp->suspend_pending,
+				msecs_to_jiffies(IRDMA_EVENT_TIMEOUT_MS))) {
+		iwqp->suspend_pending = false;
+		ibdev_warn(&iwqp->iwdev->ibdev,
+			   "modify_qp timed out waiting for suspend. qp_id = %d, last_ae = 0x%x\n",
+			   iwqp->ibqp.qp_num, iwqp->last_aeq);
+		return -EBUSY;
+	}
+
+	return 0;
+}
+
 /**
  * irdma_modify_qp_roce - modify qp request
  * @ibqp: qp's pointer for modify
@@ -1330,17 +1345,11 @@ int irdma_modify_qp_roce(struct ib_qp *ibqp, struct ib_qp_attr *attr,
 
 			info.next_iwarp_state = IRDMA_QP_STATE_SQD;
 			issue_modify_qp = 1;
+			iwqp->suspend_pending = true;
 			break;
 		case IB_QPS_SQE:
 		case IB_QPS_ERR:
 		case IB_QPS_RESET:
-			if (iwqp->iwarp_state == IRDMA_QP_STATE_RTS) {
-				spin_unlock_irqrestore(&iwqp->lock, flags);
-				info.next_iwarp_state = IRDMA_QP_STATE_SQD;
-				irdma_hw_modify_qp(iwdev, iwqp, &info, true);
-				spin_lock_irqsave(&iwqp->lock, flags);
-			}
-
 			if (iwqp->iwarp_state == IRDMA_QP_STATE_ERROR) {
 				spin_unlock_irqrestore(&iwqp->lock, flags);
 				if (udata) {
@@ -1377,6 +1386,11 @@ int irdma_modify_qp_roce(struct ib_qp *ibqp, struct ib_qp_attr *attr,
 			ctx_info->rem_endpoint_idx = udp_info->arp_idx;
 			if (irdma_hw_modify_qp(iwdev, iwqp, &info, true))
 				return -EINVAL;
+			if (info.next_iwarp_state == IRDMA_QP_STATE_SQD) {
+				ret = irdma_wait_for_suspend(iwqp);
+				if (ret)
+					return ret;
+			}
 			spin_lock_irqsave(&iwqp->lock, flags);
 			if (iwqp->iwarp_state == info.curr_iwarp_state) {
 				iwqp->iwarp_state = info.next_iwarp_state;
drivers/infiniband/hw/irdma/verbs.h +1 -0
index 5af3c8e9b394..a934c985dbb4 100644
@@ -188,6 +188,7 @@ struct irdma_qp {
 	u8 flush_issued : 1;
 	u8 sig_all : 1;
 	u8 pau_mode : 1;
+	u8 suspend_pending : 1;
 	u8 rsvd : 1;
 	u8 iwarp_state;
 	u16 term_sq_flush_code;
drivers/infiniband/ulp/rtrs/rtrs-clt.c +3 -4
index afe8670f9e55..3f4ef6e4a89b 100644
@@ -383,7 +383,7 @@ static void complete_rdma_req(struct rtrs_clt_io_req *req, int errno,
 	struct rtrs_clt_path *clt_path;
 	int err;
 
-	if (WARN_ON(!req->in_use))
+	if (!req->in_use)
 		return;
 	if (WARN_ON(!req->con))
 		return;
@@ -1682,7 +1682,7 @@ static int create_con_cq_qp(struct rtrs_clt_con *con)
 		clt_path->s.dev_ref++;
 		max_send_wr = min_t(int, wr_limit,
 			      /* QD * (REQ + RSP + FR REGS or INVS) + drain */
-			      clt_path->queue_depth * 3 + 1);
+			      clt_path->queue_depth * 4 + 1);
 		max_recv_wr = min_t(int, wr_limit,
 			      clt_path->queue_depth * 3 + 1);
 		max_send_sge = 2;
@@ -2341,8 +2341,6 @@ static int init_conns(struct rtrs_clt_path *clt_path)
 	if (err)
 		goto destroy;
 
-	rtrs_start_hb(&clt_path->s);
-
 	return 0;
 
 destroy:
@@ -2616,6 +2614,7 @@ static int init_path(struct rtrs_clt_path *clt_path)
 		goto out;
 	}
 	rtrs_clt_path_up(clt_path);
+	rtrs_start_hb(&clt_path->s);
 out:
 	mutex_unlock(&clt_path->init_mutex);
 
drivers/infiniband/ulp/rtrs/rtrs-srv.c +27 -10
index 733116554e0b..27bf2b2da9fd 100644
@@ -72,8 +72,9 @@ static bool rtrs_srv_change_state(struct rtrs_srv_path *srv_path,
 {
 	enum rtrs_srv_state old_state;
 	bool changed = false;
+	unsigned long flags;
 
-	spin_lock_irq(&srv_path->state_lock);
+	spin_lock_irqsave(&srv_path->state_lock, flags);
 	old_state = srv_path->state;
 	switch (new_state) {
 	case RTRS_SRV_CONNECTED:
@@ -94,7 +95,7 @@ static bool rtrs_srv_change_state(struct rtrs_srv_path *srv_path,
 	}
 	if (changed)
 		srv_path->state = new_state;
-	spin_unlock_irq(&srv_path->state_lock);
+	spin_unlock_irqrestore(&srv_path->state_lock, flags);
 
 	return changed;
 }
@@ -555,7 +556,10 @@ static void unmap_cont_bufs(struct rtrs_srv_path *srv_path)
 		struct rtrs_srv_mr *srv_mr;
 
 		srv_mr = &srv_path->mrs[i];
-		rtrs_iu_free(srv_mr->iu, srv_path->s.dev->ib_dev, 1);
+
+		if (always_invalidate)
+			rtrs_iu_free(srv_mr->iu, srv_path->s.dev->ib_dev, 1);
+
 		ib_dereg_mr(srv_mr->mr);
 		ib_dma_unmap_sg(srv_path->s.dev->ib_dev, srv_mr->sgt.sgl,
 				srv_mr->sgt.nents, DMA_BIDIRECTIONAL);
@@ -721,20 +725,23 @@ static void rtrs_srv_info_rsp_done(struct ib_cq *cq, struct ib_wc *wc)
 	WARN_ON(wc->opcode != IB_WC_SEND);
 }
 
-static void rtrs_srv_path_up(struct rtrs_srv_path *srv_path)
+static int rtrs_srv_path_up(struct rtrs_srv_path *srv_path)
 {
 	struct rtrs_srv *srv = srv_path->srv;
 	struct rtrs_srv_ctx *ctx = srv->ctx;
-	int up;
+	int up, ret = 0;
 
 	mutex_lock(&srv->paths_ev_mutex);
 	up = ++srv->paths_up;
 	if (up == 1)
-		ctx->ops.link_ev(srv, RTRS_SRV_LINK_EV_CONNECTED, NULL);
+		ret = ctx->ops.link_ev(srv, RTRS_SRV_LINK_EV_CONNECTED, NULL);
 	mutex_unlock(&srv->paths_ev_mutex);
 
 	/* Mark session as established */
-	srv_path->established = true;
+	if (!ret)
+		srv_path->established = true;
+
+	return ret;
 }
 
 static void rtrs_srv_path_down(struct rtrs_srv_path *srv_path)
@@ -863,7 +870,12 @@ static int process_info_req(struct rtrs_srv_con *con,
 		goto iu_free;
 	kobject_get(&srv_path->kobj);
 	get_device(&srv_path->srv->dev);
-	rtrs_srv_change_state(srv_path, RTRS_SRV_CONNECTED);
+	err = rtrs_srv_change_state(srv_path, RTRS_SRV_CONNECTED);
+	if (!err) {
+		rtrs_err(s, "rtrs_srv_change_state(), err: %d\n", err);
+		goto iu_free;
+	}
+
 	rtrs_srv_start_hb(srv_path);
 
 	/*
@@ -872,7 +884,11 @@ static int process_info_req(struct rtrs_srv_con *con,
 	 * all connections are successfully established.  Thus, simply notify
 	 * listener with a proper event if we are the first path.
 	 */
-	rtrs_srv_path_up(srv_path);
+	err = rtrs_srv_path_up(srv_path);
+	if (err) {
+		rtrs_err(s, "rtrs_srv_path_up(), err: %d\n", err);
+		goto iu_free;
+	}
 
 	ib_dma_sync_single_for_device(srv_path->s.dev->ib_dev,
 				      tx_iu->dma_addr,
@@ -1525,7 +1541,6 @@ static void rtrs_srv_close_work(struct work_struct *work)
 
 	srv_path = container_of(work, typeof(*srv_path), close_work);
 
-	rtrs_srv_destroy_path_files(srv_path);
 	rtrs_srv_stop_hb(srv_path);
 
 	for (i = 0; i < srv_path->s.con_num; i++) {
@@ -1545,6 +1560,8 @@ static void rtrs_srv_close_work(struct work_struct *work)
 	/* Wait for all completion */
 	wait_for_completion(&srv_path->complete_done);
 
+	rtrs_srv_destroy_path_files(srv_path);
+
 	/* Notify upper layer if we are the last path */
 	rtrs_srv_path_down(srv_path);
 
drivers/md/md.c +94 -80

442 lines not on this page · raw message

drivers/misc/mei/client.c +2 -2
index 96f4e59c32a5..d179273586be 100644
@@ -1975,7 +1975,7 @@ ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb)
 
 	mei_hdr = mei_msg_hdr_init(cb);
 	if (IS_ERR(mei_hdr)) {
-		rets = -PTR_ERR(mei_hdr);
+		rets = PTR_ERR(mei_hdr);
 		mei_hdr = NULL;
 		goto err;
 	}
@@ -1999,7 +1999,7 @@ ssize_t mei_cl_write(struct mei_cl *cl, struct mei_cl_cb *cb)
 
 	hbuf_slots = mei_hbuf_empty_slots(dev);
 	if (hbuf_slots < 0) {
-		rets = -EOVERFLOW;
+		buf_len = -EOVERFLOW;
 		goto out;
 	}
 
drivers/net/arcnet/arcdevice.h +2 -0
index 5d4a4c7efbbf..deeabd6ec2e8 100644
@@ -186,6 +186,8 @@ do {									\
 #define ARC_IS_5MBIT    1   /* card default speed is 5MBit */
 #define ARC_CAN_10MBIT  2   /* card uses COM20022, supporting 10MBit,
 				 but default is 2.5MBit. */
+#define ARC_HAS_LED     4   /* card has software controlled LEDs */
+#define ARC_HAS_ROTARY  8   /* card has rotary encoder */
 
 /* information needed to define an encapsulation driver */
 struct ArcProto {
drivers/net/arcnet/com20020-pci.c +46 -43

133 lines not on this page · raw message

drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c +1 -0
index 1471b6130a2b..b3473883eae6 100644
@@ -2075,6 +2075,7 @@ int bnxt_init_tc(struct bnxt *bp)
 	rhashtable_destroy(&tc_info->flow_table);
 free_tc_info:
 	kfree(tc_info);
+	bp->tc_info = NULL;
 	return rc;
 }
 
drivers/net/ethernet/broadcom/tg3.c +36 -6

85 lines not on this page · raw message

drivers/net/ethernet/broadcom/tg3.h +2 -2
index 1000c894064f..8d753f8c5b06 100644
@@ -3018,6 +3018,7 @@ struct tg3_napi {
 	u16				*rx_rcb_prod_idx;
 	struct tg3_rx_prodring_set	prodring;
 	struct tg3_rx_buffer_desc	*rx_rcb;
+	unsigned long			rx_dropped;
 
 	u32				tx_prod	____cacheline_aligned;
 	u32				tx_cons;
@@ -3026,6 +3027,7 @@ struct tg3_napi {
 	u32				prodmbox;
 	struct tg3_tx_buffer_desc	*tx_ring;
 	struct tg3_tx_ring_info		*tx_buffers;
+	unsigned long			tx_dropped;
 
 	dma_addr_t			status_mapping;
 	dma_addr_t			rx_rcb_mapping;
@@ -3219,8 +3221,6 @@ struct tg3 {
 
 
 	/* begin "everything else" cacheline(s) section */
-	unsigned long			rx_dropped;
-	unsigned long			tx_dropped;
 	struct rtnl_link_stats64	net_stats_prev;
 	struct tg3_ethtool_stats	estats_prev;
 
drivers/net/ethernet/hisilicon/hns/hns_dsaf_mac.c +29 -0
index f41379de2186..ec9a02495df4 100644
@@ -66,6 +66,27 @@ static enum mac_mode hns_get_enet_interface(const struct hns_mac_cb *mac_cb)
 	}
 }
 
+static u32 hns_mac_link_anti_shake(struct mac_driver *mac_ctrl_drv)
+{
+#define HNS_MAC_LINK_WAIT_TIME 5
+#define HNS_MAC_LINK_WAIT_CNT 40
+
+	u32 link_status = 0;
+	int i;
+
+	if (!mac_ctrl_drv->get_link_status)
+		return link_status;
+
+	for (i = 0; i < HNS_MAC_LINK_WAIT_CNT; i++) {
+		msleep(HNS_MAC_LINK_WAIT_TIME);
+		mac_ctrl_drv->get_link_status(mac_ctrl_drv, &link_status);
+		if (!link_status)
+			break;
+	}
+
+	return link_status;
+}
+
 void hns_mac_get_link_status(struct hns_mac_cb *mac_cb, u32 *link_status)
 {
 	struct mac_driver *mac_ctrl_drv;
@@ -83,6 +104,14 @@ void hns_mac_get_link_status(struct hns_mac_cb *mac_cb, u32 *link_status)
 							       &sfp_prsnt);
 		if (!ret)
 			*link_status = *link_status && sfp_prsnt;
+
+		/* for FIBER port, it may have a fake link up.
+		 * when the link status changes from down to up, we need to do
+		 * anti-shake. the anti-shake time is base on tests.
+		 * only FIBER port need to do this.
+		 */
+		if (*link_status && !mac_cb->link)
+			*link_status = hns_mac_link_anti_shake(mac_ctrl_drv);
 	}
 
 	mac_cb->link = *link_status;
drivers/net/ethernet/intel/i40e/i40e_main.c +1 -1
index 20e26aa5b81c..cf085bd8d790 100644
@@ -16132,7 +16132,7 @@ static int i40e_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
 	       I40E_PRTGL_SAH_MFS_MASK) >> I40E_PRTGL_SAH_MFS_SHIFT;
 	if (val < MAX_FRAME_SIZE_DEFAULT)
 		dev_warn(&pdev->dev, "MFS for port %x has been set below the default: %x\n",
-			 i, val);
+			 pf->hw.port, val);
 
 	/* Add a filter to drop all Flow control frames from any VSI from being
 	 * transmitted. By doing so we stop a malicious VF from sending out
drivers/net/ethernet/marvell/octeontx2/af/rvu_devlink.c +1 -4
index 274d3abe30eb..ba7ff776760d 100644
@@ -1284,7 +1284,7 @@ static int rvu_npa_register_reporters(struct rvu_devlink *rvu_dl)
 
 	rvu_dl->devlink_wq = create_workqueue("rvu_devlink_wq");
 	if (!rvu_dl->devlink_wq)
-		goto err;
+		return -ENOMEM;
 
 	INIT_WORK(&rvu_reporters->intr_work, rvu_npa_intr_work);
 	INIT_WORK(&rvu_reporters->err_work, rvu_npa_err_work);
@@ -1292,9 +1292,6 @@ static int rvu_npa_register_reporters(struct rvu_devlink *rvu_dl)
 	INIT_WORK(&rvu_reporters->ras_work, rvu_npa_ras_work);
 
 	return 0;
-err:
-	rvu_npa_health_reporters_destroy(rvu_dl);
-	return -ENOMEM;
 }
 
 static int rvu_npa_health_reporters_create(struct rvu_devlink *rvu_dl)
drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.c +7 -1
index d1249da7a18f..a3fd20d26b94 100644
@@ -388,7 +388,13 @@ static u64 npc_get_default_entry_action(struct rvu *rvu, struct npc_mcam *mcam,
 	int bank, nixlf, index;
 
 	/* get ucast entry rule entry index */
-	nix_get_nixlf(rvu, pf_func, &nixlf, NULL);
+	if (nix_get_nixlf(rvu, pf_func, &nixlf, NULL)) {
+		dev_err(rvu->dev, "%s: nixlf not attached to pcifunc:0x%x\n",
+			__func__, pf_func);
+		/* Action 0 is drop */
+		return 0;
+	}
+
 	index = npc_get_nixlf_mcam_index(mcam, pf_func, nixlf,
 					 NIXLF_UCAST_ENTRY);
 	bank = npc_get_bank(mcam, index);
drivers/net/ethernet/marvell/octeontx2/af/rvu_reg.c +2 -2
index b3150f053291..d46ac29adb96 100644
@@ -31,8 +31,8 @@ static struct hw_reg_map txsch_reg_map[NIX_TXSCH_LVL_CNT] = {
 	{NIX_TXSCH_LVL_TL4, 3, 0xFFFF, {{0x0B00, 0x0B08}, {0x0B10, 0x0B18},
 			      {0x1200, 0x12E0} } },
 	{NIX_TXSCH_LVL_TL3, 4, 0xFFFF, {{0x1000, 0x10E0}, {0x1600, 0x1608},
-			      {0x1610, 0x1618}, {0x1700, 0x17B0} } },
-	{NIX_TXSCH_LVL_TL2, 2, 0xFFFF, {{0x0E00, 0x0EE0}, {0x1700, 0x17B0} } },
+			      {0x1610, 0x1618}, {0x1700, 0x17C8} } },
+	{NIX_TXSCH_LVL_TL2, 2, 0xFFFF, {{0x0E00, 0x0EE0}, {0x1700, 0x17C8} } },
 	{NIX_TXSCH_LVL_TL1, 1, 0xFFFF, {{0x0C00, 0x0D98} } },
 };
 
drivers/net/ethernet/marvell/octeontx2/nic/otx2_ethtool.c +5 -1
index dbfa3bc39e34..fa4b2d833d77 100644
@@ -316,9 +316,12 @@ static void otx2_get_pauseparam(struct net_device *netdev,
 	if (is_otx2_lbkvf(pfvf->pdev))
 		return;
 
+	mutex_lock(&pfvf->mbox.lock);
 	req = otx2_mbox_alloc_msg_cgx_cfg_pause_frm(&pfvf->mbox);
-	if (!req)
+	if (!req) {
+		mutex_unlock(&pfvf->mbox.lock);
 		return;
+	}
 
 	if (!otx2_sync_mbox_msg(&pfvf->mbox)) {
 		rsp = (struct cgx_pause_frm_cfg *)
@@ -326,6 +329,7 @@ static void otx2_get_pauseparam(struct net_device *netdev,
 		pause->rx_pause = rsp->rx_pause;
 		pause->tx_pause = rsp->tx_pause;
 	}
+	mutex_unlock(&pfvf->mbox.lock);
 }
 
 static int otx2_set_pauseparam(struct net_device *netdev,
drivers/net/ethernet/pensando/ionic/ionic_dev.h +1 -1
index 676c58dc1981..38f38fe8f21d 100644
@@ -208,7 +208,7 @@ struct ionic_desc_info {
 	void *cb_arg;
 };
 
-#define IONIC_QUEUE_NAME_MAX_SZ		32
+#define IONIC_QUEUE_NAME_MAX_SZ		16
 
 struct ionic_queue {
 	struct device *dev;
drivers/net/ethernet/pensando/ionic/ionic_lif.c +8 -8
index 2cc126d37835..63181866809f 100644
@@ -44,24 +44,24 @@ static void ionic_lif_queue_identify(struct ionic_lif *lif);
 static void ionic_dim_work(struct work_struct *work)
 {
 	struct dim *dim = container_of(work, struct dim, work);
+	struct ionic_intr_info *intr;
 	struct dim_cq_moder cur_moder;
 	struct ionic_qcq *qcq;
+	struct ionic_lif *lif;
 	u32 new_coal;
 
 	cur_moder = net_dim_get_rx_moderation(dim->mode, dim->profile_ix);
 	qcq = container_of(dim, struct ionic_qcq, dim);
-	new_coal = ionic_coal_usec_to_hw(qcq->q.lif->ionic, cur_moder.usec);
+	lif = qcq->q.lif;
+	new_coal = ionic_coal_usec_to_hw(lif->ionic, cur_moder.usec);
 	new_coal = new_coal ? new_coal : 1;
 
-	if (qcq->intr.dim_coal_hw != new_coal) {
-		unsigned int qi = qcq->cq.bound_q->index;
-		struct ionic_lif *lif = qcq->q.lif;
-
-		qcq->intr.dim_coal_hw = new_coal;
+	intr = &qcq->intr;
+	if (intr->dim_coal_hw != new_coal) {
+		intr->dim_coal_hw = new_coal;
 
 		ionic_intr_coal_init(lif->ionic->idev.intr_ctrl,
-				     lif->rxqcqs[qi]->intr.index,
-				     qcq->intr.dim_coal_hw);
+				     intr->index, intr->dim_coal_hw);
 	}
 
 	dim->state = DIM_START_MEASURE;
drivers/net/ethernet/realtek/r8169_main.c +6 -1
index d2fbd169f25b..c0a339ff43a6 100644
@@ -205,6 +205,7 @@ enum rtl_registers {
 					/* No threshold before first PCI xfer */
 #define	RX_FIFO_THRESH			(7 << RXCFG_FIFO_SHIFT)
 #define	RX_EARLY_OFF			(1 << 11)
+#define	RX_PAUSE_SLOT_ON		(1 << 11)	/* 8125b and later */
 #define	RXCFG_DMA_SHIFT			8
 					/* Unlimited maximum PCI burst. */
 #define	RX_DMA_BURST			(7 << RXCFG_DMA_SHIFT)
@@ -2268,9 +2269,13 @@ static void rtl_init_rxcfg(struct rtl8169_private *tp)
 	case RTL_GIGA_MAC_VER_40 ... RTL_GIGA_MAC_VER_53:
 		RTL_W32(tp, RxConfig, RX128_INT_EN | RX_MULTI_EN | RX_DMA_BURST | RX_EARLY_OFF);
 		break;
-	case RTL_GIGA_MAC_VER_60 ... RTL_GIGA_MAC_VER_63:
+	case RTL_GIGA_MAC_VER_61:
 		RTL_W32(tp, RxConfig, RX_FETCH_DFLT_8125 | RX_DMA_BURST);
 		break;
+	case RTL_GIGA_MAC_VER_63:
+		RTL_W32(tp, RxConfig, RX_FETCH_DFLT_8125 | RX_DMA_BURST |
+			RX_PAUSE_SLOT_ON);
+		break;
 	default:
 		RTL_W32(tp, RxConfig, RX128_INT_EN | RX_DMA_BURST);
 		break;
drivers/net/ethernet/stmicro/stmmac/dwmac5.c +19 -26

72 lines not on this page · raw message

drivers/net/ethernet/stmicro/stmmac/dwmac5.h +3 -1
index 53c138d0ff48..34e620790eb3 100644
@@ -153,9 +153,11 @@ int dwmac5_est_configure(void __iomem *ioaddr, struct stmmac_est *cfg,
 			 unsigned int ptp_rate);
 void dwmac5_est_irq_status(void __iomem *ioaddr, struct net_device *dev,
 			   struct stmmac_extra_stats *x, u32 txqcnt);
-void dwmac5_fpe_configure(void __iomem *ioaddr, u32 num_txq, u32 num_rxq,
+void dwmac5_fpe_configure(void __iomem *ioaddr, struct stmmac_fpe_cfg *cfg,
+			  u32 num_txq, u32 num_rxq,
 			  bool enable);
 void dwmac5_fpe_send_mpacket(void __iomem *ioaddr,
+			     struct stmmac_fpe_cfg *cfg,
 			     enum stmmac_mpacket_type type);
 int dwmac5_fpe_irq_status(void __iomem *ioaddr, struct net_device *dev);
 
drivers/net/ethernet/stmicro/stmmac/dwxgmac2_core.c +2 -1
index 54aa0fbd1bf6..3568bf3ccfbe 100644
@@ -1440,7 +1440,8 @@ static int dwxgmac3_est_configure(void __iomem *ioaddr, struct stmmac_est *cfg,
 	return 0;
 }
 
-static void dwxgmac3_fpe_configure(void __iomem *ioaddr, u32 num_txq,
+static void dwxgmac3_fpe_configure(void __iomem *ioaddr, struct stmmac_fpe_cfg *cfg,
+				   u32 num_txq,
 				   u32 num_rxq, bool enable)
 {
 	u32 value;
drivers/net/ethernet/stmicro/stmmac/hwif.h +3 -1
index fe2660d5694d..cc229ccd5d81 100644
@@ -395,9 +395,11 @@ struct stmmac_ops {
 			     unsigned int ptp_rate);
 	void (*est_irq_status)(void __iomem *ioaddr, struct net_device *dev,
 			       struct stmmac_extra_stats *x, u32 txqcnt);
-	void (*fpe_configure)(void __iomem *ioaddr, u32 num_txq, u32 num_rxq,
+	void (*fpe_configure)(void __iomem *ioaddr, struct stmmac_fpe_cfg *cfg,
+			      u32 num_txq, u32 num_rxq,
 			      bool enable);
 	void (*fpe_send_mpacket)(void __iomem *ioaddr,
+				 struct stmmac_fpe_cfg *cfg,
 				 enum stmmac_mpacket_type type);
 	int (*fpe_irq_status)(void __iomem *ioaddr, struct net_device *dev);
 };
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +7 -1
index 2b4c30a5ffcd..7042abc6979a 100644
@@ -1054,7 +1054,8 @@ static void stmmac_fpe_link_state_handle(struct stmmac_priv *priv, bool is_up)
 	bool *hs_enable = &fpe_cfg->hs_enable;
 
 	if (is_up && *hs_enable) {
-		stmmac_fpe_send_mpacket(priv, priv->ioaddr, MPACKET_VERIFY);
+		stmmac_fpe_send_mpacket(priv, priv->ioaddr, fpe_cfg,
+					MPACKET_VERIFY);
 	} else {
 		*lo_state = FPE_STATE_OFF;
 		*lp_state = FPE_STATE_OFF;
@@ -5621,6 +5622,7 @@ static void stmmac_fpe_event_status(struct stmmac_priv *priv, int status)
 		/* If user has requested FPE enable, quickly response */
 		if (*hs_enable)
 			stmmac_fpe_send_mpacket(priv, priv->ioaddr,
+						fpe_cfg,
 						MPACKET_RESPONSE);
 	}
 
@@ -6958,6 +6960,7 @@ static void stmmac_fpe_lp_task(struct work_struct *work)
 		if (*lo_state == FPE_STATE_ENTERING_ON &&
 		    *lp_state == FPE_STATE_ENTERING_ON) {
 			stmmac_fpe_configure(priv, priv->ioaddr,
+					     fpe_cfg,
 					     priv->plat->tx_queues_to_use,
 					     priv->plat->rx_queues_to_use,
 					     *enable);
@@ -6976,6 +6979,7 @@ static void stmmac_fpe_lp_task(struct work_struct *work)
 			netdev_info(priv->dev, SEND_VERIFY_MPAKCET_FMT,
 				    *lo_state, *lp_state);
 			stmmac_fpe_send_mpacket(priv, priv->ioaddr,
+						fpe_cfg,
 						MPACKET_VERIFY);
 		}
 		/* Sleep then retry */
@@ -6990,6 +6994,7 @@ void stmmac_fpe_handshake(struct stmmac_priv *priv, bool enable)
 	if (priv->plat->fpe_cfg->hs_enable != enable) {
 		if (enable) {
 			stmmac_fpe_send_mpacket(priv, priv->ioaddr,
+						priv->plat->fpe_cfg,
 						MPACKET_VERIFY);
 		} else {
 			priv->plat->fpe_cfg->lo_fpe_state = FPE_STATE_OFF;
@@ -7399,6 +7404,7 @@ int stmmac_suspend(struct device *dev)
 	if (priv->dma_cap.fpesel) {
 		/* Disable FPE */
 		stmmac_fpe_configure(priv, priv->ioaddr,
+				     priv->plat->fpe_cfg,
 				     priv->plat->tx_queues_to_use,
 				     priv->plat->rx_queues_to_use, false);
 
drivers/net/ethernet/stmicro/stmmac/stmmac_tc.c +1 -0
index d0a2b289f460..08cffc055874 100644
@@ -952,6 +952,7 @@ static int tc_setup_taprio(struct stmmac_priv *priv,
 
 	priv->plat->fpe_cfg->enable = false;
 	stmmac_fpe_configure(priv, priv->ioaddr,
+			     priv->plat->fpe_cfg,
 			     priv->plat->tx_queues_to_use,
 			     priv->plat->rx_queues_to_use,
 			     false);
drivers/net/hyperv/Kconfig +1 -0
index ca7bf7f897d3..c8cbd85adcf9 100644
@@ -3,5 +3,6 @@ config HYPERV_NET
 	tristate "Microsoft Hyper-V virtual network driver"
 	depends on HYPERV
 	select UCS2_STRING
+	select NLS
 	help
 	  Select this option to enable the Hyper-V virtual network driver.
drivers/net/usb/r8152.c +62 -48

118 lines not on this page · raw message

drivers/nvme/host/nvme.h +5 -0
index 590ffa3e1c49..415b01707599 100644

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

drivers/nvme/host/pci.c +15 -1
index 19a61cddb56d..fd20f3fdb159 100644

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

drivers/of/dynamic.c +3 -2
index 0dfbfae15d6a..ffb7b0446afd 100644

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

drivers/parport/parport_pc.c +21 -0
index 925be41eeebe..de5a823f3031 100644

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

drivers/platform/mellanox/mlxbf-bootctl.c +26 -13
index 1c7a288b59a5..6a171a4f9dc6 100644

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

drivers/platform/mellanox/mlxbf-pmc.c +14 -0
index 2d4bbe99959e..db7a1d360cd2 100644

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

drivers/platform/surface/aggregator/core.c +4 -1
index 54f86df77a37..b14e36871793 100644

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

drivers/platform/x86/Kconfig +1 -1
index 50abcf0c483c..c03367b13db6 100644

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

drivers/platform/x86/asus-nb-wmi.c +19 -27

46 lines not on this page · raw message

drivers/platform/x86/asus-wmi.c +66 -52

118 lines not on this page · raw message

drivers/platform/x86/asus-wmi.h +8 -2
index 49f2b8f8ad3e..b817a312f2e1 100644

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

drivers/platform/x86/wmi.c +47 -9

56 lines not on this page · raw message

drivers/scsi/be2iscsi/be_main.c +1 -0
index 7974c1326d46..27e73cd54bea 100644

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

drivers/tee/optee/device.c +15 -2
index a74d82e230e3..8957065ea730 100644

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

drivers/tty/serial/8250/8250_early.c +1 -0
index c171ce6db691..8a16510d086b 100644

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

drivers/tty/serial/8250/8250_omap.c +8 -6
index f114847331fe..20e0703f1def 100644

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

drivers/tty/serial/amba-pl011.c +54 -58

112 lines not on this page · raw message

drivers/tty/serial/sc16is7xx.c +12 -0
index e8f8a94ad606..adaccbdc10c3 100644

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

drivers/usb/gadget/function/f_hid.c +4 -3
index 6be6009f911e..f1ca9250cad9 100644

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

drivers/usb/host/xhci-pci.c +0 -2
index af5b5b4fa5d1..f501eb3efca7 100644

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

drivers/usb/typec/class.c +3 -2
index 339752fef65e..ea86195c75b8 100644

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

drivers/vdpa/mlx5/net/mlx5_vnet.c +6 -1
index e748c00789f0..46c72e6d3a29 100644

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

fs/btrfs/disk-io.c +0 -1
index 24d10b541a13..f0654fe80b34 100644

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

fs/btrfs/super.c +1 -4
index 718119e3830d..2fd0ee0e6e93 100644

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

fs/cifs/cifsfs.c +3 -1
index af688e39f31a..9bbead15a028 100644

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

fs/cifs/smb2ops.c +2 -0
index d8ce079ba909..7c2ecbb17f54 100644

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

fs/nilfs2/sufile.c +35 -7

42 lines not on this page · raw message

fs/nilfs2/the_nilfs.c +5 -1
index fe2e7197268b..a07e20147abc 100644

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

include/linux/cpuhotplug.h +1 -0
index c7156bb56e83..c1ecc843b97d 100644

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

include/linux/hrtimer.h +2 -2
index 0ee140176f10..f2044d5a652b 100644

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

include/linux/kallsyms.h +6 -1
index a1d6fc82d7f0..eae9f423bd64 100644

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

include/linux/kprobes.h +2 -5
index 2cbb6a51c291..24b0eaa5de30 100644

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

include/linux/perf_event.h +2 -0
index dbf6ba59fbd0..200995c5210e 100644

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

include/linux/platform_data/x86/asus-wmi.h +1 -0
index 17dc5cb6f3f2..1b20b5e7a76b 100644

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

include/linux/stmmac.h +1 -0
index 24bc3f7967c3..a266e1152522 100644

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

include/net/genetlink.h +5 -2
index 7cb3fa8310ed..8043594a7f84 100644

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

include/rdma/ib_umem.h +8 -1
index 5ae9dff74dac..2381e482fab3 100644

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

include/rdma/ib_verbs.h +1 -0
index 4ba642fc8a19..fa13bf15feb3 100644

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

include/uapi/linux/perf_event.h +4 -1
index a7fb8d2b7709..25bc59231961 100644

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

io_uring/io_uring.c +3 -61

64 lines not on this page · raw message

kernel/cpu.c +7 -1
index 393114c10c28..0e786de993e0 100644

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

kernel/events/core.c +55 -25

80 lines not on this page · raw message

kernel/events/ring_buffer.c +4 -1
index 6808873555f0..45965f13757e 100644

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

kernel/kallsyms.c +0 -2
index 0ba87982d017..e0d9f77cf2d4 100644

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

kernel/kprobes.c +2 -2
index 6cf561322bbe..07d36cee2a80 100644

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

kernel/time/hrtimer.c +12 -21
index 97409581e9da..eebd0f31daa8 100644

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

kernel/trace/ring_buffer.c +8 -11
index a930a9d7d834..16fce72a7601 100644

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

kernel/trace/trace.c +70 -107

177 lines not on this page · raw message

mm/filemap.c +1 -1
index 81e28722edfa..84a5b0213e0e 100644

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

net/core/drop_monitor.c +3 -1
index 22015ebc1dd5..937d74aeef54 100644

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

net/core/filter.c +19 -0
index 76432aa3b717..0f5faa876fd1 100644

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

net/core/scm.c +6 -0
index acb7d776fa6e..e762a4b8a1d2 100644

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

net/ipv4/ip_gre.c +7 -4
index c094963a86f1..5d17e5f5d090 100644

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

net/ipv4/tcp_input.c +5 -1
index a3453b4ac339..e51b5d887c24 100644

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

net/ipv6/ip6_fib.c +1 -5
index a506e57c4032..7e0a30380be0 100644

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

net/netfilter/ipset/ip_set_core.c +7 -7
index 33869db42bb6..978014928d07 100644

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

net/netfilter/nf_tables_api.c +3 -2
index bf0bd44f2fb3..20c2b4f5e893 100644

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

net/netfilter/nft_dynset.c +9 -4
index 73e606372b05..e714e0efa736 100644

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

net/netfilter/nft_set_pipapo.c +3 -0
index deea6196d992..4e1cc31729b8 100644

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

net/netfilter/xt_owner.c +12 -4
index e85ce69924ae..50332888c8d2 100644

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

net/netlink/genetlink.c +3 -0
index 57010927e20a..69b3a6b82f68 100644

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

net/packet/af_packet.c +8 -8
index 62c0fbb9de81..e7b54f721411 100644

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

net/packet/internal.h +1 -1
index 3bae8ea7a36f..b2edfe6fc8e7 100644

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

net/psample/psample.c +2 -1
index 118d5d2a81a0..0d9d9936579e 100644

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

scripts/checkstack.pl +2 -6
index d2c38584ece6..758884b61f92 100755

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

scripts/kconfig/symbol.c +6 -8
index 5844d636d38f..7f8013dcef00 100644

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

sound/core/pcm.c +1 -0
index 977d54320a5c..1ce21677d030 100644

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

sound/pci/hda/patch_realtek.c +1 -0
index 463e8d1eae68..1309f8775b84 100644

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

sound/soc/codecs/wm_adsp.c +6 -2
index 08fc1a025b1a..df86cf4f4cae 100644

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

sound/usb/mixer_quirks.c +30 -0
index d12b87e52d22..9d58f8d20f6a 100644

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

tools/include/uapi/linux/perf_event.h +4 -1
index a7fb8d2b7709..25bc59231961 100644

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.