Lines Matching full:patch
46 a live patch is called with the help of a custom ftrace handler. But there are
64 But there are more complex fixes. For example, a patch might change
65 ordering of locking in multiple functions at the same time. Or a patch
84 switch over. When a patch is enabled, livepatch enters into a
87 sequence occurs when a patch is disabled, except the tasks converge from
95 safe to patch tasks:
99 the task is patched. In most cases this will patch most or all of
128 Unless we can come up with another way to patch kthreads, architectures
132 The /sys/kernel/livepatch/<patch>/transition file shows whether a patch
133 is in transition. Only a single patch can be in transition at a given
134 time. A patch can remain in transition indefinitely, if any of the tasks
135 are stuck in the initial patch state.
138 opposite value to the /sys/kernel/livepatch/<patch>/enabled file while
140 converge back to the original patch state.
144 If a patch is in transition, this file shows 0 to indicate the task is
145 unpatched and 1 to indicate it's patched. Otherwise, if no patch is in
155 /sys/kernel/livepatch/<patch>/force attribute. Writing 1 there clears
160 tasks) and request a clearance from a patch distributor to force the transition.
162 patch, which functions are (un)patched, and which functions the blocking tasks
163 are sleeping in (/proc/<pid>/stack may help here). Removal (rmmod) of patch
166 reference count if a patch module is disabled and enabled in a loop.
186 location to switch the kthread's patch state would be at a designated
203 b) patching kthreads and idle tasks at their designated patch points.
206 user tasks and waking kthreads to patch them. But it could still be
235 The patch contains only functions that are really modified. But they
245 The patch is described by several structures that split the information
271 the patch itself and the relevant functions might be patched
279 synchronously. The whole patch is applied only when all patched
283 For more details on how the patch is applied on a per-task basis,
294 exclusive. They have the same result for the given patch but
301 The only reasonable way is to enable the patch when the livepatch kernel
308 the patch cannot get enabled.
321 /sys/kernel/livepatch/<name>. The patch is rejected when any above
350 All enabled patches might get replaced by a cumulative patch that
353 Once the new patch is enabled and the 'transition' finishes then
357 freed when the related function is not modified by the new patch
371 the previously enabled patch or even the original one. This stage is
378 patch are removed from the corresponding struct klp_ops. The ftrace handler
391 to a new patch state (patched/unpatched) without being forced it is
402 /sys/kernel/livepatch/<patch>/force attributes allow administrator to affect a
441 the return address. The first user wins. Either the probe or the patch