Skip to content

Commit 9e293d4

Browse files
author
Martin KaFai Lau
committed
Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf
Cross merge bpf/master after 6.17-rc1. No conflict. Signed-off-by: Martin KaFai Lau <[email protected]>
2 parents fa47913 + 8f5ae30 commit 9e293d4

File tree

1,195 files changed

+33343
-11455
lines changed

Some content is hidden

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

1,195 files changed

+33343
-11455
lines changed

.mailmap

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -673,6 +673,7 @@ Muchun Song <[email protected]> <[email protected]>
673673
674674
Rudolf Marek <[email protected]>
675675
Rui Saraiva <[email protected]>
676+
676677
Sachin P Sant <[email protected]>
677678
Sai Prakash Ranjan <[email protected]> <[email protected]>
678679

CREDITS

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4378,6 +4378,12 @@ S: 542 West 112th Street, 5N
43784378
S: New York, New York 10025
43794379
S: USA
43804380

4381+
N: Masahiro Yamada
4382+
4383+
D: Kbuild Maintainer 2017-2025
4384+
D: Kconfig Maintainer 2018-2025
4385+
S: Japan
4386+
43814387
N: Li Yang
43824388
43834389
D: Freescale Highspeed USB device driver

Documentation/ABI/testing/sysfs-firmware-efi

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,3 +36,10 @@ Description: Displays the content of the Runtime Configuration Interface
3636
Table version 2 on Dell EMC PowerEdge systems in binary format
3737
Users: It is used by Dell EMC OpenManage Server Administrator tool to
3838
populate BIOS setup page.
39+
40+
What: /sys/firmware/efi/ovmf_debug_log
41+
Date: July 2025
42+
Contact: Gerd Hoffmann <[email protected]>, [email protected]
43+
Description: Displays the content of the OVMF debug log buffer. The file is
44+
only present in case the firmware supports logging to a memory
45+
buffer.

Documentation/ABI/testing/sysfs-fs-f2fs

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -861,3 +861,25 @@ Description: This is a read-only entry to show the value of sb.s_encoding_flags,
861861
SB_ENC_STRICT_MODE_FL 0x00000001
862862
SB_ENC_NO_COMPAT_FALLBACK_FL 0x00000002
863863
============================ ==========
864+
865+
What: /sys/fs/f2fs/<disk>/reserved_pin_section
866+
Date: June 2025
867+
Contact: "Chao Yu" <[email protected]>
868+
Description: This threshold is used to control triggering garbage collection while
869+
fallocating on pinned file, so, it can guarantee there is enough free
870+
reserved section before preallocating on pinned file.
871+
By default, the value is ovp_sections, especially, for zoned ufs, the
872+
value is 1.
873+
874+
What: /sys/fs/f2fs/<disk>/gc_boost_gc_multiple
875+
Date: June 2025
876+
Contact: "Daeho Jeong" <[email protected]>
877+
Description: Set a multiplier for the background GC migration window when F2FS GC is
878+
boosted. The range should be from 1 to the segment count in a section.
879+
Default: 5
880+
881+
What: /sys/fs/f2fs/<disk>/gc_boost_gc_greedy
882+
Date: June 2025
883+
Contact: "Daeho Jeong" <[email protected]>
884+
Description: Control GC algorithm for boost GC. 0: cost benefit, 1: greedy
885+
Default: 1

Documentation/accounting/delay-accounting.rst

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,3 +131,59 @@ Get IO accounting for pid 1, it works only with -p::
131131
linuxrc: read=65536, write=0, cancelled_write=0
132132

133133
The above command can be used with -v to get more debug information.
134+
135+
After the system starts, use `delaytop` to get the system-wide delay information,
136+
which includes system-wide PSI information and Top-N high-latency tasks.
137+
138+
`delaytop` supports sorting by CPU latency in descending order by default,
139+
displays the top 20 high-latency tasks by default, and refreshes the latency
140+
data every 2 seconds by default.
141+
142+
Get PSI information and Top-N tasks delay, since system boot::
143+
144+
bash# ./delaytop
145+
System Pressure Information: (avg10/avg60/avg300/total)
146+
CPU some: 0.0%/ 0.0%/ 0.0%/ 345(ms)
147+
CPU full: 0.0%/ 0.0%/ 0.0%/ 0(ms)
148+
Memory full: 0.0%/ 0.0%/ 0.0%/ 0(ms)
149+
Memory some: 0.0%/ 0.0%/ 0.0%/ 0(ms)
150+
IO full: 0.0%/ 0.0%/ 0.0%/ 65(ms)
151+
IO some: 0.0%/ 0.0%/ 0.0%/ 79(ms)
152+
IRQ full: 0.0%/ 0.0%/ 0.0%/ 0(ms)
153+
Top 20 processes (sorted by CPU delay):
154+
PID TGID COMMAND CPU(ms) IO(ms) SWAP(ms) RCL(ms) THR(ms) CMP(ms) WP(ms) IRQ(ms)
155+
----------------------------------------------------------------------------------------------
156+
161 161 zombie_memcg_re 1.40 0.00 0.00 0.00 0.00 0.00 0.00 0.00
157+
130 130 blkcg_punt_bio 1.37 0.00 0.00 0.00 0.00 0.00 0.00 0.00
158+
444 444 scsi_tmf_0 0.73 0.00 0.00 0.00 0.00 0.00 0.00 0.00
159+
1280 1280 rsyslogd 0.53 0.04 0.00 0.00 0.00 0.00 0.00 0.00
160+
12 12 ksoftirqd/0 0.47 0.00 0.00 0.00 0.00 0.00 0.00 0.00
161+
1277 1277 nbd-server 0.44 0.00 0.00 0.00 0.00 0.00 0.00 0.00
162+
308 308 kworker/2:2-sys 0.41 0.00 0.00 0.00 0.00 0.00 0.00 0.00
163+
55 55 netns 0.36 0.00 0.00 0.00 0.00 0.00 0.00 0.00
164+
1187 1187 acpid 0.31 0.03 0.00 0.00 0.00 0.00 0.00 0.00
165+
6184 6184 kworker/1:2-sys 0.24 0.00 0.00 0.00 0.00 0.00 0.00 0.00
166+
186 186 kaluad 0.24 0.00 0.00 0.00 0.00 0.00 0.00 0.00
167+
18 18 ksoftirqd/1 0.24 0.00 0.00 0.00 0.00 0.00 0.00 0.00
168+
185 185 kmpath_rdacd 0.23 0.00 0.00 0.00 0.00 0.00 0.00 0.00
169+
190 190 kstrp 0.23 0.00 0.00 0.00 0.00 0.00 0.00 0.00
170+
2759 2759 agetty 0.20 0.03 0.00 0.00 0.00 0.00 0.00 0.00
171+
1190 1190 kworker/0:3-sys 0.19 0.00 0.00 0.00 0.00 0.00 0.00 0.00
172+
1272 1272 sshd 0.15 0.04 0.00 0.00 0.00 0.00 0.00 0.00
173+
1156 1156 license 0.15 0.11 0.00 0.00 0.00 0.00 0.00 0.00
174+
134 134 md 0.13 0.00 0.00 0.00 0.00 0.00 0.00 0.00
175+
6142 6142 kworker/3:2-xfs 0.13 0.00 0.00 0.00 0.00 0.00 0.00 0.00
176+
177+
Dynamic interactive interface of delaytop::
178+
179+
# ./delaytop -p pid
180+
Print delayacct stats
181+
182+
# ./delaytop -P num
183+
Display the top N tasks
184+
185+
# ./delaytop -n num
186+
Set delaytop refresh frequency (num times)
187+
188+
# ./delaytop -d secs
189+
Specify refresh interval as secs

Documentation/admin-guide/device-mapper/thin-provisioning.rst

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -80,11 +80,11 @@ less sharing than average you'll need a larger-than-average metadata device.
8080

8181
As a guide, we suggest you calculate the number of bytes to use in the
8282
metadata device as 48 * $data_dev_size / $data_block_size but round it up
83-
to 2MB if the answer is smaller. If you're creating large numbers of
83+
to 2MiB if the answer is smaller. If you're creating large numbers of
8484
snapshots which are recording large amounts of change, you may find you
8585
need to increase this.
8686

87-
The largest size supported is 16GB: If the device is larger,
87+
The largest size supported is 16GiB: If the device is larger,
8888
a warning will be issued and the excess space will not be used.
8989

9090
Reloading a pool table
@@ -107,13 +107,13 @@ Using an existing pool device
107107

108108
$data_block_size gives the smallest unit of disk space that can be
109109
allocated at a time expressed in units of 512-byte sectors.
110-
$data_block_size must be between 128 (64KB) and 2097152 (1GB) and a
111-
multiple of 128 (64KB). $data_block_size cannot be changed after the
110+
$data_block_size must be between 128 (64KiB) and 2097152 (1GiB) and a
111+
multiple of 128 (64KiB). $data_block_size cannot be changed after the
112112
thin-pool is created. People primarily interested in thin provisioning
113-
may want to use a value such as 1024 (512KB). People doing lots of
114-
snapshotting may want a smaller value such as 128 (64KB). If you are
113+
may want to use a value such as 1024 (512KiB). People doing lots of
114+
snapshotting may want a smaller value such as 128 (64KiB). If you are
115115
not zeroing newly-allocated data, a larger $data_block_size in the
116-
region of 256000 (128MB) is suggested.
116+
region of 262144 (128MiB) is suggested.
117117

118118
$low_water_mark is expressed in blocks of size $data_block_size. If
119119
free space on the data device drops below this level then a dm event
@@ -291,7 +291,7 @@ i) Constructor
291291
error_if_no_space:
292292
Error IOs, instead of queueing, if no space.
293293

294-
Data block size must be between 64KB (128 sectors) and 1GB
294+
Data block size must be between 64KiB (128 sectors) and 1GiB
295295
(2097152 sectors) inclusive.
296296

297297

Documentation/admin-guide/kdump/kdump.rst

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -311,6 +311,27 @@ crashkernel syntax
311311

312312
crashkernel=0,low
313313

314+
4) crashkernel=size,cma
315+
316+
Reserve additional crash kernel memory from CMA. This reservation is
317+
usable by the first system's userspace memory and kernel movable
318+
allocations (memory balloon, zswap). Pages allocated from this memory
319+
range will not be included in the vmcore so this should not be used if
320+
dumping of userspace memory is intended and it has to be expected that
321+
some movable kernel pages may be missing from the dump.
322+
323+
A standard crashkernel reservation, as described above, is still needed
324+
to hold the crash kernel and initrd.
325+
326+
This option increases the risk of a kdump failure: DMA transfers
327+
configured by the first kernel may end up corrupting the second
328+
kernel's memory.
329+
330+
This reservation method is intended for systems that can't afford to
331+
sacrifice enough memory for standard crashkernel reservation and where
332+
less reliable and possibly incomplete kdump is preferable to no kdump at
333+
all.
334+
314335
Boot into System Kernel
315336
-----------------------
316337
1) Update the boot loader (such as grub, yaboot, or lilo) configuration

Documentation/admin-guide/kernel-parameters.txt

Lines changed: 73 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -994,6 +994,28 @@
994994
0: to disable low allocation.
995995
It will be ignored when crashkernel=X,high is not used
996996
or memory reserved is below 4G.
997+
crashkernel=size[KMG],cma
998+
[KNL, X86] Reserve additional crash kernel memory from
999+
CMA. This reservation is usable by the first system's
1000+
userspace memory and kernel movable allocations (memory
1001+
balloon, zswap). Pages allocated from this memory range
1002+
will not be included in the vmcore so this should not
1003+
be used if dumping of userspace memory is intended and
1004+
it has to be expected that some movable kernel pages
1005+
may be missing from the dump.
1006+
1007+
A standard crashkernel reservation, as described above,
1008+
is still needed to hold the crash kernel and initrd.
1009+
1010+
This option increases the risk of a kdump failure: DMA
1011+
transfers configured by the first kernel may end up
1012+
corrupting the second kernel's memory.
1013+
1014+
This reservation method is intended for systems that
1015+
can't afford to sacrifice enough memory for standard
1016+
crashkernel reservation and where less reliable and
1017+
possibly incomplete kdump is preferable to no kdump at
1018+
all.
9971019

9981020
cryptomgr.notests
9991021
[KNL] Disable crypto self-tests
@@ -1806,6 +1828,27 @@
18061828
backtraces on all cpus.
18071829
Format: 0 | 1
18081830

1831+
hash_pointers=
1832+
[KNL,EARLY]
1833+
By default, when pointers are printed to the console
1834+
or buffers via the %p format string, that pointer is
1835+
"hashed", i.e. obscured by hashing the pointer value.
1836+
This is a security feature that hides actual kernel
1837+
addresses from unprivileged users, but it also makes
1838+
debugging the kernel more difficult since unequal
1839+
pointers can no longer be compared. The choices are:
1840+
Format: { auto | always | never }
1841+
Default: auto
1842+
1843+
auto - Hash pointers unless slab_debug is enabled.
1844+
always - Always hash pointers (even if slab_debug is
1845+
enabled).
1846+
never - Never hash pointers. This option should only
1847+
be specified when debugging the kernel. Do
1848+
not use on production kernels. The boot
1849+
param "no_hash_pointers" is an alias for
1850+
this mode.
1851+
18091852
hashdist= [KNL,NUMA] Large hashes allocated during boot
18101853
are distributed across NUMA nodes. Defaults on
18111854
for 64-bit NUMA, off otherwise.
@@ -4194,18 +4237,7 @@
41944237

41954238
no_hash_pointers
41964239
[KNL,EARLY]
4197-
Force pointers printed to the console or buffers to be
4198-
unhashed. By default, when a pointer is printed via %p
4199-
format string, that pointer is "hashed", i.e. obscured
4200-
by hashing the pointer value. This is a security feature
4201-
that hides actual kernel addresses from unprivileged
4202-
users, but it also makes debugging the kernel more
4203-
difficult since unequal pointers can no longer be
4204-
compared. However, if this command-line option is
4205-
specified, then all normal pointers will have their true
4206-
value printed. This option should only be specified when
4207-
debugging the kernel. Please do not use on production
4208-
kernels.
4240+
Alias for "hash_pointers=never".
42094241

42104242
nohibernate [HIBERNATION] Disable hibernation and resume.
42114243

@@ -4557,14 +4589,33 @@
45574589
bit 2: print timer info
45584590
bit 3: print locks info if CONFIG_LOCKDEP is on
45594591
bit 4: print ftrace buffer
4560-
bit 5: print all printk messages in buffer
4592+
bit 5: replay all messages on consoles at the end of panic
45614593
bit 6: print all CPUs backtrace (if available in the arch)
45624594
bit 7: print only tasks in uninterruptible (blocked) state
45634595
*Be aware* that this option may print a _lot_ of lines,
45644596
so there are risks of losing older messages in the log.
45654597
Use this option carefully, maybe worth to setup a
45664598
bigger log buffer with "log_buf_len" along with this.
45674599

4600+
panic_sys_info= A comma separated list of extra information to be dumped
4601+
on panic.
4602+
Format: val[,val...]
4603+
Where @val can be any of the following:
4604+
4605+
tasks: print all tasks info
4606+
mem: print system memory info
4607+
timers: print timers info
4608+
locks: print locks info if CONFIG_LOCKDEP is on
4609+
ftrace: print ftrace buffer
4610+
all_bt: print all CPUs backtrace (if available in the arch)
4611+
blocked_tasks: print only tasks in uninterruptible (blocked) state
4612+
4613+
This is a human readable alternative to the 'panic_print' option.
4614+
4615+
panic_console_replay
4616+
When panic happens, replay all kernel messages on
4617+
consoles at the end of panic.
4618+
45684619
parkbd.port= [HW] Parallel port number the keyboard adapter is
45694620
connected to, default is 0.
45704621
Format: <parport#>
@@ -6603,6 +6654,10 @@
66036654
Documentation/admin-guide/mm/slab.rst.
66046655
(slub_debug legacy name also accepted for now)
66056656

6657+
Using this option implies the "no_hash_pointers"
6658+
option which can be undone by adding the
6659+
"hash_pointers=always" option.
6660+
66066661
slab_max_order= [MM]
66076662
Determines the maximum allowed order for slabs.
66086663
A high setting may cause OOMs due to memory
@@ -7032,6 +7087,11 @@
70327087
consumed by the stack hash table. By default this is set
70337088
to false.
70347089

7090+
stack_depot_max_pools= [KNL,EARLY]
7091+
Specify the maximum number of pools to use for storing
7092+
stack traces. Pools are allocated on-demand up to this
7093+
limit. Default value is 8191 pools.
7094+
70357095
stacktrace [FTRACE]
70367096
Enabled the stack tracer on boot up.
70377097

Documentation/admin-guide/sysctl/kernel.rst

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -890,7 +890,7 @@ bit 1 print system memory info
890890
bit 2 print timer info
891891
bit 3 print locks info if ``CONFIG_LOCKDEP`` is on
892892
bit 4 print ftrace buffer
893-
bit 5 print all printk messages in buffer
893+
bit 5 replay all messages on consoles at the end of panic
894894
bit 6 print all CPUs backtrace (if available in the arch)
895895
bit 7 print only tasks in uninterruptible (blocked) state
896896
===== ============================================
@@ -900,6 +900,24 @@ So for example to print tasks and memory info on panic, user can::
900900
echo 3 > /proc/sys/kernel/panic_print
901901

902902

903+
panic_sys_info
904+
==============
905+
906+
A comma separated list of extra information to be dumped on panic,
907+
for example, "tasks,mem,timers,...". It is a human readable alternative
908+
to 'panic_print'. Possible values are:
909+
910+
============= ===================================================
911+
tasks print all tasks info
912+
mem print system memory info
913+
timer print timers info
914+
lock print locks info if CONFIG_LOCKDEP is on
915+
ftrace print ftrace buffer
916+
all_bt print all CPUs backtrace (if available in the arch)
917+
blocked_tasks print only tasks in uninterruptible (blocked) state
918+
============= ===================================================
919+
920+
903921
panic_on_rcu_stall
904922
==================
905923

Documentation/core-api/mm-api.rst

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,4 +133,3 @@ More Memory Management Functions
133133
.. kernel-doc:: mm/mmu_notifier.c
134134
.. kernel-doc:: mm/balloon_compaction.c
135135
.. kernel-doc:: mm/huge_memory.c
136-
.. kernel-doc:: mm/io-mapping.c

0 commit comments

Comments
 (0)