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

Steven Dake sdake at mvista.com
Mon Mar 28 14:19:07 PST 2005


On Mon, 2005-03-28 at 10:16, Ralf Flaxa wrote:
> 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,
>From the distro perspective, I can understand your serious discomfort
with supporting live patching of applications specific to the operating
system (and in the distributor's support domain).

The live patching feature, atleast during the specs development, was
targetd for use in carrier(and other interested parties) applications
which are supported and maintained by the carriers/others.  We  never
stated in the requirements that the distribution itself must support
live patching of the entire system.  If you point out the specific
requirement that requires or implies this, then it is something that
needs adjustment in the specification..

Perhaps wording of the intended use (for carrier applications, not for
distro upgrades) would be helpful.

If live patching then becomes a "customer issue", it is really of no
concern to a distro whether the customer chooses to patch their own
applications or not.

Regards
-steve

> > 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