Commit graph

1,429,402 commits

Author SHA1 Message Date
Yunhui Cui
957afeb99b riscv: remove irqflags.h inclusion in asm/bitops.h
The arch/riscv/include/asm/bitops.h does not functionally require
including /linux/irqflags.h. Additionally, adding
arch/riscv/include/asm/percpu.h causes a circular inclusion:
kernel/bounds.c
->include/linux/log2.h
->include/linux/bitops.h
->arch/riscv/include/asm/bitops.h
->include/linux/irqflags.h
->include/linux/find.h
->return val ? __ffs(val) : size;
->arch/riscv/include/asm/bitops.h

The compilation log is as follows:
CC      kernel/bounds.s
In file included from ./include/linux/bitmap.h:11,
               from ./include/linux/cpumask.h:12,
               from ./arch/riscv/include/asm/processor.h:55,
               from ./arch/riscv/include/asm/thread_info.h:42,
               from ./include/linux/thread_info.h:60,
               from ./include/asm-generic/preempt.h:5,
               from ./arch/riscv/include/generated/asm/preempt.h:1,
               from ./include/linux/preempt.h:79,
               from ./arch/riscv/include/asm/percpu.h:8,
               from ./include/linux/irqflags.h:19,
               from ./arch/riscv/include/asm/bitops.h:14,
               from ./include/linux/bitops.h:68,
               from ./include/linux/log2.h:12,
               from kernel/bounds.c:13:
./include/linux/find.h: In function 'find_next_bit':
./include/linux/find.h:66:30: error: implicit declaration of function '__ffs' [-Wimplicit-function-declaration]
   66 |                 return val ? __ffs(val) : size;
      |                              ^~~~~

Signed-off-by: Yunhui Cui <cuiyunhui@bytedance.com>
Acked-by: Yury Norov (NVIDIA) <yury.norov@gmail.com>
Link: https://patch.msgid.link/20251216014721.42262-2-cuiyunhui@bytedance.com
Signed-off-by: Paul Walmsley <pjw@kernel.org>
2026-01-07 13:16:38 -07:00
Stefan Wiehler
1d1fd18869 Kconfig.ubsan: Remove CONFIG_UBSAN_REPORT_FULL from documentation
There is no indication in the history that such an option was merged to
mainline.

Fixes: c637693b20 ("ubsan: remove UBSAN_MISC in favor of individual options")
Signed-off-by: Stefan Wiehler <stefan.wiehler@nokia.com>
Link: https://patch.msgid.link/20260107114833.2030995-1-stefan.wiehler@nokia.com
Signed-off-by: Kees Cook <kees@kernel.org>
2026-01-07 12:16:03 -08:00
Artem Bityutskiy
a36dc37b56 intel_idle: Remove the 'preferred_cstates' parameter
Remove the 'preferred_cstates' module parameter as it is not really useful.

The parameter currently only affects Alder Lake, where it controls C1/C1E
preference, with C1E being the default. The parameter does not support any
other platform. For example, Meteor Lake has a similar C1/C1E limitation,
but the parameter does not support Meteor Lake. This indicates that the
parameter is not very useful.

Generally, independent C1 and C1E are important for server platforms where
low latency is key. However, they are not as important for client platforms,
like Alder Lake, where C1E providing better energy savings is generally
preferred.

The parameter was originally introduced for Sapphire Rapids Xeon:
da0e58c038 intel_idle: add 'preferred_cstates' module argument

Later it was added to Alder Lake:
d1cf8bbfed ("intel_idle: Add AlderLake support")

But it was removed from Sapphire Rapids when firmware fixed the C1/C1E
limitation:
1548fac47a ("intel_idle: make SPR C1 and C1E be independent")

So Alder Lake is the only platform left where this parameter has any effect.
Remove this parameter to simplify the driver and reduce maintenance burden.

Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Link: https://patch.msgid.link/20251215111300.132803-1-dedekind1@gmail.com
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2026-01-07 21:13:09 +01:00
Artem Bityutskiy
25ff69011d intel_idle: Remove unused driver version constant
The INTEL_IDLE_VERSION constant has not been updated since 2020 and serves
no useful purpose. The driver version is implicitly defined by the kernel
version, making this constant redundant.

Remove the constant to eliminate potential confusion about version
tracking.

Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
Link: https://patch.msgid.link/20251215111229.132705-1-dedekind1@gmail.com
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2026-01-07 21:11:42 +01:00
Kaushlendra Kumar
3e0873527c thermal: intel: intel_pch_thermal: Drop explicit driver data clearing
The driver uses devm_kzalloc() for device allocation, making the
pci_set_drvdata(pdev, NULL) call in the remove path unnecessary.

The driver core clears drvdata automatically during device removal.

Signed-off-by: Kaushlendra Kumar <kaushlendra.kumar@intel.com>
[ rjw: Subject rewrite ]
Link: https://patch.msgid.link/20251215091352.1250531-1-kaushlendra.kumar@intel.com
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2026-01-07 21:08:11 +01:00
Ben Dooks
2ca5bb54bd riscv: cpu_ops_sbi: smp_processor_id() returns int, not unsigned int
The print in sbi_cpu_stop() assumes smp_processor_id() returns an
unsigned int, when it is actually an int. Fix the format string to
avoid mismatch type warnings in rht pr_crit().

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Link: https://patch.msgid.link/20260102145839.657864-1-ben.dooks@codethink.co.uk
Signed-off-by: Paul Walmsley <pjw@kernel.org>
2026-01-07 13:03:16 -07:00
Rafael J. Wysocki
2064fe4b8f cpupower update for Linux 6.20-rc1
Fixes to miscellaneous problems in cpupower tool:
 
 - idle_monitor: fix incorrect value logged after stop
 - Fix inverted APERF capability check
 - Use strcspn() to strip trailing newline
 - Reset errno before strtoull()
 - Show C0 in idle-info dump
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEPZKym/RZuOCGeA/kCwJExA0NQxwFAmldojMACgkQCwJExA0N
 QxyV/hAA06BJJdyaM7n+jyM0t9jeIyC56yaI0O84T9YUu6bvlVnEp7scgcjKRajE
 16qA6aDxbcII5oW4Vf+P685+mEdhFn1SZBlwrJciXF0LbEsi7fIToHfZfwxvsWeK
 INtKWUwyoFx28r8GXQVuJKrGpcXW3Hj7bXNJTf4EXhCt4vspNG+MOYqQrONB4xQx
 siPhz2VRB7M9KGVulCvDHF+WfwR7zHLPaYSITEo9mD+YvaQgnGPRXkKdkQ3Aqoyv
 jZ6+xHfEIehjeqghBxATUlmnbQ3JP1d/KmczynITuRI67Q8NU6h9UyDVG/UjD9Vp
 v2j8/+TEw662hZtzVfXILkaiJRxa7qoc9js1FVgMdg6no6wRUy5MAoJKKOhsjJwA
 Hb/jP0SieKRH5sncQm1VeMPE1DZHVyjxTyUgsEVnkExB+b616N30KD4kISVL7FGB
 J8yeSoXdBoB7hF2FMTzuJWaT9wCinLEJFEkwnLBmNquw5EY3xIXCZGZFLaf/H7tH
 Buf2hwDVcFc6RR67nS/SfbWGOjFOevqelwT/5hk+SR4HhjVw5q+lkRWagf3jEVc6
 j2k271nzVNVesVz059PDmVLmDwu8oeX+GgtgorEWabeh18Sjz9y0OWeGeV7RIySt
 LsqV6Lu2Lz3Ja/tq/ZC2jh3V5AYow3KtrzjSwqNch+QAL+pvYmU=
 =cmPm
 -----END PGP SIGNATURE-----

Merge tag 'linux-cpupower-6.20-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux

Pull a cpupower utility update for Linux 6.20-rc1 from Shuah Khan:

"Fixes to miscellaneous problems in cpupower tool:

 - idle_monitor: fix incorrect value logged after stop
 - Fix inverted APERF capability check
 - Use strcspn() to strip trailing newline
 - Reset errno before strtoull()
 - Show C0 in idle-info dump"

* tag 'linux-cpupower-6.20-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux:
  tools/power cpupower: Show C0 in idle-info dump
  tools/power cpupower: Reset errno before strtoull()
  tools/cpupower: Use strcspn() to strip trailing newline
  tools/cpupower: Fix inverted APERF capability check
  cpupower: idle_monitor: fix incorrect value logged after stop
2026-01-07 21:00:22 +01:00
Ben Dooks
1e2ed4bfd5 trace: ftrace_dump_on_oops[] is not exported, make it static
The ftrace_dump_on_oops string is not used outside of trace.c so
make it static to avoid the export warning from sparse:

kernel/trace/trace.c:141:6: warning: symbol 'ftrace_dump_on_oops' was not declared. Should it be static?

Fixes: dd293df639 ("tracing: Move trace sysctls into trace.c")
Link: https://patch.msgid.link/20260106231054.84270-1-ben.dooks@codethink.co.uk
Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
2026-01-07 14:52:22 -05:00
Steven Rostedt
5f1ef0dfcb tracing: Add recursion protection in kernel stack trace recording
A bug was reported about an infinite recursion caused by tracing the rcu
events with the kernel stack trace trigger enabled. The stack trace code
called back into RCU which then called the stack trace again.

Expand the ftrace recursion protection to add a set of bits to protect
events from recursion. Each bit represents the context that the event is
in (normal, softirq, interrupt and NMI).

Have the stack trace code use the interrupt context to protect against
recursion.

Note, the bug showed an issue in both the RCU code as well as the tracing
stacktrace code. This only handles the tracing stack trace side of the
bug. The RCU fix will be handled separately.

Link: https://lore.kernel.org/all/20260102122807.7025fc87@gandalf.local.home/

Cc: stable@vger.kernel.org
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: Joel Fernandes <joel@joelfernandes.org>
Cc: "Paul E. McKenney" <paulmck@kernel.org>
Cc: Boqun Feng <boqun.feng@gmail.com>
Link: https://patch.msgid.link/20260105203141.515cd49f@gandalf.local.home
Reported-by: Yao Kai <yaokai34@huawei.com>
Tested-by: Yao Kai <yaokai34@huawei.com>
Fixes: 5f5fa7ea89 ("rcu: Don't use negative nesting depth in __rcu_read_unlock()")
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
2026-01-07 14:52:22 -05:00
Steven Rostedt
5232196ff4 ftrace: Make ftrace_graph_ent depth field signed
The code has integrity checks to make sure that depth never goes below
zero. But the depth field has recently been converted to unsigned long
from "int" (for alignment reasons). As unsigned long can never be less
than zero, the integrity checks no longer work.

Convert depth to long from unsigned long to allow the integrity checks to
work again.

Cc: stable@vger.kernel.org
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: pengdonglin <pengdonglin@xiaomi.com>
Link: https://patch.msgid.link/20260102143148.251c2e16@gandalf.local.home
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Closes: https://lore.kernel.org/all/aS6kGi0maWBl-MjZ@stanley.mountain/
Fixes: f83ac7544f ("function_graph: Enable funcgraph-args and funcgraph-retaddr to work simultaneously")
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Acked-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
2026-01-07 14:52:22 -05:00
Wupeng Ma
6435ffd6c7 ring-buffer: Avoid softlockup in ring_buffer_resize() during memory free
When user resize all trace ring buffer through file 'buffer_size_kb',
then in ring_buffer_resize(), kernel allocates buffer pages for each
cpu in a loop.

If the kernel preemption model is PREEMPT_NONE and there are many cpus
and there are many buffer pages to be freed, it may not give up cpu
for a long time and finally cause a softlockup.

To avoid it, call cond_resched() after each cpu buffer free as Commit
f6bd2c9248 ("ring-buffer: Avoid softlockup in ring_buffer_resize()")
does.

Detailed call trace as follow:

  rcu: INFO: rcu_sched self-detected stall on CPU
  rcu: 	24-....: (14837 ticks this GP) idle=521c/1/0x4000000000000000 softirq=230597/230597 fqs=5329
  rcu: 	(t=15004 jiffies g=26003221 q=211022 ncpus=96)
  CPU: 24 UID: 0 PID: 11253 Comm: bash Kdump: loaded Tainted: G            EL      6.18.2+ #278 NONE
  pc : arch_local_irq_restore+0x8/0x20
   arch_local_irq_restore+0x8/0x20 (P)
   free_frozen_page_commit+0x28c/0x3b0
   __free_frozen_pages+0x1c0/0x678
   ___free_pages+0xc0/0xe0
   free_pages+0x3c/0x50
   ring_buffer_resize.part.0+0x6a8/0x880
   ring_buffer_resize+0x3c/0x58
   __tracing_resize_ring_buffer.part.0+0x34/0xd8
   tracing_resize_ring_buffer+0x8c/0xd0
   tracing_entries_write+0x74/0xd8
   vfs_write+0xcc/0x288
   ksys_write+0x74/0x118
   __arm64_sys_write+0x24/0x38

Cc: <mathieu.desnoyers@efficios.com>
Link: https://patch.msgid.link/20251228065008.2396573-1-mawupeng1@huawei.com
Signed-off-by: Wupeng Ma <mawupeng1@huawei.com>
Acked-by: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
2026-01-07 14:52:22 -05:00
Julia Lawall
7cc3fe8e75 tracing: Drop unneeded assignment to soft_mode
soft_mode is not read in the enable case, so drop the assignment.
Drop also the comment text that refers to the assignment and realign
the comment.

Cc: "Paul E . McKenney" <paulmck@kernel.org>
Cc: Gabriele Paoloni <gpaoloni@redhat.com>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Link: https://patch.msgid.link/20251226110531.4129794-1-Julia.Lawall@inria.fr
Signed-off-by: Julia Lawall <Julia.Lawall@inria.fr>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
2026-01-07 14:52:22 -05:00
Lukas Bulwahn
003c03a4b4 riscv: configs: Clean up references to non-existing configs
- Drop 'CONFIG_I2C_COMPAT is not set' (removed in commit 7e722083fc
    ("i2c: Remove I2C_COMPAT config symbol and related code"))
  - Drop 'CONFIG_SCHED_DEBUG is not set' (removed in commit b52173065e
    ("sched/debug: Remove CONFIG_SCHED_DEBUG"))

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@redhat.com>
Link: https://patch.msgid.link/20260107092425.24737-1-lukas.bulwahn@redhat.com
Signed-off-by: Paul Walmsley <pjw@kernel.org>
2026-01-07 12:49:06 -07:00
Colin Ian King
cae444e0e2 ACPI: APEI: EINJ: make read-only array non_mmio_desc static const
Don't populate the read-only array non_mmio_desc on the stack at run
time, instead make it static const.

Signed-off-by: Colin Ian King <colin.i.king@gmail.com>
Link: https://patch.msgid.link/20251219215900.494211-1-colin.i.king@gmail.com
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2026-01-07 20:47:34 +01:00
Can Peng
b0c8ac52da ACPI: acpi_watchdog: use LIST_HEAD for stack-allocated list
Replace the separate declaration of 'resource_list' and subsequent
INIT_LIST_HEAD() call with LIST_HEAD(), which declares and initializes
the list head in one idiomatic step. This reduces code verbosity and
aligns with common kernel coding patterns, without functional change.

Signed-off-by: Can Peng <pengcan@kylinos.cn>
[ rjw: Subject edits ]
Link: https://patch.msgid.link/20251209072757.3110467-1-pengcan@kylinos.cn
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2026-01-07 20:37:54 +01:00
Danilo Krummrich
d88f27d7f4 rust: faux: use "kernel vertical" style for imports
Convert all imports to use "kernel vertical" style.

With this, subsequent patches neither introduce unrelated changes nor
leave an inconsistent import pattern.

While at it, drop unnecessary imports covered by prelude::*.

Link: https://docs.kernel.org/rust/coding-guidelines.html#imports
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Link: https://patch.msgid.link/20260105142123.95030-5-dakr@kernel.org
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
2026-01-07 19:56:00 +01:00
Danilo Krummrich
52563c665b rust: driver-core: use "kernel vertical" style for imports
Convert all imports to use "kernel vertical" style.

With this, subsequent patches neither introduce unrelated changes nor
leave an inconsistent import pattern.

While at it, drop unnecessary imports covered by prelude::*.

Link: https://docs.kernel.org/rust/coding-guidelines.html#imports
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Link: https://patch.msgid.link/20260105142123.95030-3-dakr@kernel.org
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
2026-01-07 19:55:49 +01:00
Danilo Krummrich
da74aee2ad rust: platform: use "kernel vertical" style for imports
Convert all imports to use "kernel vertical" style.

With this, subsequent patches neither introduce unrelated changes nor
leave an inconsistent import pattern.

While at it, drop unnecessary imports covered by prelude::*.

Link: https://docs.kernel.org/rust/coding-guidelines.html#imports
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Link: https://patch.msgid.link/20260105142123.95030-2-dakr@kernel.org
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
2026-01-07 19:55:49 +01:00
Danilo Krummrich
6506b44e88 rust: auxiliary: use "kernel vertical" style for imports
Convert all imports to use "kernel vertical" style.

With this, subsequent patches neither introduce unrelated changes nor
leave an inconsistent import pattern.

While at it, drop unnecessary imports covered by prelude::*.

Link: https://docs.kernel.org/rust/coding-guidelines.html#imports
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Link: https://patch.msgid.link/20260105142123.95030-1-dakr@kernel.org
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
2026-01-07 19:55:49 +01:00
Haotian Zhang
0da7824734 soc: qcom: cmd-db: Use devm_memremap() to fix memory leak in cmd_db_dev_probe
If cmd_db_magic_matches() fails after memremap() succeeds, the function
returns -EINVAL without unmapping the memory region, causing a
potential resource leak.

Switch to devm_memremap to automatically manage the map resource.

Fixes: 312416d917 ("drivers: qcom: add command DB driver")
Suggested-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Haotian Zhang <vulab@iscas.ac.cn>
Link: https://lore.kernel.org/r/20251216013933.773-1-vulab@iscas.ac.cn
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2026-01-07 12:42:30 -06:00
Konrad Dybcio
0539c5a6fd soc: qcom: pmic_glink_altmode: Consume TBT3/USB4 mode notifications
Some compute SoCs support additional operation modes, extending the
existing set of USB3/safe/DP-alt-mode.

The firmware performs all the necessary handshakes for
us and there is no room for error on that level (i.e. the sequences
will match what happens on Windows).

The trade-off with that approach is that the received notifications
trim some of the PDO/EUDO data (particularly the cable/plug parts),
offering a set of similar-in-nature-but-not-the-same indicators.

In an attempt to remedy this, I reconstructed some of it, so that the
connected mux/retimer drivers can continue to behave as expected.

Add support for parsing the aforementioned data coming from PMIC_GLINK
and passing it on to the various Type-C components.

Reviewed-by: Jack Pham <jack.pham@oss.qualcomm.com>
Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20251027-topic-pg_altmode_usb4-v1-1-2931a3ecc146@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2026-01-07 12:41:46 -06:00
John Hubbard
2d7b4a44fb gpu: nova-core: use CStr::from_bytes_until_nul() in elf64_section()
Instead of open-coding the steps for extracting a null-terminated
string, use the newly available CStr::from_bytes_until_nul().

Suggested-by: Joel Fernandes <joelagnelf@nvidia.com>
Signed-off-by: John Hubbard <jhubbard@nvidia.com>
Link: https://patch.msgid.link/20260106035226.48853-3-jhubbard@nvidia.com
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
2026-01-07 19:36:11 +01:00
John Hubbard
da8264ce6c gpu: nova-core: use CStr::from_bytes_until_nul() and remove util.rs
The util.rs module contained a single helper function,
str_from_null_terminated(), which duplicated functionality that is now
available in core::ffi::CStr.

Specifically, CStr::from_bytes_until_nul() is available in the kernel's
minimum supported Rust version (1.78.0), so it time to stop using this
custom workaround.

Reviewed-by: Joel Fernandes <joelagnelf@nvidia.com>
Signed-off-by: John Hubbard <jhubbard@nvidia.com>
Link: https://patch.msgid.link/20260106035226.48853-2-jhubbard@nvidia.com
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
2026-01-07 19:36:11 +01:00
Robert Marko
e2370b8b2c
dt-bindings: i2c: atmel,at91sam: add microchip,lan9691-i2c
Document Microchip LAN969x I2C compatible.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
Acked-by: Andi Shyti <andi.shyti@kernel.org>
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
Link: https://lore.kernel.org/r/20251229184004.571837-6-robert.marko@sartura.hr
2026-01-07 19:10:11 +01:00
Encrow Thorne
b96259551b
i2c: k1: add reset support
The K1 I2C controller provides a reset line that needs to be deasserted
before the controller can be accessed.

Add reset support to the driver to ensure the controller starts in the
required state.

Signed-off-by: Encrow Thorne <jyc0019@gmail.com>
Reviewed-by: Troy Mitchell <troy.mitchell@linux.spacemit.com>
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
Link: https://lore.kernel.org/r/20251230150653.42097-2-jyc0019@gmail.com
2026-01-07 18:41:26 +01:00
Encrow Thorne
ad0876a846
dt-bindings: i2c: spacemit: add optional resets
The I2C controller requires a reset to ensure it starts from a clean state.

Add the 'resets' property to support this hardware requirement.

Signed-off-by: Encrow Thorne <jyc0019@gmail.com>
Reviewed-by: Troy Mitchell <troy.mitchell@linux.spacemit.com>
Acked-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
Link: https://lore.kernel.org/r/20251230150653.42097-1-jyc0019@gmail.com
2026-01-07 18:41:20 +01:00
Kwok Kin Ming
2497ff38c5 HID: i2c-hid: fix potential buffer overflow in i2c_hid_get_report()
`i2c_hid_xfer` is used to read `recv_len + sizeof(__le16)` bytes of data
into `ihid->rawbuf`.

The former can come from the userspace in the hidraw driver and is only
bounded by HID_MAX_BUFFER_SIZE(16384) by default (unless we also set
`max_buffer_size` field of `struct hid_ll_driver` which we do not).

The latter has size determined at runtime by the maximum size of
different report types you could receive on any particular device and
can be a much smaller value.

Fix this by truncating `recv_len` to `ihid->bufsize - sizeof(__le16)`.

The impact is low since access to hidraw devices requires root.

Signed-off-by: Kwok Kin Ming <kenkinming2002@gmail.com>
Signed-off-by: Benjamin Tissoires <bentiss@kernel.org>
2026-01-07 18:35:58 +01:00
Bartlomiej Kubik
3ea3b7891b drm/vmwgfx: Fix kernel-doc warnings for vmwgfx_fence
Add missing descriptions for vmw_event_fence_action_seq_passed.

This fixes the following warnings:
drivers/gpu/drm/vmwgfx/vmwgfx_fence.c:526 function parameter 'f'
	not described in 'vmw_event_fence_action_seq_passed'
drivers/gpu/drm/vmwgfx/vmwgfx_fence.c:526 function parameter 'cb'
	not described in 'vmw_event_fence_action_seq_passed'

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202507040807.jKTxWGVQ-lkp@intel.com/
Signed-off-by: Bartlomiej Kubik <kubik.bartlomiej@gmail.com>
Signed-off-by: Zack Rusin <zack.rusin@broadcom.com>
Link: https://lore.kernel.org/all/20251211181044.4098689-1-kubik.bartlomiej@gmail.com/
2026-01-07 12:31:21 -05:00
Trond Myklebust
60699ab7cb NFS/localio: Deal with page bases that are > PAGE_SIZE
When resending requests, etc, the page base can quickly grow larger than
the page size.

Fixes: 091bdcfcec ("nfs/localio: refactor iocb and iov_iter_bvec initialization")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Reviewed-by: Mike Snitzer <snitzer@kernel.org>
2026-01-07 12:28:27 -05:00
Trond Myklebust
001945a777 NFS/localio: Stop further I/O upon hitting an error
If the call into the filesystem results in an I/O error, then the next
chunk of data won't be contiguous with the end of the last successful
chunk. So break out of the I/O loop and report the results.
Currently the localio code will do this for a short read/write, but not
for an error.

Fixes: 6a218b9c31 ("nfs/localio: do not issue misaligned DIO out-of-order")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
Reviewed-by: Mike Snitzer <snitzer@kernel.org>
2026-01-07 12:28:26 -05:00
Trond Myklebust
df56ddd057 NFSv4.x: Directory delegations don't require any state recovery
The state recovery code in nfs_end_delegation_return() is intended to
allow regular files to recover cached open and lock state. It has no
function for directory delegations, and may cause corruption.

Fixes: 156b094829 ("NFS: Request a directory delegation on ACCESS, CREATE, and UNLINK")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
2026-01-07 12:28:26 -05:00
Matthew Brost
7c0c19c076 drm/xe: Validate preferred system memory placement in xe_svm_range_validate
Ensure preferred system memory placement is checked in
xe_svm_range_validate when dpagemap is NULL. Without this check, a
prefetch to system memory may become a no-op because device memory is
considered a valid placement.

Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Fixes: 238dbc9d9f ("drm/xe: Use the vma attibute drm_pagemap to select where to migrate")
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
Link: https://patch.msgid.link/20260106213443.1866797-1-matthew.brost@intel.com
2026-01-07 09:27:58 -08:00
Arnd Bergmann
aa5f91ce4f Renesas DTS updates for v6.20
- Add USB3.2 host and more RSCI serial support for the RZ/G3E SoC and
     the RZ/G3E SMARC EVK board,
   - Add display and USB3.0 host support for the RZ/V2H and RZ/V2N SoCs
     and their EVK boards,
   - Add SPI NOR Flash support for the Yuridenki-Shokai Kakip board,
   - Add PCIe support for the RZ/G3S SoC and the RZ/G3S SMARC EVK board,
   - Add SPI, interrupt controller, and DMAC support for the RZ/T2H,
     RZ/N2H, and RZ/V2N SoCs,
   - Add NMI wakeup button support for the RZ/V2N EVK board,
   - Add thermal support for the RZ/V2N SoC,
   - Add system watchdog timer support for R-Car V3H, which is reserved
     for secure firmware,
   - Add window watchdog timer support for R-Car V3M, V3H, and Gen4 SoCs,
   - Miscellaneous fixes and improvements.
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQQ9qaHoIs/1I4cXmEiKwlD9ZEnxcAUCaVvEhQAKCRCKwlD9ZEnx
 cGZiAQDwTlmwHs27zAQms6Aw+wNWxB37PcnSI/f7LiPVt5gxogEAxEaSHvoXgdp8
 JH+r2ER3kooWi4fzrOpjn8w85lH6LwM=
 =mqOa
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmlelBgACgkQmmx57+YA
 GNk7MxAAiUX1i+FOuQXRGt1xT/6YGtvidV2C/BTCEGScHqsH0cvwzrUGJgL5VdYo
 Wf5BhJedT2fFj96VJ2wbRF1HtzVB1HmY1oExObGFI03oEVcX6PDO1y1vHbKuFrz4
 1h/+q1GFC/iPrg9iBwI8alqa8VMYF5640KjsbXuWvpOM5DaCKMu3C9TJ1kpJhC5C
 VMPWoigBqphHF80Xb+iQ3jZOjvm5vRD0o1iVFIBaekuNrUEsEj8kS/16tcfuI3ol
 l4RyyXKFgCCkQpXkIYL/FLSYQrk80F2JzBwAss0g8UojY55B+19nbosPdybvAph+
 TIQn1T5QcHIK8mNs6PpDlpVfmaHWfYRb4tYtGQjy/G/XxCY8gHq8CqhwoJXBTjiW
 saKc1kXOEvnbcirhXMfI/ZKl6CLsgGK8wG+I/wYvsM7poahXwKKxjCc/SDDS2Zka
 AjN6dCEkGuIGBEBHWR4rb1cwFpP5JQGCE1YP0u+YLJO9bMWnANC1LzwbojKJ0fYd
 C/4imcQ2oWXvOcDetXkhm64uz2nmt1YLyGJerIAfc/dIkuAZ7PZbSxgsigoyfUfx
 2fzrn7a9+kBb9s9DyEUIcD8DmCwcZXxPo78wjx0RNEnTfAo2XB7AwgDgNkvTE1xJ
 y2X4UVhNt2ayvA0ZEOmOwZBYyUZMXNjiXzOcIbOoHh5YjcOpmlA=
 =jqCw
 -----END PGP SIGNATURE-----

Merge tag 'renesas-dts-for-v6.20-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel into soc/dt

Renesas DTS updates for v6.20

  - Add USB3.2 host and more RSCI serial support for the RZ/G3E SoC and
    the RZ/G3E SMARC EVK board,
  - Add display and USB3.0 host support for the RZ/V2H and RZ/V2N SoCs
    and their EVK boards,
  - Add SPI NOR Flash support for the Yuridenki-Shokai Kakip board,
  - Add PCIe support for the RZ/G3S SoC and the RZ/G3S SMARC EVK board,
  - Add SPI, interrupt controller, and DMAC support for the RZ/T2H,
    RZ/N2H, and RZ/V2N SoCs,
  - Add NMI wakeup button support for the RZ/V2N EVK board,
  - Add thermal support for the RZ/V2N SoC,
  - Add system watchdog timer support for R-Car V3H, which is reserved
    for secure firmware,
  - Add window watchdog timer support for R-Car V3M, V3H, and Gen4 SoCs,
  - Miscellaneous fixes and improvements.

* tag 'renesas-dts-for-v6.20-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-devel: (41 commits)
  arm64: dts: renesas: r8a779h0: Add WWDT nodes
  arm64: dts: renesas: r8a779g0: Add WWDT nodes
  arm64: dts: renesas: r8a779f0: Add WWDT nodes
  arm64: dts: renesas: r8a779a0: Add WWDT nodes
  arm64: dts: renesas: r8a77980: Add WWDT nodes
  arm64: dts: renesas: r8a77970: Add WWDT nodes
  arm64: dts: renesas: condor/v3hsk: Mark SWDT as reserved
  arm64: dts: renesas: r8a77980: Add SWDT node
  arm64: dts: renesas: r9a09g056: Add TSU nodes
  arm64: dts: renesas: r9a09g087: Add DMAC support
  arm64: dts: renesas: r9a09g077: Add DMAC support
  arm64: dts: renesas: r9a09g087: Add ICU support
  arm64: dts: renesas: r9a09g077: Add ICU support
  arm64: dts: renesas: r9a09g047e57-smarc: Enable rsci{2,4,9} nodes
  arm64: dts: renesas: renesas-smarc2: Move aliases to board DTS
  arm64: dts: renesas: r9a09g047: Add RSCI nodes
  ARM: dts: renesas: r9a06g032: Add Ethernet switch interrupts
  arm64: dts: renesas: r9a09g056n48-rzv2n-evk: Add NMI wakeup button support
  arm64: dts: renesas: r9a09g056: Add RSPI nodes
  arm64: dts: renesas: r9a09g056: Add DMAC nodes
  ...

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-07 18:12:47 +01:00
Sk Anirban
043fc9e961 drm/i915/selftest: Add throttle reason diagnostics to RPS selftests
Report GPU throttle reasons when RPS tests fail to reach expected
frequencies or power levels.

v2: Read the throttle value before the spinner ends (Raag)
    Add a condition before printing throttle value (Krzysztof)
v3: Extend throttle reasons debug support (Raag)
v4: Cosmetic changes (Raag)

Signed-off-by: Sk Anirban <sk.anirban@intel.com>
Reviewed-by: Raag Jadav <raag.jadav@intel.com>
Reviewed-by: Krzysztof Karas <krzysztof.karas@intel.com>
Link: https://patch.msgid.link/20251223101605.3304379-2-sk.anirban@intel.com
Signed-off-by: Matt Roper <matthew.d.roper@intel.com>
2026-01-07 09:07:06 -08:00
Arnd Bergmann
bc6fe9f0a6 First batch of ASPEED Arm devicetree changes for 6.20
New platforms:
 
 - NVIDIA MSX4 BMC
 
   The NVIDIA MSX4 HPM (host platform module) is a reference board for
   managing up to 8 PCIe connected NVIDIA GPUs via ConnectX-8 (CX8)
   SuperNICs. The BMC manages all GPUs and CX8s for both telemetry and
   firmware update via MCTP over USB. The host CPUs are dual socket Intel
   Granite Rapids processors.
 
   For more detail on this architecture:
 
   https://developer.nvidia.com/blog/nvidia-connectx-8-supernics-advance-ai-platform-architecture-with-pcie-gen6-connectivity/
 
 Updated platforms:
 
 - ast2600-evb (ASPEED): Various tidy-ups to address binding warnings
 - bletchley (Meta): Watchdog fix, tidy-ups to address binding warnings
 - clemente (Meta): HDD LED fix, GPIO line names, EEPROMs
 - harma (Meta): fanboard presence GPIO
 - santabarbara (Meta): IPMB, GPIO line names, additional IO expander
 -----BEGIN PGP SIGNATURE-----
 
 iJIEABYKADoWIQSoUT1x3bOSX/nAa8ajM9GZTrjhpgUCaVs/nBwcYW5kcmV3QGNv
 ZGVjb25zdHJ1Y3QuY29tLmF1AAoJEKMz0ZlOuOGm30YBAK1Ur/X6D5a9P5901J5c
 1FqAKC2IuXgnP9BPSBMpU4CDAP4qpwD56i2tiefFKy9LEDzrW4dyy1Zvavj0MWwp
 JqNYDA==
 =MY36
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmlekrIACgkQmmx57+YA
 GNlF8hAAj6k5jntKE4djrzY9YKSvE2csNTI25PO1/tUptFY92y5l/29m/UBSxuWo
 qcjM/O/IwIH8rJ/fr7oU4E1r3pLIGB6NKXlv01w07K+hziAjRc1WNRK5EhHflqUl
 ihF0hrKZOvplNpM0Jqav/1jXFfkW8OrA3BP5DDq4wNjFgQIB1RDMMVVf+BDvLMMa
 zVW+rGA0cwicGVElAvac7En0qe7qWbi7m6DOOSlBtytWyFgm53A5yDQVFtbmaFvF
 tjg8ZmP6bIoEKLQf7nlApEbtivzbWqpC+ICpM2A7wI7SrnJ/KzoNFLfWF8+EIYrD
 NGuch3HpHdc/XrSyRa7YW4Mw6aLVHtS4y/SVDrYOzdAbfE5FE0sGsi/5zn8pyTg3
 yvwl3M0rqWc3Uml/9yZG91/CtOvRtYUq6Zf+ICmdN/Bgt1SDMezVOOsczypDyRs1
 Avy9jaM5X1kFzmekZ5t6qGxp7MsX1kjhB2dP9zWnx7mAChxuUOZIaii3HmREB5S5
 wxG2cyORqYdsJPAWQL3R5qj6Z8pSoAw4akaoEqeOajo16VRgwHnAhlDFx4KVy/q6
 08Yds7fb5kJKhw9GXG+2/Y2z4n1sp36BjKdAQ5IpkMfxjP3qW85UqsK5x1fTlt2C
 PfvenS9LrdcxPi+44mqyR3X16h4qDNja3NkS9Djuc+lKNKMoh2o=
 =ML8C
 -----END PGP SIGNATURE-----

Merge tag 'aspeed-6.20-devicetree-0' of https://git.kernel.org/pub/scm/linux/kernel/git/bmc/linux into soc/dt

First batch of ASPEED Arm devicetree changes for 6.20

New platforms:

- NVIDIA MSX4 BMC

  The NVIDIA MSX4 HPM (host platform module) is a reference board for
  managing up to 8 PCIe connected NVIDIA GPUs via ConnectX-8 (CX8)
  SuperNICs. The BMC manages all GPUs and CX8s for both telemetry and
  firmware update via MCTP over USB. The host CPUs are dual socket Intel
  Granite Rapids processors.

  For more detail on this architecture:

  https://developer.nvidia.com/blog/nvidia-connectx-8-supernics-advance-ai-platform-architecture-with-pcie-gen6-connectivity/

Updated platforms:

- ast2600-evb (ASPEED): Various tidy-ups to address binding warnings
- bletchley (Meta): Watchdog fix, tidy-ups to address binding warnings
- clemente (Meta): HDD LED fix, GPIO line names, EEPROMs
- harma (Meta): fanboard presence GPIO
- santabarbara (Meta): IPMB, GPIO line names, additional IO expander

* tag 'aspeed-6.20-devicetree-0' of https://git.kernel.org/pub/scm/linux/kernel/git/bmc/linux:
  ARM: dts: aspeed: bletchley: Fix ADC vref property names
  ARM: dts: aspeed: bletchley: Remove unused i2c13 property
  ARM: dts: aspeed: bletchley: Remove unused pca9539 properties
  ARM: dts: aspeed: bletchley: Fix SPI GPIO property names
  ARM: dts: aspeed: bletchley: Use generic node names
  ARM: dts: aspeed: g6: Drop clocks property from arm,armv7-timer
  ARM: dts: aspeed: ast2600-evb: Tidy up A0 work-around for UART5
  ARM: dts: aspeed: g6: Drop unspecified aspeed,ast2600-udma node
  ARM: dts: aspeed: Drop syscon compatible from EDAC in g6 dtsi
  ARM: dts: aspeed: Use specified wp-inverted property for AST2600 EVB
  ARM: dts: aspeed: Remove sdhci-drive-type property from AST2600 EVB
  ARM: dts: aspeed: Add NVIDIA MSX4 HPM
  dt-bindings: arm: aspeed: Add NVIDIA MSX4 board
  ARM: dts: aspeed: clemente: move hdd_led to its own gpio-leds group
  ARM: dts: aspeed: clemente: add gpio line name to io expander
  ARM: dts: aspeed: santabarbara: Enable ipmb device for OCP debug card
  ARM: dts: aspeed: santabarbara: Add swb IO expander and gpio line names
  ARM: dts: aspeed: clemente: Add EEPROMs for boot and data drive FRUs
  ARM: dts: aspeed: harma: add fanboard presence sgpio
  ARM: dts: aspeed: bletchley: remove WDTRST1 assertion from wdt1

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-07 18:05:52 +01:00
Arnd Bergmann
12e491d4f7 This pull request contains Broadcom ARM64-based SoCs Device Tre updates
for 6.19, please pull the following:
 
 - Peter enables the random number generator on BCM2712
 
 - Stanimir adds the watchdog Device Tree node for BCM2712
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAmkLmNUACgkQh9CWnEQH
 BwTYRQ//RBuoDZpqjToA/uno7wPVQouRf0q/oqJDWiEf6njuoGR9JmDDFAyTq2bu
 bi5+MzwIBVroCF1iQHGQZp+WmE0l80m9c2NTPq+6+enPczXa4PSPhM3+SXSL6GK/
 dhDD4YjYEXwDKet6pNfxD9yny6ROVsxPa/a2IXk/g3gICwRi5x4ZqLtTcK6Eiv1M
 tE3xk49eVww1F66Kng04BJyBIBFrxNRK6avphNHqcE/CwvcESraG5xc7nyDxF6l9
 txd97weOZTDAmz7NhWym9iisL9cnuiGGLx9s0QVMNk6xE4agObWdjdNpoCy/ih/t
 DuFCWNYLiSe0Qjn1A8bGipmeJPT7T2gNBPTTAS9SinAxazg/i3zQRdjwW/EtozFr
 4R6T41N02R9chPckSZe5qk9ICduYKv8XYjJTIGhFs4jhbQ/yA2xtm7N4hC/P4mfY
 TckA+lLMYF0iKIqu72Z2mSnh5dMO5ieAc77OSQmSMI43CzzYzQWYJpYgCTYLsTTL
 nNMQnIgo8FWCGqThZJ1NQx73Pad0WYVlqRogi/dnRL5tAcJdQbYhw6OkmXVjzDf6
 bjb8UxAa41cIUx7OKnbK5mL/lyJEcQeyCS04kgABIAsA1Y5dffU3wZfIJweyFrt0
 qpSEHP/BU/++0mDPbolTaItf4EvA4nvqdXZ8GporGCqTDxqpP90=
 =1Fiq
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmlekdEACgkQmmx57+YA
 GNlqQg/+M5whtchKT1vJudPa3c8hqyt0r8yTBHi1FetMpeAm8FwZ6QY/xga5e38+
 N+ym+Sb1NwWjYDRd+fM2ea0ujKnDKRMsicwD4g0lYVQidEHI7auw0iZQI3h/OElB
 XykVok7dbM0vq+Qsavg1rB714FTBb6BchXEAux3ZIQNNP4nvil0ChaaAjDbQrcYk
 kxxV6LQoMSiFkQfp+hl9zs+fX2s2jrWAtihqmnUSyfut+I2k/IQGOo421ovLUwTi
 cJC6jG3J9CXbIUOJ5gXcphDsvGKS2AgSyn0CyETBHBkdt9HELryPYytSGM1dj7JU
 AKf9R3QcBbIkEPvd2t1kQ9inGLIuBF2A9qV10Cc8X5Um8b312squ7fYl/OO53BKe
 sbKdfwzwLKo52IGLDSL2o9Tq3AtF3obqoGmPj/8mmWxm+ekeJtFUgDhxNYSiirp0
 hjVusbQvQhB8W9F7QAi3od4X/1Iu9Q2j2mHXCvb9LkLOG0Cziias1BPZBAb4UEpA
 YzMPdLXma+GlmmPHmB1KPilcFODIGi2WneoeEYFVnouQ84urzIYXZQ4Df45Nlf3j
 qII9oF4FMG96PEYl+QkAGP+IsMPy6wm2ryjHSLGCRCeiTFsVUxbRKobTD8MRj4As
 dof0onpi73/Ml/C3sr5dDT6o8bvmSeJey5gwtGLa4UDl/YzK9jw=
 =zKhO
 -----END PGP SIGNATURE-----

Merge tag 'arm-soc/for-6.19/devicetree-arm64' of https://github.com/Broadcom/stblinux into soc/dt

This pull request contains Broadcom ARM64-based SoCs Device Tre updates
for 6.19, please pull the following:

- Peter enables the random number generator on BCM2712

- Stanimir adds the watchdog Device Tree node for BCM2712

* tag 'arm-soc/for-6.19/devicetree-arm64' of https://github.com/Broadcom/stblinux:
  arm64: dts: broadcom: bcm2712: Add watchdog DT node
  arm64: dts: broadcom: bcm2712: Enable RNG

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-07 18:03:06 +01:00
Thomas Weißschuh
f126d68819 kunit: tool: test: Don't rely on implicit working directory change
If no kunitconfig_paths are passed to LinuxSourceTree() it falls back to
DEFAULT_KUNITCONFIG_PATH. This resolution only works when the current
working directory is the root of the source tree. This works by chance
when running the full testsuite through the default unittest runner, as
some tests will change the current working directory as a side-effect of
'kunit.main()'. When running a single testcase or using pytest, which
resets the working directory for each test, this assumption breaks.

Explicitly specify an empty kunitconfig for the affected tests.

Link: https://lore.kernel.org/r/20260107015936.2316047-2-davidgow@google.com
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Reviewed-by: David Gow <davidgow@google.com>
Signed-off-by: David Gow <davidgow@google.com>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
2026-01-07 10:00:47 -07:00
Thomas Weißschuh
1cabad3a00 kunit: tool: test: Rename test_data_path() to _test_data_path()
Running the KUnit testsuite through pytest fails, as the function
test_data_path() is recognized as a test function. Its execution fails
as pytest tries to resolve the 'path' argument as a fixture which does
not exist.

Rename the function, so the helper function is not incorrectly
recognized as a test function.

Link: https://lore.kernel.org/r/20260107015936.2316047-1-davidgow@google.com
Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Reviewed-by: David Gow <davidgow@google.com>
Signed-off-by: David Gow <davidgow@google.com>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
2026-01-07 10:00:41 -07:00
Haoxiang Li
bf72b4b7bb drm/vmwgfx: Fix an error return check in vmw_compat_shader_add()
In vmw_compat_shader_add(), the return value check of vmw_shader_alloc()
is not proper. Modify the check for the return pointer 'res'.

Found by code review and compiled on ubuntu 20.04.

Fixes: 18e4a4669c ("drm/vmwgfx: Fix compat shader namespace")
Cc: stable@vger.kernel.org
Signed-off-by: Haoxiang Li <lihaoxiang@isrc.iscas.ac.cn>
Signed-off-by: Zack Rusin <zack.rusin@broadcom.com>
Link: https://patch.msgid.link/20251224091105.1569464-1-lihaoxiang@isrc.iscas.ac.cn
2026-01-07 11:58:31 -05:00
Rob Herring (Arm)
bf104037eb
arm64: dts: hisilicon: hikey960: Drop "snps,gctl-reset-quirk" and "snps,tx_de_emphasis*" properties
"snps,tx_de_emphasis" is supposed to be a u8, not a u32. Since it is big
endian, 0 will be read rather than 1. The DWC3 Linux driver simply ORs
the value if "snps,tx_de_emphasis_quirk" is set, so the 2 properties
have no effect. (The driver doesn't clear the field either which is
another problem).

"snps,gctl-reset-quirk" is not documented nor used in the driver, so
drop it as well.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Link: https://lore.kernel.org/r/20260105174002.2997615-1-robh@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-07 17:55:19 +01:00
Rob Herring (Arm)
dd1aadd29d arm64: dts: marvell: change regulator-gpio to regulator-fixed
A "regulator-gpio" must have a GPIO control, hence the name. There's no
GPIO on a couple of Marvell platforms at least as far as the DT is
defined, so change the regulator type from GPIO to fixed.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
2026-01-07 17:50:49 +01:00
Rob Herring (Arm)
e509bd5631 arm64: dts: marvell: cn9131-cf-solidwan: Add missing GPIO properties on "nxp,pca9536"
The PCA9536 is always a GPIO provider, so add the missing properties.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
2026-01-07 17:49:50 +01:00
Arnd Bergmann
c221cc877b i.MX fixes for 6.19:
- A mba8mx fix from Alexander Stein to correct Ethernet PHY IRQ trigger
   type
 - An i.MX95 fix from Carlos Song to correct I3C2 pclk
 - A couple of imx8qm-mek changes from Haibo Chen to fix light sensor
   interrupt type and usdhc2 regulator configuration
 - An imx6q-ba16 change from Ian Ray to fix RTC interrupt level
 - An imx8mp-dhcom-som change from Marek Vasut to fix sporadic Ethernet
   link bouncing caused by interruptions on the PHY reference clock
 - A couple of imx8mp-tx8p changes from Maud Spierings to fix compatible
   and eqos nvmem-cells
 - An ARM i.MX fix from Rob Herring to correct mc13xxx LED node names
 - An imx8qm-ss-dma change from Sherry Sun to correct DMA channels for
   LPUART
 - A couple of imx95-toradex-smarc changes from Vitor Soares to fix
   ethphy1 interrupt and SMARC_SDIO_WP label position
 -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCgAdFiEEFmJXigPl4LoGSz08UFdYWoewfM4FAmlUl0EACgkQUFdYWoew
 fM4rVAf8CoKCxw3wY6WWGnykrwxb7QNIr1CIfUCJC+6PtSxEsuuwMWmrhsEpvs36
 Idh5YXGl89hC/6DYr9NLy6GHKX+pp8TX5ah/bY4gIkRZ9gc3+TuU7qUv/iFkk9Q7
 DgpMvE7TUKrLrUvkX4nN5rcLFOODkz3+KrJLLi7D3GOBQA3PEQ31dXBlTRygO/WP
 AvaBkbmcCUMM8jpr0b4jcloSwMGunCzI/bpdGrBaFw4peOBCPzhYvAjtE+4FRBX+
 QaO11t7VYFSZ1Asqc944vjpNWaqLMzABjaLvOSAsERm5M8vfjkHD4cLJX7yYeCAa
 Can4xx7yVHmCzPryWH6Asnpx9BttQg==
 =im41
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmlejoMACgkQmmx57+YA
 GNm7rBAAvrbS1D81cjkuU9atoRodFtfW3MvspJRWO2VrgA2uNH9TkmYucgApyGPc
 RJyHoR0rwUIFZfBBX0A3D7CvdIu4KKLBR9Gbx7/0OshTHto7knBxW4nNEh2GUiF2
 2hXQ4dMqtCD+JmD4l4LlAAnvmZ7MYYi/s3+1t34FrTOv5GmItNv7+Vtcx6NpVkiV
 J4ihr7q8L6IB/H3XaVogDnBxqTAwbgNMuXKcPypI2NyCQoJaf8SDEZXh+sesIl+H
 CKIWjhNxs5Tei0lM277xX0C7Oz6FUUUbaKegRT7iPiljpoG6717xqyDVfIcqP7fE
 m7teGkao2faLrSN97sGzcdb6x5Q0s+PMK/a6CeZd6nerEAkfEmeg8CfL7ys75k3O
 yYXr96u4OLWk3laW5xug6ZouJXyobINzy5/FVzKayDb+vXu9iHYuA/olm1L3xGS9
 QWRvK32OCuZ8cBdSZtHfDjFXW6rgIpzhIU8H4vn0ACKNE4gjLqk9RvNW0+gb1JpE
 aH5qgTVsqQDjA9UUcjwbXirBIDBJJcbm8UMu1a1QzRbn7Dcd0hekfp9Ueb8lMww5
 BW2qRj+QXXB06qMM6GTsam2fL1GSwkUEWsl2DoLEfU3OrRiVUxzw02maOBvGJXoO
 INK+TRgFKhvVC2uI0PvNVqf52lieby5blWFH6W+gMJI2Kkn/+oo=
 =BjZ2
 -----END PGP SIGNATURE-----

Merge tag 'imx-fixes-6.19' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into arm/fixes

i.MX fixes for 6.19:

- A mba8mx fix from Alexander Stein to correct Ethernet PHY IRQ trigger
  type
- An i.MX95 fix from Carlos Song to correct I3C2 pclk
- A couple of imx8qm-mek changes from Haibo Chen to fix light sensor
  interrupt type and usdhc2 regulator configuration
- An imx6q-ba16 change from Ian Ray to fix RTC interrupt level
- An imx8mp-dhcom-som change from Marek Vasut to fix sporadic Ethernet
  link bouncing caused by interruptions on the PHY reference clock
- A couple of imx8mp-tx8p changes from Maud Spierings to fix compatible
  and eqos nvmem-cells
- An ARM i.MX fix from Rob Herring to correct mc13xxx LED node names
- An imx8qm-ss-dma change from Sherry Sun to correct DMA channels for
  LPUART
- A couple of imx95-toradex-smarc changes from Vitor Soares to fix
  ethphy1 interrupt and SMARC_SDIO_WP label position

* tag 'imx-fixes-6.19' of https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
  arm64: dts: mba8mx: Fix Ethernet PHY IRQ support
  arm64: dts: imx8qm-ss-dma: correct the dma channels of lpuart
  arm64: dts: imx8mp: Fix LAN8740Ai PHY reference clock on DH electronics i.MX8M Plus DHCOM
  arm64: dts: freescale: tx8p-ml81: fix eqos nvmem-cells
  arm64: dts: freescale: moduline-display: fix compatible
  dt-bindings: arm: fsl: moduline-display: fix compatible
  ARM: dts: imx6q-ba16: fix RTC interrupt level
  arm64: dts: freescale: imx95-toradex-smarc: fix SMARC_SDIO_WP label position
  arm64: dts: freescale: imx95-toradex-smarc: use edge trigger for ethphy1 interrupt
  arm64: dts: add off-on-delay-us for usdhc2 regulator
  arm64: dts: imx8qm-mek: correct the light sensor interrupt type to low level
  ARM: dts: nxp: imx: Fix mc13xxx LED node names
  arm64: dts: imx95: correct I3C2 pclk to IMX95_CLK_BUSWAKEUP

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-07 17:49:00 +01:00
Rob Herring (Arm)
5336444472 arm64: dts: marvell: Fix stray and typo "pinctrl-names" properties
There's several cases of "pinctrl-names" used without any "pinctrl-0"
properties. Drop them.

Fix the typo "pintrl-names" as well.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
2026-01-07 17:48:58 +01:00
Rob Herring (Arm)
e8061ea925 arm64: dts: marvell: Add missing "#phy-cells" to "usb-nop-xceiv"
The "usb-nop-xceiv" binding requires "#phy-cells" property with a value
of 0 though it is not really used. Add it where missing from Marvell
platforms.

Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Gregory CLEMENT <gregory.clement@bootlin.com>
2026-01-07 17:48:05 +01:00
Krzysztof Kozlowski
51183d3ff5
Documentation/process: maintainer-soc: Mark 'make' as commands
Improve readability of the docs by marking 'make dtbs/dtbs_check' as
shell commands.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Reviewed-by: Linus Walleij <linusw@kernel.org>
Link: https://lore.kernel.org/r/20251223142726.73417-4-krzysztof.kozlowski@oss.qualcomm.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-07 17:47:43 +01:00
Krzysztof Kozlowski
6efe5322f0
Documentation/process: maintainer-soc: Be more explicit about defconfig
It is already documented but people still send noticeable amount of
patches ignoring the rule - get_maintainers.pl does not work on
arm64/configs/defconfig or any other shared ARM defconfig.

Be more explicit, that one must not rely on typical/simple approach
here for getting To/Cc list.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Reviewed-by: Linus Walleij <linusw@kernel.org>
Link: https://lore.kernel.org/r/20251223142726.73417-3-krzysztof.kozlowski@oss.qualcomm.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-07 17:47:43 +01:00
Arnd Bergmann
902300d332 This pull request contains Broadcom ARM64-SoC Device Tree fixes for
6.19, please pull the following:
 
 - Andrea fixes the RP1 DeviceTree hierarchy and drop overlay support,
   this resolves a number of DTC warnings and other issues
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEm+Rq3+YGJdiR9yuFh9CWnEQHBwQFAmlFuWQACgkQh9CWnEQH
 BwSl9g/9EXHS5ElbrZMTzolABdvD85T6Ab0I8W0rxwagb0YDRog8o9GMplRk7V69
 ggNB9j0K/IvK/ucFjdLZbhUXztDfbrWHvb5kBMo+04J+LMu2XkAJu0t2qFL3eQHa
 FEjzmjTHoa+fGTRmIWGKgk2yBk2GnUJxit/xAeEvCxzLh9r6YDnDBQUhTtkg3ebY
 kXI4l6tUlhmpoAgBpN9gcoUfhLYO7pi2Kbsg87aKXdsiuuhszmgzKyB+RvFH2/vK
 ShmtFr/DZ0zyYmM8TrcQW3LJLbNXeZDnYuomOO+tpQvjErCza5XAPl+ogsZwQ8Bw
 Z7nca8L+9ozcxlohfWBRB/9saO5tteksH2vvcjBeZalRhCABWtzxV1YTTvSWbpHP
 poWhJjthykkUhZ+vENvQRSzv8Hku2tegO18SHPBeqgImfHo6Xghzy8+bQVxy1Jcz
 6Uvtzmj/z8yyz4N0aaY2NNz3DplOM7SpuU7tEFf/e9ZZFChCzyjMOX1YCSV8sOJ1
 ccp8o6ryWhQguSlqS2oMkE/aNwmPQTphxPXA0bOSR6lN4WUdePgwguEbi2T+6N/d
 B2MDtFm7VT/QXJFJZRmpgZC1pq43dyoHAP4shsG4Qek6sz/8lUHvb9pt8e2HICX0
 cY1taqpZrdEKTFa51Vfyl0aMEXPHoH/2+7SI3cdOlEd0+ODMRpY=
 =JCKi
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmlejZ8ACgkQmmx57+YA
 GNl+MhAArb5i/a89Se6g4ORJR9v+6mj+XgYc7lMpulU/XZafz1gNS8PqHkquG62R
 5ZYSi99E44Ibk2HvFv4SD62f8XnuUCmHgmo7dmldjpDn36FMmyTuNOoV/Iil9PzM
 kcrHx/SGIcSDdXns54r2UbWhgkq0WD5UCfrDgVYH2IPY+shzoGeSr5DUAb2Z4Z4y
 ROrnPNaxp0Z5azf44lIHW5zTl6ea6MF8s26zxchkxm8ZhoB5OEejdLKX6lQA124z
 xmFlv1xtcD7tArxT9M+4gQ1OjrWuGQw20nJDOZhaPFb47YAdOiMkEMycqYSPg7yl
 zOxGiq6OjvoAO3WKJ7kaRCg4do9YQK1GtWOYFzoMR9M+GMqxjYBlWFdm2vJsFC8/
 tRM5X+DTTiKK+4sbAolBY1tJe2iOt84mv4n91sgZ1LCywNwUndyFU6h2YmayGvRJ
 1JBeA5pv1y+qMviDzsxX3llVdNjQuL62CakFRxdNyLw2JTqGrrphEIiCFzkLqX9G
 3IWrALY40L2p4OcUP9VIRPVNe96mBuJOnILMxiB5mA0tTVrZIi9MlvZ1egL+qo2U
 PHR2TPuYMhTUogwOCEF7G+YtCgGSVAb72L3AYKGrOSgLleT/CUd79HfsLfv3Gs1j
 MTonYjRoIgSX1eFR6XHwO3+ZSeoXwvrCh98pIV/IWqMmk2nHiUA=
 =IlUv
 -----END PGP SIGNATURE-----

Merge tag 'arm-soc/for-6.19/devicetree-arm64-fixes' of https://github.com/Broadcom/stblinux into arm/fixes

This pull request contains Broadcom ARM64-SoC Device Tree fixes for
6.19, please pull the following:

- Andrea fixes the RP1 DeviceTree hierarchy and drop overlay support,
  this resolves a number of DTC warnings and other issues

* tag 'arm-soc/for-6.19/devicetree-arm64-fixes' of https://github.com/Broadcom/stblinux:
  arm64: dts: broadcom: rp1: drop RP1 overlay
  arm64: dts: broadcom: bcm2712: fix RP1 endpoint PCI topology
  misc: rp1: drop overlay support
  dt-bindings: misc: pci1de4,1: add required reg property for endpoint

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-01-07 17:45:13 +01:00
Ian Forbes
37a0cff455 drm/vmwgfx: Merge vmw_bo_release and vmw_bo_free functions
Some of the warnings need to be reordered between these two functions
in order to be correct. This has happened multiple times.
Merging them solves this problem once and for all.

Fixes: d6667f0ddf ("drm/vmwgfx: Fix handling of dumb buffers")
Signed-off-by: Ian Forbes <ian.forbes@broadcom.com>
Signed-off-by: Zack Rusin <zack.rusin@broadcom.com>
Link: https://patch.msgid.link/20260107152059.3048329-1-ian.forbes@broadcom.com
2026-01-07 11:42:25 -05:00
Ian Forbes
d9186faeae drm/vmwgfx: Fix KMS with 3D on HW version 10
HW version 10 does not have GB Surfaces so there is no backing buffer for
surface backed FBs. This would result in a nullptr dereference and crash
the driver causing a black screen.

Fixes: 965544150d ("drm/vmwgfx: Refactor cursor handling")
Signed-off-by: Ian Forbes <ian.forbes@broadcom.com>
Reviewed-by: Zack Rusin <zack.rusin@broadcom.com>
Signed-off-by: Zack Rusin <zack.rusin@broadcom.com>
Link: https://patch.msgid.link/20251114203703.1946616-1-ian.forbes@broadcom.com
2026-01-07 11:40:05 -05:00