Skip to content

Commit 9a4b701

Browse files
authored
Merge branch 'linux-6.18.y' into linux-6.18.y-2026-04-23-net
2 parents 92c59a5 + 1417c82 commit 9a4b701

2,055 files changed

Lines changed: 623952 additions & 19408 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
File renamed without changes.

Documentation/admin-guide/kernel-parameters.txt

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -683,24 +683,6 @@
683683
cio_ignore= [S390]
684684
See Documentation/arch/s390/common_io.rst for details.
685685

686-
clearcpuid=X[,X...] [X86]
687-
Disable CPUID feature X for the kernel. See
688-
arch/x86/include/asm/cpufeatures.h for the valid bit
689-
numbers X. Note the Linux-specific bits are not necessarily
690-
stable over kernel options, but the vendor-specific
691-
ones should be.
692-
X can also be a string as appearing in the flags: line
693-
in /proc/cpuinfo which does not have the above
694-
instability issue. However, not all features have names
695-
in /proc/cpuinfo.
696-
Note that using this option will taint your kernel.
697-
Also note that user programs calling CPUID directly
698-
or using the feature without checking anything
699-
will still see it. This just prevents it from
700-
being used by the kernel or shown in /proc/cpuinfo.
701-
Also note the kernel might malfunction if you disable
702-
some critical bits.
703-
704686
clk_ignore_unused
705687
[CLK]
706688
Prevents the clock framework from automatically gating

Documentation/admin-guide/mm/damon/reclaim.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,10 @@ of parametrs except ``enabled`` again. Once the re-reading is done, this
7171
parameter is set as ``N``. If invalid parameters are found while the
7272
re-reading, DAMON_RECLAIM will be disabled.
7373

74+
Once ``Y`` is written to this parameter, the user must not write to any
75+
parameters until reading ``commit_inputs`` again returns ``N``. If users
76+
violate this rule, the kernel may exhibit undefined behavior.
77+
7478
min_age
7579
-------
7680

Documentation/admin-guide/pm/intel_pstate.rst

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -348,11 +348,12 @@ HyperThreading (HT) in the context of Intel processors, is enabled on at least
348348
one core, ``intel_pstate`` assigns performance-based priorities to CPUs. Namely,
349349
the priority of a given CPU reflects its highest HWP performance level which
350350
causes the CPU scheduler to generally prefer more performant CPUs, so the less
351-
performant CPUs are used when the other ones are fully loaded. However, SMT
352-
siblings (that is, logical CPUs sharing one physical core) are treated in a
353-
special way such that if one of them is in use, the effective priority of the
354-
other ones is lowered below the priorities of the CPUs located in the other
355-
physical cores.
351+
performant CPUs are used when the other ones are fully loaded. SMT siblings
352+
(that is, logical CPUs sharing one physical core) are given the same priority.
353+
The scheduler can pull tasks from lower-priority cores and place them on any
354+
sibling. Since the scheduler spreads tasks among physical cores, tasks will be
355+
placed on the SMT siblings of physical cores only after all physical cores are
356+
busy.
356357

357358
This approach maximizes performance in the majority of cases, but unfortunately
358359
it also leads to excessive energy usage in some important scenarios, like video

Documentation/arch/arm64/silicon-errata.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -202,6 +202,8 @@ stable kernels.
202202
+----------------+-----------------+-----------------+-----------------------------+
203203
| ARM | Neoverse-V3AE | #3312417 | ARM64_ERRATUM_3194386 |
204204
+----------------+-----------------+-----------------+-----------------------------+
205+
| ARM | C1-Pro | #4193714 | ARM64_ERRATUM_4193714 |
206+
+----------------+-----------------+-----------------+-----------------------------+
205207
| ARM | MMU-500 | #841119,826419 | ARM_SMMU_MMU_500_CPRE_ERRATA|
206208
| | | #562869,1047329 | |
207209
+----------------+-----------------+-----------------+-----------------------------+

Documentation/arch/x86/cpuinfo.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,10 @@ to disable features using the feature number as defined in
187187
Protection can be disabled using clearcpuid=514. The number 514 is calculated
188188
from #define X86_FEATURE_UMIP (16*32 + 2).
189189

190+
DO NOT USE this cmdline option in production - it is meant to be used only as
191+
a quick'n'dirty debugging aid to rule out a feature-enabling code is the
192+
culprit. If you use it, it'll taint the kernel.
193+
190194
In addition, there exists a variety of custom command-line parameters that
191195
disable specific features. The list of parameters includes, but is not limited
192196
to, nofsgsbase, nosgx, noxsave, etc. 5-level paging can also be disabled using

Documentation/crypto/krb5.rst

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -158,13 +158,22 @@ returned.
158158
When a message has been received, the location and size of the data with the
159159
message can be determined by calling::
160160

161-
void crypto_krb5_where_is_the_data(const struct krb5_enctype *krb5,
162-
enum krb5_crypto_mode mode,
163-
size_t *_offset, size_t *_len);
161+
int crypto_krb5_where_is_the_data(const struct krb5_enctype *krb5,
162+
enum krb5_crypto_mode mode,
163+
size_t *_offset, size_t *_len);
164164

165165
The caller provides the offset and length of the message to the function, which
166166
then alters those values to indicate the region containing the data (plus any
167-
padding). It is up to the caller to determine how much padding there is.
167+
padding). It is up to the caller to determine how much padding there is. The
168+
function returns an error if the length is too small or if the mode is
169+
unsupported. An additional function::
170+
171+
int crypto_krb5_check_data_len(const struct krb5_enctype *krb5,
172+
enum krb5_crypto_mode mode,
173+
size_t len, size_t min_content);
174+
175+
is provided to just do a basic check that the decrypted/verified message would
176+
have a sufficient minimum payload.
168177

169178
Preparation Functions
170179
---------------------

Documentation/crypto/userspace-if.rst

Lines changed: 13 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,15 @@ performed by the consumer:
8080
system calls to send data to the kernel or obtain data from the
8181
kernel, the file descriptor returned by accept must be used.
8282

83+
.. caution::
84+
85+
Support for hardware cryptographic accelerators has been removed from
86+
AF_ALG. Only algorithms implemented in software are now accessible
87+
through this interface. Hardware accelerator drivers are frequently
88+
buggy, and removing their exposure via AF_ALG reduces the kernel's
89+
attack surface. This means AF_ALG no longer fulfills its original
90+
purpose of providing access to off-CPU cryptography.
91+
8392
In-place Cipher operation
8493
-------------------------
8594

@@ -328,33 +337,10 @@ CRYPTO_USER_API_RNG_CAVP option:
328337
Zero-Copy Interface
329338
-------------------
330339

331-
In addition to the send/write/read/recv system call family, the AF_ALG
332-
interface can be accessed with the zero-copy interface of
333-
splice/vmsplice. As the name indicates, the kernel tries to avoid a copy
334-
operation into kernel space.
335-
336-
The zero-copy operation requires data to be aligned at the page
337-
boundary. Non-aligned data can be used as well, but may require more
338-
operations of the kernel which would defeat the speed gains obtained
339-
from the zero-copy interface.
340-
341-
The system-inherent limit for the size of one zero-copy operation is 16
342-
pages. If more data is to be sent to AF_ALG, user space must slice the
343-
input into segments with a maximum size of 16 pages.
344-
345-
Zero-copy can be used with the following code example (a complete
346-
working example is provided with libkcapi):
347-
348-
::
349-
350-
int pipes[2];
351-
352-
pipe(pipes);
353-
/* input data in iov */
354-
vmsplice(pipes[1], iov, iovlen, SPLICE_F_GIFT);
355-
/* opfd is the file descriptor returned from accept() system call */
356-
splice(pipes[0], NULL, opfd, NULL, ret, 0);
357-
read(opfd, out, outlen);
340+
AF_ALG used to have zero-copy support, but it was removed due to it being a
341+
frequent source of vulnerabilities. For backwards compatibility the splice()
342+
and sendfile() system calls are still supported, but the kernel will make an
343+
internal copy of the data before passing it to the crypto code.
358344

359345

360346
Setsockopt Interface

Documentation/devicetree/bindings/display/ti/ti,am65x-dss.yaml

Lines changed: 52 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -36,34 +36,50 @@ properties:
3636
reg:
3737
description:
3838
Addresses to each DSS memory region described in the SoC's TRM.
39-
items:
40-
- description: common DSS register area
41-
- description: VIDL1 light video plane
42-
- description: VID video plane
43-
- description: OVR1 overlay manager for vp1
44-
- description: OVR2 overlay manager for vp2
45-
- description: VP1 video port 1
46-
- description: VP2 video port 2
47-
- description: common1 DSS register area
39+
oneOf:
40+
- items:
41+
- description: common DSS register area
42+
- description: VIDL1 light video plane
43+
- description: VID video plane
44+
- description: OVR1 overlay manager for vp1
45+
- description: OVR2 overlay manager for vp2
46+
- description: VP1 video port 1
47+
- description: VP2 video port 2
48+
- description: common1 DSS register area
49+
- items:
50+
- description: common DSS register area
51+
- description: VIDL1 light video plane
52+
- description: OVR1 overlay manager for vp1
53+
- description: VP1 video port 1
54+
- description: common1 DSS register area
4855

4956
reg-names:
50-
items:
51-
- const: common
52-
- const: vidl1
53-
- const: vid
54-
- const: ovr1
55-
- const: ovr2
56-
- const: vp1
57-
- const: vp2
58-
- const: common1
57+
oneOf:
58+
- items:
59+
- const: common
60+
- const: vidl1
61+
- const: vid
62+
- const: ovr1
63+
- const: ovr2
64+
- const: vp1
65+
- const: vp2
66+
- const: common1
67+
- items:
68+
- const: common
69+
- const: vidl1
70+
- const: ovr1
71+
- const: vp1
72+
- const: common1
5973

6074
clocks:
75+
minItems: 2
6176
items:
6277
- description: fck DSS functional clock
6378
- description: vp1 Video Port 1 pixel clock
6479
- description: vp2 Video Port 2 pixel clock
6580

6681
clock-names:
82+
minItems: 2
6783
items:
6884
- const: fck
6985
- const: vp1
@@ -180,6 +196,24 @@ allOf:
180196
ports:
181197
properties:
182198
port@1: false
199+
reg:
200+
maxItems: 5
201+
reg-names:
202+
maxItems: 5
203+
clocks:
204+
maxItems: 2
205+
clock-names:
206+
maxItems: 2
207+
else:
208+
properties:
209+
reg:
210+
minItems: 8
211+
reg-names:
212+
minItems: 8
213+
clocks:
214+
minItems: 3
215+
clock-names:
216+
minItems: 3
183217

184218
- if:
185219
properties:

Documentation/devicetree/bindings/interrupt-controller/arm,gic-v3.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ properties:
5050
The 2nd cell contains the interrupt number for the interrupt type.
5151
SPI interrupts are in the range [0-987]. PPI interrupts are in the
5252
range [0-15]. Extended SPI interrupts are in the range [0-1023].
53-
Extended PPI interrupts are in the range [0-127].
53+
Extended PPI interrupts are in the range [0-63].
5454
5555
The 3rd cell is the flags, encoded as follows:
5656
bits[3:0] trigger type and level flags.

0 commit comments

Comments
 (0)