pkgsrc-Changes-HG archive

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

[pkgsrc/trunk]: pkgsrc/sysutils/xentools20 Sync xenio.h with kernel, and appl...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/dc250a5d6678
branches:  trunk
changeset: 499123:dc250a5d6678
user:      bouyer <bouyer%pkgsrc.org@localhost>
date:      Sat Sep 10 15:54:38 2005 +0000

description:
Sync xenio.h with kernel, and apply patch from Jed Davis on port-xen:
| libxc change #1 is to have xfrd's forked child munmap each 4MB batch
| of foreign RAM after it's done writing it, rather than unmapping only
| the last one and letting the process's exit clean up the rest.  This
| really does look like a simple mistake, and strictly speaking it's not
| that big a deal -- but on NetBSD, the foreign mappings count against
| the process's locked memory rlimit as if it were the dom0's own RAM.
|
| libxc change #2... I don't really understand the problem; it has
| something to do with live migration and the domU releasing
| pseudo-physical pages after they were sent but before it's suspended.
| Except that, for non-live mode, I think it's reporting all the holes
| in the pseudo-physical range, even though those pages haven't been
| sent.  In any case, the result is that the restoring xfrd fails to
| decrease_reservation the pages away.  And I distinctly recall this
| working at least once under Linux with Xen 2, but I have little idea
| what NetBSD might be doing differently.

Bump PKGREVISION. This, along with a up to date -current kernel,
make xm (save|restore) work properly for a linux domU.

diffstat:

 sysutils/xentools20/Makefile         |   4 ++--
 sysutils/xentools20/distinfo         |   3 ++-
 sysutils/xentools20/files/xenio.h    |   2 +-
 sysutils/xentools20/patches/patch-av |  35 +++++++++++++++++++++++++++++++++++
 4 files changed, 40 insertions(+), 4 deletions(-)

diffs (80 lines):

diff -r 05175525135e -r dc250a5d6678 sysutils/xentools20/Makefile
--- a/sysutils/xentools20/Makefile      Sat Sep 10 12:39:20 2005 +0000
+++ b/sysutils/xentools20/Makefile      Sat Sep 10 15:54:38 2005 +0000
@@ -1,9 +1,9 @@
-# $NetBSD: Makefile,v 1.18 2005/08/19 18:12:39 jlam Exp $
+# $NetBSD: Makefile,v 1.19 2005/09/10 15:54:38 bouyer Exp $
 #
 
 DISTNAME=              xen-2.0.7-src
 PKGNAME=               xentools20-2.0.7
-PKGREVISION=           1
+PKGREVISION=           2
 CATEGORIES=            sysutils
 MASTER_SITES=          http://www.cl.cam.ac.uk/Research/SRG/netos/xen/downloads/
 EXTRACT_SUFX=          .tgz
diff -r 05175525135e -r dc250a5d6678 sysutils/xentools20/distinfo
--- a/sysutils/xentools20/distinfo      Sat Sep 10 12:39:20 2005 +0000
+++ b/sysutils/xentools20/distinfo      Sat Sep 10 15:54:38 2005 +0000
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.10 2005/08/19 13:06:31 bouyer Exp $
+$NetBSD: distinfo,v 1.11 2005/09/10 15:54:38 bouyer Exp $
 
 SHA1 (xen-2.0.7-src.tgz) = 5317100e1e062961e3fee398fccbf023eb8f0337
 RMD160 (xen-2.0.7-src.tgz) = db99fb49e592df7229d4d361c48bab1d23a1d725
@@ -19,3 +19,4 @@
 SHA1 (patch-as) = 333da168af43dae9a4e8695409cbd006e7fcf097
 SHA1 (patch-at) = 0964bc7dd23ff6fcd596d6a8564d9e3033f34563
 SHA1 (patch-au) = a5eb7b34d43f57a3e1d4644e98ec571f30c56f5e
+SHA1 (patch-av) = 8de5c95093571670f3eedf71684634f999ebda54
diff -r 05175525135e -r dc250a5d6678 sysutils/xentools20/files/xenio.h
--- a/sysutils/xentools20/files/xenio.h Sat Sep 10 12:39:20 2005 +0000
+++ b/sysutils/xentools20/files/xenio.h Sat Sep 10 15:54:38 2005 +0000
@@ -83,7 +83,7 @@
 #define IOCTL_PRIVCMD_MMAPBATCH        \
     _IOW('P', 3, privcmd_mmapbatch_t)
 #define IOCTL_PRIVCMD_GET_MACH2PHYS_START_MFN \
-    _IOW('P', 4, unsigned long)
+    _IOR('P', 4, unsigned long)
 
 /*
  * @cmd: IOCTL_PRIVCMD_INITDOMAIN_EVTCHN
diff -r 05175525135e -r dc250a5d6678 sysutils/xentools20/patches/patch-av
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sysutils/xentools20/patches/patch-av      Sat Sep 10 15:54:38 2005 +0000
@@ -0,0 +1,35 @@
+$NetBSD: patch-av,v 1.1 2005/09/10 15:54:39 bouyer Exp $
+
+--- libxc/xc_linux_save.c.orig 2005-08-03 19:57:57.000000000 -0400
++++ libxc/xc_linux_save.c      2005-09-06 23:23:44.000000000 -0400
+@@ -850,11 +850,10 @@
+             } /* end of the write out for this batch */
+      
+             sent_this_iter += batch;
++            munmap(region_base, batch*PAGE_SIZE);
+ 
+         } /* end of this while loop for this iteration */
+ 
+-        munmap(region_base, batch*PAGE_SIZE);
+-
+     skip: 
+ 
+         total_sent += sent_this_iter;
+@@ -950,7 +949,7 @@
+ 
+       for ( i = 0, j = 0; i < nr_pfns; i++ )
+       {
+-          if ( ! is_mapped(live_pfn_to_mfn_table[i]) )
++          if ( ! is_mapped(live_pfn_to_mfn_table[i]) && !test_bit(i, to_fix) )
+               j++;
+       }
+ 
+@@ -962,7 +961,7 @@
+ 
+       for ( i = 0, j = 0; i < nr_pfns; )
+       {
+-          if ( ! is_mapped(live_pfn_to_mfn_table[i]) )
++          if ( ! is_mapped(live_pfn_to_mfn_table[i]) && !test_bit(i, to_fix) )
+           {
+               pfntab[j++] = i;
+           }



Home | Main Index | Thread Index | Old Index