Skip to content

Commit 64f7b77

Browse files
Merge patch series "Zacas/Zabha support and qspinlocks"
Alexandre Ghiti <alexghiti@rivosinc.com> says: This implements [cmp]xchgXX() macros using Zacas and Zabha extensions and finally uses those newly introduced macros to add support for qspinlocks: note that this implementation of qspinlocks satisfies the forward progress guarantee. It also uses Ziccrse to provide the qspinlock implementation. Thanks to Guo and Leonardo for their work! * b4-shazam-merge: (1314 commits) riscv: Add qspinlock support dt-bindings: riscv: Add Ziccrse ISA extension description riscv: Add ISA extension parsing for Ziccrse asm-generic: ticket-lock: Add separate ticket-lock.h asm-generic: ticket-lock: Reuse arch_spinlock_t of qspinlock riscv: Implement xchg8/16() using Zabha riscv: Implement arch_cmpxchg128() using Zacas riscv: Improve zacas fully-ordered cmpxchg() riscv: Implement cmpxchg8/16() using Zabha dt-bindings: riscv: Add Zabha ISA extension description riscv: Implement cmpxchg32/64() using Zacas riscv: Do not fail to build on byte/halfword operations with Zawrs riscv: Move cpufeature.h macros into their own header Link: https://lore.kernel.org/r/20241103145153.105097-1-alexghiti@rivosinc.com Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
2 parents 075fde5 + ab83647 commit 64f7b77

File tree

2,176 files changed

+19215
-14499
lines changed

Some content is hidden

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

2,176 files changed

+19215
-14499
lines changed

.mailmap

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,8 @@ Andrey Ryabinin <ryabinin.a.a@gmail.com> <aryabinin@virtuozzo.com>
7373
Andrzej Hajda <andrzej.hajda@intel.com> <a.hajda@samsung.com>
7474
André Almeida <andrealmeid@igalia.com> <andrealmeid@collabora.com>
7575
Andy Adamson <andros@citi.umich.edu>
76+
Andy Chiu <andybnac@gmail.com> <andy.chiu@sifive.com>
77+
Andy Chiu <andybnac@gmail.com> <taochiu@synology.com>
7678
Andy Shevchenko <andy@kernel.org> <andy@smile.org.ua>
7779
Andy Shevchenko <andy@kernel.org> <ext-andriy.shevchenko@nokia.com>
7880
Anilkumar Kolli <quic_akolli@quicinc.com> <akolli@codeaurora.org>
@@ -203,12 +205,16 @@ Ezequiel Garcia <ezequiel@vanguardiasur.com.ar> <ezequiel@collabora.com>
203205
Faith Ekstrand <faith.ekstrand@collabora.com> <jason@jlekstrand.net>
204206
Faith Ekstrand <faith.ekstrand@collabora.com> <jason.ekstrand@intel.com>
205207
Faith Ekstrand <faith.ekstrand@collabora.com> <jason.ekstrand@collabora.com>
208+
Fangrui Song <i@maskray.me> <maskray@google.com>
206209
Felipe W Damasio <felipewd@terra.com.br>
207210
Felix Kuhling <fxkuehl@gmx.de>
208211
Felix Moeller <felix@derklecks.de>
209212
Fenglin Wu <quic_fenglinw@quicinc.com> <fenglinw@codeaurora.org>
210213
Filipe Lautert <filipe@icewall.org>
211214
Finn Thain <fthain@linux-m68k.org> <fthain@telegraphics.com.au>
215+
Fiona Behrens <me@kloenk.dev>
216+
Fiona Behrens <me@kloenk.dev> <me@kloenk.de>
217+
Fiona Behrens <me@kloenk.dev> <fin@nyantec.com>
212218
Franck Bui-Huu <vagabon.xyz@gmail.com>
213219
Frank Rowand <frowand.list@gmail.com> <frank.rowand@am.sony.com>
214220
Frank Rowand <frowand.list@gmail.com> <frank.rowand@sony.com>
@@ -300,6 +306,11 @@ Jens Axboe <axboe@kernel.dk> <axboe@fb.com>
300306
Jens Axboe <axboe@kernel.dk> <axboe@meta.com>
301307
Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
302308
Jernej Skrabec <jernej.skrabec@gmail.com> <jernej.skrabec@siol.net>
309+
Jesper Dangaard Brouer <hawk@kernel.org> <brouer@redhat.com>
310+
Jesper Dangaard Brouer <hawk@kernel.org> <hawk@comx.dk>
311+
Jesper Dangaard Brouer <hawk@kernel.org> <jbrouer@redhat.com>
312+
Jesper Dangaard Brouer <hawk@kernel.org> <jdb@comx.dk>
313+
Jesper Dangaard Brouer <hawk@kernel.org> <netoptimizer@brouer.com>
303314
Jessica Zhang <quic_jesszhan@quicinc.com> <jesszhan@codeaurora.org>
304315
Jilai Wang <quic_jilaiw@quicinc.com> <jilaiw@codeaurora.org>
305316
Jiri Kosina <jikos@kernel.org> <jikos@jikos.cz>

CREDITS

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1358,10 +1358,6 @@ D: Major kbuild rework during the 2.5 cycle
13581358
D: ISDN Maintainer
13591359
S: USA
13601360

1361-
N: Gerrit Renker
1362-
E: gerrit@erg.abdn.ac.uk
1363-
D: DCCP protocol support.
1364-
13651361
N: Philip Gladstone
13661362
E: philip@gladstonefamily.net
13671363
D: Kernel / timekeeping stuff
@@ -1677,11 +1673,6 @@ W: http://www.carumba.com/
16771673
D: bug toaster (A1 sauce makes all the difference)
16781674
D: Random linux hacker
16791675

1680-
N: James Hogan
1681-
E: jhogan@kernel.org
1682-
D: Metag architecture maintainer
1683-
D: TZ1090 SoC maintainer
1684-
16851676
N: Tim Hockin
16861677
E: thockin@hockin.org
16871678
W: http://www.hockin.org/~thockin
@@ -1697,6 +1688,11 @@ D: hwmon subsystem maintainer
16971688
D: i2c-sis96x and i2c-stub SMBus drivers
16981689
S: USA
16991690

1691+
N: James Hogan
1692+
E: jhogan@kernel.org
1693+
D: Metag architecture maintainer
1694+
D: TZ1090 SoC maintainer
1695+
17001696
N: Dirk Hohndel
17011697
E: hohndel@suse.de
17021698
D: The XFree86[tm] Project
@@ -1872,6 +1868,10 @@ S: K osmidomkum 723
18721868
S: 160 00 Praha 6
18731869
S: Czech Republic
18741870

1871+
N: Seth Jennings
1872+
E: sjenning@redhat.com
1873+
D: Creation and maintenance of zswap
1874+
18751875
N: Jeremy Kerr
18761876
D: Maintainer of SPU File System
18771877

@@ -2188,19 +2188,6 @@ N: Mike Kravetz
21882188
E: mike.kravetz@oracle.com
21892189
D: Maintenance and development of the hugetlb subsystem
21902190

2191-
N: Seth Jennings
2192-
E: sjenning@redhat.com
2193-
D: Creation and maintenance of zswap
2194-
2195-
N: Dan Streetman
2196-
E: ddstreet@ieee.org
2197-
D: Maintenance and development of zswap
2198-
D: Creation and maintenance of the zpool API
2199-
2200-
N: Vitaly Wool
2201-
E: vitaly.wool@konsulko.com
2202-
D: Maintenance and development of zswap
2203-
22042191
N: Andreas S. Krebs
22052192
E: akrebs@altavista.net
22062193
D: CYPRESS CY82C693 chipset IDE, Digital's PC-Alpha 164SX boards
@@ -3191,6 +3178,11 @@ N: Ken Pizzini
31913178
E: ken@halcyon.com
31923179
D: CDROM driver "sonycd535" (Sony CDU-535/531)
31933180

3181+
N: Mathieu Poirier
3182+
E: mathieu.poirier@linaro.org
3183+
D: CoreSight kernel subsystem, Maintainer 2014-2022
3184+
D: Perf tool support for CoreSight
3185+
31943186
N: Stelian Pop
31953187
E: stelian@popies.net
31963188
P: 1024D/EDBB6147 7B36 0E07 04BC 11DC A7A0 D3F7 7185 9E7A EDBB 6147
@@ -3300,6 +3292,10 @@ S: Schlossbergring 9
33003292
S: 79098 Freiburg
33013293
S: Germany
33023294

3295+
N: Gerrit Renker
3296+
E: gerrit@erg.abdn.ac.uk
3297+
D: DCCP protocol support.
3298+
33033299
N: Thomas Renninger
33043300
E: trenn@suse.de
33053301
D: cpupowerutils
@@ -3576,11 +3572,6 @@ D: several improvements to system programs
35763572
S: Oldenburg
35773573
S: Germany
35783574

3579-
N: Mathieu Poirier
3580-
E: mathieu.poirier@linaro.org
3581-
D: CoreSight kernel subsystem, Maintainer 2014-2022
3582-
D: Perf tool support for CoreSight
3583-
35843575
N: Robert Schwebel
35853576
E: robert@schwebel.de
35863577
W: https://www.schwebel.de
@@ -3771,6 +3762,11 @@ S: Chr. Winthersvej 1 B, st.th.
37713762
S: DK-1860 Frederiksberg C
37723763
S: Denmark
37733764

3765+
N: Dan Streetman
3766+
E: ddstreet@ieee.org
3767+
D: Maintenance and development of zswap
3768+
D: Creation and maintenance of the zpool API
3769+
37743770
N: Drew Sullivan
37753771
E: drew@ss.org
37763772
W: http://www.ss.org/
@@ -4286,6 +4282,10 @@ S: Pipers Way
42864282
S: Swindon. SN3 1RJ
42874283
S: England
42884284

4285+
N: Vitaly Wool
4286+
E: vitaly.wool@konsulko.com
4287+
D: Maintenance and development of zswap
4288+
42894289
N: Chris Wright
42904290
E: chrisw@sous-sol.org
42914291
D: hacking on LSM framework and security modules.

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/arch/arm/mem_alignment.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ ones.
1212

1313
Of course this is a bad idea to rely on the alignment trap to perform
1414
unaligned memory access in general. If those access are predictable, you
15-
are better to use the macros provided by include/asm/unaligned.h. The
15+
are better to use the macros provided by include/linux/unaligned.h. The
1616
alignment trap can fixup misaligned access for the exception cases, but at
1717
a high performance cost. It better be rare.
1818

Documentation/arch/arm64/silicon-errata.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,8 @@ stable kernels.
146146
+----------------+-----------------+-----------------+-----------------------------+
147147
| ARM | Cortex-A715 | #2645198 | ARM64_ERRATUM_2645198 |
148148
+----------------+-----------------+-----------------+-----------------------------+
149+
| ARM | Cortex-A715 | #3456084 | ARM64_ERRATUM_3194386 |
150+
+----------------+-----------------+-----------------+-----------------------------+
149151
| ARM | Cortex-A720 | #3456091 | ARM64_ERRATUM_3194386 |
150152
+----------------+-----------------+-----------------+-----------------------------+
151153
| ARM | Cortex-A725 | #3456106 | ARM64_ERRATUM_3194386 |
@@ -186,6 +188,8 @@ stable kernels.
186188
+----------------+-----------------+-----------------+-----------------------------+
187189
| ARM | Neoverse-N2 | #3324339 | ARM64_ERRATUM_3194386 |
188190
+----------------+-----------------+-----------------+-----------------------------+
191+
| ARM | Neoverse-N3 | #3456111 | ARM64_ERRATUM_3194386 |
192+
+----------------+-----------------+-----------------+-----------------------------+
189193
| ARM | Neoverse-V1 | #1619801 | N/A |
190194
+----------------+-----------------+-----------------+-----------------------------+
191195
| ARM | Neoverse-V1 | #3324341 | ARM64_ERRATUM_3194386 |
@@ -289,3 +293,5 @@ stable kernels.
289293
+----------------+-----------------+-----------------+-----------------------------+
290294
| Microsoft | Azure Cobalt 100| #2253138 | ARM64_ERRATUM_2253138 |
291295
+----------------+-----------------+-----------------+-----------------------------+
296+
| Microsoft | Azure Cobalt 100| #3324339 | ARM64_ERRATUM_3194386 |
297+
+----------------+-----------------+-----------------+-----------------------------+

0 commit comments

Comments
 (0)