13.11.2013 15:09, Ian Campbell wrote:
> For my tests guest config information is not transferred for ARM case
> from high-level stack. At the migration receiver side toolstack always
> create a new domain with vcpus=1 and default max. mem. So we have to
> send guest information as our local guest_params structure (at the
> beginning of migration).
> It is easy way to work "xl save" or "xl migrate" without modification of
> libxl level, but you may have another idea?
> Also, toolstack_restore callback is not set (NULL) for ARM case.
> So you aren't using xl to do the migration? This is what we should
> ultimately be aiming for. It is almost certainly going to require fixes
> at the libxl level though.
Some misunderstanding. We are using xl for migration. I mean that libxl
doesn't correctly transfer guest parameters: number of vcpus, memory.
At the proof-of-concept stage there was easier to transfer it inside
xc_domain_save and xc_domain_restore rather then patching libxl.
For example, we should correctly set maximum memory for destination
domain by using xc_setmaxmem hypercall. Otherwise, toolstack set it by
default calling
xc_domain_setmaxmem(ctx->xch, domid, info->target_memkb +
LIBXL_MAXMEM_CONSTANT);
(see libxl_dom.c:241). But we don't need to add LIBXL_MAXMEM_CONSTANT on
ARM, so we set it manually.
Best regards,
Evgeny