[cgl_discussion] Re: [cgl_specs] Use case - Live patching

Ralf Flaxa rf at suse.de
Mon Mar 28 06:41:47 PST 2005


Speaking for SUSE/Novell I can at least say that live patching is evil
and would never be considered supported. How shall you guarantee support
or certification with such a mechanism in place?

	Ralf

On Mon, Mar 28, 2005 at 11:14:50AM +0900, Takashi Ikebe wrote:
> The following is a use case for a Live patching.  This
> addresses AVL10.0 Live patching on CGL Specification 3.0.
> Please feel free to comment / suggestion.
> 
> Takashi.
> -----------------------------------------------------------------------------------------------
> Description
> OSDL CGL specifies that carrier grade Linux shall provide the mechanism
> for dynamically replacing the symbols of a running process without
> restarting. Dynamic replacement of symbols allows a process to access
> patched functions or values without restarting and can improve process
> availability.
> 
> Desired Outcome
> Mainline kernel acceptance or distro acceptance
> 
> Participants/Roles
> System administrators setup the requirements on installations. On
> operation, system administrators apply patch with the requirement.
> 
> Scenarios
> On operation, system administrators apply patch with the requirement as
> following scenario;
> 1.System administrators make patch file from diff file or new version's
> source code.
> 2.System administrators load patch to the process with provided live
> patch tool.
> 3.System administrators activate patch to the process with provided live
> patch tool.
> 4.Confirm that the patch is correctly applied or not.
> 
> Implementation Notes
> The requirement need to have following functions;
> - The function which loads the patch file to target process's memory area.
> - The function which overwrites the branch operation code to the patch,
> on the entry point of  target process's functions which wants to fix by
> patch.
> - The function which restores overwritten branch code.
> - The function which unload the patch files.
> Through above functions, the requirement realize on-line patch to target
> process.
> The requirement need to provide on-line patch even if the process is
> multi-thread model process, or environment is SMP, and stop time of
> target process should not over  100 milliseconds.
> 
> References
> Pannus project: http://pannus.sourceforge.net/
> Live patching implementation:
> http://prdownloads.sourceforge.net/pannus/pannus_en.pdf
> 
> 
> -- 
> Takashi Ikebe
> NTT Network Service Systems Laboratories
> 9-11, Midori-Cho 3-Chome Musashino-Shi,
> Tokyo 180-8585 Japan
> Tel : +81 422 59 4246, Fax : +81 422 60 4012
> e-mail : ikebe.takashi at lab.ntt.co.jp



More information about the cgl_discussion mailing list