Re: [Xen-devel] [PATCH v2 01/13] xsplice: Design document (v5).

2016-02-09 Thread Jan Beulich
>>> On 05.02.16 at 22:47, wrote: >> Also is using "long" here really a good idea? Shouldn't we rather use >> fixed width or ELF types? > > We can. It would look like this: > > struct xsplice_patch_func { > const unsigned char *name; > Elf64_Xword new_addr; > Elf64_Xword old_addr; >

Re: [Xen-devel] [PATCH v2 01/13] xsplice: Design document (v5).

2016-02-05 Thread Konrad Rzeszutek Wilk
I've snipped the email. I've taken your reviews in account - and just responding on some of them that I believe need more comments. ..snip.. > > +However it has severe drawbacks - the safety checks which have to make sure > > +the function is not on the stack - must also check every caller. For so

Re: [Xen-devel] [PATCH v2 01/13] xsplice: Design document (v5).

2016-02-05 Thread Konrad Rzeszutek Wilk
> >+ > >+ /->\ > >+ \ / > >+ UNLOAD <--- CHECK ---> REPLACE|APPLY --> REVERT --\ > >+\ | > >+ \---<-/ > > This doesn't make much sense to me. The actions need to be represented b

Re: [Xen-devel] [PATCH v2 01/13] xsplice: Design document (v5).

2016-02-05 Thread Konrad Rzeszutek Wilk
Hey, I applied all your comments.. > >+The `struct xen_xsplice_status` structure contains an status of payload > >which includes: > >+ > >+ * `status` - whether it has been: > >+ * *XSPLICE_STATUS_LOADED* (1) has been loaded. > >+ * *XSPLICE_STATUS_CHECKED* (2) the ELF payload safety checks

Re: [Xen-devel] [PATCH v2 01/13] xsplice: Design document (v5).

2016-02-05 Thread Jan Beulich
>>> On 14.01.16 at 22:46, wrote: > +## Patching code > + > +The first mechanism to patch that comes in mind is in-place replacement. > +That is replace the affected code with new code. Unfortunately the x86 > +ISA is variable size which places limits on how much space we have available > +to repla

Re: [Xen-devel] [PATCH v2 01/13] xsplice: Design document (v5).

2016-01-19 Thread Ross Lagerwall
On 01/14/2016 09:46 PM, Konrad Rzeszutek Wilk wrote: +## Workflow + +The expected workflows of higher-level tools that manage multiple patches +on production machines would be: + + * The first obvious task is loading all available / suggested + hotpatches around system start. I'd expect that

Re: [Xen-devel] [PATCH v2 01/13] xsplice: Design document (v5).

2016-01-19 Thread Wei Liu
I skimmed this document and managed to do some non-technical nitpicks. :-) On Thu, Jan 14, 2016 at 04:46:59PM -0500, Konrad Rzeszutek Wilk wrote: [...] > +## Patching code > + > +The first mechanism to patch that comes in mind is in-place replacement. > +That is replace the affected code with new

[Xen-devel] [PATCH v2 01/13] xsplice: Design document (v5).

2016-01-14 Thread Konrad Rzeszutek Wilk
A mechanism is required to binarily patch the running hypervisor with new opcodes that have come about due to primarily security updates. This document describes the design of the API that would allow us to upload to the hypervisor binary patches. This document has been shaped by the input from: