[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH 1 of 2] tools/libxc: Remus Checkpoint Compression


  • To: Shriram Rajagopalan <rshriram@xxxxxxxxx>
  • From: George Dunlap <George.Dunlap@xxxxxxxxxxxxx>
  • Date: Fri, 17 Jun 2011 10:35:12 +0100
  • Cc: xen-devel@xxxxxxxxxxxxxxxxxxx, ian.jackson@xxxxxxxxxxxxx
  • Delivery-date: Fri, 17 Jun 2011 02:35:54 -0700
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=LT1OkcaMTVb1VzSh0lQaVlu+zYM2zBcdhI95CcCq9IRgdt0gDm3v6SM4XxCVjzOHa8 7Pa9unOJhDFlQ0E8lwjafpRmeJ4mu8q/8Jk/UbKsc/SEFcnb5NYmT6N2lAUnAs4biljc WIEdIgyFSFqTO58/EEg8irXkJ1qHDTR4kireQ=
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

On Thu, Jun 16, 2011 at 4:50 PM, Shriram Rajagopalan <rshriram@xxxxxxxxx> wrote:
> @@ -846,6 +881,9 @@
>     if (!countpages)
>         return count;
>
> +    if (buf->compression)
> +        return pagebuf_get_one(xch, ctx, buf, fd, dom);

I'm having trouble understanding the logic of this one.  What's
supposed to be going on here?


> @@ -1257,6 +1310,11 @@
>         PERROR("read: p2m_size");
>         goto out;
>     }
> +    if ( RDEXACT(io_fd, &remus_flags, sizeof(uint32_t)) )
> +    {
> +        PERROR("read: remus_flags");
> +        goto out;
> +    }

Won't this break save/restore/migrate compatibility with older
versions of Xen (which won't be sending this word)?  This should
probably be sent as one of the XC_SAVE_ID_* numbers.


> @@ -1076,9 +1150,11 @@
>     }
>
>   copypages:
> -#define wrexact(fd, buf, len) write_buffer(xch, last_iter, &ob, (fd), (buf), 
> (len))
> -#define wruncached(fd, live, buf, len) write_uncached(xch, last_iter, &ob, 
> (fd), (buf), (len))
> +#define wrexact(fd, buf, len) write_buffer(xch, last_iter, ob, (fd), (buf), 
> (len))
> +#define wruncached(fd, live, buf, len) write_uncached(xch, last_iter, ob, 
> (fd), (buf), (len))
> +#define wrcompressed(fd) write_compressed(xch, remus_ctx, last_iter, ob, 
> (fd))

Hmm -- this seems a bit weird to have "default" values, but you're
following the convention here, so I guess OK...

> diff -r 23c068b10923 -r 5dbafaf24c70 tools/libxc/xenguest.h
> --- a/tools/libxc/xenguest.h    Wed Jun 15 16:16:41 2011 +0100
> +++ b/tools/libxc/xenguest.h    Thu Jun 16 08:28:15 2011 -0700
> @@ -29,6 +29,7 @@
>  #define XCFLAGS_STDVGA    8
>  #define X86_64_B_SIZE   64
>  #define X86_32_B_SIZE   32
> +#define XCFLAGS_REMUS_COMPRESS    16

<nitpick>This should be with the other XCFLAGS, not after the byte
size...</nitpick>

 -George Dunlap

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.