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

Ralf Flaxa rf at suse.de
Mon Mar 28 09:16:52 PST 2005


On Mon, Mar 28, 2005 at 09:05:54AM -0600, Corey Minyard wrote:
> Why do you think it is evil?  It is standard practice in most large 
> telecom systems as it improves availability.
> 
> -Corey
> 

This might be a valid point of view from a Telco app perspective.

I just stated a distro's point of view from a "supported" and "maintained"
angle. So even if a distro would allow that technically you would no longer
be supported running such a setup if you were to patch anything being part
of the distro. And you were aiming for distro acceptance here as was stated
in Takashi's mail below.

I just wanted to make that point very clear. If something like this is
required then don't expect our distro to be ever CGL 3.0 compliant.

> Ralf Flaxa wrote:
> 
> >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