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

Re: [PATCH v6 02/16] libs/guest: Reduce number of I/O vectors in write_batch


  • To: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
  • From: Frediano Ziglio <freddy77@xxxxxxxxx>
  • Date: Thu, 2 Jul 2026 13:31:19 +0100
  • Arc-authentication-results: i=1; mx.google.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=ySn3gMwf35pdMOoKlEwyhm0+ybEatoARftdVy4I7+6A=; fh=pmfIAu1zZ/y4MK+Ok8pH+KJi8l1vy8Cep5fL3L/xSOQ=; b=Dxhr8Lw73FhzB18WO711DnLtorlFOOJccADY0iGQfzjF5Y6DSK09A0oIDY+0QqCCY7 dd4gHllVD3BqXeDu0MKXydJl/9k3EsNU5KK8W3sWtJpUZ+x7ryb/1n1rBaSCgxCthzno naobrM6l2kFMShlqCWNVZOFSUReRoS/FaBZKVOo1I2aXNEE1van8fbi2nda2PENajvUt WuQ+wXOepElM7T7x3rGG2KBka65hxHymUhoqYICCqCEvdaNSt/HZnBbwLa687oY6Th/B FBL8N98GV3XE3tTEOIsmQzBHvz7j7x4xnKzyQdlC2NOoNcQpdRGhOwU1M3gtKO97v7JJ iw/A==; darn=lists.xenproject.org
  • Arc-seal: i=1; a=rsa-sha256; t=1782995491; cv=none; d=google.com; s=arc-20260327; b=ToXjHFqgtd9xRNZXbyw7iy2syBaNQTa6+mr0ewRd+YFNzytay3g4mFPvCGAsOPgQWN JYvD/jXg2N+kGvxG25mDB5vi60ZDP5WR+hd3U/Wk179qwRbClzsoTcjoQpsol3R1G0NF 4/Zv85qYpc9mSSbC2n8rpDBj8XjxZwoQGdoDWAX0dHaHBX0tDF6H0vzyci1EAoj5TeA8 iH6hknSHohStNPlzTBTCIRjG6SJdxsCjq/s7GqgsNgxkDqIaxKPdQSAo8CNt0dSf9Chf mvwsiEpUnEfsfLzpkEJX6zH6EOTz27xELsTQAy8qFzD5X7mE0sSMO+yziDDKjfvfbZPG y3Eg==
  • Authentication-results: eu.smtp.expurgate.cloud; dkim=pass header.s=20251104 header.d=gmail.com header.i="@gmail.com" header.h="Cc:To:Subject:Message-ID:Date:From:In-Reply-To:References:MIME-Version"
  • Cc: xen-devel@xxxxxxxxxxxxxxxxxxxx, Frediano Ziglio <frediano.ziglio@xxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Teddy Astie <teddy.astie@xxxxxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Juergen Gross <jgross@xxxxxxxx>
  • Delivery-date: Thu, 02 Jul 2026 12:31:39 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On Tue, 30 Jun 2026 at 17:41, Andrew Cooper <andrew.cooper3@xxxxxxxxxx> wrote:
>
> On 19/06/2026 2:04 pm, Frediano Ziglio wrote:
> > diff --git a/tools/libs/guest/xg_sr_save.c b/tools/libs/guest/xg_sr_save.c
> > index fdbceab52e..68ce1aeb98 100644
> > --- a/tools/libs/guest/xg_sr_save.c
> > +++ b/tools/libs/guest/xg_sr_save.c
> > @@ -97,9 +97,11 @@ static int write_batch(struct xc_sr_context *ctx)
> >      void *page, *orig_page;
> >      uint64_t *rec_pfns = NULL;
> >      struct iovec *iov = NULL; int iovcnt = 0;
> > -    struct xc_sr_rec_page_data_header hdr = { 0 };
> > -    struct xc_sr_record rec = {
> > -        .type = REC_TYPE_PAGE_DATA,
> > +    struct {
> > +        struct xc_sr_rhdr rec;
> > +        struct xc_sr_rec_page_data_header page_data;
> > +    } hdrs = {
> > +        { .type = REC_TYPE_PAGE_DATA },
>
> .rec = { .type = ... },
>
> Otherwise this is fragile to reordering.
>

Changed.
Here we are implementing a network protocol, reordering should not be
done, unless you want to break the code.

> ~Andrew

Frediano



 


Rackspace

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