[cgl_discussion] Re: [cgl_specs] Use case - Live patching
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.
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.
> >>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
> >>Desired Outcome
> >>Mainline kernel acceptance or distro acceptance
> >>System administrators setup the requirements on installations. On
> >>operation, system administrators apply patch with the requirement.
> >>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
> >>- 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
> >>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.
> >>Pannus project: http://pannus.sourceforge.net/
> >>Live patching implementation:
> >>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