mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 12:28:41 +08:00
livepatch: Remove not longer valid limitations from the documentation
Semantic changes are possible since the commitd83a7cb375
("livepatch: change to a per-task consistency model"). Also data structures can be patched since the commit439e7271dc
("livepatch: introduce shadow variable API"). It is a high time we removed these limitations from the documentation. Signed-off-by: Petr Mladek <pmladek@suse.com> Acked-by: Miroslav Benes <mbenes@suse.cz> Acked-by: Josh Poimboeuf <jpoimboe@redhat.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
This commit is contained in:
parent
41e3bef52e
commit
a48c7709fe
@ -429,30 +429,6 @@ See Documentation/ABI/testing/sysfs-kernel-livepatch for more details.
|
||||
|
||||
The current Livepatch implementation has several limitations:
|
||||
|
||||
|
||||
+ The patch must not change the semantic of the patched functions.
|
||||
|
||||
The current implementation guarantees only that either the old
|
||||
or the new function is called. The functions are patched one
|
||||
by one. It means that the patch must _not_ change the semantic
|
||||
of the function.
|
||||
|
||||
|
||||
+ Data structures can not be patched.
|
||||
|
||||
There is no support to version data structures or anyhow migrate
|
||||
one structure into another. Also the simple consistency model does
|
||||
not allow to switch more functions atomically.
|
||||
|
||||
Once there is more complex consistency mode, it will be possible to
|
||||
use some workarounds. For example, it will be possible to use a hole
|
||||
for a new member because the data structure is aligned. Or it will
|
||||
be possible to use an existing member for something else.
|
||||
|
||||
There are no plans to add more generic support for modified structures
|
||||
at the moment.
|
||||
|
||||
|
||||
+ Only functions that can be traced could be patched.
|
||||
|
||||
Livepatch is based on the dynamic ftrace. In particular, functions
|
||||
|
Loading…
Reference in New Issue
Block a user