Skip to content

Commit 96d177c

Browse files
committed
Automatic merge of 'master' into merge (2024-10-29 13:24)
2 parents 99e7a16 + 8198375 commit 96d177c

File tree

729 files changed

+8054
-5885
lines changed

Some content is hidden

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

729 files changed

+8054
-5885
lines changed

.mailmap

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,8 @@ Andrey Ryabinin <[email protected]> <[email protected]>
7373
7474
7575
Andy Adamson <[email protected]>
76+
77+
7678
7779
7880
@@ -304,6 +306,11 @@ Jens Axboe <[email protected]> <[email protected]>
304306
305307
Jens Osterkamp <[email protected]>
306308
309+
Jesper Dangaard Brouer <[email protected]> <[email protected]>
310+
Jesper Dangaard Brouer <[email protected]> <[email protected]>
311+
Jesper Dangaard Brouer <[email protected]> <[email protected]>
312+
Jesper Dangaard Brouer <[email protected]> <[email protected]>
313+
Jesper Dangaard Brouer <[email protected]> <[email protected]>
307314
308315
309316

Documentation/admin-guide/LSM/ipe.rst

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -223,7 +223,10 @@ are signed through the PKCS#7 message format to enforce some level of
223223
authorization of the policies (prohibiting an attacker from gaining
224224
unconstrained root, and deploying an "allow all" policy). These
225225
policies must be signed by a certificate that chains to the
226-
``SYSTEM_TRUSTED_KEYRING``. With openssl, the policy can be signed by::
226+
``SYSTEM_TRUSTED_KEYRING``, or to the secondary and/or platform keyrings if
227+
``CONFIG_IPE_POLICY_SIG_SECONDARY_KEYRING`` and/or
228+
``CONFIG_IPE_POLICY_SIG_PLATFORM_KEYRING`` are enabled, respectively.
229+
With openssl, the policy can be signed by::
227230

228231
openssl smime -sign \
229232
-in "$MY_POLICY" \
@@ -266,7 +269,7 @@ in the kernel. This file is write-only and accepts a PKCS#7 signed
266269
policy. Two checks will always be performed on this policy: First, the
267270
``policy_names`` must match with the updated version and the existing
268271
version. Second the updated policy must have a policy version greater than
269-
or equal to the currently-running version. This is to prevent rollback attacks.
272+
the currently-running version. This is to prevent rollback attacks.
270273

271274
The ``delete`` file is used to remove a policy that is no longer needed.
272275
This file is write-only and accepts a value of ``1`` to delete the policy.

Documentation/admin-guide/pm/cpufreq.rst

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -425,8 +425,8 @@ This governor exposes only one tunable:
425425

426426
``rate_limit_us``
427427
Minimum time (in microseconds) that has to pass between two consecutive
428-
runs of governor computations (default: 1000 times the scaling driver's
429-
transition latency).
428+
runs of governor computations (default: 1.5 times the scaling driver's
429+
transition latency or the maximum 2ms).
430430

431431
The purpose of this tunable is to reduce the scheduler context overhead
432432
of the governor which might be excessive without it.
@@ -474,17 +474,17 @@ This governor exposes the following tunables:
474474
This is how often the governor's worker routine should run, in
475475
microseconds.
476476

477-
Typically, it is set to values of the order of 10000 (10 ms). Its
478-
default value is equal to the value of ``cpuinfo_transition_latency``
479-
for each policy this governor is attached to (but since the unit here
480-
is greater by 1000, this means that the time represented by
481-
``sampling_rate`` is 1000 times greater than the transition latency by
482-
default).
477+
Typically, it is set to values of the order of 2000 (2 ms). Its
478+
default value is to add a 50% breathing room
479+
to ``cpuinfo_transition_latency`` on each policy this governor is
480+
attached to. The minimum is typically the length of two scheduler
481+
ticks.
483482

484483
If this tunable is per-policy, the following shell command sets the time
485-
represented by it to be 750 times as high as the transition latency::
484+
represented by it to be 1.5 times as high as the transition latency
485+
(the default)::
486486

487-
# echo `$(($(cat cpuinfo_transition_latency) * 750 / 1000)) > ondemand/sampling_rate
487+
# echo `$(($(cat cpuinfo_transition_latency) * 3 / 2)) > ondemand/sampling_rate
488488

489489
``up_threshold``
490490
If the estimated CPU load is above this value (in percent), the governor

Documentation/core-api/protection-keys.rst

Lines changed: 30 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@ Pkeys Userspace (PKU) is a feature which can be found on:
1212
* Intel server CPUs, Skylake and later
1313
* Intel client CPUs, Tiger Lake (11th Gen Core) and later
1414
* Future AMD CPUs
15+
* arm64 CPUs implementing the Permission Overlay Extension (FEAT_S1POE)
1516

17+
x86_64
18+
======
1619
Pkeys work by dedicating 4 previously Reserved bits in each page table entry to
1720
a "protection key", giving 16 possible keys.
1821

@@ -28,6 +31,22 @@ register. The feature is only available in 64-bit mode, even though there is
2831
theoretically space in the PAE PTEs. These permissions are enforced on data
2932
access only and have no effect on instruction fetches.
3033

34+
arm64
35+
=====
36+
37+
Pkeys use 3 bits in each page table entry, to encode a "protection key index",
38+
giving 8 possible keys.
39+
40+
Protections for each key are defined with a per-CPU user-writable system
41+
register (POR_EL0). This is a 64-bit register encoding read, write and execute
42+
overlay permissions for each protection key index.
43+
44+
Being a CPU register, POR_EL0 is inherently thread-local, potentially giving
45+
each thread a different set of protections from every other thread.
46+
47+
Unlike x86_64, the protection key permissions also apply to instruction
48+
fetches.
49+
3150
Syscalls
3251
========
3352

@@ -38,11 +57,10 @@ There are 3 system calls which directly interact with pkeys::
3857
int pkey_mprotect(unsigned long start, size_t len,
3958
unsigned long prot, int pkey);
4059

41-
Before a pkey can be used, it must first be allocated with
42-
pkey_alloc(). An application calls the WRPKRU instruction
43-
directly in order to change access permissions to memory covered
44-
with a key. In this example WRPKRU is wrapped by a C function
45-
called pkey_set().
60+
Before a pkey can be used, it must first be allocated with pkey_alloc(). An
61+
application writes to the architecture specific CPU register directly in order
62+
to change access permissions to memory covered with a key. In this example
63+
this is wrapped by a C function called pkey_set().
4664
::
4765

4866
int real_prot = PROT_READ|PROT_WRITE;
@@ -64,9 +82,9 @@ is no longer in use::
6482
munmap(ptr, PAGE_SIZE);
6583
pkey_free(pkey);
6684

67-
.. note:: pkey_set() is a wrapper for the RDPKRU and WRPKRU instructions.
68-
An example implementation can be found in
69-
tools/testing/selftests/x86/protection_keys.c.
85+
.. note:: pkey_set() is a wrapper around writing to the CPU register.
86+
Example implementations can be found in
87+
tools/testing/selftests/mm/pkey-{arm64,powerpc,x86}.h
7088

7189
Behavior
7290
========
@@ -96,3 +114,7 @@ with a read()::
96114
The kernel will send a SIGSEGV in both cases, but si_code will be set
97115
to SEGV_PKERR when violating protection keys versus SEGV_ACCERR when
98116
the plain mprotect() permissions are violated.
117+
118+
Note that kernel accesses from a kthread (such as io_uring) will use a default
119+
value for the protection key register and so will not be consistent with
120+
userspace's value of the register or mprotect().

Documentation/devicetree/bindings/iio/dac/adi,ad5686.yaml

Lines changed: 17 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -4,49 +4,30 @@
44
$id: http://devicetree.org/schemas/iio/dac/adi,ad5686.yaml#
55
$schema: http://devicetree.org/meta-schemas/core.yaml#
66

7-
title: Analog Devices AD5360 and similar DACs
7+
title: Analog Devices AD5360 and similar SPI DACs
88

99
maintainers:
1010
- Michael Hennerich <[email protected]>
1111
- Jonathan Cameron <[email protected]>
1212

1313
properties:
1414
compatible:
15-
oneOf:
16-
- description: SPI devices
17-
enum:
18-
- adi,ad5310r
19-
- adi,ad5672r
20-
- adi,ad5674r
21-
- adi,ad5676
22-
- adi,ad5676r
23-
- adi,ad5679r
24-
- adi,ad5681r
25-
- adi,ad5682r
26-
- adi,ad5683
27-
- adi,ad5683r
28-
- adi,ad5684
29-
- adi,ad5684r
30-
- adi,ad5685r
31-
- adi,ad5686
32-
- adi,ad5686r
33-
- description: I2C devices
34-
enum:
35-
- adi,ad5311r
36-
- adi,ad5337r
37-
- adi,ad5338r
38-
- adi,ad5671r
39-
- adi,ad5675r
40-
- adi,ad5691r
41-
- adi,ad5692r
42-
- adi,ad5693
43-
- adi,ad5693r
44-
- adi,ad5694
45-
- adi,ad5694r
46-
- adi,ad5695r
47-
- adi,ad5696
48-
- adi,ad5696r
49-
15+
enum:
16+
- adi,ad5310r
17+
- adi,ad5672r
18+
- adi,ad5674r
19+
- adi,ad5676
20+
- adi,ad5676r
21+
- adi,ad5679r
22+
- adi,ad5681r
23+
- adi,ad5682r
24+
- adi,ad5683
25+
- adi,ad5683r
26+
- adi,ad5684
27+
- adi,ad5684r
28+
- adi,ad5685r
29+
- adi,ad5686
30+
- adi,ad5686r
5031

5132
reg:
5233
maxItems: 1

Documentation/devicetree/bindings/iio/dac/adi,ad5696.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
$id: http://devicetree.org/schemas/iio/dac/adi,ad5696.yaml#
55
$schema: http://devicetree.org/meta-schemas/core.yaml#
66

7-
title: Analog Devices AD5696 and similar multi-channel DACs
7+
title: Analog Devices AD5696 and similar I2C multi-channel DACs
88

99
maintainers:
1010
- Michael Auchter <[email protected]>
@@ -16,6 +16,7 @@ properties:
1616
compatible:
1717
enum:
1818
- adi,ad5311r
19+
- adi,ad5337r
1920
- adi,ad5338r
2021
- adi,ad5671r
2122
- adi,ad5675r

Documentation/devicetree/bindings/net/brcm,unimac-mdio.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ properties:
2626
- brcm,asp-v2.1-mdio
2727
- brcm,asp-v2.2-mdio
2828
- brcm,unimac-mdio
29+
- brcm,bcm6846-mdio
2930

3031
reg:
3132
minItems: 1

Documentation/devicetree/bindings/sound/davinci-mcasp-audio.yaml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -102,21 +102,21 @@ properties:
102102
default: 2
103103

104104
interrupts:
105-
oneOf:
106-
- minItems: 1
107-
items:
108-
- description: TX interrupt
109-
- description: RX interrupt
110-
- items:
111-
- description: common/combined interrupt
105+
minItems: 1
106+
maxItems: 2
112107

113108
interrupt-names:
114109
oneOf:
115-
- minItems: 1
110+
- description: TX interrupt
111+
const: tx
112+
- description: RX interrupt
113+
const: rx
114+
- description: TX and RX interrupts
116115
items:
117116
- const: tx
118117
- const: rx
119-
- const: common
118+
- description: Common/combined interrupt
119+
const: common
120120

121121
fck_parent:
122122
$ref: /schemas/types.yaml#/definitions/string

Documentation/filesystems/iomap/operations.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ The filesystem must arrange to `cancel
208208
such `reservations
209209
<https://lore.kernel.org/linux-xfs/[email protected]/>`_
210210
because writeback will not consume the reservation.
211-
The ``iomap_file_buffered_write_punch_delalloc`` can be called from a
211+
The ``iomap_write_delalloc_release`` can be called from a
212212
``->iomap_end`` function to find all the clean areas of the folios
213213
caching a fresh (``IOMAP_F_NEW``) delalloc mapping.
214214
It takes the ``invalidate_lock``.

Documentation/filesystems/netfs_library.rst

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -592,4 +592,3 @@ API Function Reference
592592

593593
.. kernel-doc:: include/linux/netfs.h
594594
.. kernel-doc:: fs/netfs/buffered_read.c
595-
.. kernel-doc:: fs/netfs/io.c

Documentation/mm/damon/maintainer-profile.rst

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -7,26 +7,26 @@ The DAMON subsystem covers the files that are listed in 'DATA ACCESS MONITOR'
77
section of 'MAINTAINERS' file.
88

99
The mailing lists for the subsystem are [email protected] and
10-
[email protected]. Patches should be made against the mm-unstable `tree
11-
<https://git.kernel.org/akpm/mm/h/mm-unstable>` whenever possible and posted to
12-
the mailing lists.
10+
[email protected]. Patches should be made against the `mm-unstable tree
11+
<https://git.kernel.org/akpm/mm/h/mm-unstable>`_ whenever possible and posted
12+
to the mailing lists.
1313

1414
SCM Trees
1515
---------
1616

1717
There are multiple Linux trees for DAMON development. Patches under
1818
development or testing are queued in `damon/next
19-
<https://git.kernel.org/sj/h/damon/next>` by the DAMON maintainer.
19+
<https://git.kernel.org/sj/h/damon/next>`_ by the DAMON maintainer.
2020
Sufficiently reviewed patches will be queued in `mm-unstable
21-
<https://git.kernel.org/akpm/mm/h/mm-unstable>` by the memory management
21+
<https://git.kernel.org/akpm/mm/h/mm-unstable>`_ by the memory management
2222
subsystem maintainer. After more sufficient tests, the patches will be queued
23-
in `mm-stable <https://git.kernel.org/akpm/mm/h/mm-stable>` , and finally
23+
in `mm-stable <https://git.kernel.org/akpm/mm/h/mm-stable>`_, and finally
2424
pull-requested to the mainline by the memory management subsystem maintainer.
2525

26-
Note again the patches for mm-unstable `tree
27-
<https://git.kernel.org/akpm/mm/h/mm-unstable>` are queued by the memory
26+
Note again the patches for `mm-unstable tree
27+
<https://git.kernel.org/akpm/mm/h/mm-unstable>`_ are queued by the memory
2828
management subsystem maintainer. If the patches requires some patches in
29-
damon/next `tree <https://git.kernel.org/sj/h/damon/next>` which not yet merged
29+
`damon/next tree <https://git.kernel.org/sj/h/damon/next>`_ which not yet merged
3030
in mm-unstable, please make sure the requirement is clearly specified.
3131

3232
Submit checklist addendum
@@ -37,25 +37,25 @@ When making DAMON changes, you should do below.
3737
- Build changes related outputs including kernel and documents.
3838
- Ensure the builds introduce no new errors or warnings.
3939
- Run and ensure no new failures for DAMON `selftests
40-
<https://github.com/awslabs/damon-tests/blob/master/corr/run.sh#L49>` and
40+
<https://github.com/damonitor/damon-tests/blob/master/corr/run.sh#L49>`_ and
4141
`kunittests
42-
<https://github.com/awslabs/damon-tests/blob/master/corr/tests/kunit.sh>`.
42+
<https://github.com/damonitor/damon-tests/blob/master/corr/tests/kunit.sh>`_.
4343

4444
Further doing below and putting the results will be helpful.
4545

4646
- Run `damon-tests/corr
47-
<https://github.com/awslabs/damon-tests/tree/master/corr>` for normal
47+
<https://github.com/damonitor/damon-tests/tree/master/corr>`_ for normal
4848
changes.
4949
- Run `damon-tests/perf
50-
<https://github.com/awslabs/damon-tests/tree/master/perf>` for performance
50+
<https://github.com/damonitor/damon-tests/tree/master/perf>`_ for performance
5151
changes.
5252

5353
Key cycle dates
5454
---------------
5555

5656
Patches can be sent anytime. Key cycle dates of the `mm-unstable
57-
<https://git.kernel.org/akpm/mm/h/mm-unstable>` and `mm-stable
58-
<https://git.kernel.org/akpm/mm/h/mm-stable>` trees depend on the memory
57+
<https://git.kernel.org/akpm/mm/h/mm-unstable>`_ and `mm-stable
58+
<https://git.kernel.org/akpm/mm/h/mm-stable>`_ trees depend on the memory
5959
management subsystem maintainer.
6060

6161
Review cadence
@@ -72,13 +72,13 @@ Mailing tool
7272
Like many other Linux kernel subsystems, DAMON uses the mailing lists
7373
([email protected] and [email protected]) as the major communication
7474
channel. There is a simple tool called `HacKerMaiL
75-
<https://github.com/damonitor/hackermail>` (``hkml``), which is for people who
75+
<https://github.com/damonitor/hackermail>`_ (``hkml``), which is for people who
7676
are not very familiar with the mailing lists based communication. The tool
7777
could be particularly helpful for DAMON community members since it is developed
7878
and maintained by DAMON maintainer. The tool is also officially announced to
7979
support DAMON and general Linux kernel development workflow.
8080

81-
In other words, `hkml <https://github.com/damonitor/hackermail>` is a mailing
81+
In other words, `hkml <https://github.com/damonitor/hackermail>`_ is a mailing
8282
tool for DAMON community, which DAMON maintainer is committed to support.
8383
Please feel free to try and report issues or feature requests for the tool to
8484
the maintainer.
@@ -98,8 +98,8 @@ slots, and attendees should reserve one of those at least 24 hours before the
9898
time slot, by reaching out to the maintainer.
9999

100100
Schedules and available reservation time slots are available at the Google `doc
101-
<https://docs.google.com/document/d/1v43Kcj3ly4CYqmAkMaZzLiM2GEnWfgdGbZAH3mi2vpM/edit?usp=sharing>`.
101+
<https://docs.google.com/document/d/1v43Kcj3ly4CYqmAkMaZzLiM2GEnWfgdGbZAH3mi2vpM/edit?usp=sharing>`_.
102102
There is also a public Google `calendar
103-
<https://calendar.google.com/calendar/u/0?cid=ZDIwOTA4YTMxNjc2MDQ3NTIyMmUzYTM5ZmQyM2U4NDA0ZGIwZjBiYmJlZGQxNDM0MmY4ZTRjOTE0NjdhZDRiY0Bncm91cC5jYWxlbmRhci5nb29nbGUuY29t>`
103+
<https://calendar.google.com/calendar/u/0?cid=ZDIwOTA4YTMxNjc2MDQ3NTIyMmUzYTM5ZmQyM2U4NDA0ZGIwZjBiYmJlZGQxNDM0MmY4ZTRjOTE0NjdhZDRiY0Bncm91cC5jYWxlbmRhci5nb29nbGUuY29t>`_
104104
that has the events. Anyone can subscribe it. DAMON maintainer will also
105105
provide periodic reminder to the mailing list ([email protected]).

0 commit comments

Comments
 (0)