xref: /linux/Documentation/ABI/testing/sysfs-kernel-livepatch (revision 336088234e9f85f6221135ba698c41dbf3c9e78e)
1What:		/sys/kernel/livepatch
2Date:		Nov 2014
3KernelVersion:	3.19.0
4Contact:	live-patching@vger.kernel.org
5Description:
6		Interface for kernel live patching
7
8		The /sys/kernel/livepatch directory contains subdirectories for
9		each loaded live patch module.
10
11What:		/sys/kernel/livepatch/<patch>
12Date:		Nov 2014
13KernelVersion:	3.19.0
14Contact:	live-patching@vger.kernel.org
15Description:
16		The patch directory contains subdirectories for each kernel
17		object (vmlinux or a module) in which it patched functions.
18
19What:		/sys/kernel/livepatch/<patch>/enabled
20Date:		Nov 2014
21KernelVersion:	3.19.0
22Contact:	live-patching@vger.kernel.org
23Description:
24		A writable attribute that indicates whether the patched
25		code is currently applied.  Writing 0 will disable the patch
26		while writing 1 will re-enable the patch.
27
28What:		/sys/kernel/livepatch/<patch>/transition
29Date:		Feb 2017
30KernelVersion:	4.12.0
31Contact:	live-patching@vger.kernel.org
32Description:
33		An attribute which indicates whether the patch is currently in
34		transition.
35
36What:		/sys/kernel/livepatch/<patch>/force
37Date:		Nov 2017
38KernelVersion:	4.15.0
39Contact:	live-patching@vger.kernel.org
40Description:
41		A writable attribute that allows administrator to affect the
42		course of an existing transition. Writing 1 clears
43		TIF_PATCH_PENDING flag of all tasks and thus forces the tasks to
44		the patched or unpatched state. Administrator should not
45		use this feature without a clearance from a patch
46		distributor. Removal (rmmod) of patch modules is permanently
47		disabled when the feature is used. See
48		Documentation/livepatch/livepatch.rst for more information.
49
50What:		/sys/kernel/livepatch/<patch>/replace
51Date:		Jun 2024
52KernelVersion:	6.11.0
53Contact:	live-patching@vger.kernel.org
54Description:
55		An attribute which indicates whether the patch supports
56		atomic-replace.
57
58What:		/sys/kernel/livepatch/<patch>/stack_order
59Date:		Jan 2025
60KernelVersion:	6.14.0
61Description:
62		This attribute specifies the sequence in which live patch modules
63		are applied to the system. If multiple live patches modify the same
64		function, the implementation with the biggest 'stack_order' number
65		is used, unless a transition is currently in progress.
66
67What:		/sys/kernel/livepatch/<patch>/<object>
68Date:		Nov 2014
69KernelVersion:	3.19.0
70Contact:	live-patching@vger.kernel.org
71Description:
72		The object directory contains subdirectories for each function
73		that is patched within the object.
74
75What:		/sys/kernel/livepatch/<patch>/<object>/patched
76Date:		August 2022
77KernelVersion:	6.1.0
78Contact:	live-patching@vger.kernel.org
79Description:
80		An attribute which indicates whether the object is currently
81		patched.
82
83What:		/sys/kernel/livepatch/<patch>/<object>/<function,sympos>
84Date:		Nov 2014
85KernelVersion:	3.19.0
86Contact:	live-patching@vger.kernel.org
87Description:
88		The function directory contains attributes regarding the
89		properties and state of the patched function.
90
91		The directory name contains the patched function name and a
92		sympos number corresponding to the nth occurrence of the symbol
93		name in kallsyms for the patched object.
94
95		There are currently no such attributes.
96