[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140506110312.GA15033@xo-6d-61-c0.localdomain>
Date: Tue, 6 May 2014 13:03:12 +0200
From: Pavel Machek <pavel@....cz>
To: Jiri Slaby <jslaby@...e.cz>
Cc: linux-kernel@...r.kernel.org, jirislaby@...il.com,
Vojtech Pavlik <vojtech@...e.cz>, Michael Matz <matz@...e.de>,
Jiri Kosina <jkosina@...e.cz>, Udo Seidel <udoseidel@....de>
Subject: Re: [RFC 06/16] kgr: add Documentation
Hi!
> This is a text provided by Udo and polished.
>
> Signed-off-by: Jiri Slaby <jslaby@...e.cz>
> Cc: Udo Seidel <udoseidel@....de>
> ---
> Documentation/kgr.txt | 26 ++++++++++++++++++++++++++
> 1 file changed, 26 insertions(+)
> create mode 100644 Documentation/kgr.txt
>
> diff --git a/Documentation/kgr.txt b/Documentation/kgr.txt
> new file mode 100644
> index 000000000000..5b62415641cf
> --- /dev/null
> +++ b/Documentation/kgr.txt
> @@ -0,0 +1,26 @@
> +Live Kernel Patching with kGraft
> +--------------------------------
> +
> +Written by Udo Seidel <udoseidel at gmx dot de>
> +Based on the Blog entry by Vojtech Pavlik
> +
> +April 2014
> +
> +kGraft's developement was started by the SUSE Labs. kGraft builds on
> +technologies and ideas that are already present in the kernel: ftrace
> +and its mcount-based reserved space in function headers, the
> +INT3/IPI-NMI patching also used in jumplabels, and RCU-like update of
> +code that does not require stopping the kernel. For more information
> +about ftrace please checkout the Documentation shipped with the kernel
> +or search for howtos and explanations on the Internet.
This should really provide filename in Documentation/ directory it is refering to.
> +A kGraft patch is a kernel module and fully relies on the in-kernel
> +module loader to link the new code with the kernel. Thanks to all
> +that, the design can be nicely minimalistic.
I feel some more details would be nice here.
> +While kGraft is, by choice, limited to replacing whole functions and
> +constants they reference, this does not limit the set of code patches
> +that can be applied significantly. kGraft offers tools to assist in
> +creating the live patch modules, identifying which functions need to
> +be replaced based on a patch, and creating the patch module source
> +code. They are located in /tools/kgraft/.
For what functions it does not work? Anything used in interrupt context?
What about assembly? What happens if that function uses &label to
do some magic?
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists