[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH Remus v1 1/8] tools/libxc: adjust the memory allocation for migration
On Thu, 2015-05-07 at 21:42 +0800, Hongyang Yang wrote: > > On 05/07/2015 05:48 PM, Andrew Cooper wrote: > > On 07/05/15 07:37, Yang Hongyang wrote: > >> Move the memory allocation before the concrete live/nolive save > >> in order to avoid the free/alloc memory loop when using Remus. > >> > >> Signed-off-by: Yang Hongyang <yanghy@xxxxxxxxxxxxxx> > >> --- > >> tools/libxc/xc_sr_save.c | 53 > >> +++++++++++++++++++----------------------------- > >> 1 file changed, 21 insertions(+), 32 deletions(-) > >> > >> diff --git a/tools/libxc/xc_sr_save.c b/tools/libxc/xc_sr_save.c > >> index 5d9c267..7fed668 100644 > >> --- a/tools/libxc/xc_sr_save.c > >> +++ b/tools/libxc/xc_sr_save.c > >> @@ -3,6 +3,8 @@ > >> > >> #include "xc_sr_common.h" > >> > >> +DECLARE_HYPERCALL_BUFFER(unsigned long, to_send); > > > > This unfortunately causes an issue when concurrent calls to > > xc_domain_save() in the same process. While this is a highly > > ill-advised action, I did try to avoid breaking it. > > > > Please move this declaration into the ctx.save union. > > I know the best way is to put this into ctx.save union, but I haven't > found a method to put it in, the DECLARE_HYPERCALL_BUFFER macro can not > be used there, should I just define a unsigned long var at ctx.save > union, and use other macro(what macro?) define at save()? I think you need a variable of type xc_hypercall_buffer_t in the struct and then to use DECLARE_HYPERCALL_BUFFER_SHADOW in functions which need to access it. DECLARE_HYPERCALL_BUFFER_SHADOW seems to currently be unused, David added it in 60572c972b8d, I suspect to be used by migration v2, although perhaps it never was (at least not in tree yet). Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |