From win-pv-devel-bounces@lists.xenproject.org Wed Apr 01 08:46:49 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 01 Apr 2015 08:46:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YdEIT-0004bg-AR; Wed, 01 Apr 2015 08:46:49 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YdEIR-0004bO-A1
	for win-pv-devel@lists.xenproject.org; Wed, 01 Apr 2015 08:46:47 +0000
Received: from [85.158.139.211] by server-3.bemta-5.messagelabs.com id
	51/9F-30545-670BB155; Wed, 01 Apr 2015 08:46:46 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-2.tower-206.messagelabs.com!1427878006!13099988!1
X-Originating-IP: [74.125.82.50]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 32215 invoked from network); 1 Apr 2015 08:46:46 -0000
Received: from mail-wg0-f50.google.com (HELO mail-wg0-f50.google.com)
	(74.125.82.50)
	by server-2.tower-206.messagelabs.com with RC4-SHA encrypted SMTP;
	1 Apr 2015 08:46:46 -0000
Received: by wgoe14 with SMTP id e14so45269220wgo.0
	for <win-pv-devel@lists.xenproject.org>;
	Wed, 01 Apr 2015 01:46:45 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id;
	bh=c4enUETU4o++GtCo/Nq85IGF59ikPGdk4p8/63eWO6k=;
	b=LVsrY/JW1ILlw/xih4f0l97HtV9xUCG4Ij8HuP1ub+W41CpLZc7p7yb5CoYM+D8nD3
	h7OgzrLIDeWbjbVXWsW02H+ka7/F3ZT2YZ7Ve7ZGWM4SgYlUCLymRRd1aO9FgPtPWCTO
	kw8h6NEELw1c6ir0qErB4t9odQJBY5Sw2nyPIfj/14L56n2wrlB4iIJljqUzbYN98/wL
	Z4HW0fdiLbdWKl3aj82v2XWqP7BeZ900F5ihGeCHJqujtMXg08i2NutPmuZFfMWcIJbs
	3UciCR8nVRIwbVpE1+r0nvGgvuZk7R6twPQQqLRRf9CMKDZ+HS7Q1Rt/LQjiCZktHVCt
	k7eQ==
X-Received: by 10.181.29.67 with SMTP id ju3mr13114050wid.82.1427878005827;
	Wed, 01 Apr 2015 01:46:45 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id at4sm1646301wjc.16.2015.04.01.01.46.44
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Wed, 01 Apr 2015 01:46:45 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Wed,  1 Apr 2015 09:46:35 +0100
Message-Id: <1427877995-10112-1-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH] Make sure SYNC per-processor structures are
	zeroed after resume
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Since the per-processor data in the SYNC code was split out from the
main context structure, the code that zeroes that structure on resume
no longer clears the per-processor Exit flag. This means that a multi-
vcpu VM can only be suspended once; subsequent attempts will fail.
This patch fixes the problem by zeroing the full page containing the SYNC
context structure and any per-processor data.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/xenbus/sync.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/xenbus/sync.c b/src/xenbus/sync.c
index 835b46b..661aabe 100644
--- a/src/xenbus/sync.c
+++ b/src/xenbus/sync.c
@@ -255,7 +255,7 @@ SyncCapture(
 
     Trace("====> (%u:%u)\n", Group, Number);
 
-    ASSERT(IsZeroMemory(Context, sizeof (SYNC_CONTEXT)));
+    ASSERT(IsZeroMemory(Context, PAGE_SIZE));
 
     Context->Sequence++;
     Context->CompletionCount = 0;
@@ -427,7 +427,7 @@ SyncRelease(
         KeMemoryBarrier();
     }
 
-    RtlZeroMemory(Context, sizeof (SYNC_CONTEXT));
+    RtlZeroMemory(Context, PAGE_SIZE);
 
     Index = KeGetCurrentProcessorNumberEx(NULL);
     __SyncRelease(Index);
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 01 08:46:49 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 01 Apr 2015 08:46:49 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YdEIT-0004bg-AR; Wed, 01 Apr 2015 08:46:49 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YdEIR-0004bO-A1
	for win-pv-devel@lists.xenproject.org; Wed, 01 Apr 2015 08:46:47 +0000
Received: from [85.158.139.211] by server-3.bemta-5.messagelabs.com id
	51/9F-30545-670BB155; Wed, 01 Apr 2015 08:46:46 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-2.tower-206.messagelabs.com!1427878006!13099988!1
X-Originating-IP: [74.125.82.50]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 32215 invoked from network); 1 Apr 2015 08:46:46 -0000
Received: from mail-wg0-f50.google.com (HELO mail-wg0-f50.google.com)
	(74.125.82.50)
	by server-2.tower-206.messagelabs.com with RC4-SHA encrypted SMTP;
	1 Apr 2015 08:46:46 -0000
Received: by wgoe14 with SMTP id e14so45269220wgo.0
	for <win-pv-devel@lists.xenproject.org>;
	Wed, 01 Apr 2015 01:46:45 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id;
	bh=c4enUETU4o++GtCo/Nq85IGF59ikPGdk4p8/63eWO6k=;
	b=LVsrY/JW1ILlw/xih4f0l97HtV9xUCG4Ij8HuP1ub+W41CpLZc7p7yb5CoYM+D8nD3
	h7OgzrLIDeWbjbVXWsW02H+ka7/F3ZT2YZ7Ve7ZGWM4SgYlUCLymRRd1aO9FgPtPWCTO
	kw8h6NEELw1c6ir0qErB4t9odQJBY5Sw2nyPIfj/14L56n2wrlB4iIJljqUzbYN98/wL
	Z4HW0fdiLbdWKl3aj82v2XWqP7BeZ900F5ihGeCHJqujtMXg08i2NutPmuZFfMWcIJbs
	3UciCR8nVRIwbVpE1+r0nvGgvuZk7R6twPQQqLRRf9CMKDZ+HS7Q1Rt/LQjiCZktHVCt
	k7eQ==
X-Received: by 10.181.29.67 with SMTP id ju3mr13114050wid.82.1427878005827;
	Wed, 01 Apr 2015 01:46:45 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id at4sm1646301wjc.16.2015.04.01.01.46.44
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Wed, 01 Apr 2015 01:46:45 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Wed,  1 Apr 2015 09:46:35 +0100
Message-Id: <1427877995-10112-1-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH] Make sure SYNC per-processor structures are
	zeroed after resume
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Since the per-processor data in the SYNC code was split out from the
main context structure, the code that zeroes that structure on resume
no longer clears the per-processor Exit flag. This means that a multi-
vcpu VM can only be suspended once; subsequent attempts will fail.
This patch fixes the problem by zeroing the full page containing the SYNC
context structure and any per-processor data.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/xenbus/sync.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/xenbus/sync.c b/src/xenbus/sync.c
index 835b46b..661aabe 100644
--- a/src/xenbus/sync.c
+++ b/src/xenbus/sync.c
@@ -255,7 +255,7 @@ SyncCapture(
 
     Trace("====> (%u:%u)\n", Group, Number);
 
-    ASSERT(IsZeroMemory(Context, sizeof (SYNC_CONTEXT)));
+    ASSERT(IsZeroMemory(Context, PAGE_SIZE));
 
     Context->Sequence++;
     Context->CompletionCount = 0;
@@ -427,7 +427,7 @@ SyncRelease(
         KeMemoryBarrier();
     }
 
-    RtlZeroMemory(Context, sizeof (SYNC_CONTEXT));
+    RtlZeroMemory(Context, PAGE_SIZE);
 
     Index = KeGetCurrentProcessorNumberEx(NULL);
     __SyncRelease(Index);
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 01 13:21:41 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 01 Apr 2015 13:21:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YdIaT-0005TO-SN; Wed, 01 Apr 2015 13:21:41 +0000
Received: from mail6.bemta14.messagelabs.com ([193.109.254.103])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <Paul.Durrant@citrix.com>) id 1YdIaS-0005S5-3a
	for win-pv-devel@lists.xenproject.org; Wed, 01 Apr 2015 13:21:40 +0000
Received: from [193.109.254.147] by server-16.bemta-14.messagelabs.com id
	9B/B5-06072-3E0FB155; Wed, 01 Apr 2015 13:21:39 +0000
X-Env-Sender: Paul.Durrant@citrix.com
X-Msg-Ref: server-6.tower-27.messagelabs.com!1427894498!14911649!1
X-Originating-IP: [185.25.65.24]
X-SpamReason: No, hits=1.7 required=7.0 tests=BIZ_TLD,received_headers: 
	No Received headers
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 7967 invoked from network); 1 Apr 2015 13:21:38 -0000
Received: from smtp.eu.citrix.com (HELO SMTP.EU.CITRIX.COM) (185.25.65.24)
	by server-6.tower-27.messagelabs.com with RC4-SHA encrypted SMTP;
	1 Apr 2015 13:21:38 -0000
X-IronPort-AV: E=Sophos;i="5.11,503,1422921600"; d="scan'208";a="33216435"
From: Paul Durrant <Paul.Durrant@citrix.com>
To: Fabio Fantoni <fabio.fantoni@m2r.biz>, "win-pv-devel@lists.xenproject.org"
	<win-pv-devel@lists.xenproject.org>
Thread-Topic: Multiple save/restore failing with windows 8.1 64 bit domU
Thread-Index: AQHQati05+G/VEyHyUKbEtI7jazazZ04J7aQ
Date: Wed, 1 Apr 2015 13:21:37 +0000
Message-ID: <9AAE0902D5BC7E449B7C8E4E778ABCD02585EFDA@AMSPEX01CL01.citrite.net>
References: <55192CB4.7030802@m2r.biz>
In-Reply-To: <55192CB4.7030802@m2r.biz>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
MIME-Version: 1.0
X-DLP: AMS1
Subject: Re: [win-pv-devel] Multiple save/restore failing with windows 8.1
	64 bit domU
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

> -----Original Message-----
> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
> Sent: 30 March 2015 12:00
> To: win-pv-devel@lists.xenproject.org
> Cc: Paul Durrant
> Subject: Multiple save/restore failing with windows 8.1 64 bit domU
> 
> I tried 2 times multiple save/restore (start domU, use it for some
> minutes, do a save restore, use it, do another save/restore) and in both
> case second save failed:
> 

The patch I posted this morning should fix this one for you.

  Paul

> > xl -vvv save W8 /mnt/vm/save/W8
> > libxl: debug: libxl.c:6705:libxl_retrieve_domain_configuration: no
> > vtpm from xenstore for domain 40
> > libxl: debug: libxl.c:6707:libxl_retrieve_domain_configuration: no pci
> > from xenstore for domain 40
> > Saving to /mnt/vm/save/W8 new xl format (info 0x1/0x0/1941)
> > libxl: debug: libxl.c:953:libxl_domain_suspend: ao 0x68d910: create:
> > how=(nil) callback=(nil) poller=0x68d970
> > libxl: debug: libxl_dom.c:1573:libxl__toolstack_save: domain=40
> > toolstack data size=49
> > libxl: debug: libxl.c:975:libxl_domain_suspend: ao 0x68d910:
> > inprogress: poller=0x68d970, flags=i
> > libxl-save-helper: debug: starting save: Success
> > xc: detail: xc_domain_save: starting save of domid 40
> > libxl: debug: libxl_dom.c:1278:domain_suspend_callback_common: issuing
> > PVHVM suspend request via XenBus control node
> > libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
> > w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
> register
> > slotnum=3
> > libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68dae0
> > wpath=/local/domain/40/control/shutdown token=3/0: event
> > epath=/local/domain/40/control/shutdown
> > libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
> > w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
> > deregister slotnum=3
> > libxl: debug:
> > libxl_dom.c:1360:domain_suspend_common_pvcontrol_suspending: guest
> > acknowledged suspend request
> > libxl: debug: libxl_dom.c:1379:domain_suspend_common_wait_guest:
> wait
> > for the guest to suspend
> > libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
> > w=0x68daf8 wpath=@releaseDomain token=3/1: register slotnum=3
> > libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68daf8
> > wpath=@releaseDomain token=3/1: event epath=@releaseDomain
> > libxl: error: libxl_dom.c:1451:suspend_common_wait_guest_timeout:
> > guest did not suspend, timed out
> > libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
> > w=0x68daf8 wpath=@releaseDomain token=3/1: deregister slotnum=3
> > xc: error: Suspend request failed: Internal error
> > xc: error: Domain appears not to have suspended: Internal error
> > libxl-save-helper: xc_domain_save.c:2077: xc_domain_save: Assertion
> > `rc' failed.
> > libxl: error: libxl_utils.c:430:libxl_read_exactly: file/stream
> > truncated reading ipc msg header from domain 40 save/restore helper
> > stdout pipe
> > libxl: error: libxl_exec.c:129:libxl_report_child_exitstatus: domain
> > 40 save/restore helper [-1] died due to fatal signal Aborted
> > libxl: error: libxl_dom.c:2035:remus_teardown_done: Remus: failed to
> > teardown device for guest with domid 40, rc -3
> > libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
> > complete, rc=-3
> > libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910: destroy
> > Failed to save domain, resuming domain
> > libxl: debug: libxl.c:542:libxl_domain_resume: ao 0x68d910: create:
> > how=(nil) callback=(nil) poller=0x68d970
> > xc: error: Dom 40 not suspended: (shutdown 0, reason 255): Internal error
> > libxl: error: libxl.c:511:libxl__domain_resume: xc_domain_resume
> > failed for domain 40: Invalid argument
> > libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
> > complete, rc=-3
> > libxl: debug: libxl.c:545:libxl_domain_resume: ao 0x68d910:
> > inprogress: poller=0x68d970, flags=ic
> > libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910: destroy
> > xc: debug: hypercall buffer: total allocations:29 total releases:29
> > xc: debug: hypercall buffer: current allocations:0 maximum allocations:2
> > xc: debug: hypercall buffer: cache current size:2
> > xc: debug: hypercall buffer: cache hits:20 misses:2 toobig:7
> 
> If you need more informations/tests tell me and I'll post them.
> 
> Thanks for any reply and sorry for my bad english.


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 01 13:21:41 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 01 Apr 2015 13:21:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YdIaT-0005TO-SN; Wed, 01 Apr 2015 13:21:41 +0000
Received: from mail6.bemta14.messagelabs.com ([193.109.254.103])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <Paul.Durrant@citrix.com>) id 1YdIaS-0005S5-3a
	for win-pv-devel@lists.xenproject.org; Wed, 01 Apr 2015 13:21:40 +0000
Received: from [193.109.254.147] by server-16.bemta-14.messagelabs.com id
	9B/B5-06072-3E0FB155; Wed, 01 Apr 2015 13:21:39 +0000
X-Env-Sender: Paul.Durrant@citrix.com
X-Msg-Ref: server-6.tower-27.messagelabs.com!1427894498!14911649!1
X-Originating-IP: [185.25.65.24]
X-SpamReason: No, hits=1.7 required=7.0 tests=BIZ_TLD,received_headers: 
	No Received headers
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 7967 invoked from network); 1 Apr 2015 13:21:38 -0000
Received: from smtp.eu.citrix.com (HELO SMTP.EU.CITRIX.COM) (185.25.65.24)
	by server-6.tower-27.messagelabs.com with RC4-SHA encrypted SMTP;
	1 Apr 2015 13:21:38 -0000
X-IronPort-AV: E=Sophos;i="5.11,503,1422921600"; d="scan'208";a="33216435"
From: Paul Durrant <Paul.Durrant@citrix.com>
To: Fabio Fantoni <fabio.fantoni@m2r.biz>, "win-pv-devel@lists.xenproject.org"
	<win-pv-devel@lists.xenproject.org>
Thread-Topic: Multiple save/restore failing with windows 8.1 64 bit domU
Thread-Index: AQHQati05+G/VEyHyUKbEtI7jazazZ04J7aQ
Date: Wed, 1 Apr 2015 13:21:37 +0000
Message-ID: <9AAE0902D5BC7E449B7C8E4E778ABCD02585EFDA@AMSPEX01CL01.citrite.net>
References: <55192CB4.7030802@m2r.biz>
In-Reply-To: <55192CB4.7030802@m2r.biz>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
MIME-Version: 1.0
X-DLP: AMS1
Subject: Re: [win-pv-devel] Multiple save/restore failing with windows 8.1
	64 bit domU
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

> -----Original Message-----
> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
> Sent: 30 March 2015 12:00
> To: win-pv-devel@lists.xenproject.org
> Cc: Paul Durrant
> Subject: Multiple save/restore failing with windows 8.1 64 bit domU
> 
> I tried 2 times multiple save/restore (start domU, use it for some
> minutes, do a save restore, use it, do another save/restore) and in both
> case second save failed:
> 

The patch I posted this morning should fix this one for you.

  Paul

> > xl -vvv save W8 /mnt/vm/save/W8
> > libxl: debug: libxl.c:6705:libxl_retrieve_domain_configuration: no
> > vtpm from xenstore for domain 40
> > libxl: debug: libxl.c:6707:libxl_retrieve_domain_configuration: no pci
> > from xenstore for domain 40
> > Saving to /mnt/vm/save/W8 new xl format (info 0x1/0x0/1941)
> > libxl: debug: libxl.c:953:libxl_domain_suspend: ao 0x68d910: create:
> > how=(nil) callback=(nil) poller=0x68d970
> > libxl: debug: libxl_dom.c:1573:libxl__toolstack_save: domain=40
> > toolstack data size=49
> > libxl: debug: libxl.c:975:libxl_domain_suspend: ao 0x68d910:
> > inprogress: poller=0x68d970, flags=i
> > libxl-save-helper: debug: starting save: Success
> > xc: detail: xc_domain_save: starting save of domid 40
> > libxl: debug: libxl_dom.c:1278:domain_suspend_callback_common: issuing
> > PVHVM suspend request via XenBus control node
> > libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
> > w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
> register
> > slotnum=3
> > libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68dae0
> > wpath=/local/domain/40/control/shutdown token=3/0: event
> > epath=/local/domain/40/control/shutdown
> > libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
> > w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
> > deregister slotnum=3
> > libxl: debug:
> > libxl_dom.c:1360:domain_suspend_common_pvcontrol_suspending: guest
> > acknowledged suspend request
> > libxl: debug: libxl_dom.c:1379:domain_suspend_common_wait_guest:
> wait
> > for the guest to suspend
> > libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
> > w=0x68daf8 wpath=@releaseDomain token=3/1: register slotnum=3
> > libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68daf8
> > wpath=@releaseDomain token=3/1: event epath=@releaseDomain
> > libxl: error: libxl_dom.c:1451:suspend_common_wait_guest_timeout:
> > guest did not suspend, timed out
> > libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
> > w=0x68daf8 wpath=@releaseDomain token=3/1: deregister slotnum=3
> > xc: error: Suspend request failed: Internal error
> > xc: error: Domain appears not to have suspended: Internal error
> > libxl-save-helper: xc_domain_save.c:2077: xc_domain_save: Assertion
> > `rc' failed.
> > libxl: error: libxl_utils.c:430:libxl_read_exactly: file/stream
> > truncated reading ipc msg header from domain 40 save/restore helper
> > stdout pipe
> > libxl: error: libxl_exec.c:129:libxl_report_child_exitstatus: domain
> > 40 save/restore helper [-1] died due to fatal signal Aborted
> > libxl: error: libxl_dom.c:2035:remus_teardown_done: Remus: failed to
> > teardown device for guest with domid 40, rc -3
> > libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
> > complete, rc=-3
> > libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910: destroy
> > Failed to save domain, resuming domain
> > libxl: debug: libxl.c:542:libxl_domain_resume: ao 0x68d910: create:
> > how=(nil) callback=(nil) poller=0x68d970
> > xc: error: Dom 40 not suspended: (shutdown 0, reason 255): Internal error
> > libxl: error: libxl.c:511:libxl__domain_resume: xc_domain_resume
> > failed for domain 40: Invalid argument
> > libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
> > complete, rc=-3
> > libxl: debug: libxl.c:545:libxl_domain_resume: ao 0x68d910:
> > inprogress: poller=0x68d970, flags=ic
> > libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910: destroy
> > xc: debug: hypercall buffer: total allocations:29 total releases:29
> > xc: debug: hypercall buffer: current allocations:0 maximum allocations:2
> > xc: debug: hypercall buffer: cache current size:2
> > xc: debug: hypercall buffer: cache hits:20 misses:2 toobig:7
> 
> If you need more informations/tests tell me and I'll post them.
> 
> Thanks for any reply and sorry for my bad english.


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 01 14:43:12 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 01 Apr 2015 14:43:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YdJrM-0003b8-Ql; Wed, 01 Apr 2015 14:43:12 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <fabio.fantoni@m2r.biz>) id 1YdJrL-0003aW-1X
	for win-pv-devel@lists.xenproject.org; Wed, 01 Apr 2015 14:43:11 +0000
Received: from [85.158.139.211] by server-8.bemta-5.messagelabs.com id
	3F/66-19484-EF30C155; Wed, 01 Apr 2015 14:43:10 +0000
X-Env-Sender: fabio.fantoni@m2r.biz
X-Msg-Ref: server-8.tower-206.messagelabs.com!1427899389!13226479!1
X-Originating-IP: [209.85.212.173]
X-SpamReason: No, hits=1.7 required=7.0 tests=BIZ_TLD
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 9212 invoked from network); 1 Apr 2015 14:43:09 -0000
Received: from mail-wi0-f173.google.com (HELO mail-wi0-f173.google.com)
	(209.85.212.173)
	by server-8.tower-206.messagelabs.com with RC4-SHA encrypted SMTP;
	1 Apr 2015 14:43:09 -0000
Received: by wixo5 with SMTP id o5so31234565wix.1
	for <win-pv-devel@lists.xenproject.org>;
	Wed, 01 Apr 2015 07:43:09 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20130820;
	h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to
	:subject:references:in-reply-to:content-type
	:content-transfer-encoding;
	bh=TLaI0gv3PgsAme9oMLR1WpcAoAJRfH35Gxd0nukcYqw=;
	b=HNAVLW5gjRYywq9DkcE/GH8ji+iqm5GFTJlH5APtIgHhPC+NFvb50BgLoT349emrN6
	W5kTQ1KTsD4i3+iixMRtD7DGdh9M58Rd4LFpkrgz+tr1bDTuvahBVQYh4FOSrSn38Ac6
	3jcjE38IjQ8op4yvR2Ya8AgWWFVi7gzKf3YDeHk+V8+BGETrwSSPdLg1Rh99HTjJp/ly
	Qnt95FFl+0tWAO4id2ysrJ6dM//SQlrYITGsp6jPd6X+BY/dzWkeiuRDRa9MFRXBVsvp
	ynNZJ/UJSrbfUYHmGLxKcjFxIEFz1Vumv7cwE5vd6ixcAxuYXcXs1blpu5SZwuP0BKJW
	r70w==
X-Gm-Message-State: ALoCoQkrXAORiuPFYQ0ox3H2zHHS6Jr/om046xp78MH+OhUTBKAQ9i5IzTXjH+j1TnsEzWJ2GWnX
X-Received: by 10.194.185.9 with SMTP id ey9mr85762939wjc.135.1427899389242;
	Wed, 01 Apr 2015 07:43:09 -0700 (PDT)
Received: from [192.168.1.3] (ip-73-126.sn2.eutelia.it. [83.211.73.126])
	by mx.google.com with ESMTPSA id
	ad7sm17264150wid.21.2015.04.01.07.43.07
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Wed, 01 Apr 2015 07:43:08 -0700 (PDT)
Message-ID: <551C0400.7090908@m2r.biz>
Date: Wed, 01 Apr 2015 16:43:12 +0200
From: Fabio Fantoni <fabio.fantoni@m2r.biz>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
	rv:31.0) Gecko/20100101 Thunderbird/31.5.0
MIME-Version: 1.0
To: Paul Durrant <Paul.Durrant@citrix.com>, 
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
References: <55192CB4.7030802@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585EFDA@AMSPEX01CL01.citrite.net>
In-Reply-To: <9AAE0902D5BC7E449B7C8E4E778ABCD02585EFDA@AMSPEX01CL01.citrite.net>
Subject: Re: [win-pv-devel] Multiple save/restore failing with windows 8.1
	64 bit domU
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Il 01/04/2015 15:21, Paul Durrant ha scritto:
>> -----Original Message-----
>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
>> Sent: 30 March 2015 12:00
>> To: win-pv-devel@lists.xenproject.org
>> Cc: Paul Durrant
>> Subject: Multiple save/restore failing with windows 8.1 64 bit domU
>>
>> I tried 2 times multiple save/restore (start domU, use it for some
>> minutes, do a save restore, use it, do another save/restore) and in both
>> case second save failed:
>>
> The patch I posted this morning should fix this one for you.
>
>    Paul

Thanks.

Today I tried windows 10 pro 64 bit technical preview, clean install, pv 
drivers (today's build) install ok but after restore display (connecting 
with spice) seems freezed, waited 4-5 minutes without changes and after 
I tried also xl shudown but do nothing.
DomU have pv disk and network working, xl shutdown (before try 
save/restore) is working.

About save/restore on W8 I tried now with new pv build and with first 
save/restore is all ok but with on second now xl save/restore completes 
correctly but after restore freeze same as the W10 one (since first 
save/restore).

If you more informations/tests tell me and I'll post them.

Thanks for any reply and sorry for my bad english.



>
>>> xl -vvv save W8 /mnt/vm/save/W8
>>> libxl: debug: libxl.c:6705:libxl_retrieve_domain_configuration: no
>>> vtpm from xenstore for domain 40
>>> libxl: debug: libxl.c:6707:libxl_retrieve_domain_configuration: no pci
>>> from xenstore for domain 40
>>> Saving to /mnt/vm/save/W8 new xl format (info 0x1/0x0/1941)
>>> libxl: debug: libxl.c:953:libxl_domain_suspend: ao 0x68d910: create:
>>> how=(nil) callback=(nil) poller=0x68d970
>>> libxl: debug: libxl_dom.c:1573:libxl__toolstack_save: domain=40
>>> toolstack data size=49
>>> libxl: debug: libxl.c:975:libxl_domain_suspend: ao 0x68d910:
>>> inprogress: poller=0x68d970, flags=i
>>> libxl-save-helper: debug: starting save: Success
>>> xc: detail: xc_domain_save: starting save of domid 40
>>> libxl: debug: libxl_dom.c:1278:domain_suspend_callback_common: issuing
>>> PVHVM suspend request via XenBus control node
>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
>> register
>>> slotnum=3
>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68dae0
>>> wpath=/local/domain/40/control/shutdown token=3/0: event
>>> epath=/local/domain/40/control/shutdown
>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
>>> deregister slotnum=3
>>> libxl: debug:
>>> libxl_dom.c:1360:domain_suspend_common_pvcontrol_suspending: guest
>>> acknowledged suspend request
>>> libxl: debug: libxl_dom.c:1379:domain_suspend_common_wait_guest:
>> wait
>>> for the guest to suspend
>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
>>> w=0x68daf8 wpath=@releaseDomain token=3/1: register slotnum=3
>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68daf8
>>> wpath=@releaseDomain token=3/1: event epath=@releaseDomain
>>> libxl: error: libxl_dom.c:1451:suspend_common_wait_guest_timeout:
>>> guest did not suspend, timed out
>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
>>> w=0x68daf8 wpath=@releaseDomain token=3/1: deregister slotnum=3
>>> xc: error: Suspend request failed: Internal error
>>> xc: error: Domain appears not to have suspended: Internal error
>>> libxl-save-helper: xc_domain_save.c:2077: xc_domain_save: Assertion
>>> `rc' failed.
>>> libxl: error: libxl_utils.c:430:libxl_read_exactly: file/stream
>>> truncated reading ipc msg header from domain 40 save/restore helper
>>> stdout pipe
>>> libxl: error: libxl_exec.c:129:libxl_report_child_exitstatus: domain
>>> 40 save/restore helper [-1] died due to fatal signal Aborted
>>> libxl: error: libxl_dom.c:2035:remus_teardown_done: Remus: failed to
>>> teardown device for guest with domid 40, rc -3
>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
>>> complete, rc=-3
>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910: destroy
>>> Failed to save domain, resuming domain
>>> libxl: debug: libxl.c:542:libxl_domain_resume: ao 0x68d910: create:
>>> how=(nil) callback=(nil) poller=0x68d970
>>> xc: error: Dom 40 not suspended: (shutdown 0, reason 255): Internal error
>>> libxl: error: libxl.c:511:libxl__domain_resume: xc_domain_resume
>>> failed for domain 40: Invalid argument
>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
>>> complete, rc=-3
>>> libxl: debug: libxl.c:545:libxl_domain_resume: ao 0x68d910:
>>> inprogress: poller=0x68d970, flags=ic
>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910: destroy
>>> xc: debug: hypercall buffer: total allocations:29 total releases:29
>>> xc: debug: hypercall buffer: current allocations:0 maximum allocations:2
>>> xc: debug: hypercall buffer: cache current size:2
>>> xc: debug: hypercall buffer: cache hits:20 misses:2 toobig:7
>> If you need more informations/tests tell me and I'll post them.
>>
>> Thanks for any reply and sorry for my bad english.


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 01 14:43:12 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 01 Apr 2015 14:43:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YdJrM-0003b8-Ql; Wed, 01 Apr 2015 14:43:12 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <fabio.fantoni@m2r.biz>) id 1YdJrL-0003aW-1X
	for win-pv-devel@lists.xenproject.org; Wed, 01 Apr 2015 14:43:11 +0000
Received: from [85.158.139.211] by server-8.bemta-5.messagelabs.com id
	3F/66-19484-EF30C155; Wed, 01 Apr 2015 14:43:10 +0000
X-Env-Sender: fabio.fantoni@m2r.biz
X-Msg-Ref: server-8.tower-206.messagelabs.com!1427899389!13226479!1
X-Originating-IP: [209.85.212.173]
X-SpamReason: No, hits=1.7 required=7.0 tests=BIZ_TLD
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 9212 invoked from network); 1 Apr 2015 14:43:09 -0000
Received: from mail-wi0-f173.google.com (HELO mail-wi0-f173.google.com)
	(209.85.212.173)
	by server-8.tower-206.messagelabs.com with RC4-SHA encrypted SMTP;
	1 Apr 2015 14:43:09 -0000
Received: by wixo5 with SMTP id o5so31234565wix.1
	for <win-pv-devel@lists.xenproject.org>;
	Wed, 01 Apr 2015 07:43:09 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20130820;
	h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to
	:subject:references:in-reply-to:content-type
	:content-transfer-encoding;
	bh=TLaI0gv3PgsAme9oMLR1WpcAoAJRfH35Gxd0nukcYqw=;
	b=HNAVLW5gjRYywq9DkcE/GH8ji+iqm5GFTJlH5APtIgHhPC+NFvb50BgLoT349emrN6
	W5kTQ1KTsD4i3+iixMRtD7DGdh9M58Rd4LFpkrgz+tr1bDTuvahBVQYh4FOSrSn38Ac6
	3jcjE38IjQ8op4yvR2Ya8AgWWFVi7gzKf3YDeHk+V8+BGETrwSSPdLg1Rh99HTjJp/ly
	Qnt95FFl+0tWAO4id2ysrJ6dM//SQlrYITGsp6jPd6X+BY/dzWkeiuRDRa9MFRXBVsvp
	ynNZJ/UJSrbfUYHmGLxKcjFxIEFz1Vumv7cwE5vd6ixcAxuYXcXs1blpu5SZwuP0BKJW
	r70w==
X-Gm-Message-State: ALoCoQkrXAORiuPFYQ0ox3H2zHHS6Jr/om046xp78MH+OhUTBKAQ9i5IzTXjH+j1TnsEzWJ2GWnX
X-Received: by 10.194.185.9 with SMTP id ey9mr85762939wjc.135.1427899389242;
	Wed, 01 Apr 2015 07:43:09 -0700 (PDT)
Received: from [192.168.1.3] (ip-73-126.sn2.eutelia.it. [83.211.73.126])
	by mx.google.com with ESMTPSA id
	ad7sm17264150wid.21.2015.04.01.07.43.07
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Wed, 01 Apr 2015 07:43:08 -0700 (PDT)
Message-ID: <551C0400.7090908@m2r.biz>
Date: Wed, 01 Apr 2015 16:43:12 +0200
From: Fabio Fantoni <fabio.fantoni@m2r.biz>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
	rv:31.0) Gecko/20100101 Thunderbird/31.5.0
MIME-Version: 1.0
To: Paul Durrant <Paul.Durrant@citrix.com>, 
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
References: <55192CB4.7030802@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585EFDA@AMSPEX01CL01.citrite.net>
In-Reply-To: <9AAE0902D5BC7E449B7C8E4E778ABCD02585EFDA@AMSPEX01CL01.citrite.net>
Subject: Re: [win-pv-devel] Multiple save/restore failing with windows 8.1
	64 bit domU
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Il 01/04/2015 15:21, Paul Durrant ha scritto:
>> -----Original Message-----
>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
>> Sent: 30 March 2015 12:00
>> To: win-pv-devel@lists.xenproject.org
>> Cc: Paul Durrant
>> Subject: Multiple save/restore failing with windows 8.1 64 bit domU
>>
>> I tried 2 times multiple save/restore (start domU, use it for some
>> minutes, do a save restore, use it, do another save/restore) and in both
>> case second save failed:
>>
> The patch I posted this morning should fix this one for you.
>
>    Paul

Thanks.

Today I tried windows 10 pro 64 bit technical preview, clean install, pv 
drivers (today's build) install ok but after restore display (connecting 
with spice) seems freezed, waited 4-5 minutes without changes and after 
I tried also xl shudown but do nothing.
DomU have pv disk and network working, xl shutdown (before try 
save/restore) is working.

About save/restore on W8 I tried now with new pv build and with first 
save/restore is all ok but with on second now xl save/restore completes 
correctly but after restore freeze same as the W10 one (since first 
save/restore).

If you more informations/tests tell me and I'll post them.

Thanks for any reply and sorry for my bad english.



>
>>> xl -vvv save W8 /mnt/vm/save/W8
>>> libxl: debug: libxl.c:6705:libxl_retrieve_domain_configuration: no
>>> vtpm from xenstore for domain 40
>>> libxl: debug: libxl.c:6707:libxl_retrieve_domain_configuration: no pci
>>> from xenstore for domain 40
>>> Saving to /mnt/vm/save/W8 new xl format (info 0x1/0x0/1941)
>>> libxl: debug: libxl.c:953:libxl_domain_suspend: ao 0x68d910: create:
>>> how=(nil) callback=(nil) poller=0x68d970
>>> libxl: debug: libxl_dom.c:1573:libxl__toolstack_save: domain=40
>>> toolstack data size=49
>>> libxl: debug: libxl.c:975:libxl_domain_suspend: ao 0x68d910:
>>> inprogress: poller=0x68d970, flags=i
>>> libxl-save-helper: debug: starting save: Success
>>> xc: detail: xc_domain_save: starting save of domid 40
>>> libxl: debug: libxl_dom.c:1278:domain_suspend_callback_common: issuing
>>> PVHVM suspend request via XenBus control node
>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
>> register
>>> slotnum=3
>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68dae0
>>> wpath=/local/domain/40/control/shutdown token=3/0: event
>>> epath=/local/domain/40/control/shutdown
>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
>>> deregister slotnum=3
>>> libxl: debug:
>>> libxl_dom.c:1360:domain_suspend_common_pvcontrol_suspending: guest
>>> acknowledged suspend request
>>> libxl: debug: libxl_dom.c:1379:domain_suspend_common_wait_guest:
>> wait
>>> for the guest to suspend
>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
>>> w=0x68daf8 wpath=@releaseDomain token=3/1: register slotnum=3
>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68daf8
>>> wpath=@releaseDomain token=3/1: event epath=@releaseDomain
>>> libxl: error: libxl_dom.c:1451:suspend_common_wait_guest_timeout:
>>> guest did not suspend, timed out
>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
>>> w=0x68daf8 wpath=@releaseDomain token=3/1: deregister slotnum=3
>>> xc: error: Suspend request failed: Internal error
>>> xc: error: Domain appears not to have suspended: Internal error
>>> libxl-save-helper: xc_domain_save.c:2077: xc_domain_save: Assertion
>>> `rc' failed.
>>> libxl: error: libxl_utils.c:430:libxl_read_exactly: file/stream
>>> truncated reading ipc msg header from domain 40 save/restore helper
>>> stdout pipe
>>> libxl: error: libxl_exec.c:129:libxl_report_child_exitstatus: domain
>>> 40 save/restore helper [-1] died due to fatal signal Aborted
>>> libxl: error: libxl_dom.c:2035:remus_teardown_done: Remus: failed to
>>> teardown device for guest with domid 40, rc -3
>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
>>> complete, rc=-3
>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910: destroy
>>> Failed to save domain, resuming domain
>>> libxl: debug: libxl.c:542:libxl_domain_resume: ao 0x68d910: create:
>>> how=(nil) callback=(nil) poller=0x68d970
>>> xc: error: Dom 40 not suspended: (shutdown 0, reason 255): Internal error
>>> libxl: error: libxl.c:511:libxl__domain_resume: xc_domain_resume
>>> failed for domain 40: Invalid argument
>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
>>> complete, rc=-3
>>> libxl: debug: libxl.c:545:libxl_domain_resume: ao 0x68d910:
>>> inprogress: poller=0x68d970, flags=ic
>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910: destroy
>>> xc: debug: hypercall buffer: total allocations:29 total releases:29
>>> xc: debug: hypercall buffer: current allocations:0 maximum allocations:2
>>> xc: debug: hypercall buffer: cache current size:2
>>> xc: debug: hypercall buffer: cache hits:20 misses:2 toobig:7
>> If you need more informations/tests tell me and I'll post them.
>>
>> Thanks for any reply and sorry for my bad english.


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Thu Apr 02 10:41:20 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 02 Apr 2015 10:41:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YdcYq-0006vO-NI; Thu, 02 Apr 2015 10:41:20 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YdcYp-0006vD-HQ
	for win-pv-devel@lists.xenproject.org; Thu, 02 Apr 2015 10:41:19 +0000
Received: from [85.158.137.68] by server-13.bemta-3.messagelabs.com id
	4D/70-30165-ECC1D155; Thu, 02 Apr 2015 10:41:18 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-6.tower-31.messagelabs.com!1427971277!8910406!1
X-Originating-IP: [74.125.82.54]
X-SpamReason: No, hits=0.0 required=7.0 tests=UPPERCASE_25_50
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 30832 invoked from network); 2 Apr 2015 10:41:18 -0000
Received: from mail-wg0-f54.google.com (HELO mail-wg0-f54.google.com)
	(74.125.82.54)
	by server-6.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	2 Apr 2015 10:41:18 -0000
Received: by wgoe14 with SMTP id e14so80773878wgo.0
	for <win-pv-devel@lists.xenproject.org>;
	Thu, 02 Apr 2015 03:41:17 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id;
	bh=somjC9TQAaKExB/L3OkTWHciNVzc+zPsgu9+84r17Gc=;
	b=FygaX8Wgne36NwVjmYi7ZGJX7FT9MDA3eqNHN9BGj7mpjnnSZuWjygTNebF/cLkegp
	wt5zeKrTikmt+X6kPbhjdekSrcqFxpZNnr/KHPmgYPUNG7fUzaqxQ5RbLYFSKlejNYfd
	mh4B4k/Ej+QaOVdVnljbT1XzOm96Onshf00yCMTsWg81zK0L90OEAFjfmCil0+5WM3eG
	l+lGvEa+vBNRrghg+dhj60rN2IPuupWplS7qa0SiWGsjqkk0iAPdicr9QXYiVPlTnlzU
	GzFHVjtCwKQ8jLl56TXJGFN4ICUGbVXCJmQmhHGwb96n0Guvfl4tjIQSRKnQfGJke7LZ
	7s4w==
X-Received: by 10.180.109.107 with SMTP id hr11mr23038126wib.5.1427971277570; 
	Thu, 02 Apr 2015 03:41:17 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id cz7sm7131883wib.15.2015.04.02.03.41.16
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Thu, 02 Apr 2015 03:41:16 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Thu,  2 Apr 2015 11:41:06 +0100
Message-Id: <1427971266-4368-1-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH] Inline FunctionName and ReasonName in
	co-installer
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/coinst/coinst.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/src/coinst/coinst.c b/src/coinst/coinst.c
index 4b3e532..c06bc3f 100644
--- a/src/coinst/coinst.c
+++ b/src/coinst/coinst.c
@@ -145,8 +145,8 @@ GetErrorMessage(
     return Message;
 }
 
-static const CHAR *
-FunctionName(
+static FORCEINLINE const CHAR *
+__FunctionName(
     IN  DI_FUNCTION Function
     )
 {
@@ -2503,10 +2503,10 @@ Entry(
 
     if (!Context->PostProcessing) {
         Log("%s PreProcessing",
-            FunctionName(Function));
+            __FunctionName(Function));
     } else {
         Log("%s PostProcessing (%08x)",
-            FunctionName(Function),
+            __FunctionName(Function),
             Context->InstallResult);
     }
 
@@ -2569,8 +2569,8 @@ Version(
     return NO_ERROR;
 }
 
-static const CHAR *
-ReasonName(
+static FORCEINLINE const CHAR *
+__ReasonName(
     IN  DWORD       Reason
     )
 {
@@ -2605,7 +2605,7 @@ DllMain(
     Log("%s (%s): %s",
         MAJOR_VERSION_STR "." MINOR_VERSION_STR "." MICRO_VERSION_STR "." BUILD_NUMBER_STR,
         DAY_STR "/" MONTH_STR "/" YEAR_STR,
-        ReasonName(Reason));
+        __ReasonName(Reason));
 
     return TRUE;
 }
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Thu Apr 02 10:41:20 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 02 Apr 2015 10:41:20 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YdcYq-0006vO-NI; Thu, 02 Apr 2015 10:41:20 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YdcYp-0006vD-HQ
	for win-pv-devel@lists.xenproject.org; Thu, 02 Apr 2015 10:41:19 +0000
Received: from [85.158.137.68] by server-13.bemta-3.messagelabs.com id
	4D/70-30165-ECC1D155; Thu, 02 Apr 2015 10:41:18 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-6.tower-31.messagelabs.com!1427971277!8910406!1
X-Originating-IP: [74.125.82.54]
X-SpamReason: No, hits=0.0 required=7.0 tests=UPPERCASE_25_50
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 30832 invoked from network); 2 Apr 2015 10:41:18 -0000
Received: from mail-wg0-f54.google.com (HELO mail-wg0-f54.google.com)
	(74.125.82.54)
	by server-6.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	2 Apr 2015 10:41:18 -0000
Received: by wgoe14 with SMTP id e14so80773878wgo.0
	for <win-pv-devel@lists.xenproject.org>;
	Thu, 02 Apr 2015 03:41:17 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id;
	bh=somjC9TQAaKExB/L3OkTWHciNVzc+zPsgu9+84r17Gc=;
	b=FygaX8Wgne36NwVjmYi7ZGJX7FT9MDA3eqNHN9BGj7mpjnnSZuWjygTNebF/cLkegp
	wt5zeKrTikmt+X6kPbhjdekSrcqFxpZNnr/KHPmgYPUNG7fUzaqxQ5RbLYFSKlejNYfd
	mh4B4k/Ej+QaOVdVnljbT1XzOm96Onshf00yCMTsWg81zK0L90OEAFjfmCil0+5WM3eG
	l+lGvEa+vBNRrghg+dhj60rN2IPuupWplS7qa0SiWGsjqkk0iAPdicr9QXYiVPlTnlzU
	GzFHVjtCwKQ8jLl56TXJGFN4ICUGbVXCJmQmhHGwb96n0Guvfl4tjIQSRKnQfGJke7LZ
	7s4w==
X-Received: by 10.180.109.107 with SMTP id hr11mr23038126wib.5.1427971277570; 
	Thu, 02 Apr 2015 03:41:17 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id cz7sm7131883wib.15.2015.04.02.03.41.16
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Thu, 02 Apr 2015 03:41:16 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Thu,  2 Apr 2015 11:41:06 +0100
Message-Id: <1427971266-4368-1-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH] Inline FunctionName and ReasonName in
	co-installer
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/coinst/coinst.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/src/coinst/coinst.c b/src/coinst/coinst.c
index 4b3e532..c06bc3f 100644
--- a/src/coinst/coinst.c
+++ b/src/coinst/coinst.c
@@ -145,8 +145,8 @@ GetErrorMessage(
     return Message;
 }
 
-static const CHAR *
-FunctionName(
+static FORCEINLINE const CHAR *
+__FunctionName(
     IN  DI_FUNCTION Function
     )
 {
@@ -2503,10 +2503,10 @@ Entry(
 
     if (!Context->PostProcessing) {
         Log("%s PreProcessing",
-            FunctionName(Function));
+            __FunctionName(Function));
     } else {
         Log("%s PostProcessing (%08x)",
-            FunctionName(Function),
+            __FunctionName(Function),
             Context->InstallResult);
     }
 
@@ -2569,8 +2569,8 @@ Version(
     return NO_ERROR;
 }
 
-static const CHAR *
-ReasonName(
+static FORCEINLINE const CHAR *
+__ReasonName(
     IN  DWORD       Reason
     )
 {
@@ -2605,7 +2605,7 @@ DllMain(
     Log("%s (%s): %s",
         MAJOR_VERSION_STR "." MINOR_VERSION_STR "." MICRO_VERSION_STR "." BUILD_NUMBER_STR,
         DAY_STR "/" MONTH_STR "/" YEAR_STR,
-        ReasonName(Reason));
+        __ReasonName(Reason));
 
     return TRUE;
 }
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Thu Apr 02 10:42:18 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 02 Apr 2015 10:42:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YdcZm-0006yq-5i; Thu, 02 Apr 2015 10:42:18 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YdcZk-0006y7-FR
	for win-pv-devel@lists.xenproject.org; Thu, 02 Apr 2015 10:42:16 +0000
Received: from [85.158.139.211] by server-5.bemta-5.messagelabs.com id
	1E/36-02119-70D1D155; Thu, 02 Apr 2015 10:42:15 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-9.tower-206.messagelabs.com!1427971334!13442430!1
X-Originating-IP: [209.85.212.175]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 20216 invoked from network); 2 Apr 2015 10:42:14 -0000
Received: from mail-wi0-f175.google.com (HELO mail-wi0-f175.google.com)
	(209.85.212.175)
	by server-9.tower-206.messagelabs.com with RC4-SHA encrypted SMTP;
	2 Apr 2015 10:42:14 -0000
Received: by wizk4 with SMTP id k4so10603161wiz.1
	for <win-pv-devel@lists.xenproject.org>;
	Thu, 02 Apr 2015 03:42:14 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id;
	bh=mspalfTKrSLsbI6fGNsyd7mpuqj4r0pcOMQd+uA/EeY=;
	b=ZoPrnL79Vnx/uwy7RMSWx9bGSGlXaaNqudQ8e9NrtOzDrPcL7iM7SMzUESebxdtTiI
	b63noJ63ds+7WEBtun10ZOc+RyeYRg56h7NHvJmkkRulCg7UBzifjyUDxztoRCaQsCXQ
	7WX6fhXEcWhq1WZmi5xC8KS1ztkKPpDmyjQ+EiNcGEjCUX2UhVgDcFPW9FPZh/AFo3k1
	t8401+frtzRME5iTIJS2QnI/OPl88+2NpE3aa5IMmV79annfjNWg5uuiG1VYU1y6LPrb
	6eU5mEt+seqXcGmBbY03pOGjqSJ87qMeEO/pjirB53Us4jjWRCk7nL6JHNqKVuXSoRkD
	JP3g==
X-Received: by 10.194.19.197 with SMTP id h5mr90850198wje.109.1427971334182;
	Thu, 02 Apr 2015 03:42:14 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id ka1sm6679462wjc.2.2015.04.02.03.42.13
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Thu, 02 Apr 2015 03:42:13 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Thu,  2 Apr 2015 11:41:59 +0100
Message-Id: <1427971319-11020-1-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH] Fix unplugging of emulated devices on resume
	from suspend
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Due to a mis-ordering of the interface initialization calls in FdoCreate(),
the SUSPEND interface never gets hold of the UNPLUG interface and thus,
on resume from suspend, emulated device unplug is not done and the
emulated network and disk devices re-appear in the VM.
This patch re-orders the initialization code to fix this problem and also
makes SuspendTrigger() fail if the UNPLUG interface is not available.

NOTE: The change of type of SuspendTrigger() does not require a new
      interface revision since it is a change from a void function to a
      non-void function, so older client code will simply ignore the return
      value.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 include/suspend_interface.h |   2 +-
 src/xenbus/fdo.c            | 100 ++++++++++++++++++--------------------------
 src/xenbus/suspend.c        |  16 +++++--
 src/xenfilt/unplug.c        |   2 -
 4 files changed, 54 insertions(+), 66 deletions(-)

diff --git a/include/suspend_interface.h b/include/suspend_interface.h
index df1b4b0..cbe11ab 100644
--- a/include/suspend_interface.h
+++ b/include/suspend_interface.h
@@ -126,7 +126,7 @@ typedef VOID
 
     This method must always be invoked with IRQL == PASSIVE_LEVEL
 */
-typedef VOID
+typedef NTSTATUS
 (*XENBUS_SUSPEND_TRIGGER)(
     IN  PINTERFACE  Interface
     );
diff --git a/src/xenbus/fdo.c b/src/xenbus/fdo.c
index 3c3e9a0..cbd2d9a 100644
--- a/src/xenbus/fdo.c
+++ b/src/xenbus/fdo.c
@@ -1272,7 +1272,7 @@ FdoSuspend(
                             "control",
                             "shutdown");
 
-        XENBUS_SUSPEND(Trigger, &Fdo->SuspendInterface);
+        (VOID) XENBUS_SUSPEND(Trigger, &Fdo->SuspendInterface);
 
         __FdoSuspendClearActive(Fdo);
 
@@ -4581,42 +4581,51 @@ FdoCreate(
     if (!__FdoIsActive(Fdo))
         goto done;
 
-    status = DebugInitialize(Fdo, &Fdo->DebugContext);
+    status = FDO_QUERY_INTERFACE(Fdo,
+                                 XENFILT,
+                                 UNPLUG,
+                                 (PINTERFACE)&Fdo->UnplugInterface,
+                                 sizeof (Fdo->UnplugInterface),
+                                 TRUE);
     if (!NT_SUCCESS(status))
         goto fail7;
 
-    status = SuspendInitialize(Fdo, &Fdo->SuspendContext);
+    status = DebugInitialize(Fdo, &Fdo->DebugContext);
     if (!NT_SUCCESS(status))
         goto fail8;
 
-    status = SharedInfoInitialize(Fdo, &Fdo->SharedInfoContext);
+    status = SuspendInitialize(Fdo, &Fdo->SuspendContext);
     if (!NT_SUCCESS(status))
         goto fail9;
 
-    status = EvtchnInitialize(Fdo, &Fdo->EvtchnContext);
+    status = SharedInfoInitialize(Fdo, &Fdo->SharedInfoContext);
     if (!NT_SUCCESS(status))
         goto fail10;
 
-    status = StoreInitialize(Fdo, &Fdo->StoreContext);
+    status = EvtchnInitialize(Fdo, &Fdo->EvtchnContext);
     if (!NT_SUCCESS(status))
         goto fail11;
 
-    status = RangeSetInitialize(Fdo, &Fdo->RangeSetContext);
+    status = StoreInitialize(Fdo, &Fdo->StoreContext);
     if (!NT_SUCCESS(status))
         goto fail12;
 
-    status = CacheInitialize(Fdo, &Fdo->CacheContext);
+    status = RangeSetInitialize(Fdo, &Fdo->RangeSetContext);
     if (!NT_SUCCESS(status))
         goto fail13;
 
-    status = GnttabInitialize(Fdo, &Fdo->GnttabContext);
+    status = CacheInitialize(Fdo, &Fdo->CacheContext);
     if (!NT_SUCCESS(status))
         goto fail14;
 
+    status = GnttabInitialize(Fdo, &Fdo->GnttabContext);
+    if (!NT_SUCCESS(status))
+        goto fail15;
+
     if (FdoIsBalloonEnabled(Fdo)) {
         status = BalloonInitialize(Fdo, &Fdo->BalloonContext);
         if (!NT_SUCCESS(status))
-            goto fail15;
+            goto fail16;
     }
 
     status = DebugGetInterface(__FdoGetDebugContext(Fdo),
@@ -4660,15 +4669,6 @@ FdoCreate(
                                  sizeof (Fdo->BalloonInterface));
     ASSERT(NT_SUCCESS(status));
 
-    status = FDO_QUERY_INTERFACE(Fdo,
-                                 XENFILT,
-                                 UNPLUG,
-                                 (PINTERFACE)&Fdo->UnplugInterface,
-                                 sizeof (Fdo->UnplugInterface),
-                                 TRUE);
-    if (!NT_SUCCESS(status))
-        goto fail16;
-
 done:
     InitializeMutex(&Fdo->Mutex);
     InitializeListHead(&Dx->ListEntry);
@@ -4687,76 +4687,56 @@ done:
 fail16:
     Error("fail16\n");
 
-    RtlZeroMemory(&Fdo->BalloonInterface,
-                  sizeof (XENBUS_BALLOON_INTERFACE));
-
-    RtlZeroMemory(&Fdo->RangeSetInterface,
-                  sizeof (XENBUS_RANGE_SET_INTERFACE));
-
-    RtlZeroMemory(&Fdo->StoreInterface,
-                  sizeof (XENBUS_STORE_INTERFACE));
-
-    RtlZeroMemory(&Fdo->EvtchnInterface,
-                  sizeof (XENBUS_EVTCHN_INTERFACE));
-
-    RtlZeroMemory(&Fdo->SuspendInterface,
-                  sizeof (XENBUS_SUSPEND_INTERFACE));
-
-    RtlZeroMemory(&Fdo->DebugInterface,
-                  sizeof (XENBUS_DEBUG_INTERFACE));
-
-    if (Fdo->BalloonContext != NULL) {
-        BalloonTeardown(Fdo->BalloonContext);
-        Fdo->BalloonContext = NULL;
-    }
+    GnttabTeardown(Fdo->GnttabContext);
+    Fdo->GnttabContext = NULL;
 
 fail15:
     Error("fail15\n");
 
-    GnttabTeardown(Fdo->GnttabContext);
-    Fdo->GnttabContext = NULL;
+    CacheTeardown(Fdo->CacheContext);
+    Fdo->CacheContext = NULL;
 
 fail14:
     Error("fail14\n");
 
-    CacheTeardown(Fdo->CacheContext);
-    Fdo->CacheContext = NULL;
+    RangeSetTeardown(Fdo->RangeSetContext);
+    Fdo->RangeSetContext = NULL;
 
 fail13:
     Error("fail13\n");
 
-    RangeSetTeardown(Fdo->RangeSetContext);
-    Fdo->RangeSetContext = NULL;
+    StoreTeardown(Fdo->StoreContext);
+    Fdo->StoreContext = NULL;
 
 fail12:
     Error("fail12\n");
 
-    StoreTeardown(Fdo->StoreContext);
-    Fdo->StoreContext = NULL;
+    EvtchnTeardown(Fdo->EvtchnContext);
+    Fdo->EvtchnContext = NULL;
 
 fail11:
     Error("fail11\n");
 
-    EvtchnTeardown(Fdo->EvtchnContext);
-    Fdo->EvtchnContext = NULL;
+    SharedInfoTeardown(Fdo->SharedInfoContext);
+    Fdo->SharedInfoContext = NULL;
 
 fail10:
     Error("fail10\n");
 
-    SharedInfoTeardown(Fdo->SharedInfoContext);
-    Fdo->SharedInfoContext = NULL;
+    SuspendTeardown(Fdo->SuspendContext);
+    Fdo->SuspendContext = NULL;
 
 fail9:
     Error("fail9\n");
 
-    SuspendTeardown(Fdo->SuspendContext);
-    Fdo->SuspendContext = NULL;
+    DebugTeardown(Fdo->DebugContext);
+    Fdo->DebugContext = NULL;
 
 fail8:
     Error("fail8\n");
 
-    DebugTeardown(Fdo->DebugContext);
-    Fdo->DebugContext = NULL;
+    RtlZeroMemory(&Fdo->UnplugInterface,
+                  sizeof (XENFILT_UNPLUG_INTERFACE));
 
 fail7:
     Error("fail7\n");
@@ -4831,9 +4811,6 @@ FdoDestroy(
     RtlZeroMemory(&Fdo->Mutex, sizeof (MUTEX));
 
     if (__FdoIsActive(Fdo)) {
-        RtlZeroMemory(&Fdo->UnplugInterface,
-                      sizeof (XENFILT_UNPLUG_INTERFACE));
-
         RtlZeroMemory(&Fdo->BalloonInterface,
                       sizeof (XENBUS_BALLOON_INTERFACE));
 
@@ -4881,6 +4858,9 @@ FdoDestroy(
         DebugTeardown(Fdo->DebugContext);
         Fdo->DebugContext = NULL;
 
+        RtlZeroMemory(&Fdo->UnplugInterface,
+                      sizeof (XENFILT_UNPLUG_INTERFACE));
+
         __FdoSetActive(Fdo, FALSE);
     }
 
diff --git a/src/xenbus/suspend.c b/src/xenbus/suspend.c
index 663ed8e..b826795 100644
--- a/src/xenbus/suspend.c
+++ b/src/xenbus/suspend.c
@@ -143,7 +143,7 @@ SuspendDeregister(
     __SuspendFree(Callback);
 }
 
-VOID
+NTSTATUS
 #pragma prefast(suppress:28167) // Function changes IRQL
 SuspendTrigger(
     IN  PINTERFACE          Interface
@@ -153,6 +153,10 @@ SuspendTrigger(
     KIRQL                   Irql;
     NTSTATUS                status;
 
+    status = STATUS_NOT_SUPPORTED;
+    if (Context->UnplugInterface.Interface.Context == NULL)
+        goto fail1;
+
     KeRaiseIrql(DISPATCH_LEVEL, &Irql);
 
     LogPrintf(LOG_LEVEL_INFO,
@@ -175,8 +179,7 @@ SuspendTrigger(
 
         HypercallPopulate();
 
-        if (Context->UnplugInterface.Interface.Context != NULL)
-            XENFILT_UNPLUG(Replay, &Context->UnplugInterface);
+        XENFILT_UNPLUG(Replay, &Context->UnplugInterface);
 
         for (ListEntry = Context->EarlyList.Flink;
              ListEntry != &Context->EarlyList;
@@ -211,6 +214,13 @@ SuspendTrigger(
     LogPrintf(LOG_LEVEL_INFO, "SUSPEND: <====\n");
 
     KeLowerIrql(Irql);
+
+    return STATUS_SUCCESS;
+
+fail1:
+    Error("fail1 (%08x)\n", status);
+
+    return status;
 }
 
 static ULONG
diff --git a/src/xenfilt/unplug.c b/src/xenfilt/unplug.c
index 37562c5..0c0948d 100644
--- a/src/xenfilt/unplug.c
+++ b/src/xenfilt/unplug.c
@@ -183,8 +183,6 @@ done:
     return STATUS_SUCCESS;
 
 fail1:
-    Error("fail1 (%08x)\n", status);
-
     return status;
 }
 
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Thu Apr 02 10:42:18 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 02 Apr 2015 10:42:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YdcZm-0006yq-5i; Thu, 02 Apr 2015 10:42:18 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YdcZk-0006y7-FR
	for win-pv-devel@lists.xenproject.org; Thu, 02 Apr 2015 10:42:16 +0000
Received: from [85.158.139.211] by server-5.bemta-5.messagelabs.com id
	1E/36-02119-70D1D155; Thu, 02 Apr 2015 10:42:15 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-9.tower-206.messagelabs.com!1427971334!13442430!1
X-Originating-IP: [209.85.212.175]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 20216 invoked from network); 2 Apr 2015 10:42:14 -0000
Received: from mail-wi0-f175.google.com (HELO mail-wi0-f175.google.com)
	(209.85.212.175)
	by server-9.tower-206.messagelabs.com with RC4-SHA encrypted SMTP;
	2 Apr 2015 10:42:14 -0000
Received: by wizk4 with SMTP id k4so10603161wiz.1
	for <win-pv-devel@lists.xenproject.org>;
	Thu, 02 Apr 2015 03:42:14 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id;
	bh=mspalfTKrSLsbI6fGNsyd7mpuqj4r0pcOMQd+uA/EeY=;
	b=ZoPrnL79Vnx/uwy7RMSWx9bGSGlXaaNqudQ8e9NrtOzDrPcL7iM7SMzUESebxdtTiI
	b63noJ63ds+7WEBtun10ZOc+RyeYRg56h7NHvJmkkRulCg7UBzifjyUDxztoRCaQsCXQ
	7WX6fhXEcWhq1WZmi5xC8KS1ztkKPpDmyjQ+EiNcGEjCUX2UhVgDcFPW9FPZh/AFo3k1
	t8401+frtzRME5iTIJS2QnI/OPl88+2NpE3aa5IMmV79annfjNWg5uuiG1VYU1y6LPrb
	6eU5mEt+seqXcGmBbY03pOGjqSJ87qMeEO/pjirB53Us4jjWRCk7nL6JHNqKVuXSoRkD
	JP3g==
X-Received: by 10.194.19.197 with SMTP id h5mr90850198wje.109.1427971334182;
	Thu, 02 Apr 2015 03:42:14 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id ka1sm6679462wjc.2.2015.04.02.03.42.13
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Thu, 02 Apr 2015 03:42:13 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Thu,  2 Apr 2015 11:41:59 +0100
Message-Id: <1427971319-11020-1-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH] Fix unplugging of emulated devices on resume
	from suspend
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Due to a mis-ordering of the interface initialization calls in FdoCreate(),
the SUSPEND interface never gets hold of the UNPLUG interface and thus,
on resume from suspend, emulated device unplug is not done and the
emulated network and disk devices re-appear in the VM.
This patch re-orders the initialization code to fix this problem and also
makes SuspendTrigger() fail if the UNPLUG interface is not available.

NOTE: The change of type of SuspendTrigger() does not require a new
      interface revision since it is a change from a void function to a
      non-void function, so older client code will simply ignore the return
      value.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 include/suspend_interface.h |   2 +-
 src/xenbus/fdo.c            | 100 ++++++++++++++++++--------------------------
 src/xenbus/suspend.c        |  16 +++++--
 src/xenfilt/unplug.c        |   2 -
 4 files changed, 54 insertions(+), 66 deletions(-)

diff --git a/include/suspend_interface.h b/include/suspend_interface.h
index df1b4b0..cbe11ab 100644
--- a/include/suspend_interface.h
+++ b/include/suspend_interface.h
@@ -126,7 +126,7 @@ typedef VOID
 
     This method must always be invoked with IRQL == PASSIVE_LEVEL
 */
-typedef VOID
+typedef NTSTATUS
 (*XENBUS_SUSPEND_TRIGGER)(
     IN  PINTERFACE  Interface
     );
diff --git a/src/xenbus/fdo.c b/src/xenbus/fdo.c
index 3c3e9a0..cbd2d9a 100644
--- a/src/xenbus/fdo.c
+++ b/src/xenbus/fdo.c
@@ -1272,7 +1272,7 @@ FdoSuspend(
                             "control",
                             "shutdown");
 
-        XENBUS_SUSPEND(Trigger, &Fdo->SuspendInterface);
+        (VOID) XENBUS_SUSPEND(Trigger, &Fdo->SuspendInterface);
 
         __FdoSuspendClearActive(Fdo);
 
@@ -4581,42 +4581,51 @@ FdoCreate(
     if (!__FdoIsActive(Fdo))
         goto done;
 
-    status = DebugInitialize(Fdo, &Fdo->DebugContext);
+    status = FDO_QUERY_INTERFACE(Fdo,
+                                 XENFILT,
+                                 UNPLUG,
+                                 (PINTERFACE)&Fdo->UnplugInterface,
+                                 sizeof (Fdo->UnplugInterface),
+                                 TRUE);
     if (!NT_SUCCESS(status))
         goto fail7;
 
-    status = SuspendInitialize(Fdo, &Fdo->SuspendContext);
+    status = DebugInitialize(Fdo, &Fdo->DebugContext);
     if (!NT_SUCCESS(status))
         goto fail8;
 
-    status = SharedInfoInitialize(Fdo, &Fdo->SharedInfoContext);
+    status = SuspendInitialize(Fdo, &Fdo->SuspendContext);
     if (!NT_SUCCESS(status))
         goto fail9;
 
-    status = EvtchnInitialize(Fdo, &Fdo->EvtchnContext);
+    status = SharedInfoInitialize(Fdo, &Fdo->SharedInfoContext);
     if (!NT_SUCCESS(status))
         goto fail10;
 
-    status = StoreInitialize(Fdo, &Fdo->StoreContext);
+    status = EvtchnInitialize(Fdo, &Fdo->EvtchnContext);
     if (!NT_SUCCESS(status))
         goto fail11;
 
-    status = RangeSetInitialize(Fdo, &Fdo->RangeSetContext);
+    status = StoreInitialize(Fdo, &Fdo->StoreContext);
     if (!NT_SUCCESS(status))
         goto fail12;
 
-    status = CacheInitialize(Fdo, &Fdo->CacheContext);
+    status = RangeSetInitialize(Fdo, &Fdo->RangeSetContext);
     if (!NT_SUCCESS(status))
         goto fail13;
 
-    status = GnttabInitialize(Fdo, &Fdo->GnttabContext);
+    status = CacheInitialize(Fdo, &Fdo->CacheContext);
     if (!NT_SUCCESS(status))
         goto fail14;
 
+    status = GnttabInitialize(Fdo, &Fdo->GnttabContext);
+    if (!NT_SUCCESS(status))
+        goto fail15;
+
     if (FdoIsBalloonEnabled(Fdo)) {
         status = BalloonInitialize(Fdo, &Fdo->BalloonContext);
         if (!NT_SUCCESS(status))
-            goto fail15;
+            goto fail16;
     }
 
     status = DebugGetInterface(__FdoGetDebugContext(Fdo),
@@ -4660,15 +4669,6 @@ FdoCreate(
                                  sizeof (Fdo->BalloonInterface));
     ASSERT(NT_SUCCESS(status));
 
-    status = FDO_QUERY_INTERFACE(Fdo,
-                                 XENFILT,
-                                 UNPLUG,
-                                 (PINTERFACE)&Fdo->UnplugInterface,
-                                 sizeof (Fdo->UnplugInterface),
-                                 TRUE);
-    if (!NT_SUCCESS(status))
-        goto fail16;
-
 done:
     InitializeMutex(&Fdo->Mutex);
     InitializeListHead(&Dx->ListEntry);
@@ -4687,76 +4687,56 @@ done:
 fail16:
     Error("fail16\n");
 
-    RtlZeroMemory(&Fdo->BalloonInterface,
-                  sizeof (XENBUS_BALLOON_INTERFACE));
-
-    RtlZeroMemory(&Fdo->RangeSetInterface,
-                  sizeof (XENBUS_RANGE_SET_INTERFACE));
-
-    RtlZeroMemory(&Fdo->StoreInterface,
-                  sizeof (XENBUS_STORE_INTERFACE));
-
-    RtlZeroMemory(&Fdo->EvtchnInterface,
-                  sizeof (XENBUS_EVTCHN_INTERFACE));
-
-    RtlZeroMemory(&Fdo->SuspendInterface,
-                  sizeof (XENBUS_SUSPEND_INTERFACE));
-
-    RtlZeroMemory(&Fdo->DebugInterface,
-                  sizeof (XENBUS_DEBUG_INTERFACE));
-
-    if (Fdo->BalloonContext != NULL) {
-        BalloonTeardown(Fdo->BalloonContext);
-        Fdo->BalloonContext = NULL;
-    }
+    GnttabTeardown(Fdo->GnttabContext);
+    Fdo->GnttabContext = NULL;
 
 fail15:
     Error("fail15\n");
 
-    GnttabTeardown(Fdo->GnttabContext);
-    Fdo->GnttabContext = NULL;
+    CacheTeardown(Fdo->CacheContext);
+    Fdo->CacheContext = NULL;
 
 fail14:
     Error("fail14\n");
 
-    CacheTeardown(Fdo->CacheContext);
-    Fdo->CacheContext = NULL;
+    RangeSetTeardown(Fdo->RangeSetContext);
+    Fdo->RangeSetContext = NULL;
 
 fail13:
     Error("fail13\n");
 
-    RangeSetTeardown(Fdo->RangeSetContext);
-    Fdo->RangeSetContext = NULL;
+    StoreTeardown(Fdo->StoreContext);
+    Fdo->StoreContext = NULL;
 
 fail12:
     Error("fail12\n");
 
-    StoreTeardown(Fdo->StoreContext);
-    Fdo->StoreContext = NULL;
+    EvtchnTeardown(Fdo->EvtchnContext);
+    Fdo->EvtchnContext = NULL;
 
 fail11:
     Error("fail11\n");
 
-    EvtchnTeardown(Fdo->EvtchnContext);
-    Fdo->EvtchnContext = NULL;
+    SharedInfoTeardown(Fdo->SharedInfoContext);
+    Fdo->SharedInfoContext = NULL;
 
 fail10:
     Error("fail10\n");
 
-    SharedInfoTeardown(Fdo->SharedInfoContext);
-    Fdo->SharedInfoContext = NULL;
+    SuspendTeardown(Fdo->SuspendContext);
+    Fdo->SuspendContext = NULL;
 
 fail9:
     Error("fail9\n");
 
-    SuspendTeardown(Fdo->SuspendContext);
-    Fdo->SuspendContext = NULL;
+    DebugTeardown(Fdo->DebugContext);
+    Fdo->DebugContext = NULL;
 
 fail8:
     Error("fail8\n");
 
-    DebugTeardown(Fdo->DebugContext);
-    Fdo->DebugContext = NULL;
+    RtlZeroMemory(&Fdo->UnplugInterface,
+                  sizeof (XENFILT_UNPLUG_INTERFACE));
 
 fail7:
     Error("fail7\n");
@@ -4831,9 +4811,6 @@ FdoDestroy(
     RtlZeroMemory(&Fdo->Mutex, sizeof (MUTEX));
 
     if (__FdoIsActive(Fdo)) {
-        RtlZeroMemory(&Fdo->UnplugInterface,
-                      sizeof (XENFILT_UNPLUG_INTERFACE));
-
         RtlZeroMemory(&Fdo->BalloonInterface,
                       sizeof (XENBUS_BALLOON_INTERFACE));
 
@@ -4881,6 +4858,9 @@ FdoDestroy(
         DebugTeardown(Fdo->DebugContext);
         Fdo->DebugContext = NULL;
 
+        RtlZeroMemory(&Fdo->UnplugInterface,
+                      sizeof (XENFILT_UNPLUG_INTERFACE));
+
         __FdoSetActive(Fdo, FALSE);
     }
 
diff --git a/src/xenbus/suspend.c b/src/xenbus/suspend.c
index 663ed8e..b826795 100644
--- a/src/xenbus/suspend.c
+++ b/src/xenbus/suspend.c
@@ -143,7 +143,7 @@ SuspendDeregister(
     __SuspendFree(Callback);
 }
 
-VOID
+NTSTATUS
 #pragma prefast(suppress:28167) // Function changes IRQL
 SuspendTrigger(
     IN  PINTERFACE          Interface
@@ -153,6 +153,10 @@ SuspendTrigger(
     KIRQL                   Irql;
     NTSTATUS                status;
 
+    status = STATUS_NOT_SUPPORTED;
+    if (Context->UnplugInterface.Interface.Context == NULL)
+        goto fail1;
+
     KeRaiseIrql(DISPATCH_LEVEL, &Irql);
 
     LogPrintf(LOG_LEVEL_INFO,
@@ -175,8 +179,7 @@ SuspendTrigger(
 
         HypercallPopulate();
 
-        if (Context->UnplugInterface.Interface.Context != NULL)
-            XENFILT_UNPLUG(Replay, &Context->UnplugInterface);
+        XENFILT_UNPLUG(Replay, &Context->UnplugInterface);
 
         for (ListEntry = Context->EarlyList.Flink;
              ListEntry != &Context->EarlyList;
@@ -211,6 +214,13 @@ SuspendTrigger(
     LogPrintf(LOG_LEVEL_INFO, "SUSPEND: <====\n");
 
     KeLowerIrql(Irql);
+
+    return STATUS_SUCCESS;
+
+fail1:
+    Error("fail1 (%08x)\n", status);
+
+    return status;
 }
 
 static ULONG
diff --git a/src/xenfilt/unplug.c b/src/xenfilt/unplug.c
index 37562c5..0c0948d 100644
--- a/src/xenfilt/unplug.c
+++ b/src/xenfilt/unplug.c
@@ -183,8 +183,6 @@ done:
     return STATUS_SUCCESS;
 
 fail1:
-    Error("fail1 (%08x)\n", status);
-
     return status;
 }
 
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Thu Apr 02 13:58:27 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 02 Apr 2015 13:58:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Ydfdb-0005K7-Ar; Thu, 02 Apr 2015 13:58:27 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <fabio.fantoni@m2r.biz>) id 1YdfdZ-0005Ju-G4
	for win-pv-devel@lists.xenproject.org; Thu, 02 Apr 2015 13:58:25 +0000
Received: from [85.158.137.68] by server-7.bemta-3.messagelabs.com id
	5C/AA-24632-00B4D155; Thu, 02 Apr 2015 13:58:24 +0000
X-Env-Sender: fabio.fantoni@m2r.biz
X-Msg-Ref: server-9.tower-31.messagelabs.com!1427983101!9703547!1
X-Originating-IP: [209.85.212.173]
X-SpamReason: No, hits=2.2 required=7.0 tests=BIZ_TLD,BODY_RANDOM_LONG
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 21763 invoked from network); 2 Apr 2015 13:58:21 -0000
Received: from mail-wi0-f173.google.com (HELO mail-wi0-f173.google.com)
	(209.85.212.173)
	by server-9.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	2 Apr 2015 13:58:21 -0000
Received: by wiaa2 with SMTP id a2so106354312wia.0
	for <win-pv-devel@lists.xenproject.org>;
	Thu, 02 Apr 2015 06:58:21 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20130820;
	h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to
	:subject:references:in-reply-to:content-type;
	bh=CVTAH+e2CamFVLyu4x2rVl1bMdpOCmARBQMiBk0QqVg=;
	b=XkqbQcn6O9/52W4ER1slGyo6Rl5XcbDhFufEUoFzTEtgkFwxLv/yj+uEIyQHxHCZUk
	Z0ZWEH8okfvX0oTdtjFxHBzTWg7cBfCP1yDWckOUZQgi+5NuAxzckT0DAjYxt+cut0Zo
	YzjET9CpXbruxiv8yz79J8OBEOwMTWeu+lEV7CJlQ8Je/Gcb2zSTYmmOrWRQ0M5Hrgdi
	YMGVyA53PkAg6s+NdGQYdlUlunmtr1eprx8u5glBClCRrqXXZvUywsV9Rdce7w4RajSz
	HQyjAhXp6mqlkgRz+7U2xds01fKgmLEIUWSI5wHr2j54l9XJbKYygGZI2/Iosgvhm7s4
	lxiQ==
X-Gm-Message-State: ALoCoQk5TJQ/QTb5SMQ05MBvJqC/yb8Br3XK2hIHiZtjcB4eI3YUGHRL/CTfoAg6BuuJ7GW7QLHr
X-Received: by 10.194.5.37 with SMTP id p5mr95457693wjp.20.1427983101319;
	Thu, 02 Apr 2015 06:58:21 -0700 (PDT)
Received: from [192.168.1.11] (ip-73-126.sn2.eutelia.it. [83.211.73.126])
	by mx.google.com with ESMTPSA id dr7sm2702631wib.22.2015.04.02.06.58.18
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Thu, 02 Apr 2015 06:58:20 -0700 (PDT)
Message-ID: <551D4B03.80105@m2r.biz>
Date: Thu, 02 Apr 2015 15:58:27 +0200
From: Fabio Fantoni <fabio.fantoni@m2r.biz>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
	rv:31.0) Gecko/20100101 Thunderbird/31.5.0
MIME-Version: 1.0
To: Paul Durrant <Paul.Durrant@citrix.com>, 
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
References: <55192CB4.7030802@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585EFDA@AMSPEX01CL01.citrite.net>
	<551C0400.7090908@m2r.biz>
In-Reply-To: <551C0400.7090908@m2r.biz>
Content-Type: multipart/mixed; boundary="------------080404090708090702060304"
Subject: Re: [win-pv-devel] Multiple save/restore failing with windows 8.1
	64 bit domU
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

This is a multi-part message in MIME format.
--------------080404090708090702060304
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit

Il 01/04/2015 16:43, Fabio Fantoni ha scritto:
> Il 01/04/2015 15:21, Paul Durrant ha scritto:
>>> -----Original Message-----
>>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
>>> Sent: 30 March 2015 12:00
>>> To: win-pv-devel@lists.xenproject.org
>>> Cc: Paul Durrant
>>> Subject: Multiple save/restore failing with windows 8.1 64 bit domU
>>>
>>> I tried 2 times multiple save/restore (start domU, use it for some
>>> minutes, do a save restore, use it, do another save/restore) and in 
>>> both
>>> case second save failed:
>>>
>> The patch I posted this morning should fix this one for you.
>>
>>    Paul
>
> Thanks.
>
> Today I tried windows 10 pro 64 bit technical preview, clean install, 
> pv drivers (today's build) install ok but after restore display 
> (connecting with spice) seems freezed, waited 4-5 minutes without 
> changes and after I tried also xl shudown but do nothing.
> DomU have pv disk and network working, xl shutdown (before try 
> save/restore) is working.

I updated pv drivers to today build and first save/restore now seems was 
working also in Windows 10 but still not the multiple (seem only partial 
solved), xl shutdown this time worked but it tooks some minutes.
In attachments domU's qemu logs with trace enabled.

If you more informations/tests tell me and I'll post them.

Thanks for any reply and sorry for my bad english.

>
> About save/restore on W8 I tried now with new pv build and with first 
> save/restore is all ok but with on second now xl save/restore 
> completes correctly but after restore freeze same as the W10 one 
> (since first save/restore).
>
> If you more informations/tests tell me and I'll post them.
>
> Thanks for any reply and sorry for my bad english.
>
>
>
>>
>>>> xl -vvv save W8 /mnt/vm/save/W8
>>>> libxl: debug: libxl.c:6705:libxl_retrieve_domain_configuration: no
>>>> vtpm from xenstore for domain 40
>>>> libxl: debug: libxl.c:6707:libxl_retrieve_domain_configuration: no pci
>>>> from xenstore for domain 40
>>>> Saving to /mnt/vm/save/W8 new xl format (info 0x1/0x0/1941)
>>>> libxl: debug: libxl.c:953:libxl_domain_suspend: ao 0x68d910: create:
>>>> how=(nil) callback=(nil) poller=0x68d970
>>>> libxl: debug: libxl_dom.c:1573:libxl__toolstack_save: domain=40
>>>> toolstack data size=49
>>>> libxl: debug: libxl.c:975:libxl_domain_suspend: ao 0x68d910:
>>>> inprogress: poller=0x68d970, flags=i
>>>> libxl-save-helper: debug: starting save: Success
>>>> xc: detail: xc_domain_save: starting save of domid 40
>>>> libxl: debug: libxl_dom.c:1278:domain_suspend_callback_common: issuing
>>>> PVHVM suspend request via XenBus control node
>>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
>>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
>>> register
>>>> slotnum=3
>>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68dae0
>>>> wpath=/local/domain/40/control/shutdown token=3/0: event
>>>> epath=/local/domain/40/control/shutdown
>>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
>>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
>>>> deregister slotnum=3
>>>> libxl: debug:
>>>> libxl_dom.c:1360:domain_suspend_common_pvcontrol_suspending: guest
>>>> acknowledged suspend request
>>>> libxl: debug: libxl_dom.c:1379:domain_suspend_common_wait_guest:
>>> wait
>>>> for the guest to suspend
>>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
>>>> w=0x68daf8 wpath=@releaseDomain token=3/1: register slotnum=3
>>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68daf8
>>>> wpath=@releaseDomain token=3/1: event epath=@releaseDomain
>>>> libxl: error: libxl_dom.c:1451:suspend_common_wait_guest_timeout:
>>>> guest did not suspend, timed out
>>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
>>>> w=0x68daf8 wpath=@releaseDomain token=3/1: deregister slotnum=3
>>>> xc: error: Suspend request failed: Internal error
>>>> xc: error: Domain appears not to have suspended: Internal error
>>>> libxl-save-helper: xc_domain_save.c:2077: xc_domain_save: Assertion
>>>> `rc' failed.
>>>> libxl: error: libxl_utils.c:430:libxl_read_exactly: file/stream
>>>> truncated reading ipc msg header from domain 40 save/restore helper
>>>> stdout pipe
>>>> libxl: error: libxl_exec.c:129:libxl_report_child_exitstatus: domain
>>>> 40 save/restore helper [-1] died due to fatal signal Aborted
>>>> libxl: error: libxl_dom.c:2035:remus_teardown_done: Remus: failed to
>>>> teardown device for guest with domid 40, rc -3
>>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
>>>> complete, rc=-3
>>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910: 
>>>> destroy
>>>> Failed to save domain, resuming domain
>>>> libxl: debug: libxl.c:542:libxl_domain_resume: ao 0x68d910: create:
>>>> how=(nil) callback=(nil) poller=0x68d970
>>>> xc: error: Dom 40 not suspended: (shutdown 0, reason 255): Internal 
>>>> error
>>>> libxl: error: libxl.c:511:libxl__domain_resume: xc_domain_resume
>>>> failed for domain 40: Invalid argument
>>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
>>>> complete, rc=-3
>>>> libxl: debug: libxl.c:545:libxl_domain_resume: ao 0x68d910:
>>>> inprogress: poller=0x68d970, flags=ic
>>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910: 
>>>> destroy
>>>> xc: debug: hypercall buffer: total allocations:29 total releases:29
>>>> xc: debug: hypercall buffer: current allocations:0 maximum 
>>>> allocations:2
>>>> xc: debug: hypercall buffer: cache current size:2
>>>> xc: debug: hypercall buffer: cache hits:20 misses:2 toobig:7
>>> If you need more informations/tests tell me and I'll post them.
>>>
>>> Thanks for any reply and sorry for my bad english.
>


--------------080404090708090702060304
Content-Type: text/plain; charset=windows-1252;
 name="qemu-dm-W10.log.1"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="qemu-dm-W10.log.1"

xen_ram_alloc: do not alloc 108000000 bytes of ram at 0 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 4000000 bytes of ram at 108000000 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 2000 bytes of ram at 10c000000 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 4000000 bytes of ram at 10c002000 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 10000 bytes of ram at 110002000 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 40000 bytes of ram at 110012000 when runstate is INMIGRATE
red_dispatcher_loadvm_commands: 
qemu-system-i386: usb-redir warning: usb-redir connection broken during migration

qemu-system-i386: usb-redir warning: usb-redir connection broken during migration

qemu-system-i386: usb-redir warning: usb-redir connection broken during migration

qemu-system-i386: usb-redir warning: usb-redir connection broken during migration

xen_platform_log xen platform: SUSPEND: SCHEDOP_shutdown:SHUTDOWN_suspend <==== (00000000)
xen_platform_log xen platform: XEN: HYPERCALL PAGE 0 @ 00000001.04988000
xen_platform_log xen platform: UNPLUG: PRE-AMBLE (DRIVERS NOT BLACKLISTED)
xen_platform_log xen platform: UNPLUG: DISKS
xen_platform_log xen platform: UNPLUG: NICS
xen_platform_log xen platform: SHARED_INFO: MAP XENMAPSPACE_shared_info @ 00000000.f8000000
xen_platform_log xen platform: STORE: PAGE @ 00000000.feffc000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[0] @ 00000000.f8001000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[1] @ 00000000.f8002000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[2] @ 00000000.f8003000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[3] @ 00000000.f8004000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[4] @ 00000000.f8005000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[5] @ 00000000.f8006000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[6] @ 00000000.f8007000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[7] @ 00000000.f8008000
xen_platform_log xen platform: EVTCHN_FIFO: RESET
xen_platform_log xen platform: EVTCHN_FIFO: CONTROLBLOCK[0] @ 00000000.518a0000
xen_platform_log xen platform: EVTCHN_FIFO: CONTROLBLOCK[1] @ 00000000.50022000
xen_platform_log xen platform: XENBUS|EvtchnAbiAcquire: FIFO
xen_platform_log xen platform: XENBUS|EvtchnInterruptEnable: CPU 0:0
xen_platform_log xen platform: XENBUS|EvtchnInterruptEnable: CPU 0:1
xen_platform_log xen platform: STORE: EVTCHN 1
xen_platform_log xen platform: EVTCHN_FIFO: EVENTARRAY[0] @ 00000000.524a4000
xen_platform_log xen platform: XENBUS|EvtchnFifoExpand: added ports [00000000 - 000003ff]
xen_platform_log xen platform: XENVBD|FdoSuspendLateCallback:8.0.0.19 (12/3/2015)
xen_platform_log xen platform: XENVBD|FrontendSuspendLateCallback:Target[0] : ===> from ENABLED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : ENABLED ----> CLOSED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CONNECTED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CLOSING
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CLOSED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : CLOSED ----> ENABLED
xen_platform_log xen platform: XENVBD|FrontendWriteUsage:Target[0] : DUMP NOT_HIBER PAGE
xen_platform_log xen platform: XENVBD|PdoUpdateInquiryData:Target[0] : VDI-UUID = {00000000-0000-0000-0000-000000000000}
xen_platform_log xen platform: XENVBD|FrontendPrepare:Target[0] : BackendId 0 (/local/domain/0/backend/vbd/61/768)
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state PREPARED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CONNECTED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state ENABLED
xen_platform_log xen platform: XENVBD|PdoPostResume:Target[0] : 0 Fresh SRBs
xen_platform_log xen platform: XENVBD|PdoPostResume:Target[0] : NOT_MISSING ((null))
xen_platform_log xen platform: XENVBD|FrontendSuspendLateCallback:Target[0] : <=== restored ENABLED
xen_platform_log xen platform: XENIFACE|FireSuspendEvent: Ready to unsuspend Event
xen_platform_log xen platform: XENVIF|__FrontendSetNumQueues: 2
xen_platform_log xen platform: XENBUS|EvtchnBind: [8]: CPU 0:1
xen_platform_log xen platform: XENBUS|EvtchnBind: [10]: CPU 0:1
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareNeighbourAdvertisement: fe80:0000:0000:0000:b023:5ce0:32df:ab9b
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareArp: 192.168.1.27
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareNeighbourAdvertisement: fe80:0000:0000:0000:b023:5ce0:32df:ab9b
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareArp: 192.168.1.27
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareNeighbourAdvertisement: fe80:0000:0000:0000:b023:5ce0:32df:ab9b
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareArp: 192.168.1.27
xen_platform_log xen platform: SUSPEND: <====
xen_platform_log xen platform: XENIFACE|WatchCallbackThread: SessionSuspendResumeUnwatch FFFFE000A14E0B80
xen_platform_log xen platform: XENIFACE|FdoRegistryThreadHandler: WriteRegistry
xen_platform_log xen platform: XENIFACE|StartWatch: Start Watch FFFFE0009F939510
xen_platform_log xen platform: XENIFACE|FdoInitialiseXSRegistryEntries: no such xenstore key
xen_platform_log xen platform: XENIFACE|FdoInitialiseXSRegistryEntries: Failed to initialise registry (c0000022)
xen_platform_log xen platform: XENNET|AdapterMediaStateChange: LINK: UP: SPEED=1000000000 DUPLEX=FULL
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 3
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Fire 0000001023FBFA80
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fire feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Check if we need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: No need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fired feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 2
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Suspend event
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Set time to XenTime
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: hosttimeIsUTC: Open Registry Key
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Time is now  2015.4.2 15:39:22.721
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Set time to 2015.4.2 15:40:6.945
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:MethodExec Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SessionStart Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SetVValue Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SetVPath Failed 
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Failed to advertise shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Handled suspend event
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 3
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Fire 0000001023FBFA80
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fire feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Check if we need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: No need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fired feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
main_channel_link: add main channel client
main_channel_handle_parsed: agent start
main_channel_handle_parsed: net test: latency 24.372000 ms, bitrate 168684622 bps (160.870192 Mbps)
inputs_connect: inputs channel client create
red_dispatcher_set_cursor_peer: 
xen_platform_log xen platform: SUSPEND: ====>
xen_platform_log xen platform: SUSPEND: SCHEDOP_shutdown:SHUTDOWN_suspend ====>
qemu: terminating on signal 1 from pid 8535
red_channel_client_disconnect_dummy: rcc=0x7f447c0e7d90 (channel=0x7f447bf61730 type=5 id=0)
snd_channel_put: SndChannel=0x7f447c244540 freed
red_channel_client_disconnect_dummy: rcc=0x7f447c032c20 (channel=0x7f447bf61960 type=6 id=0)
snd_channel_put: SndChannel=0x7f447c2ea1d0 freed
red_channel_client_disconnect: rcc=0x7f4453a17010 (channel=0x7f447bf73e70 type=2 id=0)
red_channel_client_disconnect: rcc=0x7f447c171b10 (channel=0x7f447bf75d60 type=4 id=0)

--------------080404090708090702060304
Content-Type: text/plain; charset=windows-1252;
 name="qemu-dm-W10.log.2"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="qemu-dm-W10.log.2"

main_channel_link: add main channel client
main_channel_handle_parsed: net test: latency 5.138000 ms, bitrate 64750703 bps (61.751082 Mbps)
inputs_connect: inputs channel client create
red_dispatcher_set_cursor_peer: 
xen_platform_log xen platform: XEN|DllInitialize: 8.0.0 (54) (02.04.2015)
xen_platform_log xen platform: XEN|AcpiFindRsdp: 0x00000000000F0D90
xen_platform_log xen platform: XEN|SystemGetStartOptions:  TESTSIGNING  FLIGHTSIGNING  NOEXECUTE=OPTIN
xen_platform_log xen platform: XEN|SystemGetVersionInformation: KERNEL: 10.0 (BUILD 10041) PLATFORM WIN32_NT (x64)
xen_platform_log xen platform: XEN|SystemGetVersionInformation: SUITES:
xen_platform_log xen platform: XEN|SystemGetVersionInformation: - TERMINAL
xen_platform_log xen platform: XEN|SystemGetVersionInformation: - SINGLEUSERTS
xen_platform_log xen platform: XEN|SystemGetVersionInformation: TYPE: WORKSTATION
xen_platform_log xen platform: XEN|SystemGetMemoryInformation: RANGE[0] 00000000.00001000 - 00000000.0009efff
xen_platform_log xen platform: XEN|SystemGetMemoryInformation: RANGE[1] 00000000.00100000 - 00000000.00101fff
xen_platform_log xen platform: XEN|SystemGetMemoryInformation: RANGE[2] 00000000.00103000 - 00000000.efffefff
xen_platform_log xen platform: XEN|SystemGetMemoryInformation: RANGE[3] 00000001.00000000 - 00000001.07ffffff
xen_platform_log xen platform: XEN|AcpiGetXsdt: 0x00000000FC00A010
xen_platform_log xen platform: XEN|SystemProcessorInformation: ====> (0:0)
xen_platform_log xen platform: XEN|SystemProcessorInformation: Manufacturer: GenuineIntel
xen_platform_log xen platform: XEN|SystemProcessorInformation: APIC ID: 00
xen_platform_log xen platform: XEN|SystemProcessorInformation: PROCESSOR ID: 00
xen_platform_log xen platform: XEN|SystemProcessorInformation: <==== (0:0)
xen_platform_log xen platform: XEN|SystemProcessorInformation: ====> (0:1)
xen_platform_log xen platform: XEN|SystemProcessorInformation: Manufacturer: GenuineIntel
xen_platform_log xen platform: XEN|SystemProcessorInformation: APIC ID: 02
xen_platform_log xen platform: XEN|SystemProcessorInformation: PROCESSOR ID: 01
xen_platform_log xen platform: XEN|SystemProcessorInformation: <==== (0:1)
xen_platform_log xen platform: XEN: HYPERCALL PAGE 0 @ 00000001.04988000
xen_platform_log xen platform: XENFILT|DriverEntry: 8.0.0 (54) (02.04.2015)
xen_platform_log xen platform: XEN: 4.6-unstable (__XEN_INTERFACE_VERSION__ = 00040600)
xen_platform_log xen platform: XENFILT|DriverSetActiveDeviceInstance: PCI\VEN_5853&DEV_0001&SUBSYS_00015853&REV_01/10
xen_platform_log xen platform: XENFILT|UnplugCheckForPVDisks: PRESENT
xen_platform_log xen platform: XENFILT|UnplugCheckForPVNics: PRESENT
xen_platform_log xen platform: XENFILT|FdoCreate: FFFFE000A038CAD0 (ACPI\PNP0A03\0)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE000A0382AD0 (PCI\VEN_8086&DEV_1237&SUBSYS_11001AF4&REV_02\00)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE000A0390AD0 (PCI\VEN_8086&DEV_7000&SUBSYS_11001AF4&REV_00\08)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFE6AD0 (PCI\VEN_8086&DEV_7010&SUBSYS_11001AF4&REV_00\09)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFE7AD0 (PCI\VEN_5853&DEV_0001&SUBSYS_00015853&REV_01\10)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFEFAD0 (PCI\VEN_8086&DEV_2668&SUBSYS_11001AF4&REV_01\18)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFEEAD0 (PCI\VEN_1AF4&DEV_1003&SUBSYS_00031AF4&REV_00\20)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFEDAD0 (PCI\VEN_1B36&DEV_0100&SUBSYS_11001AF4&REV_04\28)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFCDAD0 (PCI\VEN_10EC&DEV_8139&SUBSYS_11001AF4&REV_20\30)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFCCAD0 (PCI\VEN_8086&DEV_2934&SUBSYS_11001AF4&REV_03\E8)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFC9AD0 (PCI\VEN_8086&DEV_2935&SUBSYS_11001AF4&REV_03\E9)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFC8AD0 (PCI\VEN_8086&DEV_2936&SUBSYS_11001AF4&REV_03\EA)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFC7AD0 (PCI\VEN_8086&DEV_293A&SUBSYS_11001AF4&REV_03\EF)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFC6AD0 (ACPI\PNP0103\0)
xen_platform_log xen platform: XENFILT|DriverSetFilterState: ACTIVE DEVICE PRESENT
xen_platform_log xen platform: UNPLUG: PRE-AMBLE (DRIVERS NOT BLACKLISTED)
xen_platform_log xen platform: UNPLUG: DISKS
xen_platform_log xen platform: UNPLUG: NICS
xen_platform_log xen platform: XENFILT|DriverSetFilterState: PENDING
xen_platform_log xen platform: XENFILT|PdoDestroy: FFFFE0009FFCDAD0 (PCI\VEN_10EC&DEV_8139&SUBSYS_11001AF4&REV_20\30) (device disappeared)
xen_platform_log xen platform: XENFILT|DriverSetFilterState: DISABLED
xen_platform_log xen platform: XENBUS|DriverEntry: 8.0.0 (54) (02.04.2015)
xen_platform_log xen platform: XENFILT|PdoQueryInterface: PCI\VEN_5853&DEV_0001&SUBSYS_00015853&REV_01\10: UNPLUG_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|FdoCreate: FFFFE0009FFF6040 (XS0001 XENBUS) [ACTIVE]
xen_platform_log xen platform: XENBUS|FdoConnectInterrupt: FFFFE0009FFF5C98: Shared LevelSensitive CPU 0:0 VECTOR b1
xen_platform_log xen platform: XENBUS|FdoConnectInterrupt: FFFFE0009FFF5958: DeviceExclusive Latched CPU 0:0 VECTOR 50
xen_platform_log xen platform: XENBUS|FdoConnectInterrupt: FFFFE0009F1F4C98: DeviceExclusive Latched CPU 0:1 VECTOR 50
xen_platform_log xen platform: XENBUS|FdoScan: ====>
xen_platform_log xen platform: XENBUS|FdoCreateIoSpace: 00000000.f8000000 - 00000000.f8ffffff
xen_platform_log xen platform: XENBUS|FdoSuspend: ====>
xen_platform_log xen platform: SHARED_INFO: MAP XENMAPSPACE_shared_info @ 00000000.f8000000
xen_platform_log xen platform: XENBUS|FdoBalloon: ====>
xen_platform_log xen platform: EVTCHN_FIFO: CONTROLBLOCK[0] @ 00000000.00f8a000
xen_platform_log xen platform: EVTCHN_FIFO: CONTROLBLOCK[1] @ 00000000.00f8b000
xen_platform_log xen platform: XENBUS|EvtchnAbiAcquire: FIFO
xen_platform_log xen platform: XENBUS|EvtchnInterruptEnable: CPU 0:0
xen_platform_log xen platform: XENBUS|EvtchnInterruptEnable: CPU 0:1
xen_platform_log xen platform: STORE: PAGE @ 00000000.feffc000
xen_platform_log xen platform: STORE: EVTCHN 1
xen_platform_log xen platform: EVTCHN_FIFO: EVENTARRAY[0] @ 00000000.0078c000
xen_platform_log xen platform: XENBUS|EvtchnFifoExpand: added ports [00000000 - 000003ff]
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE0009FFF3D50 (VBD 00000001)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE0009FFF3D50 (VBD 00000002)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE0009FFF3D50 (VBD 00000003)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE0009FFF3D50 (VBD 00000004)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE0009FFF3D50 (VBD 00000005)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE0009FFF3D50 (VBD 00000006)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE0009FFF3D50 (VBD 00000007)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE0009FFF3D50 (VBD 00000008)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03ADD50 (VIF 00000001)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03ADD50 (VIF 00000002)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03ADD50 (VIF 00000003)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03ADD50 (VIF 00000004)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03ADD50 (VIF 00000005)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03ADD50 (VIF 00000006)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03ADD50 (VIF 00000007)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03ADD50 (VIF 00000008)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03B1530 (IFACE 00000001)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03B1530 (IFACE 00000002)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03B1530 (IFACE 00000003)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03B1530 (IFACE 00000004)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03B1530 (IFACE 00000005)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03B1530 (IFACE 00000006)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03B1530 (IFACE 00000007)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03B1530 (IFACE 00000008)
xen_platform_log xen platform: XENFILT|FdoCreate: FFFFE000A03E7AD0 (PCIIDE\IDEChannel\0)
xen_platform_log xen platform: XENFILT|FdoCreate: FFFFE000A03E4AD0 (PCIIDE\IDEChannel\1)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE000A03DE640 (IDE\CdRomQEMU_QEMU_DVD-ROM_______________________2.0.____\0.1.0)
xen_platform_log xen platform: XENVBD|DriverEntry:8.0.0.19 (12/3/2015)
xen_platform_log xen platform: XENVBD|__DriverParseParameterKey:DriverParameters: 
xen_platform_log xen platform: XENDISK|DriverEntry:XENDISK 8.0.0 (19) (12.03.2015)
xen_platform_log xen platform: XENDISK|FdoCreate:FFFFE000A03E3DF0
xen_platform_log xen platform: XENVBD|DispatchPnp:DeviceObject 0xFFFFE000A0480050 is not FDO (0x0000000000000000) or a PDO
xen_platform_log xen platform: XENVBD|DispatchPnp:DeviceObject 0xFFFFE000A0480050 is not FDO (0x0000000000000000) or a PDO
xen_platform_log xen platform: XENVBD|DispatchPnp:DeviceObject 0xFFFFE000A0480050 is not FDO (0x0000000000000000) or a PDO
xen_platform_log xen platform: XENVBD|DispatchPnp:DeviceObject 0xFFFFE000A0480050 is not FDO (0x0000000000000000) or a PDO
xen_platform_log xen platform: XENVBD|DispatchPnp:DeviceObject 0xFFFFE000A0480050 is not FDO (0x0000000000000000) or a PDO
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VBD: BUS_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENVBD|DispatchPnp:DeviceObject 0xFFFFE000A0480050 is not FDO (0x0000000000000000) or a PDO
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VBD: BUS_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: Version = 0
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: Master = TRUE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: ScatterGather = TRUE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DemandMode = FALSE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: AutoInitialize = FALSE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: Dma32BitAddresses = TRUE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: IgnoreCount = FALSE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: Dma64BitAddresses = TRUE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: BusNumber = 00000000
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DmaChannel = ffffffff
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: InterfaceType = Internal
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DmaWidth = 8Bits
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DmaSpeed = Compatible
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: MaximumLength = 000b0000
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DmaPort = ffffffff
xen_platform_log xen platform: XENVBD|DispatchPnp:DeviceObject 0xFFFFE000A0480050 is not FDO (0x0000000000000000) or a PDO
xen_platform_log xen platform: XENBUS|DmaGetAdapter: no interception
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VBD: STORE_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VBD: EVTCHN_INTERFACE (VERSION 3)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VBD: GNTTAB_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VBD: SUSPEND_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VBD: DEBUG_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VBD: EMULATED_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENFILT|PdoQueryInterface: PCI\VEN_5853&DEV_0001&SUBSYS_00015853&REV_01\10: EMULATED_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENVBD|__FdoSetDevicePowerState:POWER D3 to D0
xen_platform_log xen platform: XENVBD|__FdoD3ToD0:D3->D0
xen_platform_log xen platform: XENVBD|__FdoIsPdoUnplugged:Target[0] : (vbd/768) Emulated NOT_PRESENT
xen_platform_log xen platform: XENVBD|PdoCreate:Target[0] : Creating (PV)
xen_platform_log xen platform: XENVBD|PdoSetDevicePowerState:Target[0] : POWER D3 to D0
xen_platform_log xen platform: XENVBD|PdoD3ToD0:Target[0] : D3->D0 (PV)
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : INITIALIZED ----> ENABLED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CLOSED
xen_platform_log xen platform: XENVBD|FrontendWriteUsage:Target[0] : NOT_DUMP NOT_HIBER NOT_PAGE
xen_platform_log xen platform: XENVBD|__WaitState:Target[0] : 0 Waited for 17268 ms
xen_platform_log xen platform: XENVBD|PdoReadInquiryData:Target[0] : Failed to get Page80 data
xen_platform_log xen platform: XENVBD|PdoReadInquiryData:Target[0] : Failed to get Page83 data
xen_platform_log xen platform: XENVBD|PdoUpdateInquiryData:Target[0] : VDI-UUID = {00000000-0000-0000-0000-000000000000}
xen_platform_log xen platform: XENVBD|FrontendPrepare:Target[0] : BackendId 0 (/local/domain/0/backend/vbd/60/768)
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state PREPARED
xen_platform_log xen platform: XENBUS|RangeSetPop: fail1 (c000009a)
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[0] @ 00000000.f8001000
xen_platform_log xen platform: XENBUS|GnttabExpand: added references [00000020 - 000001ff]
xen_platform_log xen platform: XENVBD|__ReadDiskInfo:Target[0] : 104857600 sectors of 512 bytes (512)
xen_platform_log xen platform: XENVBD|__ReadDiskInfo:Target[0] : 50 GB (00000000) 
xen_platform_log xen platform: XENVBD|FrontendReadDiskInfo:Target[0] : Features: BARRIER FLUSH DISCARD 
xen_platform_log xen platform: XENVBD|FrontendReadDiskInfo:Target[0] : DISCARD 0/1000
xen_platform_log xen platform: XENVBD|FrontendReadFeatures:Target[0] : Features: PERSISTENT INDIRECT 
xen_platform_log xen platform: XENVBD|FrontendReadFeatures:Target[0] : INDIRECT 100
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CONNECTED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state ENABLED
xen_platform_log xen platform: XENVBD|PdoCreate:Target[0] : Created (PV)
xen_platform_log xen platform: XENVBD|FdoLogTargets:ScanThread ===>
xen_platform_log xen platform: XENVBD|FdoLogTargets:ScanThread : Target[0] = 0xFFFFE0009F5E5610 (present)
xen_platform_log xen platform: XENVBD|FdoLogTargets:ScanThread <===
xen_platform_log xen platform: XENVBD|FdoDispatchPnp:14:QUERY_PNP_DEVICE_STATE -> c00000bb
xen_platform_log xen platform: XENVBD|__HandlePage83:Target[0] : INQUIRY Using Fake Page83 Data
xen_platform_log xen platform: XENVBD|__HandlePage80:Target[0] : INQUIRY Using Fake Page80 Data
xen_platform_log xen platform: XENDISK|PdoCreate:FFFFE000A03D4DF0
xen_platform_log xen platform: XENVBD|PdoSetDeviceObject:Target[0] : Setting DeviceObject = 0xFFFFE000A03D6060
xen_platform_log xen platform: XENVBD|FdoMapDeviceObjectToPdo:0xFFFFE000A03D6060 --> Target 0 (000000)
xen_platform_log xen platform: XENVBD|PdoDispatchPnp:Target[0] : 13:QUERY_ID -> c00000bb
xen_platform_log xen platform: XENVBD|PdoDispatchPnp:Target[0] : 08:QUERY_INTERFACE -> c00000bb
xen_platform_log xen platform: XENVBD|PdoDispatchPnp:Target[0] : 15:QUERY_BUS_INFORMATION -> c00000bb
xen_platform_log xen platform: XENVBD|PdoDispatchPnp:Target[0] : 19:UNKNOWN -> c00000bb
xen_platform_log xen platform: XENVBD|PdoDispatchPnp:Target[0] : 18:UNKNOWN -> c00000bb
xen_platform_log xen platform: XENVBD|PdoDispatchPnp:Target[0] : 0d:FILTER_RESOURCE_REQUIREMENTS -> c00000bb
xen_platform_log xen platform: XENVBD|PdoSetDevicePnpState:Target[0] : PNP Present to Started
xen_platform_log xen platform: XENVBD|PdoDispatchPnp:Target[0] : 08:QUERY_INTERFACE -> c00000bb
xen_platform_log xen platform: XENVBD|PdoDispatchPnp:Target[0] : 07:QUERY_DEVICE_RELATIONS -> c00000bb
xen_platform_log xen platform: XENVBD|FrontendWriteUsage:Target[0] : DUMP NOT_HIBER NOT_PAGE
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENVBD|FdoDispatchPnp:14:QUERY_PNP_DEVICE_STATE -> c00000bb
xen_platform_log xen platform: XENBUS|RangeSetPop: fail1 (c000009a)
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[1] @ 00000000.f8002000
xen_platform_log xen platform: XENBUS|GnttabExpand: added references [00000200 - 000003ff]
xen_platform_log xen platform: XENVIF|DriverEntry: XENVIF 8.0.0 (25) (24.03.2015)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: BUS_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: DEBUG_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: SUSPEND_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: EVTCHN_INTERFACE (VERSION 4)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: STORE_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: RANGE_SET_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: CACHE_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: GNTTAB_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENVIF|FdoCreate: FFFFE000A0688D50 (XS0001 XENVIF)
xen_platform_log xen platform: XENIFACE|DriverEntry: 8.0.0.14 (12/3/2015)
xen_platform_log xen platform: XENIFACE|ThreadCreate: Create thread FFFFF8007CE77E8C FFFFE000A07EB090
xen_platform_log xen platform: XENIFACE|ThreadCreate: Create thread FFFFF8007CE76DD4 FFFFE000A07EB0A0
xen_platform_log xen platform: XENBUS|PdoQueryInterface: IFACE: SUSPEND_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: IFACE: SHARED_INFO_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: IFACE: STORE_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENIFACE|FdoInitialiseXSRegistryEntries: no such xenstore key
xen_platform_log xen platform: XENIFACE|FdoInitialiseXSRegistryEntries: Failed to initialise registry (c0000022)
xen_platform_log xen platform: XENIFACE|ThreadCreate: Create thread FFFFF8007CE77968 FFFFE000A07EB2B0
xen_platform_log xen platform: XENIFACE|FdoCreate: FFFFE000A07E5B50 (IFACE)
xen_platform_log xen platform: XENBUS|RangeSetPop: fail1 (c000009a)
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[2] @ 00000000.f8003000
xen_platform_log xen platform: XENBUS|GnttabExpand: added references [00000400 - 000005ff]
xen_platform_log xen platform: XENBUS|RangeSetPop: fail1 (c000009a)
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[3] @ 00000000.f8004000
xen_platform_log xen platform: XENBUS|GnttabExpand: added references [00000600 - 000007ff]
xen_platform_log xen platform: XENBUS|RangeSetPop: fail1 (c000009a)
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[4] @ 00000000.f8005000
xen_platform_log xen platform: XENBUS|GnttabExpand: added references [00000800 - 000009ff]
xen_platform_log xen platform: XENBUS|RangeSetPop: fail1 (c000009a)
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[5] @ 00000000.f8006000
xen_platform_log xen platform: XENBUS|GnttabExpand: added references [00000a00 - 00000bff]
xen_platform_log xen platform: XENBUS|RangeSetPop: fail1 (c000009a)
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[6] @ 00000000.f8007000
xen_platform_log xen platform: XENBUS|GnttabExpand: added references [00000c00 - 00000dff]
xen_platform_log xen platform: XENVIF|__PdoSetPermanentAddress: 0 00:16:3E:FE:7A:B9
xen_platform_log xen platform: XENVIF|__PdoSetContainerID: 0 {ca136717-12c6-5b65-881e-334b6ab03532}
xen_platform_log xen platform: XENVIF|__FrontendSetMaxQueues: 2
xen_platform_log xen platform: XENVIF|PdoCreate: FFFFE000A0A8F570 (0 00000001)
xen_platform_log xen platform: XENVIF|PdoCreate: FFFFE000A0A8F570 (0 00000002)
xen_platform_log xen platform: XENVIF|LinkGetRoutineAddress: netio.sys:NotifyUnicastIpAddressChange (0145) @ FFFFF8007BBBE7B0
xen_platform_log xen platform: XENVIF|LinkGetRoutineAddress: netio.sys:GetUnicastIpAddressTable (0053) @ FFFFF8007BBB83C0
xen_platform_log xen platform: XENVIF|LinkGetRoutineAddress: netio.sys:FreeMibTable (002B) @ FFFFF8007BBB8090
xen_platform_log xen platform: XENVIF|LinkGetRoutineAddress: netio.sys:CancelMibChangeNotify2 (0003) @ FFFFF8007BBD31D0
xen_platform_log xen platform: XENNET|DriverEntry: XENNET 8.0.0 (18) (24.03.2015)
xen_platform_log xen platform: XENIFACE|WmiInit: DRV: XenIface WMI Initialisation
xen_platform_log xen platform: XENVIF|LinkGetRoutineAddress: netio.sys:GetIfTable2 (0043) @ FFFFF8007BBBF420
xen_platform_log xen platform: XENVIF|LinkGetRoutineAddress: netio.sys:FreeMibTable (002B) @ FFFFF8007BBB8090
xen_platform_log xen platform: XENVIF|__FrontendSetNumQueues: 2
xen_platform_log xen platform: XENBUS|EvtchnBind: [9]: CPU 0:1
xen_platform_log xen platform: XENBUS|EvtchnBind: [11]: CPU 0:1
xen_platform_log xen platform: XENVIF|PdoQueryInterface: 0: VIF_INTERFACE (VERSION 2)
xen_platform_log xen platform: XENVIF|PdoQueryInterface: 0: CACHE_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: CACHE_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv4Receive.IpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv4Receive.TcpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv4Receive.UdpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv6Receive.TcpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv6Receive.UdpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv4Transmit.IpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv4Transmit.TcpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv4Transmit.UdpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv6Transmit.TcpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv6Transmit.UdpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: LsoV2.IPv4.MaxOffLoadSize = 65201
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: LsoV2.IPv6.MaxOffLoadSize = 65201
xen_platform_log xen platform: XENVIF|PdoQueryInterface: 0: BUS_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: Version = 2
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: Master = TRUE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: ScatterGather = TRUE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DemandMode = FALSE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: AutoInitialize = FALSE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: Dma32BitAddresses = FALSE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: IgnoreCount = FALSE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: Dma64BitAddresses = TRUE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: BusNumber = 00000000
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DmaChannel = 00000000
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: InterfaceType = Internal
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DmaWidth = 8Bits
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DmaSpeed = Compatible
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: MaximumLength = 00020000
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DmaPort = 00000000
xen_platform_log xen platform: XENBUS|DmaGetAdapter: no interception
xen_platform_log xen platform: XENBUS|RangeSetPop: fail1 (c000009a)
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[7] @ 00000000.f8008000
xen_platform_log xen platform: XENBUS|GnttabExpand: added references [00000e00 - 00000fff]
xen_platform_log xen platform: XENNET|AdapterMediaStateChange: LINK: UP: SPEED=1000000000 DUPLEX=FULL
xen_platform_log xen platform: XENVBD|FrontendWriteUsage:Target[0] : NOT_DUMP NOT_HIBER NOT_PAGE
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENVBD|FdoDispatchPnp:14:QUERY_PNP_DEVICE_STATE -> c00000bb
xen_platform_log xen platform: XENVBD|FrontendWriteUsage:Target[0] : NOT_DUMP NOT_HIBER PAGE
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENVBD|FdoDispatchPnp:14:QUERY_PNP_DEVICE_STATE -> c00000bb
xen_platform_log xen platform: XENVBD|FrontendWriteUsage:Target[0] : DUMP NOT_HIBER PAGE
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENVBD|FdoDispatchPnp:14:QUERY_PNP_DEVICE_STATE -> c00000bb
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENVBD|FdoDispatchPnp:14:QUERY_PNP_DEVICE_STATE -> c00000bb
main_channel_handle_parsed: agent start
xen_platform_log xen platform: XENNET|AdapterSetInformation: UNSUPPORTED OID 00010118
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Guest agent lite main loop starting
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Set time to XenTime
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: hosttimeIsUTC: Open Registry Key
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Time is now  2015.4.2 15:30:6.346
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Set time to 2015.4.2 15:30:6.201
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: About to add feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Establish watch control/shutdown
xen_platform_log xen platform: XENIFACE|StartWatch: Start Watch FFFFE000A14E0B80
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: About to advertise features
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:MethodExec Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SessionStart Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SetVValue Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SetVPath Failed 
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Failed to advertise shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: About to kick xapi 
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 3
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Fire 0000001023FBFA80
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fire feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Check if we need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: No need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fired feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
xen_platform_log xen platform: SUSPEND: ====>
xen_platform_log xen platform: SUSPEND: SCHEDOP_shutdown:SHUTDOWN_suspend ====>
qemu: terminating on signal 1 from pid 7910
red_channel_client_disconnect_dummy: rcc=0x7ff06d646460 (channel=0x7ff06d4ffbc0 type=5 id=0)
snd_channel_put: SndChannel=0x7ff06d7b1a30 freed
red_channel_client_disconnect_dummy: rcc=0x7ff06d5dcf00 (channel=0x7ff06d4fa1a0 type=6 id=0)
snd_channel_put: SndChannel=0x7ff06d5cc6c0 freed
red_channel_client_disconnect: rcc=0x7ff06d8f1be0 (channel=0x7ff06d553190 type=2 id=0)
red_channel_client_disconnect: rcc=0x7ff06d6419f0 (channel=0x7ff06d51cea0 type=4 id=0)

--------------080404090708090702060304
Content-Type: text/plain; charset=windows-1252;
 name="qemu-dm-W10.log"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="qemu-dm-W10.log"

xen_ram_alloc: do not alloc 108000000 bytes of ram at 0 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 4000000 bytes of ram at 108000000 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 2000 bytes of ram at 10c000000 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 4000000 bytes of ram at 10c002000 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 10000 bytes of ram at 110002000 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 40000 bytes of ram at 110012000 when runstate is INMIGRATE
red_dispatcher_loadvm_commands: 
qemu-system-i386: usb-redir warning: usb-redir connection broken during migration

qemu-system-i386: usb-redir warning: usb-redir connection broken during migration

qemu-system-i386: usb-redir warning: usb-redir connection broken during migration

qemu-system-i386: usb-redir warning: usb-redir connection broken during migration

xen_platform_log xen platform: SUSPEND: SCHEDOP_shutdown:SHUTDOWN_suspend <==== (00000000)
xen_platform_log xen platform: XEN: HYPERCALL PAGE 0 @ 00000001.04988000
xen_platform_log xen platform: UNPLUG: PRE-AMBLE (DRIVERS NOT BLACKLISTED)
xen_platform_log xen platform: UNPLUG: DISKS
xen_platform_log xen platform: UNPLUG: NICS
xen_platform_log xen platform: SHARED_INFO: MAP XENMAPSPACE_shared_info @ 00000000.f8000000
xen_platform_log xen platform: STORE: PAGE @ 00000000.feffc000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[0] @ 00000000.f8001000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[1] @ 00000000.f8002000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[2] @ 00000000.f8003000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[3] @ 00000000.f8004000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[4] @ 00000000.f8005000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[5] @ 00000000.f8006000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[6] @ 00000000.f8007000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[7] @ 00000000.f8008000
xen_platform_log xen platform: EVTCHN_FIFO: RESET
xen_platform_log xen platform: EVTCHN_FIFO: CONTROLBLOCK[0] @ 00000000.49152000
xen_platform_log xen platform: EVTCHN_FIFO: CONTROLBLOCK[1] @ 00000000.31453000
xen_platform_log xen platform: XENBUS|EvtchnAbiAcquire: FIFO
xen_platform_log xen platform: XENBUS|EvtchnInterruptEnable: CPU 0:0
xen_platform_log xen platform: XENBUS|EvtchnInterruptEnable: CPU 0:1
xen_platform_log xen platform: STORE: EVTCHN 1
xen_platform_log xen platform: EVTCHN_FIFO: EVENTARRAY[0] @ 00000000.3fed4000
xen_platform_log xen platform: XENBUS|EvtchnFifoExpand: added ports [00000000 - 000003ff]
xen_platform_log xen platform: XENVBD|FdoSuspendLateCallback:8.0.0.19 (12/3/2015)
xen_platform_log xen platform: XENVBD|FrontendSuspendLateCallback:Target[0] : ===> from ENABLED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : ENABLED ----> CLOSED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CONNECTED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CLOSING
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CLOSED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : CLOSED ----> ENABLED
xen_platform_log xen platform: XENVBD|FrontendWriteUsage:Target[0] : DUMP NOT_HIBER PAGE
xen_platform_log xen platform: XENVBD|PdoUpdateInquiryData:Target[0] : VDI-UUID = {00000000-0000-0000-0000-000000000000}
xen_platform_log xen platform: XENVBD|FrontendPrepare:Target[0] : BackendId 0 (/local/domain/0/backend/vbd/63/768)
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state PREPARED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CONNECTED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state ENABLED
xen_platform_log xen platform: XENVBD|PdoPostResume:Target[0] : 0 Fresh SRBs
xen_platform_log xen platform: XENVBD|PdoPostResume:Target[0] : NOT_MISSING ((null))
xen_platform_log xen platform: XENVBD|FrontendSuspendLateCallback:Target[0] : <=== restored ENABLED
xen_platform_log xen platform: XENIFACE|FireSuspendEvent: Ready to unsuspend Event
xen_platform_log xen platform: XENVIF|__FrontendSetNumQueues: 2
xen_platform_log xen platform: XENBUS|EvtchnBind: [8]: CPU 0:1
xen_platform_log xen platform: XENBUS|EvtchnBind: [10]: CPU 0:1
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareNeighbourAdvertisement: fe80:0000:0000:0000:b023:5ce0:32df:ab9b
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareArp: 192.168.1.27
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareNeighbourAdvertisement: fe80:0000:0000:0000:b023:5ce0:32df:ab9b
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareArp: 192.168.1.27
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareNeighbourAdvertisement: fe80:0000:0000:0000:b023:5ce0:32df:ab9b
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareArp: 192.168.1.27
xen_platform_log xen platform: SUSPEND: <====
xen_platform_log xen platform: XENNET|AdapterMediaStateChange: LINK: UP: SPEED=1000000000 DUPLEX=FULL
xen_platform_log xen platform: XENIFACE|WatchCallbackThread: SessionSuspendResumeUnwatch FFFFE0009F939510
xen_platform_log xen platform: XENIFACE|FdoRegistryThreadHandler: WriteRegistry
xen_platform_log xen platform: XENIFACE|StartWatch: Start Watch FFFFE000A129A0F0
xen_platform_log xen platform: XENIFACE|FdoInitialiseXSRegistryEntries: no such xenstore key
xen_platform_log xen platform: XENIFACE|FdoInitialiseXSRegistryEntries: Failed to initialise registry (c0000022)
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 3
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Fire 0000001023FBFA80
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fire feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Check if we need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: No need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fired feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 2
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Suspend event
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Set time to XenTime
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: hosttimeIsUTC: Open Registry Key
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Time is now  2015.4.2 15:45:14.770
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Set time to 2015.4.2 15:46:48.488
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:MethodExec Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SessionStart Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SetVValue Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SetVPath Failed 
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Failed to advertise shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Handled suspend event
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 3
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Fire 0000001023FBFA80
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fire feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Check if we need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: No need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fired feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
main_channel_link: add main channel client
main_channel_handle_parsed: agent start
main_channel_handle_parsed: net test: latency 4.345000 ms, bitrate 115686606 bps (110.327345 Mbps)
inputs_connect: inputs channel client create
red_dispatcher_set_cursor_peer: 
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 3
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Fire 0000001023FBFA80
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fire feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Check if we need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Shutdown type poweroff
xen_platform_log xen platform: 
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Report Shutdown Event
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Do the shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fired feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 3
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Fire 0000001023FBFA80
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fire feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Check if we need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: No need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fired feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
main_channel_handle_parsed: agent start
xen_platform_log xen platform: XEN|SystemPowerStateCallback: <- S0
xen_platform_log xen platform: XENNET|AdapterMediaStateChange: LINK: UP: SPEED=1000000000 DUPLEX=FULL
xen_platform_log xen platform: XENVBD|FrontendWriteUsage:Target[0] : NOT_DUMP NOT_HIBER PAGE
xen_platform_log xen platform: XENDISK|__PdoSetSystemPowerDown:FFFFE000A03D4DF0: Working -> Shutdown
xen_platform_log xen platform: XENDISK|__PdoSetDevicePowerDown:FFFFE000A03D4DF0: D0 -> D3
xen_platform_log xen platform: XENDISK|__FdoSetSystemPowerDown:FFFFE000A03E3DF0: Working -> Shutdown
xen_platform_log xen platform: XENDISK|__FdoSetDevicePowerDown:FFFFE000A03E3DF0: D0 -> D3
xen_platform_log xen platform: XENVBD|FdoDevicePower:FDO:PowerDeviceD3 (Shutdown)
xen_platform_log xen platform: XENVBD|__FdoSetDevicePowerState:POWER D0 to D3
xen_platform_log xen platform: XENVBD|__FdoD0ToD3:D0->D3
xen_platform_log xen platform: XENVBD|PdoSetDevicePowerState:Target[0] : POWER D0 to D3
xen_platform_log xen platform: XENVBD|PdoD0ToD3:Target[0] : D0->D3 (PV)
xen_platform_log xen platform: XENVBD|__PdoPauseDataPath:Target[0] : Waiting for 0 Submitted requests
xen_platform_log xen platform: XENVBD|__PdoPauseDataPath:Target[0] : 0/0 Submitted requests left (0 iterrations)
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : ENABLED ----> CLOSED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CONNECTED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CLOSING
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CLOSED
Issued domain 63 poweroff
qemu: terminating on signal 1 from pid 8912
red_channel_client_disconnect_dummy: rcc=0x7faf8555bf30 (channel=0x7faf85244730 type=5 id=0)
snd_channel_put: SndChannel=0x7faf85527540 freed
red_channel_client_disconnect_dummy: rcc=0x7faf85560170 (channel=0x7faf85244960 type=6 id=0)
snd_channel_put: SndChannel=0x7faf8562d290 freed

--------------080404090708090702060304
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
--------------080404090708090702060304--


From win-pv-devel-bounces@lists.xenproject.org Thu Apr 02 13:58:27 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 02 Apr 2015 13:58:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Ydfdb-0005K7-Ar; Thu, 02 Apr 2015 13:58:27 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <fabio.fantoni@m2r.biz>) id 1YdfdZ-0005Ju-G4
	for win-pv-devel@lists.xenproject.org; Thu, 02 Apr 2015 13:58:25 +0000
Received: from [85.158.137.68] by server-7.bemta-3.messagelabs.com id
	5C/AA-24632-00B4D155; Thu, 02 Apr 2015 13:58:24 +0000
X-Env-Sender: fabio.fantoni@m2r.biz
X-Msg-Ref: server-9.tower-31.messagelabs.com!1427983101!9703547!1
X-Originating-IP: [209.85.212.173]
X-SpamReason: No, hits=2.2 required=7.0 tests=BIZ_TLD,BODY_RANDOM_LONG
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 21763 invoked from network); 2 Apr 2015 13:58:21 -0000
Received: from mail-wi0-f173.google.com (HELO mail-wi0-f173.google.com)
	(209.85.212.173)
	by server-9.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	2 Apr 2015 13:58:21 -0000
Received: by wiaa2 with SMTP id a2so106354312wia.0
	for <win-pv-devel@lists.xenproject.org>;
	Thu, 02 Apr 2015 06:58:21 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20130820;
	h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to
	:subject:references:in-reply-to:content-type;
	bh=CVTAH+e2CamFVLyu4x2rVl1bMdpOCmARBQMiBk0QqVg=;
	b=XkqbQcn6O9/52W4ER1slGyo6Rl5XcbDhFufEUoFzTEtgkFwxLv/yj+uEIyQHxHCZUk
	Z0ZWEH8okfvX0oTdtjFxHBzTWg7cBfCP1yDWckOUZQgi+5NuAxzckT0DAjYxt+cut0Zo
	YzjET9CpXbruxiv8yz79J8OBEOwMTWeu+lEV7CJlQ8Je/Gcb2zSTYmmOrWRQ0M5Hrgdi
	YMGVyA53PkAg6s+NdGQYdlUlunmtr1eprx8u5glBClCRrqXXZvUywsV9Rdce7w4RajSz
	HQyjAhXp6mqlkgRz+7U2xds01fKgmLEIUWSI5wHr2j54l9XJbKYygGZI2/Iosgvhm7s4
	lxiQ==
X-Gm-Message-State: ALoCoQk5TJQ/QTb5SMQ05MBvJqC/yb8Br3XK2hIHiZtjcB4eI3YUGHRL/CTfoAg6BuuJ7GW7QLHr
X-Received: by 10.194.5.37 with SMTP id p5mr95457693wjp.20.1427983101319;
	Thu, 02 Apr 2015 06:58:21 -0700 (PDT)
Received: from [192.168.1.11] (ip-73-126.sn2.eutelia.it. [83.211.73.126])
	by mx.google.com with ESMTPSA id dr7sm2702631wib.22.2015.04.02.06.58.18
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Thu, 02 Apr 2015 06:58:20 -0700 (PDT)
Message-ID: <551D4B03.80105@m2r.biz>
Date: Thu, 02 Apr 2015 15:58:27 +0200
From: Fabio Fantoni <fabio.fantoni@m2r.biz>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
	rv:31.0) Gecko/20100101 Thunderbird/31.5.0
MIME-Version: 1.0
To: Paul Durrant <Paul.Durrant@citrix.com>, 
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
References: <55192CB4.7030802@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585EFDA@AMSPEX01CL01.citrite.net>
	<551C0400.7090908@m2r.biz>
In-Reply-To: <551C0400.7090908@m2r.biz>
Content-Type: multipart/mixed; boundary="------------080404090708090702060304"
Subject: Re: [win-pv-devel] Multiple save/restore failing with windows 8.1
	64 bit domU
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

This is a multi-part message in MIME format.
--------------080404090708090702060304
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit

Il 01/04/2015 16:43, Fabio Fantoni ha scritto:
> Il 01/04/2015 15:21, Paul Durrant ha scritto:
>>> -----Original Message-----
>>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
>>> Sent: 30 March 2015 12:00
>>> To: win-pv-devel@lists.xenproject.org
>>> Cc: Paul Durrant
>>> Subject: Multiple save/restore failing with windows 8.1 64 bit domU
>>>
>>> I tried 2 times multiple save/restore (start domU, use it for some
>>> minutes, do a save restore, use it, do another save/restore) and in 
>>> both
>>> case second save failed:
>>>
>> The patch I posted this morning should fix this one for you.
>>
>>    Paul
>
> Thanks.
>
> Today I tried windows 10 pro 64 bit technical preview, clean install, 
> pv drivers (today's build) install ok but after restore display 
> (connecting with spice) seems freezed, waited 4-5 minutes without 
> changes and after I tried also xl shudown but do nothing.
> DomU have pv disk and network working, xl shutdown (before try 
> save/restore) is working.

I updated pv drivers to today build and first save/restore now seems was 
working also in Windows 10 but still not the multiple (seem only partial 
solved), xl shutdown this time worked but it tooks some minutes.
In attachments domU's qemu logs with trace enabled.

If you more informations/tests tell me and I'll post them.

Thanks for any reply and sorry for my bad english.

>
> About save/restore on W8 I tried now with new pv build and with first 
> save/restore is all ok but with on second now xl save/restore 
> completes correctly but after restore freeze same as the W10 one 
> (since first save/restore).
>
> If you more informations/tests tell me and I'll post them.
>
> Thanks for any reply and sorry for my bad english.
>
>
>
>>
>>>> xl -vvv save W8 /mnt/vm/save/W8
>>>> libxl: debug: libxl.c:6705:libxl_retrieve_domain_configuration: no
>>>> vtpm from xenstore for domain 40
>>>> libxl: debug: libxl.c:6707:libxl_retrieve_domain_configuration: no pci
>>>> from xenstore for domain 40
>>>> Saving to /mnt/vm/save/W8 new xl format (info 0x1/0x0/1941)
>>>> libxl: debug: libxl.c:953:libxl_domain_suspend: ao 0x68d910: create:
>>>> how=(nil) callback=(nil) poller=0x68d970
>>>> libxl: debug: libxl_dom.c:1573:libxl__toolstack_save: domain=40
>>>> toolstack data size=49
>>>> libxl: debug: libxl.c:975:libxl_domain_suspend: ao 0x68d910:
>>>> inprogress: poller=0x68d970, flags=i
>>>> libxl-save-helper: debug: starting save: Success
>>>> xc: detail: xc_domain_save: starting save of domid 40
>>>> libxl: debug: libxl_dom.c:1278:domain_suspend_callback_common: issuing
>>>> PVHVM suspend request via XenBus control node
>>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
>>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
>>> register
>>>> slotnum=3
>>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68dae0
>>>> wpath=/local/domain/40/control/shutdown token=3/0: event
>>>> epath=/local/domain/40/control/shutdown
>>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
>>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
>>>> deregister slotnum=3
>>>> libxl: debug:
>>>> libxl_dom.c:1360:domain_suspend_common_pvcontrol_suspending: guest
>>>> acknowledged suspend request
>>>> libxl: debug: libxl_dom.c:1379:domain_suspend_common_wait_guest:
>>> wait
>>>> for the guest to suspend
>>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
>>>> w=0x68daf8 wpath=@releaseDomain token=3/1: register slotnum=3
>>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68daf8
>>>> wpath=@releaseDomain token=3/1: event epath=@releaseDomain
>>>> libxl: error: libxl_dom.c:1451:suspend_common_wait_guest_timeout:
>>>> guest did not suspend, timed out
>>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
>>>> w=0x68daf8 wpath=@releaseDomain token=3/1: deregister slotnum=3
>>>> xc: error: Suspend request failed: Internal error
>>>> xc: error: Domain appears not to have suspended: Internal error
>>>> libxl-save-helper: xc_domain_save.c:2077: xc_domain_save: Assertion
>>>> `rc' failed.
>>>> libxl: error: libxl_utils.c:430:libxl_read_exactly: file/stream
>>>> truncated reading ipc msg header from domain 40 save/restore helper
>>>> stdout pipe
>>>> libxl: error: libxl_exec.c:129:libxl_report_child_exitstatus: domain
>>>> 40 save/restore helper [-1] died due to fatal signal Aborted
>>>> libxl: error: libxl_dom.c:2035:remus_teardown_done: Remus: failed to
>>>> teardown device for guest with domid 40, rc -3
>>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
>>>> complete, rc=-3
>>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910: 
>>>> destroy
>>>> Failed to save domain, resuming domain
>>>> libxl: debug: libxl.c:542:libxl_domain_resume: ao 0x68d910: create:
>>>> how=(nil) callback=(nil) poller=0x68d970
>>>> xc: error: Dom 40 not suspended: (shutdown 0, reason 255): Internal 
>>>> error
>>>> libxl: error: libxl.c:511:libxl__domain_resume: xc_domain_resume
>>>> failed for domain 40: Invalid argument
>>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
>>>> complete, rc=-3
>>>> libxl: debug: libxl.c:545:libxl_domain_resume: ao 0x68d910:
>>>> inprogress: poller=0x68d970, flags=ic
>>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910: 
>>>> destroy
>>>> xc: debug: hypercall buffer: total allocations:29 total releases:29
>>>> xc: debug: hypercall buffer: current allocations:0 maximum 
>>>> allocations:2
>>>> xc: debug: hypercall buffer: cache current size:2
>>>> xc: debug: hypercall buffer: cache hits:20 misses:2 toobig:7
>>> If you need more informations/tests tell me and I'll post them.
>>>
>>> Thanks for any reply and sorry for my bad english.
>


--------------080404090708090702060304
Content-Type: text/plain; charset=windows-1252;
 name="qemu-dm-W10.log.1"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="qemu-dm-W10.log.1"

xen_ram_alloc: do not alloc 108000000 bytes of ram at 0 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 4000000 bytes of ram at 108000000 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 2000 bytes of ram at 10c000000 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 4000000 bytes of ram at 10c002000 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 10000 bytes of ram at 110002000 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 40000 bytes of ram at 110012000 when runstate is INMIGRATE
red_dispatcher_loadvm_commands: 
qemu-system-i386: usb-redir warning: usb-redir connection broken during migration

qemu-system-i386: usb-redir warning: usb-redir connection broken during migration

qemu-system-i386: usb-redir warning: usb-redir connection broken during migration

qemu-system-i386: usb-redir warning: usb-redir connection broken during migration

xen_platform_log xen platform: SUSPEND: SCHEDOP_shutdown:SHUTDOWN_suspend <==== (00000000)
xen_platform_log xen platform: XEN: HYPERCALL PAGE 0 @ 00000001.04988000
xen_platform_log xen platform: UNPLUG: PRE-AMBLE (DRIVERS NOT BLACKLISTED)
xen_platform_log xen platform: UNPLUG: DISKS
xen_platform_log xen platform: UNPLUG: NICS
xen_platform_log xen platform: SHARED_INFO: MAP XENMAPSPACE_shared_info @ 00000000.f8000000
xen_platform_log xen platform: STORE: PAGE @ 00000000.feffc000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[0] @ 00000000.f8001000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[1] @ 00000000.f8002000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[2] @ 00000000.f8003000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[3] @ 00000000.f8004000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[4] @ 00000000.f8005000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[5] @ 00000000.f8006000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[6] @ 00000000.f8007000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[7] @ 00000000.f8008000
xen_platform_log xen platform: EVTCHN_FIFO: RESET
xen_platform_log xen platform: EVTCHN_FIFO: CONTROLBLOCK[0] @ 00000000.518a0000
xen_platform_log xen platform: EVTCHN_FIFO: CONTROLBLOCK[1] @ 00000000.50022000
xen_platform_log xen platform: XENBUS|EvtchnAbiAcquire: FIFO
xen_platform_log xen platform: XENBUS|EvtchnInterruptEnable: CPU 0:0
xen_platform_log xen platform: XENBUS|EvtchnInterruptEnable: CPU 0:1
xen_platform_log xen platform: STORE: EVTCHN 1
xen_platform_log xen platform: EVTCHN_FIFO: EVENTARRAY[0] @ 00000000.524a4000
xen_platform_log xen platform: XENBUS|EvtchnFifoExpand: added ports [00000000 - 000003ff]
xen_platform_log xen platform: XENVBD|FdoSuspendLateCallback:8.0.0.19 (12/3/2015)
xen_platform_log xen platform: XENVBD|FrontendSuspendLateCallback:Target[0] : ===> from ENABLED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : ENABLED ----> CLOSED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CONNECTED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CLOSING
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CLOSED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : CLOSED ----> ENABLED
xen_platform_log xen platform: XENVBD|FrontendWriteUsage:Target[0] : DUMP NOT_HIBER PAGE
xen_platform_log xen platform: XENVBD|PdoUpdateInquiryData:Target[0] : VDI-UUID = {00000000-0000-0000-0000-000000000000}
xen_platform_log xen platform: XENVBD|FrontendPrepare:Target[0] : BackendId 0 (/local/domain/0/backend/vbd/61/768)
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state PREPARED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CONNECTED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state ENABLED
xen_platform_log xen platform: XENVBD|PdoPostResume:Target[0] : 0 Fresh SRBs
xen_platform_log xen platform: XENVBD|PdoPostResume:Target[0] : NOT_MISSING ((null))
xen_platform_log xen platform: XENVBD|FrontendSuspendLateCallback:Target[0] : <=== restored ENABLED
xen_platform_log xen platform: XENIFACE|FireSuspendEvent: Ready to unsuspend Event
xen_platform_log xen platform: XENVIF|__FrontendSetNumQueues: 2
xen_platform_log xen platform: XENBUS|EvtchnBind: [8]: CPU 0:1
xen_platform_log xen platform: XENBUS|EvtchnBind: [10]: CPU 0:1
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareNeighbourAdvertisement: fe80:0000:0000:0000:b023:5ce0:32df:ab9b
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareArp: 192.168.1.27
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareNeighbourAdvertisement: fe80:0000:0000:0000:b023:5ce0:32df:ab9b
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareArp: 192.168.1.27
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareNeighbourAdvertisement: fe80:0000:0000:0000:b023:5ce0:32df:ab9b
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareArp: 192.168.1.27
xen_platform_log xen platform: SUSPEND: <====
xen_platform_log xen platform: XENIFACE|WatchCallbackThread: SessionSuspendResumeUnwatch FFFFE000A14E0B80
xen_platform_log xen platform: XENIFACE|FdoRegistryThreadHandler: WriteRegistry
xen_platform_log xen platform: XENIFACE|StartWatch: Start Watch FFFFE0009F939510
xen_platform_log xen platform: XENIFACE|FdoInitialiseXSRegistryEntries: no such xenstore key
xen_platform_log xen platform: XENIFACE|FdoInitialiseXSRegistryEntries: Failed to initialise registry (c0000022)
xen_platform_log xen platform: XENNET|AdapterMediaStateChange: LINK: UP: SPEED=1000000000 DUPLEX=FULL
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 3
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Fire 0000001023FBFA80
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fire feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Check if we need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: No need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fired feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 2
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Suspend event
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Set time to XenTime
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: hosttimeIsUTC: Open Registry Key
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Time is now  2015.4.2 15:39:22.721
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Set time to 2015.4.2 15:40:6.945
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:MethodExec Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SessionStart Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SetVValue Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SetVPath Failed 
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Failed to advertise shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Handled suspend event
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 3
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Fire 0000001023FBFA80
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fire feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Check if we need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: No need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fired feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
main_channel_link: add main channel client
main_channel_handle_parsed: agent start
main_channel_handle_parsed: net test: latency 24.372000 ms, bitrate 168684622 bps (160.870192 Mbps)
inputs_connect: inputs channel client create
red_dispatcher_set_cursor_peer: 
xen_platform_log xen platform: SUSPEND: ====>
xen_platform_log xen platform: SUSPEND: SCHEDOP_shutdown:SHUTDOWN_suspend ====>
qemu: terminating on signal 1 from pid 8535
red_channel_client_disconnect_dummy: rcc=0x7f447c0e7d90 (channel=0x7f447bf61730 type=5 id=0)
snd_channel_put: SndChannel=0x7f447c244540 freed
red_channel_client_disconnect_dummy: rcc=0x7f447c032c20 (channel=0x7f447bf61960 type=6 id=0)
snd_channel_put: SndChannel=0x7f447c2ea1d0 freed
red_channel_client_disconnect: rcc=0x7f4453a17010 (channel=0x7f447bf73e70 type=2 id=0)
red_channel_client_disconnect: rcc=0x7f447c171b10 (channel=0x7f447bf75d60 type=4 id=0)

--------------080404090708090702060304
Content-Type: text/plain; charset=windows-1252;
 name="qemu-dm-W10.log.2"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="qemu-dm-W10.log.2"

main_channel_link: add main channel client
main_channel_handle_parsed: net test: latency 5.138000 ms, bitrate 64750703 bps (61.751082 Mbps)
inputs_connect: inputs channel client create
red_dispatcher_set_cursor_peer: 
xen_platform_log xen platform: XEN|DllInitialize: 8.0.0 (54) (02.04.2015)
xen_platform_log xen platform: XEN|AcpiFindRsdp: 0x00000000000F0D90
xen_platform_log xen platform: XEN|SystemGetStartOptions:  TESTSIGNING  FLIGHTSIGNING  NOEXECUTE=OPTIN
xen_platform_log xen platform: XEN|SystemGetVersionInformation: KERNEL: 10.0 (BUILD 10041) PLATFORM WIN32_NT (x64)
xen_platform_log xen platform: XEN|SystemGetVersionInformation: SUITES:
xen_platform_log xen platform: XEN|SystemGetVersionInformation: - TERMINAL
xen_platform_log xen platform: XEN|SystemGetVersionInformation: - SINGLEUSERTS
xen_platform_log xen platform: XEN|SystemGetVersionInformation: TYPE: WORKSTATION
xen_platform_log xen platform: XEN|SystemGetMemoryInformation: RANGE[0] 00000000.00001000 - 00000000.0009efff
xen_platform_log xen platform: XEN|SystemGetMemoryInformation: RANGE[1] 00000000.00100000 - 00000000.00101fff
xen_platform_log xen platform: XEN|SystemGetMemoryInformation: RANGE[2] 00000000.00103000 - 00000000.efffefff
xen_platform_log xen platform: XEN|SystemGetMemoryInformation: RANGE[3] 00000001.00000000 - 00000001.07ffffff
xen_platform_log xen platform: XEN|AcpiGetXsdt: 0x00000000FC00A010
xen_platform_log xen platform: XEN|SystemProcessorInformation: ====> (0:0)
xen_platform_log xen platform: XEN|SystemProcessorInformation: Manufacturer: GenuineIntel
xen_platform_log xen platform: XEN|SystemProcessorInformation: APIC ID: 00
xen_platform_log xen platform: XEN|SystemProcessorInformation: PROCESSOR ID: 00
xen_platform_log xen platform: XEN|SystemProcessorInformation: <==== (0:0)
xen_platform_log xen platform: XEN|SystemProcessorInformation: ====> (0:1)
xen_platform_log xen platform: XEN|SystemProcessorInformation: Manufacturer: GenuineIntel
xen_platform_log xen platform: XEN|SystemProcessorInformation: APIC ID: 02
xen_platform_log xen platform: XEN|SystemProcessorInformation: PROCESSOR ID: 01
xen_platform_log xen platform: XEN|SystemProcessorInformation: <==== (0:1)
xen_platform_log xen platform: XEN: HYPERCALL PAGE 0 @ 00000001.04988000
xen_platform_log xen platform: XENFILT|DriverEntry: 8.0.0 (54) (02.04.2015)
xen_platform_log xen platform: XEN: 4.6-unstable (__XEN_INTERFACE_VERSION__ = 00040600)
xen_platform_log xen platform: XENFILT|DriverSetActiveDeviceInstance: PCI\VEN_5853&DEV_0001&SUBSYS_00015853&REV_01/10
xen_platform_log xen platform: XENFILT|UnplugCheckForPVDisks: PRESENT
xen_platform_log xen platform: XENFILT|UnplugCheckForPVNics: PRESENT
xen_platform_log xen platform: XENFILT|FdoCreate: FFFFE000A038CAD0 (ACPI\PNP0A03\0)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE000A0382AD0 (PCI\VEN_8086&DEV_1237&SUBSYS_11001AF4&REV_02\00)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE000A0390AD0 (PCI\VEN_8086&DEV_7000&SUBSYS_11001AF4&REV_00\08)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFE6AD0 (PCI\VEN_8086&DEV_7010&SUBSYS_11001AF4&REV_00\09)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFE7AD0 (PCI\VEN_5853&DEV_0001&SUBSYS_00015853&REV_01\10)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFEFAD0 (PCI\VEN_8086&DEV_2668&SUBSYS_11001AF4&REV_01\18)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFEEAD0 (PCI\VEN_1AF4&DEV_1003&SUBSYS_00031AF4&REV_00\20)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFEDAD0 (PCI\VEN_1B36&DEV_0100&SUBSYS_11001AF4&REV_04\28)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFCDAD0 (PCI\VEN_10EC&DEV_8139&SUBSYS_11001AF4&REV_20\30)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFCCAD0 (PCI\VEN_8086&DEV_2934&SUBSYS_11001AF4&REV_03\E8)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFC9AD0 (PCI\VEN_8086&DEV_2935&SUBSYS_11001AF4&REV_03\E9)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFC8AD0 (PCI\VEN_8086&DEV_2936&SUBSYS_11001AF4&REV_03\EA)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFC7AD0 (PCI\VEN_8086&DEV_293A&SUBSYS_11001AF4&REV_03\EF)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE0009FFC6AD0 (ACPI\PNP0103\0)
xen_platform_log xen platform: XENFILT|DriverSetFilterState: ACTIVE DEVICE PRESENT
xen_platform_log xen platform: UNPLUG: PRE-AMBLE (DRIVERS NOT BLACKLISTED)
xen_platform_log xen platform: UNPLUG: DISKS
xen_platform_log xen platform: UNPLUG: NICS
xen_platform_log xen platform: XENFILT|DriverSetFilterState: PENDING
xen_platform_log xen platform: XENFILT|PdoDestroy: FFFFE0009FFCDAD0 (PCI\VEN_10EC&DEV_8139&SUBSYS_11001AF4&REV_20\30) (device disappeared)
xen_platform_log xen platform: XENFILT|DriverSetFilterState: DISABLED
xen_platform_log xen platform: XENBUS|DriverEntry: 8.0.0 (54) (02.04.2015)
xen_platform_log xen platform: XENFILT|PdoQueryInterface: PCI\VEN_5853&DEV_0001&SUBSYS_00015853&REV_01\10: UNPLUG_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|FdoCreate: FFFFE0009FFF6040 (XS0001 XENBUS) [ACTIVE]
xen_platform_log xen platform: XENBUS|FdoConnectInterrupt: FFFFE0009FFF5C98: Shared LevelSensitive CPU 0:0 VECTOR b1
xen_platform_log xen platform: XENBUS|FdoConnectInterrupt: FFFFE0009FFF5958: DeviceExclusive Latched CPU 0:0 VECTOR 50
xen_platform_log xen platform: XENBUS|FdoConnectInterrupt: FFFFE0009F1F4C98: DeviceExclusive Latched CPU 0:1 VECTOR 50
xen_platform_log xen platform: XENBUS|FdoScan: ====>
xen_platform_log xen platform: XENBUS|FdoCreateIoSpace: 00000000.f8000000 - 00000000.f8ffffff
xen_platform_log xen platform: XENBUS|FdoSuspend: ====>
xen_platform_log xen platform: SHARED_INFO: MAP XENMAPSPACE_shared_info @ 00000000.f8000000
xen_platform_log xen platform: XENBUS|FdoBalloon: ====>
xen_platform_log xen platform: EVTCHN_FIFO: CONTROLBLOCK[0] @ 00000000.00f8a000
xen_platform_log xen platform: EVTCHN_FIFO: CONTROLBLOCK[1] @ 00000000.00f8b000
xen_platform_log xen platform: XENBUS|EvtchnAbiAcquire: FIFO
xen_platform_log xen platform: XENBUS|EvtchnInterruptEnable: CPU 0:0
xen_platform_log xen platform: XENBUS|EvtchnInterruptEnable: CPU 0:1
xen_platform_log xen platform: STORE: PAGE @ 00000000.feffc000
xen_platform_log xen platform: STORE: EVTCHN 1
xen_platform_log xen platform: EVTCHN_FIFO: EVENTARRAY[0] @ 00000000.0078c000
xen_platform_log xen platform: XENBUS|EvtchnFifoExpand: added ports [00000000 - 000003ff]
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE0009FFF3D50 (VBD 00000001)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE0009FFF3D50 (VBD 00000002)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE0009FFF3D50 (VBD 00000003)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE0009FFF3D50 (VBD 00000004)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE0009FFF3D50 (VBD 00000005)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE0009FFF3D50 (VBD 00000006)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE0009FFF3D50 (VBD 00000007)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE0009FFF3D50 (VBD 00000008)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03ADD50 (VIF 00000001)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03ADD50 (VIF 00000002)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03ADD50 (VIF 00000003)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03ADD50 (VIF 00000004)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03ADD50 (VIF 00000005)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03ADD50 (VIF 00000006)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03ADD50 (VIF 00000007)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03ADD50 (VIF 00000008)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03B1530 (IFACE 00000001)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03B1530 (IFACE 00000002)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03B1530 (IFACE 00000003)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03B1530 (IFACE 00000004)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03B1530 (IFACE 00000005)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03B1530 (IFACE 00000006)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03B1530 (IFACE 00000007)
xen_platform_log xen platform: XENBUS|PdoCreate: FFFFE000A03B1530 (IFACE 00000008)
xen_platform_log xen platform: XENFILT|FdoCreate: FFFFE000A03E7AD0 (PCIIDE\IDEChannel\0)
xen_platform_log xen platform: XENFILT|FdoCreate: FFFFE000A03E4AD0 (PCIIDE\IDEChannel\1)
xen_platform_log xen platform: XENFILT|PdoCreate: FFFFE000A03DE640 (IDE\CdRomQEMU_QEMU_DVD-ROM_______________________2.0.____\0.1.0)
xen_platform_log xen platform: XENVBD|DriverEntry:8.0.0.19 (12/3/2015)
xen_platform_log xen platform: XENVBD|__DriverParseParameterKey:DriverParameters: 
xen_platform_log xen platform: XENDISK|DriverEntry:XENDISK 8.0.0 (19) (12.03.2015)
xen_platform_log xen platform: XENDISK|FdoCreate:FFFFE000A03E3DF0
xen_platform_log xen platform: XENVBD|DispatchPnp:DeviceObject 0xFFFFE000A0480050 is not FDO (0x0000000000000000) or a PDO
xen_platform_log xen platform: XENVBD|DispatchPnp:DeviceObject 0xFFFFE000A0480050 is not FDO (0x0000000000000000) or a PDO
xen_platform_log xen platform: XENVBD|DispatchPnp:DeviceObject 0xFFFFE000A0480050 is not FDO (0x0000000000000000) or a PDO
xen_platform_log xen platform: XENVBD|DispatchPnp:DeviceObject 0xFFFFE000A0480050 is not FDO (0x0000000000000000) or a PDO
xen_platform_log xen platform: XENVBD|DispatchPnp:DeviceObject 0xFFFFE000A0480050 is not FDO (0x0000000000000000) or a PDO
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VBD: BUS_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENVBD|DispatchPnp:DeviceObject 0xFFFFE000A0480050 is not FDO (0x0000000000000000) or a PDO
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VBD: BUS_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: Version = 0
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: Master = TRUE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: ScatterGather = TRUE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DemandMode = FALSE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: AutoInitialize = FALSE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: Dma32BitAddresses = TRUE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: IgnoreCount = FALSE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: Dma64BitAddresses = TRUE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: BusNumber = 00000000
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DmaChannel = ffffffff
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: InterfaceType = Internal
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DmaWidth = 8Bits
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DmaSpeed = Compatible
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: MaximumLength = 000b0000
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DmaPort = ffffffff
xen_platform_log xen platform: XENVBD|DispatchPnp:DeviceObject 0xFFFFE000A0480050 is not FDO (0x0000000000000000) or a PDO
xen_platform_log xen platform: XENBUS|DmaGetAdapter: no interception
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VBD: STORE_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VBD: EVTCHN_INTERFACE (VERSION 3)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VBD: GNTTAB_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VBD: SUSPEND_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VBD: DEBUG_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VBD: EMULATED_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENFILT|PdoQueryInterface: PCI\VEN_5853&DEV_0001&SUBSYS_00015853&REV_01\10: EMULATED_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENVBD|__FdoSetDevicePowerState:POWER D3 to D0
xen_platform_log xen platform: XENVBD|__FdoD3ToD0:D3->D0
xen_platform_log xen platform: XENVBD|__FdoIsPdoUnplugged:Target[0] : (vbd/768) Emulated NOT_PRESENT
xen_platform_log xen platform: XENVBD|PdoCreate:Target[0] : Creating (PV)
xen_platform_log xen platform: XENVBD|PdoSetDevicePowerState:Target[0] : POWER D3 to D0
xen_platform_log xen platform: XENVBD|PdoD3ToD0:Target[0] : D3->D0 (PV)
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : INITIALIZED ----> ENABLED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CLOSED
xen_platform_log xen platform: XENVBD|FrontendWriteUsage:Target[0] : NOT_DUMP NOT_HIBER NOT_PAGE
xen_platform_log xen platform: XENVBD|__WaitState:Target[0] : 0 Waited for 17268 ms
xen_platform_log xen platform: XENVBD|PdoReadInquiryData:Target[0] : Failed to get Page80 data
xen_platform_log xen platform: XENVBD|PdoReadInquiryData:Target[0] : Failed to get Page83 data
xen_platform_log xen platform: XENVBD|PdoUpdateInquiryData:Target[0] : VDI-UUID = {00000000-0000-0000-0000-000000000000}
xen_platform_log xen platform: XENVBD|FrontendPrepare:Target[0] : BackendId 0 (/local/domain/0/backend/vbd/60/768)
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state PREPARED
xen_platform_log xen platform: XENBUS|RangeSetPop: fail1 (c000009a)
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[0] @ 00000000.f8001000
xen_platform_log xen platform: XENBUS|GnttabExpand: added references [00000020 - 000001ff]
xen_platform_log xen platform: XENVBD|__ReadDiskInfo:Target[0] : 104857600 sectors of 512 bytes (512)
xen_platform_log xen platform: XENVBD|__ReadDiskInfo:Target[0] : 50 GB (00000000) 
xen_platform_log xen platform: XENVBD|FrontendReadDiskInfo:Target[0] : Features: BARRIER FLUSH DISCARD 
xen_platform_log xen platform: XENVBD|FrontendReadDiskInfo:Target[0] : DISCARD 0/1000
xen_platform_log xen platform: XENVBD|FrontendReadFeatures:Target[0] : Features: PERSISTENT INDIRECT 
xen_platform_log xen platform: XENVBD|FrontendReadFeatures:Target[0] : INDIRECT 100
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CONNECTED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state ENABLED
xen_platform_log xen platform: XENVBD|PdoCreate:Target[0] : Created (PV)
xen_platform_log xen platform: XENVBD|FdoLogTargets:ScanThread ===>
xen_platform_log xen platform: XENVBD|FdoLogTargets:ScanThread : Target[0] = 0xFFFFE0009F5E5610 (present)
xen_platform_log xen platform: XENVBD|FdoLogTargets:ScanThread <===
xen_platform_log xen platform: XENVBD|FdoDispatchPnp:14:QUERY_PNP_DEVICE_STATE -> c00000bb
xen_platform_log xen platform: XENVBD|__HandlePage83:Target[0] : INQUIRY Using Fake Page83 Data
xen_platform_log xen platform: XENVBD|__HandlePage80:Target[0] : INQUIRY Using Fake Page80 Data
xen_platform_log xen platform: XENDISK|PdoCreate:FFFFE000A03D4DF0
xen_platform_log xen platform: XENVBD|PdoSetDeviceObject:Target[0] : Setting DeviceObject = 0xFFFFE000A03D6060
xen_platform_log xen platform: XENVBD|FdoMapDeviceObjectToPdo:0xFFFFE000A03D6060 --> Target 0 (000000)
xen_platform_log xen platform: XENVBD|PdoDispatchPnp:Target[0] : 13:QUERY_ID -> c00000bb
xen_platform_log xen platform: XENVBD|PdoDispatchPnp:Target[0] : 08:QUERY_INTERFACE -> c00000bb
xen_platform_log xen platform: XENVBD|PdoDispatchPnp:Target[0] : 15:QUERY_BUS_INFORMATION -> c00000bb
xen_platform_log xen platform: XENVBD|PdoDispatchPnp:Target[0] : 19:UNKNOWN -> c00000bb
xen_platform_log xen platform: XENVBD|PdoDispatchPnp:Target[0] : 18:UNKNOWN -> c00000bb
xen_platform_log xen platform: XENVBD|PdoDispatchPnp:Target[0] : 0d:FILTER_RESOURCE_REQUIREMENTS -> c00000bb
xen_platform_log xen platform: XENVBD|PdoSetDevicePnpState:Target[0] : PNP Present to Started
xen_platform_log xen platform: XENVBD|PdoDispatchPnp:Target[0] : 08:QUERY_INTERFACE -> c00000bb
xen_platform_log xen platform: XENVBD|PdoDispatchPnp:Target[0] : 07:QUERY_DEVICE_RELATIONS -> c00000bb
xen_platform_log xen platform: XENVBD|FrontendWriteUsage:Target[0] : DUMP NOT_HIBER NOT_PAGE
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENVBD|FdoDispatchPnp:14:QUERY_PNP_DEVICE_STATE -> c00000bb
xen_platform_log xen platform: XENBUS|RangeSetPop: fail1 (c000009a)
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[1] @ 00000000.f8002000
xen_platform_log xen platform: XENBUS|GnttabExpand: added references [00000200 - 000003ff]
xen_platform_log xen platform: XENVIF|DriverEntry: XENVIF 8.0.0 (25) (24.03.2015)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: BUS_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: DEBUG_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: SUSPEND_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: EVTCHN_INTERFACE (VERSION 4)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: STORE_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: RANGE_SET_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: CACHE_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: GNTTAB_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENVIF|FdoCreate: FFFFE000A0688D50 (XS0001 XENVIF)
xen_platform_log xen platform: XENIFACE|DriverEntry: 8.0.0.14 (12/3/2015)
xen_platform_log xen platform: XENIFACE|ThreadCreate: Create thread FFFFF8007CE77E8C FFFFE000A07EB090
xen_platform_log xen platform: XENIFACE|ThreadCreate: Create thread FFFFF8007CE76DD4 FFFFE000A07EB0A0
xen_platform_log xen platform: XENBUS|PdoQueryInterface: IFACE: SUSPEND_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: IFACE: SHARED_INFO_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: IFACE: STORE_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENIFACE|FdoInitialiseXSRegistryEntries: no such xenstore key
xen_platform_log xen platform: XENIFACE|FdoInitialiseXSRegistryEntries: Failed to initialise registry (c0000022)
xen_platform_log xen platform: XENIFACE|ThreadCreate: Create thread FFFFF8007CE77968 FFFFE000A07EB2B0
xen_platform_log xen platform: XENIFACE|FdoCreate: FFFFE000A07E5B50 (IFACE)
xen_platform_log xen platform: XENBUS|RangeSetPop: fail1 (c000009a)
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[2] @ 00000000.f8003000
xen_platform_log xen platform: XENBUS|GnttabExpand: added references [00000400 - 000005ff]
xen_platform_log xen platform: XENBUS|RangeSetPop: fail1 (c000009a)
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[3] @ 00000000.f8004000
xen_platform_log xen platform: XENBUS|GnttabExpand: added references [00000600 - 000007ff]
xen_platform_log xen platform: XENBUS|RangeSetPop: fail1 (c000009a)
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[4] @ 00000000.f8005000
xen_platform_log xen platform: XENBUS|GnttabExpand: added references [00000800 - 000009ff]
xen_platform_log xen platform: XENBUS|RangeSetPop: fail1 (c000009a)
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[5] @ 00000000.f8006000
xen_platform_log xen platform: XENBUS|GnttabExpand: added references [00000a00 - 00000bff]
xen_platform_log xen platform: XENBUS|RangeSetPop: fail1 (c000009a)
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[6] @ 00000000.f8007000
xen_platform_log xen platform: XENBUS|GnttabExpand: added references [00000c00 - 00000dff]
xen_platform_log xen platform: XENVIF|__PdoSetPermanentAddress: 0 00:16:3E:FE:7A:B9
xen_platform_log xen platform: XENVIF|__PdoSetContainerID: 0 {ca136717-12c6-5b65-881e-334b6ab03532}
xen_platform_log xen platform: XENVIF|__FrontendSetMaxQueues: 2
xen_platform_log xen platform: XENVIF|PdoCreate: FFFFE000A0A8F570 (0 00000001)
xen_platform_log xen platform: XENVIF|PdoCreate: FFFFE000A0A8F570 (0 00000002)
xen_platform_log xen platform: XENVIF|LinkGetRoutineAddress: netio.sys:NotifyUnicastIpAddressChange (0145) @ FFFFF8007BBBE7B0
xen_platform_log xen platform: XENVIF|LinkGetRoutineAddress: netio.sys:GetUnicastIpAddressTable (0053) @ FFFFF8007BBB83C0
xen_platform_log xen platform: XENVIF|LinkGetRoutineAddress: netio.sys:FreeMibTable (002B) @ FFFFF8007BBB8090
xen_platform_log xen platform: XENVIF|LinkGetRoutineAddress: netio.sys:CancelMibChangeNotify2 (0003) @ FFFFF8007BBD31D0
xen_platform_log xen platform: XENNET|DriverEntry: XENNET 8.0.0 (18) (24.03.2015)
xen_platform_log xen platform: XENIFACE|WmiInit: DRV: XenIface WMI Initialisation
xen_platform_log xen platform: XENVIF|LinkGetRoutineAddress: netio.sys:GetIfTable2 (0043) @ FFFFF8007BBBF420
xen_platform_log xen platform: XENVIF|LinkGetRoutineAddress: netio.sys:FreeMibTable (002B) @ FFFFF8007BBB8090
xen_platform_log xen platform: XENVIF|__FrontendSetNumQueues: 2
xen_platform_log xen platform: XENBUS|EvtchnBind: [9]: CPU 0:1
xen_platform_log xen platform: XENBUS|EvtchnBind: [11]: CPU 0:1
xen_platform_log xen platform: XENVIF|PdoQueryInterface: 0: VIF_INTERFACE (VERSION 2)
xen_platform_log xen platform: XENVIF|PdoQueryInterface: 0: CACHE_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|PdoQueryInterface: VIF: CACHE_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv4Receive.IpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv4Receive.TcpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv4Receive.UdpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv6Receive.TcpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv6Receive.UdpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv4Transmit.IpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv4Transmit.TcpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv4Transmit.UdpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv6Transmit.TcpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: Checksum.IPv6Transmit.UdpChecksum ON
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: LsoV2.IPv4.MaxOffLoadSize = 65201
xen_platform_log xen platform: XENNET|AdapterSetOffloadAttributes: LsoV2.IPv6.MaxOffLoadSize = 65201
xen_platform_log xen platform: XENVIF|PdoQueryInterface: 0: BUS_INTERFACE (VERSION 1)
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: Version = 2
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: Master = TRUE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: ScatterGather = TRUE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DemandMode = FALSE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: AutoInitialize = FALSE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: Dma32BitAddresses = FALSE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: IgnoreCount = FALSE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: Dma64BitAddresses = TRUE
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: BusNumber = 00000000
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DmaChannel = 00000000
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: InterfaceType = Internal
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DmaWidth = 8Bits
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DmaSpeed = Compatible
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: MaximumLength = 00020000
xen_platform_log xen platform: XENBUS|DmaDumpDeviceDescription: DmaPort = 00000000
xen_platform_log xen platform: XENBUS|DmaGetAdapter: no interception
xen_platform_log xen platform: XENBUS|RangeSetPop: fail1 (c000009a)
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[7] @ 00000000.f8008000
xen_platform_log xen platform: XENBUS|GnttabExpand: added references [00000e00 - 00000fff]
xen_platform_log xen platform: XENNET|AdapterMediaStateChange: LINK: UP: SPEED=1000000000 DUPLEX=FULL
xen_platform_log xen platform: XENVBD|FrontendWriteUsage:Target[0] : NOT_DUMP NOT_HIBER NOT_PAGE
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENVBD|FdoDispatchPnp:14:QUERY_PNP_DEVICE_STATE -> c00000bb
xen_platform_log xen platform: XENVBD|FrontendWriteUsage:Target[0] : NOT_DUMP NOT_HIBER PAGE
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENVBD|FdoDispatchPnp:14:QUERY_PNP_DEVICE_STATE -> c00000bb
xen_platform_log xen platform: XENVBD|FrontendWriteUsage:Target[0] : DUMP NOT_HIBER PAGE
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENVBD|FdoDispatchPnp:14:QUERY_PNP_DEVICE_STATE -> c00000bb
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENBUS|FdoQueryPnpDeviceState: XS0001 XENBUS: not disableable
xen_platform_log xen platform: XENVBD|FdoDispatchPnp:14:QUERY_PNP_DEVICE_STATE -> c00000bb
main_channel_handle_parsed: agent start
xen_platform_log xen platform: XENNET|AdapterSetInformation: UNSUPPORTED OID 00010118
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Guest agent lite main loop starting
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Set time to XenTime
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: hosttimeIsUTC: Open Registry Key
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Time is now  2015.4.2 15:30:6.346
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Set time to 2015.4.2 15:30:6.201
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: About to add feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Establish watch control/shutdown
xen_platform_log xen platform: XENIFACE|StartWatch: Start Watch FFFFE000A14E0B80
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: About to advertise features
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:MethodExec Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SessionStart Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SetVValue Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SetVPath Failed 
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Failed to advertise shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: About to kick xapi 
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 3
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Fire 0000001023FBFA80
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fire feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Check if we need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: No need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fired feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
xen_platform_log xen platform: SUSPEND: ====>
xen_platform_log xen platform: SUSPEND: SCHEDOP_shutdown:SHUTDOWN_suspend ====>
qemu: terminating on signal 1 from pid 7910
red_channel_client_disconnect_dummy: rcc=0x7ff06d646460 (channel=0x7ff06d4ffbc0 type=5 id=0)
snd_channel_put: SndChannel=0x7ff06d7b1a30 freed
red_channel_client_disconnect_dummy: rcc=0x7ff06d5dcf00 (channel=0x7ff06d4fa1a0 type=6 id=0)
snd_channel_put: SndChannel=0x7ff06d5cc6c0 freed
red_channel_client_disconnect: rcc=0x7ff06d8f1be0 (channel=0x7ff06d553190 type=2 id=0)
red_channel_client_disconnect: rcc=0x7ff06d6419f0 (channel=0x7ff06d51cea0 type=4 id=0)

--------------080404090708090702060304
Content-Type: text/plain; charset=windows-1252;
 name="qemu-dm-W10.log"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="qemu-dm-W10.log"

xen_ram_alloc: do not alloc 108000000 bytes of ram at 0 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 4000000 bytes of ram at 108000000 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 2000 bytes of ram at 10c000000 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 4000000 bytes of ram at 10c002000 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 10000 bytes of ram at 110002000 when runstate is INMIGRATE
xen_ram_alloc: do not alloc 40000 bytes of ram at 110012000 when runstate is INMIGRATE
red_dispatcher_loadvm_commands: 
qemu-system-i386: usb-redir warning: usb-redir connection broken during migration

qemu-system-i386: usb-redir warning: usb-redir connection broken during migration

qemu-system-i386: usb-redir warning: usb-redir connection broken during migration

qemu-system-i386: usb-redir warning: usb-redir connection broken during migration

xen_platform_log xen platform: SUSPEND: SCHEDOP_shutdown:SHUTDOWN_suspend <==== (00000000)
xen_platform_log xen platform: XEN: HYPERCALL PAGE 0 @ 00000001.04988000
xen_platform_log xen platform: UNPLUG: PRE-AMBLE (DRIVERS NOT BLACKLISTED)
xen_platform_log xen platform: UNPLUG: DISKS
xen_platform_log xen platform: UNPLUG: NICS
xen_platform_log xen platform: SHARED_INFO: MAP XENMAPSPACE_shared_info @ 00000000.f8000000
xen_platform_log xen platform: STORE: PAGE @ 00000000.feffc000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[0] @ 00000000.f8001000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[1] @ 00000000.f8002000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[2] @ 00000000.f8003000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[3] @ 00000000.f8004000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[4] @ 00000000.f8005000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[5] @ 00000000.f8006000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[6] @ 00000000.f8007000
xen_platform_log xen platform: GNTTAB: MAP XENMAPSPACE_grant_table[7] @ 00000000.f8008000
xen_platform_log xen platform: EVTCHN_FIFO: RESET
xen_platform_log xen platform: EVTCHN_FIFO: CONTROLBLOCK[0] @ 00000000.49152000
xen_platform_log xen platform: EVTCHN_FIFO: CONTROLBLOCK[1] @ 00000000.31453000
xen_platform_log xen platform: XENBUS|EvtchnAbiAcquire: FIFO
xen_platform_log xen platform: XENBUS|EvtchnInterruptEnable: CPU 0:0
xen_platform_log xen platform: XENBUS|EvtchnInterruptEnable: CPU 0:1
xen_platform_log xen platform: STORE: EVTCHN 1
xen_platform_log xen platform: EVTCHN_FIFO: EVENTARRAY[0] @ 00000000.3fed4000
xen_platform_log xen platform: XENBUS|EvtchnFifoExpand: added ports [00000000 - 000003ff]
xen_platform_log xen platform: XENVBD|FdoSuspendLateCallback:8.0.0.19 (12/3/2015)
xen_platform_log xen platform: XENVBD|FrontendSuspendLateCallback:Target[0] : ===> from ENABLED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : ENABLED ----> CLOSED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CONNECTED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CLOSING
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CLOSED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : CLOSED ----> ENABLED
xen_platform_log xen platform: XENVBD|FrontendWriteUsage:Target[0] : DUMP NOT_HIBER PAGE
xen_platform_log xen platform: XENVBD|PdoUpdateInquiryData:Target[0] : VDI-UUID = {00000000-0000-0000-0000-000000000000}
xen_platform_log xen platform: XENVBD|FrontendPrepare:Target[0] : BackendId 0 (/local/domain/0/backend/vbd/63/768)
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state PREPARED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CONNECTED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state ENABLED
xen_platform_log xen platform: XENVBD|PdoPostResume:Target[0] : 0 Fresh SRBs
xen_platform_log xen platform: XENVBD|PdoPostResume:Target[0] : NOT_MISSING ((null))
xen_platform_log xen platform: XENVBD|FrontendSuspendLateCallback:Target[0] : <=== restored ENABLED
xen_platform_log xen platform: XENIFACE|FireSuspendEvent: Ready to unsuspend Event
xen_platform_log xen platform: XENVIF|__FrontendSetNumQueues: 2
xen_platform_log xen platform: XENBUS|EvtchnBind: [8]: CPU 0:1
xen_platform_log xen platform: XENBUS|EvtchnBind: [10]: CPU 0:1
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareNeighbourAdvertisement: fe80:0000:0000:0000:b023:5ce0:32df:ab9b
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareArp: 192.168.1.27
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareNeighbourAdvertisement: fe80:0000:0000:0000:b023:5ce0:32df:ab9b
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareArp: 192.168.1.27
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareNeighbourAdvertisement: fe80:0000:0000:0000:b023:5ce0:32df:ab9b
xen_platform_log xen platform: XENVIF|__TransmitterRingPrepareArp: 192.168.1.27
xen_platform_log xen platform: SUSPEND: <====
xen_platform_log xen platform: XENNET|AdapterMediaStateChange: LINK: UP: SPEED=1000000000 DUPLEX=FULL
xen_platform_log xen platform: XENIFACE|WatchCallbackThread: SessionSuspendResumeUnwatch FFFFE0009F939510
xen_platform_log xen platform: XENIFACE|FdoRegistryThreadHandler: WriteRegistry
xen_platform_log xen platform: XENIFACE|StartWatch: Start Watch FFFFE000A129A0F0
xen_platform_log xen platform: XENIFACE|FdoInitialiseXSRegistryEntries: no such xenstore key
xen_platform_log xen platform: XENIFACE|FdoInitialiseXSRegistryEntries: Failed to initialise registry (c0000022)
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 3
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Fire 0000001023FBFA80
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fire feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Check if we need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: No need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fired feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 2
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Suspend event
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Set time to XenTime
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: hosttimeIsUTC: Open Registry Key
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Time is now  2015.4.2 15:45:14.770
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Set time to 2015.4.2 15:46:48.488
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:MethodExec Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SessionStart Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SetVValue Failed
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: WmiSessionSetEntry:SetVPath Failed 
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Failed to advertise shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Handled suspend event
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 3
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Fire 0000001023FBFA80
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fire feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Check if we need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: No need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fired feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
main_channel_link: add main channel client
main_channel_handle_parsed: agent start
main_channel_handle_parsed: net test: latency 4.345000 ms, bitrate 115686606 bps (110.327345 Mbps)
inputs_connect: inputs channel client create
red_dispatcher_set_cursor_peer: 
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 3
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Fire 0000001023FBFA80
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fire feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Check if we need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Shutdown type poweroff
xen_platform_log xen platform: 
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Report Shutdown Event
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Do the shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fired feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent woke up for 3
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Fire 0000001023FBFA80
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fire feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: Check if we need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: No need to shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: fired feature shutdown
xen_platform_log xen platform: XENIFACE|SessionExecuteLog: USER: win agent going to sleep
main_channel_handle_parsed: agent start
xen_platform_log xen platform: XEN|SystemPowerStateCallback: <- S0
xen_platform_log xen platform: XENNET|AdapterMediaStateChange: LINK: UP: SPEED=1000000000 DUPLEX=FULL
xen_platform_log xen platform: XENVBD|FrontendWriteUsage:Target[0] : NOT_DUMP NOT_HIBER PAGE
xen_platform_log xen platform: XENDISK|__PdoSetSystemPowerDown:FFFFE000A03D4DF0: Working -> Shutdown
xen_platform_log xen platform: XENDISK|__PdoSetDevicePowerDown:FFFFE000A03D4DF0: D0 -> D3
xen_platform_log xen platform: XENDISK|__FdoSetSystemPowerDown:FFFFE000A03E3DF0: Working -> Shutdown
xen_platform_log xen platform: XENDISK|__FdoSetDevicePowerDown:FFFFE000A03E3DF0: D0 -> D3
xen_platform_log xen platform: XENVBD|FdoDevicePower:FDO:PowerDeviceD3 (Shutdown)
xen_platform_log xen platform: XENVBD|__FdoSetDevicePowerState:POWER D0 to D3
xen_platform_log xen platform: XENVBD|__FdoD0ToD3:D0->D3
xen_platform_log xen platform: XENVBD|PdoSetDevicePowerState:Target[0] : POWER D0 to D3
xen_platform_log xen platform: XENVBD|PdoD0ToD3:Target[0] : D0->D3 (PV)
xen_platform_log xen platform: XENVBD|__PdoPauseDataPath:Target[0] : Waiting for 0 Submitted requests
xen_platform_log xen platform: XENVBD|__PdoPauseDataPath:Target[0] : 0/0 Submitted requests left (0 iterrations)
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : ENABLED ----> CLOSED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CONNECTED
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CLOSING
xen_platform_log xen platform: XENVBD|__FrontendSetState:Target[0] : in state CLOSED
Issued domain 63 poweroff
qemu: terminating on signal 1 from pid 8912
red_channel_client_disconnect_dummy: rcc=0x7faf8555bf30 (channel=0x7faf85244730 type=5 id=0)
snd_channel_put: SndChannel=0x7faf85527540 freed
red_channel_client_disconnect_dummy: rcc=0x7faf85560170 (channel=0x7faf85244960 type=6 id=0)
snd_channel_put: SndChannel=0x7faf8562d290 freed

--------------080404090708090702060304
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
--------------080404090708090702060304--


From win-pv-devel-bounces@lists.xenproject.org Thu Apr 02 14:41:25 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 02 Apr 2015 14:41:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YdgJB-0005Gm-Ia; Thu, 02 Apr 2015 14:41:25 +0000
Received: from mail6.bemta14.messagelabs.com ([193.109.254.103])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <Paul.Durrant@citrix.com>) id 1YdgJ9-0005GD-SG
	for win-pv-devel@lists.xenproject.org; Thu, 02 Apr 2015 14:41:24 +0000
Received: from [193.109.254.147] by server-4.bemta-14.messagelabs.com id
	C1/50-23180-3155D155; Thu, 02 Apr 2015 14:41:23 +0000
X-Env-Sender: Paul.Durrant@citrix.com
X-Msg-Ref: server-10.tower-27.messagelabs.com!1427985682!15270589!1
X-Originating-IP: [185.25.65.24]
X-SpamReason: No, hits=1.7 required=7.0 tests=BIZ_TLD,received_headers: 
	No Received headers
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 26808 invoked from network); 2 Apr 2015 14:41:22 -0000
Received: from smtp.ctxuk.citrix.com (HELO SMTP.EU.CITRIX.COM) (185.25.65.24)
	by server-10.tower-27.messagelabs.com with RC4-SHA encrypted SMTP;
	2 Apr 2015 14:41:22 -0000
X-IronPort-AV: E=Sophos;i="5.11,511,1422921600"; d="scan'208";a="33268948"
From: Paul Durrant <Paul.Durrant@citrix.com>
To: Fabio Fantoni <fabio.fantoni@m2r.biz>, "win-pv-devel@lists.xenproject.org"
	<win-pv-devel@lists.xenproject.org>
Thread-Topic: Multiple save/restore failing with windows 8.1 64 bit domU
Thread-Index: AQHQati05+G/VEyHyUKbEtI7jazazZ04J7aQ///1bACAAYXUgIAALBng
Date: Thu, 2 Apr 2015 14:41:21 +0000
Message-ID: <9AAE0902D5BC7E449B7C8E4E778ABCD0258611B1@AMSPEX01CL01.citrite.net>
References: <55192CB4.7030802@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585EFDA@AMSPEX01CL01.citrite.net>
	<551C0400.7090908@m2r.biz> <551D4B03.80105@m2r.biz>
In-Reply-To: <551D4B03.80105@m2r.biz>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
MIME-Version: 1.0
X-DLP: AMS1
Subject: Re: [win-pv-devel] Multiple save/restore failing with windows 8.1
	64 bit domU
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

> -----Original Message-----
> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
> Sent: 02 April 2015 14:58
> To: Paul Durrant; win-pv-devel@lists.xenproject.org
> Subject: Re: Multiple save/restore failing with windows 8.1 64 bit domU
> 
> Il 01/04/2015 16:43, Fabio Fantoni ha scritto:
> > Il 01/04/2015 15:21, Paul Durrant ha scritto:
> >>> -----Original Message-----
> >>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
> >>> Sent: 30 March 2015 12:00
> >>> To: win-pv-devel@lists.xenproject.org
> >>> Cc: Paul Durrant
> >>> Subject: Multiple save/restore failing with windows 8.1 64 bit domU
> >>>
> >>> I tried 2 times multiple save/restore (start domU, use it for some
> >>> minutes, do a save restore, use it, do another save/restore) and in
> >>> both
> >>> case second save failed:
> >>>
> >> The patch I posted this morning should fix this one for you.
> >>
> >>    Paul
> >
> > Thanks.
> >
> > Today I tried windows 10 pro 64 bit technical preview, clean install,
> > pv drivers (today's build) install ok but after restore display
> > (connecting with spice) seems freezed, waited 4-5 minutes without
> > changes and after I tried also xl shudown but do nothing.
> > DomU have pv disk and network working, xl shutdown (before try
> > save/restore) is working.
> 
> I updated pv drivers to today build and first save/restore now seems was
> working also in Windows 10 but still not the multiple (seem only partial
> solved), xl shutdown this time worked but it tooks some minutes.
> In attachments domU's qemu logs with trace enabled.
> 

It looks like your 2nd save restore worked... certainly log.1 shows the VM coming back from suspend and then going into suspend. The drivers basically seem to be behaving as expected.

  Paul

> If you more informations/tests tell me and I'll post them.
> 
> Thanks for any reply and sorry for my bad english.
> 
> >
> > About save/restore on W8 I tried now with new pv build and with first
> > save/restore is all ok but with on second now xl save/restore
> > completes correctly but after restore freeze same as the W10 one
> > (since first save/restore).
> >
> > If you more informations/tests tell me and I'll post them.
> >
> > Thanks for any reply and sorry for my bad english.
> >
> >
> >
> >>
> >>>> xl -vvv save W8 /mnt/vm/save/W8
> >>>> libxl: debug: libxl.c:6705:libxl_retrieve_domain_configuration: no
> >>>> vtpm from xenstore for domain 40
> >>>> libxl: debug: libxl.c:6707:libxl_retrieve_domain_configuration: no pci
> >>>> from xenstore for domain 40
> >>>> Saving to /mnt/vm/save/W8 new xl format (info 0x1/0x0/1941)
> >>>> libxl: debug: libxl.c:953:libxl_domain_suspend: ao 0x68d910: create:
> >>>> how=(nil) callback=(nil) poller=0x68d970
> >>>> libxl: debug: libxl_dom.c:1573:libxl__toolstack_save: domain=40
> >>>> toolstack data size=49
> >>>> libxl: debug: libxl.c:975:libxl_domain_suspend: ao 0x68d910:
> >>>> inprogress: poller=0x68d970, flags=i
> >>>> libxl-save-helper: debug: starting save: Success
> >>>> xc: detail: xc_domain_save: starting save of domid 40
> >>>> libxl: debug: libxl_dom.c:1278:domain_suspend_callback_common:
> issuing
> >>>> PVHVM suspend request via XenBus control node
> >>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
> >>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
> >>> register
> >>>> slotnum=3
> >>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68dae0
> >>>> wpath=/local/domain/40/control/shutdown token=3/0: event
> >>>> epath=/local/domain/40/control/shutdown
> >>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
> >>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
> >>>> deregister slotnum=3
> >>>> libxl: debug:
> >>>> libxl_dom.c:1360:domain_suspend_common_pvcontrol_suspending:
> guest
> >>>> acknowledged suspend request
> >>>> libxl: debug: libxl_dom.c:1379:domain_suspend_common_wait_guest:
> >>> wait
> >>>> for the guest to suspend
> >>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
> >>>> w=0x68daf8 wpath=@releaseDomain token=3/1: register slotnum=3
> >>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68daf8
> >>>> wpath=@releaseDomain token=3/1: event epath=@releaseDomain
> >>>> libxl: error: libxl_dom.c:1451:suspend_common_wait_guest_timeout:
> >>>> guest did not suspend, timed out
> >>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
> >>>> w=0x68daf8 wpath=@releaseDomain token=3/1: deregister slotnum=3
> >>>> xc: error: Suspend request failed: Internal error
> >>>> xc: error: Domain appears not to have suspended: Internal error
> >>>> libxl-save-helper: xc_domain_save.c:2077: xc_domain_save: Assertion
> >>>> `rc' failed.
> >>>> libxl: error: libxl_utils.c:430:libxl_read_exactly: file/stream
> >>>> truncated reading ipc msg header from domain 40 save/restore helper
> >>>> stdout pipe
> >>>> libxl: error: libxl_exec.c:129:libxl_report_child_exitstatus: domain
> >>>> 40 save/restore helper [-1] died due to fatal signal Aborted
> >>>> libxl: error: libxl_dom.c:2035:remus_teardown_done: Remus: failed to
> >>>> teardown device for guest with domid 40, rc -3
> >>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
> >>>> complete, rc=-3
> >>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910:
> >>>> destroy
> >>>> Failed to save domain, resuming domain
> >>>> libxl: debug: libxl.c:542:libxl_domain_resume: ao 0x68d910: create:
> >>>> how=(nil) callback=(nil) poller=0x68d970
> >>>> xc: error: Dom 40 not suspended: (shutdown 0, reason 255): Internal
> >>>> error
> >>>> libxl: error: libxl.c:511:libxl__domain_resume: xc_domain_resume
> >>>> failed for domain 40: Invalid argument
> >>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
> >>>> complete, rc=-3
> >>>> libxl: debug: libxl.c:545:libxl_domain_resume: ao 0x68d910:
> >>>> inprogress: poller=0x68d970, flags=ic
> >>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910:
> >>>> destroy
> >>>> xc: debug: hypercall buffer: total allocations:29 total releases:29
> >>>> xc: debug: hypercall buffer: current allocations:0 maximum
> >>>> allocations:2
> >>>> xc: debug: hypercall buffer: cache current size:2
> >>>> xc: debug: hypercall buffer: cache hits:20 misses:2 toobig:7
> >>> If you need more informations/tests tell me and I'll post them.
> >>>
> >>> Thanks for any reply and sorry for my bad english.
> >


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Thu Apr 02 14:41:25 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 02 Apr 2015 14:41:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YdgJB-0005Gm-Ia; Thu, 02 Apr 2015 14:41:25 +0000
Received: from mail6.bemta14.messagelabs.com ([193.109.254.103])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <Paul.Durrant@citrix.com>) id 1YdgJ9-0005GD-SG
	for win-pv-devel@lists.xenproject.org; Thu, 02 Apr 2015 14:41:24 +0000
Received: from [193.109.254.147] by server-4.bemta-14.messagelabs.com id
	C1/50-23180-3155D155; Thu, 02 Apr 2015 14:41:23 +0000
X-Env-Sender: Paul.Durrant@citrix.com
X-Msg-Ref: server-10.tower-27.messagelabs.com!1427985682!15270589!1
X-Originating-IP: [185.25.65.24]
X-SpamReason: No, hits=1.7 required=7.0 tests=BIZ_TLD,received_headers: 
	No Received headers
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 26808 invoked from network); 2 Apr 2015 14:41:22 -0000
Received: from smtp.ctxuk.citrix.com (HELO SMTP.EU.CITRIX.COM) (185.25.65.24)
	by server-10.tower-27.messagelabs.com with RC4-SHA encrypted SMTP;
	2 Apr 2015 14:41:22 -0000
X-IronPort-AV: E=Sophos;i="5.11,511,1422921600"; d="scan'208";a="33268948"
From: Paul Durrant <Paul.Durrant@citrix.com>
To: Fabio Fantoni <fabio.fantoni@m2r.biz>, "win-pv-devel@lists.xenproject.org"
	<win-pv-devel@lists.xenproject.org>
Thread-Topic: Multiple save/restore failing with windows 8.1 64 bit domU
Thread-Index: AQHQati05+G/VEyHyUKbEtI7jazazZ04J7aQ///1bACAAYXUgIAALBng
Date: Thu, 2 Apr 2015 14:41:21 +0000
Message-ID: <9AAE0902D5BC7E449B7C8E4E778ABCD0258611B1@AMSPEX01CL01.citrite.net>
References: <55192CB4.7030802@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585EFDA@AMSPEX01CL01.citrite.net>
	<551C0400.7090908@m2r.biz> <551D4B03.80105@m2r.biz>
In-Reply-To: <551D4B03.80105@m2r.biz>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
MIME-Version: 1.0
X-DLP: AMS1
Subject: Re: [win-pv-devel] Multiple save/restore failing with windows 8.1
	64 bit domU
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

> -----Original Message-----
> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
> Sent: 02 April 2015 14:58
> To: Paul Durrant; win-pv-devel@lists.xenproject.org
> Subject: Re: Multiple save/restore failing with windows 8.1 64 bit domU
> 
> Il 01/04/2015 16:43, Fabio Fantoni ha scritto:
> > Il 01/04/2015 15:21, Paul Durrant ha scritto:
> >>> -----Original Message-----
> >>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
> >>> Sent: 30 March 2015 12:00
> >>> To: win-pv-devel@lists.xenproject.org
> >>> Cc: Paul Durrant
> >>> Subject: Multiple save/restore failing with windows 8.1 64 bit domU
> >>>
> >>> I tried 2 times multiple save/restore (start domU, use it for some
> >>> minutes, do a save restore, use it, do another save/restore) and in
> >>> both
> >>> case second save failed:
> >>>
> >> The patch I posted this morning should fix this one for you.
> >>
> >>    Paul
> >
> > Thanks.
> >
> > Today I tried windows 10 pro 64 bit technical preview, clean install,
> > pv drivers (today's build) install ok but after restore display
> > (connecting with spice) seems freezed, waited 4-5 minutes without
> > changes and after I tried also xl shudown but do nothing.
> > DomU have pv disk and network working, xl shutdown (before try
> > save/restore) is working.
> 
> I updated pv drivers to today build and first save/restore now seems was
> working also in Windows 10 but still not the multiple (seem only partial
> solved), xl shutdown this time worked but it tooks some minutes.
> In attachments domU's qemu logs with trace enabled.
> 

It looks like your 2nd save restore worked... certainly log.1 shows the VM coming back from suspend and then going into suspend. The drivers basically seem to be behaving as expected.

  Paul

> If you more informations/tests tell me and I'll post them.
> 
> Thanks for any reply and sorry for my bad english.
> 
> >
> > About save/restore on W8 I tried now with new pv build and with first
> > save/restore is all ok but with on second now xl save/restore
> > completes correctly but after restore freeze same as the W10 one
> > (since first save/restore).
> >
> > If you more informations/tests tell me and I'll post them.
> >
> > Thanks for any reply and sorry for my bad english.
> >
> >
> >
> >>
> >>>> xl -vvv save W8 /mnt/vm/save/W8
> >>>> libxl: debug: libxl.c:6705:libxl_retrieve_domain_configuration: no
> >>>> vtpm from xenstore for domain 40
> >>>> libxl: debug: libxl.c:6707:libxl_retrieve_domain_configuration: no pci
> >>>> from xenstore for domain 40
> >>>> Saving to /mnt/vm/save/W8 new xl format (info 0x1/0x0/1941)
> >>>> libxl: debug: libxl.c:953:libxl_domain_suspend: ao 0x68d910: create:
> >>>> how=(nil) callback=(nil) poller=0x68d970
> >>>> libxl: debug: libxl_dom.c:1573:libxl__toolstack_save: domain=40
> >>>> toolstack data size=49
> >>>> libxl: debug: libxl.c:975:libxl_domain_suspend: ao 0x68d910:
> >>>> inprogress: poller=0x68d970, flags=i
> >>>> libxl-save-helper: debug: starting save: Success
> >>>> xc: detail: xc_domain_save: starting save of domid 40
> >>>> libxl: debug: libxl_dom.c:1278:domain_suspend_callback_common:
> issuing
> >>>> PVHVM suspend request via XenBus control node
> >>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
> >>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
> >>> register
> >>>> slotnum=3
> >>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68dae0
> >>>> wpath=/local/domain/40/control/shutdown token=3/0: event
> >>>> epath=/local/domain/40/control/shutdown
> >>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
> >>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
> >>>> deregister slotnum=3
> >>>> libxl: debug:
> >>>> libxl_dom.c:1360:domain_suspend_common_pvcontrol_suspending:
> guest
> >>>> acknowledged suspend request
> >>>> libxl: debug: libxl_dom.c:1379:domain_suspend_common_wait_guest:
> >>> wait
> >>>> for the guest to suspend
> >>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
> >>>> w=0x68daf8 wpath=@releaseDomain token=3/1: register slotnum=3
> >>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68daf8
> >>>> wpath=@releaseDomain token=3/1: event epath=@releaseDomain
> >>>> libxl: error: libxl_dom.c:1451:suspend_common_wait_guest_timeout:
> >>>> guest did not suspend, timed out
> >>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
> >>>> w=0x68daf8 wpath=@releaseDomain token=3/1: deregister slotnum=3
> >>>> xc: error: Suspend request failed: Internal error
> >>>> xc: error: Domain appears not to have suspended: Internal error
> >>>> libxl-save-helper: xc_domain_save.c:2077: xc_domain_save: Assertion
> >>>> `rc' failed.
> >>>> libxl: error: libxl_utils.c:430:libxl_read_exactly: file/stream
> >>>> truncated reading ipc msg header from domain 40 save/restore helper
> >>>> stdout pipe
> >>>> libxl: error: libxl_exec.c:129:libxl_report_child_exitstatus: domain
> >>>> 40 save/restore helper [-1] died due to fatal signal Aborted
> >>>> libxl: error: libxl_dom.c:2035:remus_teardown_done: Remus: failed to
> >>>> teardown device for guest with domid 40, rc -3
> >>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
> >>>> complete, rc=-3
> >>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910:
> >>>> destroy
> >>>> Failed to save domain, resuming domain
> >>>> libxl: debug: libxl.c:542:libxl_domain_resume: ao 0x68d910: create:
> >>>> how=(nil) callback=(nil) poller=0x68d970
> >>>> xc: error: Dom 40 not suspended: (shutdown 0, reason 255): Internal
> >>>> error
> >>>> libxl: error: libxl.c:511:libxl__domain_resume: xc_domain_resume
> >>>> failed for domain 40: Invalid argument
> >>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
> >>>> complete, rc=-3
> >>>> libxl: debug: libxl.c:545:libxl_domain_resume: ao 0x68d910:
> >>>> inprogress: poller=0x68d970, flags=ic
> >>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910:
> >>>> destroy
> >>>> xc: debug: hypercall buffer: total allocations:29 total releases:29
> >>>> xc: debug: hypercall buffer: current allocations:0 maximum
> >>>> allocations:2
> >>>> xc: debug: hypercall buffer: cache current size:2
> >>>> xc: debug: hypercall buffer: cache hits:20 misses:2 toobig:7
> >>> If you need more informations/tests tell me and I'll post them.
> >>>
> >>> Thanks for any reply and sorry for my bad english.
> >


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 08 00:44:12 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 08 Apr 2015 00:44:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Yfe6F-00058g-AU; Wed, 08 Apr 2015 00:44:11 +0000
Received: from mail6.bemta14.messagelabs.com ([193.109.254.103])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <omeg@invisiblethingslab.com>) id 1Yfe6D-00058b-OG
	for win-pv-devel@lists.xenproject.org; Wed, 08 Apr 2015 00:44:10 +0000
Received: from [193.109.254.147] by server-4.bemta-14.messagelabs.com id
	5E/7E-23180-9D974255; Wed, 08 Apr 2015 00:44:09 +0000
X-Env-Sender: omeg@invisiblethingslab.com
X-Msg-Ref: server-5.tower-27.messagelabs.com!1428453846!11533839!1
X-Originating-IP: [66.111.4.28]
X-SpamReason: No, hits=0.5 required=7.0 tests=BODY_RANDOM_LONG
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 32413 invoked from network); 8 Apr 2015 00:44:07 -0000
Received: from out4-smtp.messagingengine.com (HELO
	out4-smtp.messagingengine.com) (66.111.4.28)
	by server-5.tower-27.messagelabs.com with DHE-RSA-AES256-SHA encrypted
	SMTP; 8 Apr 2015 00:44:07 -0000
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43])
	by mailout.nyi.internal (Postfix) with ESMTP id BC495209E9
	for <win-pv-devel@lists.xenproject.org>;
	Tue,  7 Apr 2015 20:44:02 -0400 (EDT)
Received: from frontend1 ([10.202.2.160])
	by compute3.internal (MEProxy); Tue, 07 Apr 2015 20:44:06 -0400
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=content-transfer-encoding:content-type
	:date:from:in-reply-to:message-id:mime-version:references
	:subject:to:x-sasl-enc:x-sasl-enc; s=mesmtp; bh=z5T5RsZ+YTh2nBrN
	583/pityemQ=; b=C597mgC4DrkR/WZw//dyBlcuVCE+YZbxixuE+In/+SDmBIbk
	NXF1w3yz3XReDrBqhmR8p0C7by/vVR7JCtMUjh3mtn4FjU1wpM5EgYORJGsORD13
	SPGSsoB1UV8gKv3z0H+EYZd9GdGXRjZdtm/YSWIRRyw1FMffjxCHLvqqQ0w=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=
	messagingengine.com; h=content-transfer-encoding:content-type
	:date:from:in-reply-to:message-id:mime-version:references
	:subject:to:x-sasl-enc:x-sasl-enc; s=smtpout; bh=z5T5RsZ+YTh2nBr
	N583/pityemQ=; b=Opbk7GP/DlPUKvweSNDyT6nlEoHLh1JPBJC2y+R7bWBapJP
	07Gt5TO8EY4gzSqvI4Q6soYAdzrh6hS86LVTi8C955ytxT2l7tExz2M8wl8aOqMC
	I84QTrL1rWud/vTRFIswDyDCU4zisMO40nG++yJ6EBOLVO4rdm1HDtexffcE=
X-Sasl-enc: sZR8MzO6iTzqYJMSA4Of8OWGK8sTIzIFz2ot4OUejZ1m 1428453846
Received: from [192.168.0.3] (unknown [89.67.247.126])
	by mail.messagingengine.com (Postfix) with ESMTPA id CC08EC0001D;
	Tue,  7 Apr 2015 20:44:05 -0400 (EDT)
Message-ID: <552479D3.2040007@invisiblethingslab.com>
Date: Wed, 08 Apr 2015 02:44:03 +0200
From: =?UTF-8?B?UmFmYcWCIFdvamR5xYJh?= <omeg@invisiblethingslab.com>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
	rv:31.0) Gecko/20100101 Thunderbird/31.6.0
MIME-Version: 1.0
To: Paul Durrant <Paul.Durrant@citrix.com>, 
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
References: <54FF50FF.3070304@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD02583F14E@AMSPEX01CL01.citrite.net>	<5501BBEF.20309@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD025840336@AMSPEX01CL01.citrite.net>	<5501C789.6030202@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD025840578@AMSPEX01CL01.citrite.net>
	<5501F14F.7090105@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD025840FC6@AMSPEX01CL01.citrite.net>
	<5502E5CF.4030804@invisiblethingslab.com>
	<551A35C6.8080600@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585D2E9@AMSPEX01CL01.citrite.net>
	<551A9150.9080705@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585D6DA@AMSPEX01CL01.citrite.net>
In-Reply-To: <9AAE0902D5BC7E449B7C8E4E778ABCD02585D6DA@AMSPEX01CL01.citrite.net>
Content-Length: 9362
Subject: Re: [win-pv-devel] Porting libvchan to use the Windows PV Drivers
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQpIYXNoOiBTSEExCgpPbiAyMDE1LTAz
LTMxIDE0OjU5LCBQYXVsIER1cnJhbnQgd3JvdGU6Cj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0t
LS0tIEZyb206IFJhZmHFgiBXb2pkecWCYQo+PiBbbWFpbHRvOm9tZWdAaW52aXNpYmxldGhpbmdz
bGFiLmNvbV0gU2VudDogMzEgTWFyY2ggMjAxNSAxMzoyMiAKPj4gVG86IFBhdWwgRHVycmFudDsg
d2luLXB2LWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnIFN1YmplY3Q6IFJlOgo+PiBbd2luLXB2
LWRldmVsXSBQb3J0aW5nIGxpYnZjaGFuIHRvIHVzZSB0aGUgV2luZG93cyBQViBEcml2ZXJzCj4+
IAo+IE9uIDIwMTUtMDMtMzEgMTE6NTQsIFBhdWwgRHVycmFudCB3cm90ZToKPj4+Pj4gLS0tLS1P
cmlnaW5hbCBNZXNzYWdlLS0tLS0gRnJvbTogUmFmYcWCIFdvamR5xYJhIAo+Pj4+PiBbbWFpbHRv
Om9tZWdAaW52aXNpYmxldGhpbmdzbGFiLmNvbV0gU2VudDogMzEgTWFyY2ggMjAxNQo+Pj4+PiAw
Njo1MSBUbzogUGF1bCBEdXJyYW50OyB3aW4tcHYtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcK
Pj4+Pj4gU3ViamVjdDogUmU6IFt3aW4tcHYtZGV2ZWxdIFBvcnRpbmcgbGlidmNoYW4gdG8gdXNl
IHRoZQo+Pj4+PiBXaW5kb3dzIFBWIERyaXZlcnMKPj4+Pj4gCj4+Pj4gQWZ0ZXIgc29tZSB0aG91
Z2h0IEkndmUgZGVjaWRlZCB0byBpbXBsZW1lbnQgdGhlIG1pc3NpbmcKPj4+PiBwaWVjZXMgaW4g
dGhlIEdQTFBWIGRyaXZlcnMgZmlyc3QsIG1vc3RseSB0byBub3QgZG8gbWFueQo+Pj4+IHRoaW5n
cyBhdCBvbmNlIChsaWtlIHBvcnRpbmcgb3VyIFdpbmRvd3MgdG9vbHMgdG8gdXNlIHRoZSBuZXcK
Pj4+PiBkcml2ZXJzLCBjaGFuZ2luZyBvdXIgYnVpbGQgcHJvY2VzcyBldGMpLiBJJ2xsIGRlZmlu
aXRlbHkKPj4+PiB0ZXN0IHRoZSBuZXcgZHJpdmVycyBvbmNlIFF1YmVzIHIzIGJlY29tZXMgbW9y
ZSBzdGFibGUuCj4+Pj4gCj4+Pj4gCj4+Pj4+IE9rLCBmYWlyIGVub3VnaC4KPj4+PiAKPj4+PiBJ
IGhhdmUgc29tZSBxdWVzdGlvbnMgdGhvdWdoLCBtb3N0bHkgb24gdGhlIHRvcGljIG9mIFhlbidz
Cj4+Pj4gZ3JhbnQgbWFwcGluZyBhbmQgbWVtb3J5IGh5cGVyY2FsbHMuIEFzIEkgd3JvdGUgYmVm
b3JlLCBJJ20gYQo+Pj4+IG5ld2NvbWVyIHRvIFhlbiBBUEkgb24gdGhpcyBsZXZlbCBhbmQgdG8g
bWUgdGhlIGV4aXN0aW5nCj4+Pj4gZG9jdW1lbnRhdGlvbiBzZWVtcyBwcmV0dHkgaW1wZW5ldHJh
YmxlLiBUaGUgb3ZlcmFsbCBwaWN0dXJlCj4+Pj4gaXMgbW9zdGx5IGNsZWFyLCBidXQgbWFueSBp
bXBvcnRhbnQgZGV0YWlscyBzZWVtIG1pc3NpbmcuCj4+Pj4gCj4+Pj4gTGV0J3MgdGFrZSB0aGUg
R05UVEFCT1BfbWFwX2dyYW50X3JlZiBjYWxsLiBJbiB0aGUgaGVhZGVyIHdlCj4+Pj4gc2VlOgo+
Pj4+IAo+Pj4+IElmIEdOVE1BUF9ob3N0X21hcCBpcyBzcGVjaWZpZWQgdGhlbiBhIG1hcHBpbmcg
d2lsbCBiZSBhZGRlZAo+Pj4+IGF0ICogZWl0aGVyIGEgaG9zdCB2aXJ0dWFsIGFkZHJlc3MgaW4g
dGhlIGN1cnJlbnQgYWRkcmVzcwo+Pj4+IHNwYWNlLCBvciBhdCAqIGEgUFRFIGF0IHRoZSBzcGVj
aWZpZWQgbWFjaGluZSBhZGRyZXNzLiAgVGhlCj4+Pj4gdHlwZSBvZiBtYXBwaW5nIHRvICogcGVy
Zm9ybSBpcyBzZWxlY3RlZCB0aHJvdWdoIHRoZQo+Pj4+IEdOVE1BUF9jb250YWluc19wdGUgZmxh
ZywgYW5kIHRoZSAqIGFkZHJlc3MgaXMgc3BlY2lmaWVkIGluCj4+Pj4gPGhvc3RfYWRkcj4uCj4+
Pj4gCj4+Pj4gSSdtIHBhc3NpbmcgR05UTUFQX2hvc3RfbWFwIGZsYWcsIGJ1dCB3aGF0IHR5cGUg
b2YgYWRkcmVzcwo+Pj4+IHNob3VsZCBiZSBwYXNzZWQgZm9yIHRoZSBtYXBwZWQgcGFnZT8gVGhl
IHNlY3Rpb24gYWJvdmUgc2F5cwo+Pj4+ICJtYXBwaW5nIHdpbGwgYmUgYWRkZWQgYXQgZWl0aGVy
IGEgaG9zdCB2aXJ0dWFsIGFkZHJlc3MuLi4iCj4+Pj4gYnV0IEkgZG91YnQgYSBWQSBpcyB3YW50
ZWQsIGJlY2F1c2UgSSdkIG5lZWQgdG8gYWxsb2NhdGUgc29tZQo+Pj4+IGtlcm5lbCBtZW1vcnkg
dG8gcGFzcyBhIFZBIHRvIHRoaXMgY2FsbCwgYW5kIGFsbG9jYXRpb24gbWVhbnMKPj4+PiBtYXBw
aW5nIGluIGl0c2VsZi4gU2hvdWxkIHRoaXMgYmUgYSBwaHlzaWNhbCBhZGRyZXNzPyBBIFBGTj8K
Pj4+PiBTb21ldGhpbmcgZWxzZSBlbnRpcmVseT8KPj4+PiAKPj4+PiAKPj4+Pj4gSHlwZXJjYWxs
cyBvbiBIVk0gZ3Vlc3RzIHVzdWFsbHkgZGVhbCBpbiBHRk5zLiBUaGVyZSdzCj4+Pj4+IGJhc2lj
YWxseSBubyB3YXkgZm9yIGFuIEhWTSBndWVzdCB0byBnZXQgaG9sZCBvZiBNRk4KPj4+Pj4gdmFs
dWVzLiBQViBndWVzdHMgT1RPSCBkZWFsIGluIE1GTnMuCj4+Pj4gCj4+Pj4gQWZ0ZXIgcmVhZGlu
ZyBzb21lIExpbnV4IGNvZGUgdGhhdCB1c2VzIHRoaXMgY2FsbCBJIHNhdyB0aGF0Cj4+Pj4gaXQg
ImFsbG9jYXRlZCIgdGhlIGFkZHJlc3MgZm9yIHRoZSBtYXBwZWQgcGFnZSB2aWEgdGhlCj4+Pj4g
YmFsbG9vbiBkcml2ZXIuIE9uIFdpbmRvd3MgdGhpcyBtZWFucyBnZXR0aW5nIGEgcGFnZSBmcm9t
IFhlbgo+Pj4+IHZpYSBYRU5NRU1faW5jcmVhc2VfcmVzZXJ2YXRpb24gYXMgZmFyIGFzIEkga25v
dy4KPj4+PiAKPj4+Pj4gVW5sZXNzIHlvdXIgdG9vbHN0YWNrIGlzIGFsbG9jYXRpbmcgZXh0cmEg
bWVtb3J5IHRoYXQncwo+Pj4+PiBub3QgYWxyZWFkeSBpbiB0aGUgZ3Vlc3QgUDJNIHRoZW4gdGhh
dCdzIGdvaW5nIHRvIGZhaWwuIEkKPj4+Pj4gdGhpbmsgd2hhdCB5b3UgcHJvYmFibHkgd2FudCB0
byBkbyBpcyBlaXRoZXIgZmluZCBhICdob2xlJwo+Pj4+PiAoaS5lLiBHRk5zIG5vdCBwb3B1bGF0
ZWQgd2l0aCBSQU0pIHN1Y2ggYXMgdGhlIFhlbiBQbGF0Zm9ybQo+Pj4+PiBQQ0kgZGV2aWNlJ3Mg
QkFSIHNwYWNlLCBvciBjcmVhdGUgYSBob2xlIHVzaW5nCj4+Pj4+IGRlY3JlYXNlX3Jlc2VydmF0
aW9uLiBFaXRoZXIgd2F5LCB5b3UnbGwgaGF2ZSBhIEdGTiBpbiB5b3VyCj4+Pj4+IGhhbmQuCj4g
Cj4gSSBzZWUgdGhhdCBjdXJyZW50bHkgdGhlIGZ1bmN0aW9uIHRoYXQgbWFwcyB0aGUgZ3JhbnQg
dGFibGUgaXRzZWxmIAo+IGNyZWF0ZXMgc3VjaCAiaG9sZXMiIHdpdGggWEVOTUVNX2RlY3JlYXNl
X3Jlc2VydmF0aW9uLgo+IAo+PiBZZWFoLCBJIHVzZWQgdG8gZG8gdGhhdCB0b28gYnV0IHRoZXNl
IGRheXMgSSBqdXN0IHB1dCBhIHNpbXBsZQo+PiBwYWdlIGFsbG9jYXRvciBvbiB0b3Agb2YgdGhl
IFBDSSBCQVIgc3BhY2UuIEdvb2QgdGhhdCB5b3UgaGF2ZQo+PiBzb21lIGNvZGUgdG8gY29weSdu
J3Bhc3RlIHRob3VnaCA6LSkKPiAKPj4+PiAKPj4+PiBCdXQgdGhlbiBhZ2FpbjogWEVOTUVNX2lu
Y3JlYXNlX3Jlc2VydmF0aW9uIHJldHVybnMgYSBNRk4gb2YKPj4+PiB0aGUgYWxsb2NhdGVkIHBh
Z2UuIFdoYXQgZ29vZCBpcyB0aGlzIGZvciB0aGUgYWJvdmUgcHVycG9zZT8KPj4+PiBJZiBJIHVu
ZGVyc3RhbmQgY29ycmVjdGx5LCBhIEhWTSBkb2Vzbid0IGtub3cgcmVhbCBNRk5zLgo+Pj4+IFNo
b3VsZCBJIHRyYW5zbGF0ZSBzdWNoIE1GTiBpbnRvIGEgR01GTi9HUEZOIGFuZCB0aGVuIHBhc3Mg
aXQKPj4+PiB0byBHTlRUQUJPUF9tYXBfZ3JhbnRfcmVmIGFzIHRoZSBhZGRyZXNzPyBJZiBzbywg
aG93IHRvCj4+Pj4gcGVyZm9ybSBzdWNoIHRyYW5zbGF0aW9uPwo+Pj4+IAo+Pj4+IEkgZXhwZXJp
bWVudGVkIHdpdGggc29tZSBYRU5NRU0gaHlwZXJjYWxscy4gCj4+Pj4gWEVOTUVNX21hY2hwaHlz
X21hcHBpbmcgInJldHVybnMgdGhlIGxvY2F0aW9uIGluIHZpcnR1YWwKPj4+PiBhZGRyZXNzIHNw
YWNlIG9mIHRoZSBtYWNoaW5lX3RvX3BoeXMgbWFwcGluZyB0YWJsZSIsIGJ1dCB0aGUKPj4+PiBz
dHJ1Y3R1cmUgYW5kIG1lYW5pbmcgb2Ygc3VjaCB0YWJsZSBpcyBub3QgZXhwbGFpbmVkLiBJCj4+
Pj4gYXNzdW1lIGl0IHRyYW5zbGF0ZXMgcmVhbCBNRk5zIGludG8gR01GTnMgaW4gc29tZSB3YXku
IFRoZQo+Pj4+IGNhbGwgc3VjY2VlZGVzIHdpdGggZm9sbG93aW5nIG91dHB1dCB2YWx1ZXM6Cj4+
Pj4gCj4+Pj4gdl9zdGFydCAgMHhmZmZmODAwMGAwMDAwMDAwMCB2X2VuZCAgICAweGZmZmY4MDQw
YDAwMDAwMDAwCj4+Pj4gbWF4X21mbiAweDAwMDAwMDA3YGZmZmZmZmZmCj4+Pj4gCj4+Pj4gLi4u
YnV0IHRoYXQgVkEgcmFuZ2UgYXBwZWFycyB0byBiZSBub3QgYWNjZXNzaWJsZS9ub3QKPj4+PiBt
YXBwZWQuCj4+Pj4gCj4+Pj4gWEVOTUVNX21hY2hwaHlzX21mbl9saXN0IGNhbGwgYWxzbyB3b3Jr
ZWQgYW5kIHJldHVybmVkIGEgbGlzdAo+Pj4+IG9mIDkgdmFsdWVzIG9uIG15IHRlc3QgSFZNIChX
aW43IHg2NCB3aXRoIDFHQiBvZiBSQU0pLiBJJ20KPj4+PiBub3QgcmVhbGx5IHN1cmUgd2hhdCB0
byBtYWtlIG9mIHRoZW0sIHRoZSBkZXNjcmlwdGlvbiBpc24ndAo+Pj4+IHZlcnkgaGVscGZ1bCBm
b3Igc29tZW9uZSB3aG8gZG9lc24ndCBhbHJlYWR5IGtub3cgaG93IHRoaXMKPj4+PiB3b3Jrczog
IlJldHVybnMgYSBsaXN0IG9mIE1GTiBiYXNlcyBvZiAyTUIgZXh0ZW50cyBjb21wcmlzaW5nCj4+
Pj4gdGhlIG1hY2hpbmVfdG9fcGh5cyBtYXBwaW5nIHRhYmxlIi4KPj4+PiAKPj4+PiBNYXliZSBJ
J20gb3ZlcmNvbXBsaWNhdGluZyB0aGluZ3MgYW5kIG92ZXJsb29rZWQgc29tZXRoaW5nIAo+Pj4+
IG9idmlvdXMuIEknZCB3ZWxjb21lIGFueSBjb3JyZWN0aW9ucyBhbmQvb3IgaGludHMgOikKPj4+
PiAKPj4+Pj4gWWVhaCwgSSB0aGluayB5b3UncmUgb3ZlcmNvbXBsaWNhdGluZyB0aGluZ3MgOi0p
IFNlZQo+Pj4+PiBhYm92ZS4KPj4+PiAKPj4+Pj4gUGF1bAo+IAo+IFRoYW5rIHlvdSwgSSdsbCB0
aW5rZXIgc29tZSBtb3JlIGFuZCByZXBvcnQgd2hhdCBjb21lcyBvdXQgb2YgaXQuCj4gCj4gCj4+
IFRoYW5rcywKPiAKPj4gUGF1bAoKQWxyaWdodCwgYWZ0ZXIgYSBsb3Qgb2YgdGlua2VyaW5nIEkg
ZmluYWxseSBnb3QgaXQgdG8gd29yay4gSXQgdHVybnMKb3V0IHRoYXQgdGhlIEdOVFRBQk9QX21h
cF9ncmFudF9yZWYgaHlwZXJjYWxsIGFjdHVhbGx5IHRha2VzIGEKcGh5c2ljYWwgZ3Vlc3QgYWRk
cmVzcywgbm90IGEgUEZOLgoKSSB3YXMgY29uZnVzZWQgYXQgZmlyc3QgYmVjYXVzZSB0aGUgY2Fs
bCBzdWNjZWVkZWQgd2hlbiBJIHBhc3NlZCBhIFBGTgppbi4gSSBvZiBjb3Vyc2UgZGlkbid0IHNl
ZSB0aGUgbWFwcGVkIGNvbnRlbnQgYXQgbXkgYWRkcmVzcywgYmVjYXVzZQp0aGUgUEZOIHdhcyB0
cmVhdGVkIGFzIGEgcGh5c2ljYWwgYWRkcmVzcy4gVGhpcyBjYXVzZWQgc2VlbWluZ2x5CnJhbmRv
bSBtZW1vcnkgY29ycnVwdGlvbiBCU09EcyB0aGF0IHdlcmUgdHJpY2t5IHRvIGRpYWdub3NlLgoK
RmluYWxseSBJIHB1dCBzb21lIHVuaXF1ZSBzdHJpbmcgaW50byB0aGUgc2hhcmVkIHBhZ2UgYW5k
IHNlYXJjaGVkIGZvcgppdCBpbiB0aGUgbWFwcGluZyBndWVzdCdzIG1lbW9yeS4gV2luRGJnJ3Mg
IXNlYXJjaCBmb3VuZCB0aGUgcGF0dGVybgphdCBhIFBGTiB0aGF0IHdhcyBteSBoeXBlcmNhbGwn
cyBhcmd1bWVudCBzaGlmdGVkIHJpZ2h0IDEyIGJpdHMuIFN1cmUKZW5vdWdoLCB0aGF0J3MgYSBw
aHlzaWNhbCBhZGRyZXNzLXRvLVBGTiBjb252ZXJzaW9uLgoKTm93IHRoYXQgaXQgd29ya3MgSSBu
ZWVkIHRvIGFkZCBwcm9wZXIgaW9jdGwgaW50ZXJmYWNlIGZvciAodW4pbWFwcGluZwpwYWdlcy4g
U2luY2UgSSdtIGFsbG9jYXRpbmcga2VybmVsIG1lbW9yeSAob3IgUENJIGFkZHJlc3MgcmFuZ2Up
IEknbGwKbmVlZCB0byBlbnN1cmUgaXQncyBmcmVlZCBpbiBhbGwgY2FzZXMgKHRoZSBkcmVhZGVk
IER1cGxpY2F0ZUhhbmRsZQpwcm9ibGVtKS4gVGhlIGV4aXN0aW5nIGNvZGUgZm9yIGdyYW50aW5n
IHBhZ2VzIGRlYWxzIHdpdGggaXQgYnkKcGVuZGluZyB0aGUgaW9jdGwgZm9yZXZlciBhbmQgdXNp
bmcgYW5vdGhlciBpb2N0bCB0byBhY3R1YWxseSByZXR1cm4KZGF0YSB0byB0aGUgY2FsbGVyLiBU
aGlzIGlzIHByZXR0eSBhd2t3YXJkIGJ1dCBJIGRvbid0IGtub3cgYSBiZXR0ZXIKd2F5IHRvIGVu
c3VyZSBldmVyeXRoaW5nIGlzIE9LIGluIGNhc2UgdGhlIG9yaWdpbmFsIHVzZXIgbW9kZSBjYWxs
ZXIKZGllcyB3aGlsZSB0aGVyZSdzIGEgZHVwbGljYXRlZCBoYW5kbGUgb3BlbiBzb21ld2hlcmUg
KGFwcGFyZW50bHkKa2lsbGluZyBhIHByb2Nlc3MgdGhhdCBjb250YWlucyBsb2NrZWQgcGFnZXMg
Y2F1c2VzIGEgQlNPRCkuIEFueSB0aG91Z2h0CnM/CgotIC0tIApSYWZhxYIgV29qZHnFgmEKUXVi
ZXMgVG9vbHMgZm9yIFdpbmRvd3MgZGV2ZWxvcGVyCi0tLS0tQkVHSU4gUEdQIFNJR05BVFVSRS0t
LS0tCgppUUVjQkFFQkFnQUdCUUpWSkhuVEFBb0pFSVdpOXJCMkdyVzd0VmdILzJQTnlLMEJ5NExa
MlFTVVNyREorK3YrCmFIVE1nZjRvSUdycjNScjdyb2lGdXhFU2F3Y1BnVGFISXJVZWRVSlNoUHlo
TDFqYllnUGtFM2I3RWIwbEI4NGQKSUpFVWsxWlJrK1ZCSVQyYjFwdWJmQ01qWHlQc3lkUkY0Qnow
alExVlZ4RElLVmNRZE9pbk9CQWVoNjFaVVAwTQo1eWpidW5CZ0VrU1F3akthTUZxVDhYUk1QOVVN
OU9WNFZYOGpGL0M2ckJYaW5yR3V5NnY0SFFYS1dzcU9zdUhGCkRvbzY5aHBrRTZCQ1cxRWZYVHZa
TndxUzlyL3FQc2UxTlFQeEUzMVp2RGVzNFJHMi8yMWNGNlVySmpxV2tTQkEKUE9kbE9Fc25jOUtz
V2J5NDZ1MUo3cXlqMHgzZUJsSThtb01wMGR1MGFqbGhIVG5ya1NJZHpLQlFRSU1pZFdjPQo9LzVs
bAotLS0tLUVORCBQR1AgU0lHTkFUVVJFLS0tLS0KCl9fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fCndpbi1wdi1kZXZlbCBtYWlsaW5nIGxpc3QKd2luLXB2LWRl
dmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHA6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9jZ2kt
YmluL21haWxtYW4vbGlzdGluZm8vd2luLXB2LWRldmVs

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 08 00:44:12 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 08 Apr 2015 00:44:12 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Yfe6F-00058g-AU; Wed, 08 Apr 2015 00:44:11 +0000
Received: from mail6.bemta14.messagelabs.com ([193.109.254.103])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <omeg@invisiblethingslab.com>) id 1Yfe6D-00058b-OG
	for win-pv-devel@lists.xenproject.org; Wed, 08 Apr 2015 00:44:10 +0000
Received: from [193.109.254.147] by server-4.bemta-14.messagelabs.com id
	5E/7E-23180-9D974255; Wed, 08 Apr 2015 00:44:09 +0000
X-Env-Sender: omeg@invisiblethingslab.com
X-Msg-Ref: server-5.tower-27.messagelabs.com!1428453846!11533839!1
X-Originating-IP: [66.111.4.28]
X-SpamReason: No, hits=0.5 required=7.0 tests=BODY_RANDOM_LONG
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 32413 invoked from network); 8 Apr 2015 00:44:07 -0000
Received: from out4-smtp.messagingengine.com (HELO
	out4-smtp.messagingengine.com) (66.111.4.28)
	by server-5.tower-27.messagelabs.com with DHE-RSA-AES256-SHA encrypted
	SMTP; 8 Apr 2015 00:44:07 -0000
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43])
	by mailout.nyi.internal (Postfix) with ESMTP id BC495209E9
	for <win-pv-devel@lists.xenproject.org>;
	Tue,  7 Apr 2015 20:44:02 -0400 (EDT)
Received: from frontend1 ([10.202.2.160])
	by compute3.internal (MEProxy); Tue, 07 Apr 2015 20:44:06 -0400
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=content-transfer-encoding:content-type
	:date:from:in-reply-to:message-id:mime-version:references
	:subject:to:x-sasl-enc:x-sasl-enc; s=mesmtp; bh=z5T5RsZ+YTh2nBrN
	583/pityemQ=; b=C597mgC4DrkR/WZw//dyBlcuVCE+YZbxixuE+In/+SDmBIbk
	NXF1w3yz3XReDrBqhmR8p0C7by/vVR7JCtMUjh3mtn4FjU1wpM5EgYORJGsORD13
	SPGSsoB1UV8gKv3z0H+EYZd9GdGXRjZdtm/YSWIRRyw1FMffjxCHLvqqQ0w=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=
	messagingengine.com; h=content-transfer-encoding:content-type
	:date:from:in-reply-to:message-id:mime-version:references
	:subject:to:x-sasl-enc:x-sasl-enc; s=smtpout; bh=z5T5RsZ+YTh2nBr
	N583/pityemQ=; b=Opbk7GP/DlPUKvweSNDyT6nlEoHLh1JPBJC2y+R7bWBapJP
	07Gt5TO8EY4gzSqvI4Q6soYAdzrh6hS86LVTi8C955ytxT2l7tExz2M8wl8aOqMC
	I84QTrL1rWud/vTRFIswDyDCU4zisMO40nG++yJ6EBOLVO4rdm1HDtexffcE=
X-Sasl-enc: sZR8MzO6iTzqYJMSA4Of8OWGK8sTIzIFz2ot4OUejZ1m 1428453846
Received: from [192.168.0.3] (unknown [89.67.247.126])
	by mail.messagingengine.com (Postfix) with ESMTPA id CC08EC0001D;
	Tue,  7 Apr 2015 20:44:05 -0400 (EDT)
Message-ID: <552479D3.2040007@invisiblethingslab.com>
Date: Wed, 08 Apr 2015 02:44:03 +0200
From: =?UTF-8?B?UmFmYcWCIFdvamR5xYJh?= <omeg@invisiblethingslab.com>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
	rv:31.0) Gecko/20100101 Thunderbird/31.6.0
MIME-Version: 1.0
To: Paul Durrant <Paul.Durrant@citrix.com>, 
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
References: <54FF50FF.3070304@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD02583F14E@AMSPEX01CL01.citrite.net>	<5501BBEF.20309@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD025840336@AMSPEX01CL01.citrite.net>	<5501C789.6030202@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD025840578@AMSPEX01CL01.citrite.net>
	<5501F14F.7090105@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD025840FC6@AMSPEX01CL01.citrite.net>
	<5502E5CF.4030804@invisiblethingslab.com>
	<551A35C6.8080600@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585D2E9@AMSPEX01CL01.citrite.net>
	<551A9150.9080705@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585D6DA@AMSPEX01CL01.citrite.net>
In-Reply-To: <9AAE0902D5BC7E449B7C8E4E778ABCD02585D6DA@AMSPEX01CL01.citrite.net>
Content-Length: 9362
Subject: Re: [win-pv-devel] Porting libvchan to use the Windows PV Drivers
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQpIYXNoOiBTSEExCgpPbiAyMDE1LTAz
LTMxIDE0OjU5LCBQYXVsIER1cnJhbnQgd3JvdGU6Cj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0t
LS0tIEZyb206IFJhZmHFgiBXb2pkecWCYQo+PiBbbWFpbHRvOm9tZWdAaW52aXNpYmxldGhpbmdz
bGFiLmNvbV0gU2VudDogMzEgTWFyY2ggMjAxNSAxMzoyMiAKPj4gVG86IFBhdWwgRHVycmFudDsg
d2luLXB2LWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnIFN1YmplY3Q6IFJlOgo+PiBbd2luLXB2
LWRldmVsXSBQb3J0aW5nIGxpYnZjaGFuIHRvIHVzZSB0aGUgV2luZG93cyBQViBEcml2ZXJzCj4+
IAo+IE9uIDIwMTUtMDMtMzEgMTE6NTQsIFBhdWwgRHVycmFudCB3cm90ZToKPj4+Pj4gLS0tLS1P
cmlnaW5hbCBNZXNzYWdlLS0tLS0gRnJvbTogUmFmYcWCIFdvamR5xYJhIAo+Pj4+PiBbbWFpbHRv
Om9tZWdAaW52aXNpYmxldGhpbmdzbGFiLmNvbV0gU2VudDogMzEgTWFyY2ggMjAxNQo+Pj4+PiAw
Njo1MSBUbzogUGF1bCBEdXJyYW50OyB3aW4tcHYtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcK
Pj4+Pj4gU3ViamVjdDogUmU6IFt3aW4tcHYtZGV2ZWxdIFBvcnRpbmcgbGlidmNoYW4gdG8gdXNl
IHRoZQo+Pj4+PiBXaW5kb3dzIFBWIERyaXZlcnMKPj4+Pj4gCj4+Pj4gQWZ0ZXIgc29tZSB0aG91
Z2h0IEkndmUgZGVjaWRlZCB0byBpbXBsZW1lbnQgdGhlIG1pc3NpbmcKPj4+PiBwaWVjZXMgaW4g
dGhlIEdQTFBWIGRyaXZlcnMgZmlyc3QsIG1vc3RseSB0byBub3QgZG8gbWFueQo+Pj4+IHRoaW5n
cyBhdCBvbmNlIChsaWtlIHBvcnRpbmcgb3VyIFdpbmRvd3MgdG9vbHMgdG8gdXNlIHRoZSBuZXcK
Pj4+PiBkcml2ZXJzLCBjaGFuZ2luZyBvdXIgYnVpbGQgcHJvY2VzcyBldGMpLiBJJ2xsIGRlZmlu
aXRlbHkKPj4+PiB0ZXN0IHRoZSBuZXcgZHJpdmVycyBvbmNlIFF1YmVzIHIzIGJlY29tZXMgbW9y
ZSBzdGFibGUuCj4+Pj4gCj4+Pj4gCj4+Pj4+IE9rLCBmYWlyIGVub3VnaC4KPj4+PiAKPj4+PiBJ
IGhhdmUgc29tZSBxdWVzdGlvbnMgdGhvdWdoLCBtb3N0bHkgb24gdGhlIHRvcGljIG9mIFhlbidz
Cj4+Pj4gZ3JhbnQgbWFwcGluZyBhbmQgbWVtb3J5IGh5cGVyY2FsbHMuIEFzIEkgd3JvdGUgYmVm
b3JlLCBJJ20gYQo+Pj4+IG5ld2NvbWVyIHRvIFhlbiBBUEkgb24gdGhpcyBsZXZlbCBhbmQgdG8g
bWUgdGhlIGV4aXN0aW5nCj4+Pj4gZG9jdW1lbnRhdGlvbiBzZWVtcyBwcmV0dHkgaW1wZW5ldHJh
YmxlLiBUaGUgb3ZlcmFsbCBwaWN0dXJlCj4+Pj4gaXMgbW9zdGx5IGNsZWFyLCBidXQgbWFueSBp
bXBvcnRhbnQgZGV0YWlscyBzZWVtIG1pc3NpbmcuCj4+Pj4gCj4+Pj4gTGV0J3MgdGFrZSB0aGUg
R05UVEFCT1BfbWFwX2dyYW50X3JlZiBjYWxsLiBJbiB0aGUgaGVhZGVyIHdlCj4+Pj4gc2VlOgo+
Pj4+IAo+Pj4+IElmIEdOVE1BUF9ob3N0X21hcCBpcyBzcGVjaWZpZWQgdGhlbiBhIG1hcHBpbmcg
d2lsbCBiZSBhZGRlZAo+Pj4+IGF0ICogZWl0aGVyIGEgaG9zdCB2aXJ0dWFsIGFkZHJlc3MgaW4g
dGhlIGN1cnJlbnQgYWRkcmVzcwo+Pj4+IHNwYWNlLCBvciBhdCAqIGEgUFRFIGF0IHRoZSBzcGVj
aWZpZWQgbWFjaGluZSBhZGRyZXNzLiAgVGhlCj4+Pj4gdHlwZSBvZiBtYXBwaW5nIHRvICogcGVy
Zm9ybSBpcyBzZWxlY3RlZCB0aHJvdWdoIHRoZQo+Pj4+IEdOVE1BUF9jb250YWluc19wdGUgZmxh
ZywgYW5kIHRoZSAqIGFkZHJlc3MgaXMgc3BlY2lmaWVkIGluCj4+Pj4gPGhvc3RfYWRkcj4uCj4+
Pj4gCj4+Pj4gSSdtIHBhc3NpbmcgR05UTUFQX2hvc3RfbWFwIGZsYWcsIGJ1dCB3aGF0IHR5cGUg
b2YgYWRkcmVzcwo+Pj4+IHNob3VsZCBiZSBwYXNzZWQgZm9yIHRoZSBtYXBwZWQgcGFnZT8gVGhl
IHNlY3Rpb24gYWJvdmUgc2F5cwo+Pj4+ICJtYXBwaW5nIHdpbGwgYmUgYWRkZWQgYXQgZWl0aGVy
IGEgaG9zdCB2aXJ0dWFsIGFkZHJlc3MuLi4iCj4+Pj4gYnV0IEkgZG91YnQgYSBWQSBpcyB3YW50
ZWQsIGJlY2F1c2UgSSdkIG5lZWQgdG8gYWxsb2NhdGUgc29tZQo+Pj4+IGtlcm5lbCBtZW1vcnkg
dG8gcGFzcyBhIFZBIHRvIHRoaXMgY2FsbCwgYW5kIGFsbG9jYXRpb24gbWVhbnMKPj4+PiBtYXBw
aW5nIGluIGl0c2VsZi4gU2hvdWxkIHRoaXMgYmUgYSBwaHlzaWNhbCBhZGRyZXNzPyBBIFBGTj8K
Pj4+PiBTb21ldGhpbmcgZWxzZSBlbnRpcmVseT8KPj4+PiAKPj4+PiAKPj4+Pj4gSHlwZXJjYWxs
cyBvbiBIVk0gZ3Vlc3RzIHVzdWFsbHkgZGVhbCBpbiBHRk5zLiBUaGVyZSdzCj4+Pj4+IGJhc2lj
YWxseSBubyB3YXkgZm9yIGFuIEhWTSBndWVzdCB0byBnZXQgaG9sZCBvZiBNRk4KPj4+Pj4gdmFs
dWVzLiBQViBndWVzdHMgT1RPSCBkZWFsIGluIE1GTnMuCj4+Pj4gCj4+Pj4gQWZ0ZXIgcmVhZGlu
ZyBzb21lIExpbnV4IGNvZGUgdGhhdCB1c2VzIHRoaXMgY2FsbCBJIHNhdyB0aGF0Cj4+Pj4gaXQg
ImFsbG9jYXRlZCIgdGhlIGFkZHJlc3MgZm9yIHRoZSBtYXBwZWQgcGFnZSB2aWEgdGhlCj4+Pj4g
YmFsbG9vbiBkcml2ZXIuIE9uIFdpbmRvd3MgdGhpcyBtZWFucyBnZXR0aW5nIGEgcGFnZSBmcm9t
IFhlbgo+Pj4+IHZpYSBYRU5NRU1faW5jcmVhc2VfcmVzZXJ2YXRpb24gYXMgZmFyIGFzIEkga25v
dy4KPj4+PiAKPj4+Pj4gVW5sZXNzIHlvdXIgdG9vbHN0YWNrIGlzIGFsbG9jYXRpbmcgZXh0cmEg
bWVtb3J5IHRoYXQncwo+Pj4+PiBub3QgYWxyZWFkeSBpbiB0aGUgZ3Vlc3QgUDJNIHRoZW4gdGhh
dCdzIGdvaW5nIHRvIGZhaWwuIEkKPj4+Pj4gdGhpbmsgd2hhdCB5b3UgcHJvYmFibHkgd2FudCB0
byBkbyBpcyBlaXRoZXIgZmluZCBhICdob2xlJwo+Pj4+PiAoaS5lLiBHRk5zIG5vdCBwb3B1bGF0
ZWQgd2l0aCBSQU0pIHN1Y2ggYXMgdGhlIFhlbiBQbGF0Zm9ybQo+Pj4+PiBQQ0kgZGV2aWNlJ3Mg
QkFSIHNwYWNlLCBvciBjcmVhdGUgYSBob2xlIHVzaW5nCj4+Pj4+IGRlY3JlYXNlX3Jlc2VydmF0
aW9uLiBFaXRoZXIgd2F5LCB5b3UnbGwgaGF2ZSBhIEdGTiBpbiB5b3VyCj4+Pj4+IGhhbmQuCj4g
Cj4gSSBzZWUgdGhhdCBjdXJyZW50bHkgdGhlIGZ1bmN0aW9uIHRoYXQgbWFwcyB0aGUgZ3JhbnQg
dGFibGUgaXRzZWxmIAo+IGNyZWF0ZXMgc3VjaCAiaG9sZXMiIHdpdGggWEVOTUVNX2RlY3JlYXNl
X3Jlc2VydmF0aW9uLgo+IAo+PiBZZWFoLCBJIHVzZWQgdG8gZG8gdGhhdCB0b28gYnV0IHRoZXNl
IGRheXMgSSBqdXN0IHB1dCBhIHNpbXBsZQo+PiBwYWdlIGFsbG9jYXRvciBvbiB0b3Agb2YgdGhl
IFBDSSBCQVIgc3BhY2UuIEdvb2QgdGhhdCB5b3UgaGF2ZQo+PiBzb21lIGNvZGUgdG8gY29weSdu
J3Bhc3RlIHRob3VnaCA6LSkKPiAKPj4+PiAKPj4+PiBCdXQgdGhlbiBhZ2FpbjogWEVOTUVNX2lu
Y3JlYXNlX3Jlc2VydmF0aW9uIHJldHVybnMgYSBNRk4gb2YKPj4+PiB0aGUgYWxsb2NhdGVkIHBh
Z2UuIFdoYXQgZ29vZCBpcyB0aGlzIGZvciB0aGUgYWJvdmUgcHVycG9zZT8KPj4+PiBJZiBJIHVu
ZGVyc3RhbmQgY29ycmVjdGx5LCBhIEhWTSBkb2Vzbid0IGtub3cgcmVhbCBNRk5zLgo+Pj4+IFNo
b3VsZCBJIHRyYW5zbGF0ZSBzdWNoIE1GTiBpbnRvIGEgR01GTi9HUEZOIGFuZCB0aGVuIHBhc3Mg
aXQKPj4+PiB0byBHTlRUQUJPUF9tYXBfZ3JhbnRfcmVmIGFzIHRoZSBhZGRyZXNzPyBJZiBzbywg
aG93IHRvCj4+Pj4gcGVyZm9ybSBzdWNoIHRyYW5zbGF0aW9uPwo+Pj4+IAo+Pj4+IEkgZXhwZXJp
bWVudGVkIHdpdGggc29tZSBYRU5NRU0gaHlwZXJjYWxscy4gCj4+Pj4gWEVOTUVNX21hY2hwaHlz
X21hcHBpbmcgInJldHVybnMgdGhlIGxvY2F0aW9uIGluIHZpcnR1YWwKPj4+PiBhZGRyZXNzIHNw
YWNlIG9mIHRoZSBtYWNoaW5lX3RvX3BoeXMgbWFwcGluZyB0YWJsZSIsIGJ1dCB0aGUKPj4+PiBz
dHJ1Y3R1cmUgYW5kIG1lYW5pbmcgb2Ygc3VjaCB0YWJsZSBpcyBub3QgZXhwbGFpbmVkLiBJCj4+
Pj4gYXNzdW1lIGl0IHRyYW5zbGF0ZXMgcmVhbCBNRk5zIGludG8gR01GTnMgaW4gc29tZSB3YXku
IFRoZQo+Pj4+IGNhbGwgc3VjY2VlZGVzIHdpdGggZm9sbG93aW5nIG91dHB1dCB2YWx1ZXM6Cj4+
Pj4gCj4+Pj4gdl9zdGFydCAgMHhmZmZmODAwMGAwMDAwMDAwMCB2X2VuZCAgICAweGZmZmY4MDQw
YDAwMDAwMDAwCj4+Pj4gbWF4X21mbiAweDAwMDAwMDA3YGZmZmZmZmZmCj4+Pj4gCj4+Pj4gLi4u
YnV0IHRoYXQgVkEgcmFuZ2UgYXBwZWFycyB0byBiZSBub3QgYWNjZXNzaWJsZS9ub3QKPj4+PiBt
YXBwZWQuCj4+Pj4gCj4+Pj4gWEVOTUVNX21hY2hwaHlzX21mbl9saXN0IGNhbGwgYWxzbyB3b3Jr
ZWQgYW5kIHJldHVybmVkIGEgbGlzdAo+Pj4+IG9mIDkgdmFsdWVzIG9uIG15IHRlc3QgSFZNIChX
aW43IHg2NCB3aXRoIDFHQiBvZiBSQU0pLiBJJ20KPj4+PiBub3QgcmVhbGx5IHN1cmUgd2hhdCB0
byBtYWtlIG9mIHRoZW0sIHRoZSBkZXNjcmlwdGlvbiBpc24ndAo+Pj4+IHZlcnkgaGVscGZ1bCBm
b3Igc29tZW9uZSB3aG8gZG9lc24ndCBhbHJlYWR5IGtub3cgaG93IHRoaXMKPj4+PiB3b3Jrczog
IlJldHVybnMgYSBsaXN0IG9mIE1GTiBiYXNlcyBvZiAyTUIgZXh0ZW50cyBjb21wcmlzaW5nCj4+
Pj4gdGhlIG1hY2hpbmVfdG9fcGh5cyBtYXBwaW5nIHRhYmxlIi4KPj4+PiAKPj4+PiBNYXliZSBJ
J20gb3ZlcmNvbXBsaWNhdGluZyB0aGluZ3MgYW5kIG92ZXJsb29rZWQgc29tZXRoaW5nIAo+Pj4+
IG9idmlvdXMuIEknZCB3ZWxjb21lIGFueSBjb3JyZWN0aW9ucyBhbmQvb3IgaGludHMgOikKPj4+
PiAKPj4+Pj4gWWVhaCwgSSB0aGluayB5b3UncmUgb3ZlcmNvbXBsaWNhdGluZyB0aGluZ3MgOi0p
IFNlZQo+Pj4+PiBhYm92ZS4KPj4+PiAKPj4+Pj4gUGF1bAo+IAo+IFRoYW5rIHlvdSwgSSdsbCB0
aW5rZXIgc29tZSBtb3JlIGFuZCByZXBvcnQgd2hhdCBjb21lcyBvdXQgb2YgaXQuCj4gCj4gCj4+
IFRoYW5rcywKPiAKPj4gUGF1bAoKQWxyaWdodCwgYWZ0ZXIgYSBsb3Qgb2YgdGlua2VyaW5nIEkg
ZmluYWxseSBnb3QgaXQgdG8gd29yay4gSXQgdHVybnMKb3V0IHRoYXQgdGhlIEdOVFRBQk9QX21h
cF9ncmFudF9yZWYgaHlwZXJjYWxsIGFjdHVhbGx5IHRha2VzIGEKcGh5c2ljYWwgZ3Vlc3QgYWRk
cmVzcywgbm90IGEgUEZOLgoKSSB3YXMgY29uZnVzZWQgYXQgZmlyc3QgYmVjYXVzZSB0aGUgY2Fs
bCBzdWNjZWVkZWQgd2hlbiBJIHBhc3NlZCBhIFBGTgppbi4gSSBvZiBjb3Vyc2UgZGlkbid0IHNl
ZSB0aGUgbWFwcGVkIGNvbnRlbnQgYXQgbXkgYWRkcmVzcywgYmVjYXVzZQp0aGUgUEZOIHdhcyB0
cmVhdGVkIGFzIGEgcGh5c2ljYWwgYWRkcmVzcy4gVGhpcyBjYXVzZWQgc2VlbWluZ2x5CnJhbmRv
bSBtZW1vcnkgY29ycnVwdGlvbiBCU09EcyB0aGF0IHdlcmUgdHJpY2t5IHRvIGRpYWdub3NlLgoK
RmluYWxseSBJIHB1dCBzb21lIHVuaXF1ZSBzdHJpbmcgaW50byB0aGUgc2hhcmVkIHBhZ2UgYW5k
IHNlYXJjaGVkIGZvcgppdCBpbiB0aGUgbWFwcGluZyBndWVzdCdzIG1lbW9yeS4gV2luRGJnJ3Mg
IXNlYXJjaCBmb3VuZCB0aGUgcGF0dGVybgphdCBhIFBGTiB0aGF0IHdhcyBteSBoeXBlcmNhbGwn
cyBhcmd1bWVudCBzaGlmdGVkIHJpZ2h0IDEyIGJpdHMuIFN1cmUKZW5vdWdoLCB0aGF0J3MgYSBw
aHlzaWNhbCBhZGRyZXNzLXRvLVBGTiBjb252ZXJzaW9uLgoKTm93IHRoYXQgaXQgd29ya3MgSSBu
ZWVkIHRvIGFkZCBwcm9wZXIgaW9jdGwgaW50ZXJmYWNlIGZvciAodW4pbWFwcGluZwpwYWdlcy4g
U2luY2UgSSdtIGFsbG9jYXRpbmcga2VybmVsIG1lbW9yeSAob3IgUENJIGFkZHJlc3MgcmFuZ2Up
IEknbGwKbmVlZCB0byBlbnN1cmUgaXQncyBmcmVlZCBpbiBhbGwgY2FzZXMgKHRoZSBkcmVhZGVk
IER1cGxpY2F0ZUhhbmRsZQpwcm9ibGVtKS4gVGhlIGV4aXN0aW5nIGNvZGUgZm9yIGdyYW50aW5n
IHBhZ2VzIGRlYWxzIHdpdGggaXQgYnkKcGVuZGluZyB0aGUgaW9jdGwgZm9yZXZlciBhbmQgdXNp
bmcgYW5vdGhlciBpb2N0bCB0byBhY3R1YWxseSByZXR1cm4KZGF0YSB0byB0aGUgY2FsbGVyLiBU
aGlzIGlzIHByZXR0eSBhd2t3YXJkIGJ1dCBJIGRvbid0IGtub3cgYSBiZXR0ZXIKd2F5IHRvIGVu
c3VyZSBldmVyeXRoaW5nIGlzIE9LIGluIGNhc2UgdGhlIG9yaWdpbmFsIHVzZXIgbW9kZSBjYWxs
ZXIKZGllcyB3aGlsZSB0aGVyZSdzIGEgZHVwbGljYXRlZCBoYW5kbGUgb3BlbiBzb21ld2hlcmUg
KGFwcGFyZW50bHkKa2lsbGluZyBhIHByb2Nlc3MgdGhhdCBjb250YWlucyBsb2NrZWQgcGFnZXMg
Y2F1c2VzIGEgQlNPRCkuIEFueSB0aG91Z2h0CnM/CgotIC0tIApSYWZhxYIgV29qZHnFgmEKUXVi
ZXMgVG9vbHMgZm9yIFdpbmRvd3MgZGV2ZWxvcGVyCi0tLS0tQkVHSU4gUEdQIFNJR05BVFVSRS0t
LS0tCgppUUVjQkFFQkFnQUdCUUpWSkhuVEFBb0pFSVdpOXJCMkdyVzd0VmdILzJQTnlLMEJ5NExa
MlFTVVNyREorK3YrCmFIVE1nZjRvSUdycjNScjdyb2lGdXhFU2F3Y1BnVGFISXJVZWRVSlNoUHlo
TDFqYllnUGtFM2I3RWIwbEI4NGQKSUpFVWsxWlJrK1ZCSVQyYjFwdWJmQ01qWHlQc3lkUkY0Qnow
alExVlZ4RElLVmNRZE9pbk9CQWVoNjFaVVAwTQo1eWpidW5CZ0VrU1F3akthTUZxVDhYUk1QOVVN
OU9WNFZYOGpGL0M2ckJYaW5yR3V5NnY0SFFYS1dzcU9zdUhGCkRvbzY5aHBrRTZCQ1cxRWZYVHZa
TndxUzlyL3FQc2UxTlFQeEUzMVp2RGVzNFJHMi8yMWNGNlVySmpxV2tTQkEKUE9kbE9Fc25jOUtz
V2J5NDZ1MUo3cXlqMHgzZUJsSThtb01wMGR1MGFqbGhIVG5ya1NJZHpLQlFRSU1pZFdjPQo9LzVs
bAotLS0tLUVORCBQR1AgU0lHTkFUVVJFLS0tLS0KCl9fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fCndpbi1wdi1kZXZlbCBtYWlsaW5nIGxpc3QKd2luLXB2LWRl
dmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHA6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9jZ2kt
YmluL21haWxtYW4vbGlzdGluZm8vd2luLXB2LWRldmVs

From win-pv-devel-bounces@lists.xenproject.org Fri Apr 10 03:00:11 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 10 Apr 2015 03:00:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YgPAx-0002wl-RZ; Fri, 10 Apr 2015 03:00:11 +0000
Received: from mail6.bemta14.messagelabs.com ([193.109.254.103])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <omeg@invisiblethingslab.com>) id 1YgPAw-0002wF-Ck
	for win-pv-devel@lists.xenproject.org; Fri, 10 Apr 2015 03:00:10 +0000
Received: from [193.109.254.147] by server-12.bemta-14.messagelabs.com id
	74/D7-24420-9BC37255; Fri, 10 Apr 2015 03:00:09 +0000
X-Env-Sender: omeg@invisiblethingslab.com
X-Msg-Ref: server-9.tower-27.messagelabs.com!1428634807!16829619!1
X-Originating-IP: [66.111.4.28]
X-SpamReason: No, hits=0.5 required=7.0 tests=BODY_RANDOM_LONG
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 3029 invoked from network); 10 Apr 2015 03:00:08 -0000
Received: from out4-smtp.messagingengine.com (HELO
	out4-smtp.messagingengine.com) (66.111.4.28)
	by server-9.tower-27.messagelabs.com with DHE-RSA-AES256-SHA encrypted
	SMTP; 10 Apr 2015 03:00:08 -0000
Received: from compute2.internal (compute2.nyi.internal [10.202.2.42])
	by mailout.nyi.internal (Postfix) with ESMTP id 036A1204BE
	for <win-pv-devel@lists.xenproject.org>;
	Thu,  9 Apr 2015 23:00:02 -0400 (EDT)
Received: from frontend2 ([10.202.2.161])
	by compute2.internal (MEProxy); Thu, 09 Apr 2015 23:00:07 -0400
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=content-transfer-encoding:content-type
	:date:from:in-reply-to:message-id:mime-version:references
	:subject:to:x-sasl-enc:x-sasl-enc; s=mesmtp; bh=SEkpUvOamJqmD4fp
	JfUmoi9GUVI=; b=om9BtMUxW1TBtxmBktxzcy3Vpklk4KCM+szuUhy6IyzHOXT5
	qCARxIrjetFU6l6mBdbIxHQSPiDCn6KzVjYYeA4rnIzVpiuYfaAH+bQdPmGzKyHR
	W5XGH2zu/JKXZUaVEJFeMl1d9+12nWq/rAHWc7UCIl/7tCI6oovpOm9H+Rk=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=
	messagingengine.com; h=content-transfer-encoding:content-type
	:date:from:in-reply-to:message-id:mime-version:references
	:subject:to:x-sasl-enc:x-sasl-enc; s=smtpout; bh=SEkpUvOamJqmD4f
	pJfUmoi9GUVI=; b=lTcXCV636k4qHSWm2BRlePqQj+lj+xsCnhIbDtPyO0RkJSb
	ihoxvYHi/Lg9v0TH+sDrRGeCUWz5/8pR5kcLNjaI64t/IfEpl53C7LjiRwl6LnFJ
	nudgqs2Gwp6C+UI9bd6j/pd9Z59hD7Diq/7pYd7ZZ9TQBSUMv3W4Ujw1hNRQ=
X-Sasl-enc: J9Ungq65ZZ92ynj8gt58fD4bueBnRAPbzLcnM9kwi4Dz 1428634806
Received: from [192.168.0.3] (unknown [89.67.247.126])
	by mail.messagingengine.com (Postfix) with ESMTPA id 202FE680245;
	Thu,  9 Apr 2015 23:00:05 -0400 (EDT)
Message-ID: <55273CB5.5020609@invisiblethingslab.com>
Date: Fri, 10 Apr 2015 05:00:05 +0200
From: =?UTF-8?B?UmFmYcWCIFdvamR5xYJh?= <omeg@invisiblethingslab.com>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
	rv:31.0) Gecko/20100101 Thunderbird/31.6.0
MIME-Version: 1.0
To: Paul Durrant <Paul.Durrant@citrix.com>, 
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
References: <54FF50FF.3070304@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD02583F14E@AMSPEX01CL01.citrite.net>	<5501BBEF.20309@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD025840336@AMSPEX01CL01.citrite.net>	<5501C789.6030202@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD025840578@AMSPEX01CL01.citrite.net>	<5501F14F.7090105@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD025840FC6@AMSPEX01CL01.citrite.net>	<5502E5CF.4030804@invisiblethingslab.com>	<551A35C6.8080600@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD02585D2E9@AMSPEX01CL01.citrite.net>	<551A9150.9080705@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD02585D6DA@AMSPEX01CL01.citrite.net>
	<552479D3.2040007@invisiblethingslab.com>
In-Reply-To: <552479D3.2040007@invisiblethingslab.com>
Content-Length:10432
Subject: Re: [win-pv-devel] Porting libvchan to use the Windows PV Drivers
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQpIYXNoOiBTSEExCgpPbiAyMDE1LTA0
LTA4IDAyOjQ0LCBSYWZhxYIgV29qZHnFgmEgd3JvdGU6Cj4gT24gMjAxNS0wMy0zMSAxNDo1OSwg
UGF1bCBEdXJyYW50IHdyb3RlOgo+Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0gRnJvbTog
UmFmYcWCIFdvamR5xYJhIAo+Pj4gW21haWx0bzpvbWVnQGludmlzaWJsZXRoaW5nc2xhYi5jb21d
IFNlbnQ6IDMxIE1hcmNoIDIwMTUgMTM6MjIKPj4+ICBUbzogUGF1bCBEdXJyYW50OyB3aW4tcHYt
ZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcgU3ViamVjdDoKPj4+IFJlOiBbd2luLXB2LWRldmVs
XSBQb3J0aW5nIGxpYnZjaGFuIHRvIHVzZSB0aGUgV2luZG93cyBQVgo+Pj4gRHJpdmVycwo+Pj4g
Cj4+IE9uIDIwMTUtMDMtMzEgMTE6NTQsIFBhdWwgRHVycmFudCB3cm90ZToKPj4+Pj4+IC0tLS0t
T3JpZ2luYWwgTWVzc2FnZS0tLS0tIEZyb206IFJhZmHFgiBXb2pkecWCYSAKPj4+Pj4+IFttYWls
dG86b21lZ0BpbnZpc2libGV0aGluZ3NsYWIuY29tXSBTZW50OiAzMSBNYXJjaCAyMDE1IAo+Pj4+
Pj4gMDY6NTEgVG86IFBhdWwgRHVycmFudDsKPj4+Pj4+IHdpbi1wdi1kZXZlbEBsaXN0cy54ZW5w
cm9qZWN0Lm9yZyBTdWJqZWN0OiBSZToKPj4+Pj4+IFt3aW4tcHYtZGV2ZWxdIFBvcnRpbmcgbGli
dmNoYW4gdG8gdXNlIHRoZSBXaW5kb3dzIFBWCj4+Pj4+PiBEcml2ZXJzCj4+Pj4+PiAKPj4+Pj4g
QWZ0ZXIgc29tZSB0aG91Z2h0IEkndmUgZGVjaWRlZCB0byBpbXBsZW1lbnQgdGhlIG1pc3Npbmcg
Cj4+Pj4+IHBpZWNlcyBpbiB0aGUgR1BMUFYgZHJpdmVycyBmaXJzdCwgbW9zdGx5IHRvIG5vdCBk
byBtYW55IAo+Pj4+PiB0aGluZ3MgYXQgb25jZSAobGlrZSBwb3J0aW5nIG91ciBXaW5kb3dzIHRv
b2xzIHRvIHVzZSB0aGUKPj4+Pj4gbmV3IGRyaXZlcnMsIGNoYW5naW5nIG91ciBidWlsZCBwcm9j
ZXNzIGV0YykuIEknbGwKPj4+Pj4gZGVmaW5pdGVseSB0ZXN0IHRoZSBuZXcgZHJpdmVycyBvbmNl
IFF1YmVzIHIzIGJlY29tZXMgbW9yZQo+Pj4+PiBzdGFibGUuCj4+Pj4+IAo+Pj4+PiAKPj4+Pj4+
IE9rLCBmYWlyIGVub3VnaC4KPj4+Pj4gCj4+Pj4+IEkgaGF2ZSBzb21lIHF1ZXN0aW9ucyB0aG91
Z2gsIG1vc3RseSBvbiB0aGUgdG9waWMgb2YgWGVuJ3MgCj4+Pj4+IGdyYW50IG1hcHBpbmcgYW5k
IG1lbW9yeSBoeXBlcmNhbGxzLiBBcyBJIHdyb3RlIGJlZm9yZSwgSSdtCj4+Pj4+IGEgbmV3Y29t
ZXIgdG8gWGVuIEFQSSBvbiB0aGlzIGxldmVsIGFuZCB0byBtZSB0aGUgZXhpc3RpbmcgCj4+Pj4+
IGRvY3VtZW50YXRpb24gc2VlbXMgcHJldHR5IGltcGVuZXRyYWJsZS4gVGhlIG92ZXJhbGwKPj4+
Pj4gcGljdHVyZSBpcyBtb3N0bHkgY2xlYXIsIGJ1dCBtYW55IGltcG9ydGFudCBkZXRhaWxzIHNl
ZW0KPj4+Pj4gbWlzc2luZy4KPj4+Pj4gCj4+Pj4+IExldCdzIHRha2UgdGhlIEdOVFRBQk9QX21h
cF9ncmFudF9yZWYgY2FsbC4gSW4gdGhlIGhlYWRlcgo+Pj4+PiB3ZSBzZWU6Cj4+Pj4+IAo+Pj4+
PiBJZiBHTlRNQVBfaG9zdF9tYXAgaXMgc3BlY2lmaWVkIHRoZW4gYSBtYXBwaW5nIHdpbGwgYmUK
Pj4+Pj4gYWRkZWQgYXQgKiBlaXRoZXIgYSBob3N0IHZpcnR1YWwgYWRkcmVzcyBpbiB0aGUgY3Vy
cmVudAo+Pj4+PiBhZGRyZXNzIHNwYWNlLCBvciBhdCAqIGEgUFRFIGF0IHRoZSBzcGVjaWZpZWQg
bWFjaGluZQo+Pj4+PiBhZGRyZXNzLiAgVGhlIHR5cGUgb2YgbWFwcGluZyB0byAqIHBlcmZvcm0g
aXMgc2VsZWN0ZWQKPj4+Pj4gdGhyb3VnaCB0aGUgR05UTUFQX2NvbnRhaW5zX3B0ZSBmbGFnLCBh
bmQgdGhlICogYWRkcmVzcyBpcwo+Pj4+PiBzcGVjaWZpZWQgaW4gPGhvc3RfYWRkcj4uCj4+Pj4+
IAo+Pj4+PiBJJ20gcGFzc2luZyBHTlRNQVBfaG9zdF9tYXAgZmxhZywgYnV0IHdoYXQgdHlwZSBv
ZiBhZGRyZXNzIAo+Pj4+PiBzaG91bGQgYmUgcGFzc2VkIGZvciB0aGUgbWFwcGVkIHBhZ2U/IFRo
ZSBzZWN0aW9uIGFib3ZlCj4+Pj4+IHNheXMgIm1hcHBpbmcgd2lsbCBiZSBhZGRlZCBhdCBlaXRo
ZXIgYSBob3N0IHZpcnR1YWwKPj4+Pj4gYWRkcmVzcy4uLiIgYnV0IEkgZG91YnQgYSBWQSBpcyB3
YW50ZWQsIGJlY2F1c2UgSSdkIG5lZWQgdG8KPj4+Pj4gYWxsb2NhdGUgc29tZSBrZXJuZWwgbWVt
b3J5IHRvIHBhc3MgYSBWQSB0byB0aGlzIGNhbGwsIGFuZAo+Pj4+PiBhbGxvY2F0aW9uIG1lYW5z
IG1hcHBpbmcgaW4gaXRzZWxmLiBTaG91bGQgdGhpcyBiZSBhCj4+Pj4+IHBoeXNpY2FsIGFkZHJl
c3M/IEEgUEZOPyBTb21ldGhpbmcgZWxzZSBlbnRpcmVseT8KPj4+Pj4gCj4+Pj4+IAo+Pj4+Pj4g
SHlwZXJjYWxscyBvbiBIVk0gZ3Vlc3RzIHVzdWFsbHkgZGVhbCBpbiBHRk5zLiBUaGVyZSdzIAo+
Pj4+Pj4gYmFzaWNhbGx5IG5vIHdheSBmb3IgYW4gSFZNIGd1ZXN0IHRvIGdldCBob2xkIG9mIE1G
TiAKPj4+Pj4+IHZhbHVlcy4gUFYgZ3Vlc3RzIE9UT0ggZGVhbCBpbiBNRk5zLgo+Pj4+PiAKPj4+
Pj4gQWZ0ZXIgcmVhZGluZyBzb21lIExpbnV4IGNvZGUgdGhhdCB1c2VzIHRoaXMgY2FsbCBJIHNh
dwo+Pj4+PiB0aGF0IGl0ICJhbGxvY2F0ZWQiIHRoZSBhZGRyZXNzIGZvciB0aGUgbWFwcGVkIHBh
Z2UgdmlhCj4+Pj4+IHRoZSBiYWxsb29uIGRyaXZlci4gT24gV2luZG93cyB0aGlzIG1lYW5zIGdl
dHRpbmcgYSBwYWdlCj4+Pj4+IGZyb20gWGVuIHZpYSBYRU5NRU1faW5jcmVhc2VfcmVzZXJ2YXRp
b24gYXMgZmFyIGFzIEkga25vdy4KPj4+Pj4gCj4+Pj4+PiBVbmxlc3MgeW91ciB0b29sc3RhY2sg
aXMgYWxsb2NhdGluZyBleHRyYSBtZW1vcnkgdGhhdCdzIAo+Pj4+Pj4gbm90IGFscmVhZHkgaW4g
dGhlIGd1ZXN0IFAyTSB0aGVuIHRoYXQncyBnb2luZyB0byBmYWlsLgo+Pj4+Pj4gSSB0aGluayB3
aGF0IHlvdSBwcm9iYWJseSB3YW50IHRvIGRvIGlzIGVpdGhlciBmaW5kIGEKPj4+Pj4+ICdob2xl
JyAoaS5lLiBHRk5zIG5vdCBwb3B1bGF0ZWQgd2l0aCBSQU0pIHN1Y2ggYXMgdGhlIFhlbgo+Pj4+
Pj4gUGxhdGZvcm0gUENJIGRldmljZSdzIEJBUiBzcGFjZSwgb3IgY3JlYXRlIGEgaG9sZSB1c2lu
ZyAKPj4+Pj4+IGRlY3JlYXNlX3Jlc2VydmF0aW9uLiBFaXRoZXIgd2F5LCB5b3UnbGwgaGF2ZSBh
IEdGTiBpbgo+Pj4+Pj4geW91ciBoYW5kLgo+IAo+PiBJIHNlZSB0aGF0IGN1cnJlbnRseSB0aGUg
ZnVuY3Rpb24gdGhhdCBtYXBzIHRoZSBncmFudCB0YWJsZQo+PiBpdHNlbGYgY3JlYXRlcyBzdWNo
ICJob2xlcyIgd2l0aCBYRU5NRU1fZGVjcmVhc2VfcmVzZXJ2YXRpb24uCj4gCj4+PiBZZWFoLCBJ
IHVzZWQgdG8gZG8gdGhhdCB0b28gYnV0IHRoZXNlIGRheXMgSSBqdXN0IHB1dCBhIHNpbXBsZSAK
Pj4+IHBhZ2UgYWxsb2NhdG9yIG9uIHRvcCBvZiB0aGUgUENJIEJBUiBzcGFjZS4gR29vZCB0aGF0
IHlvdSBoYXZlIAo+Pj4gc29tZSBjb2RlIHRvIGNvcHknbidwYXN0ZSB0aG91Z2ggOi0pCj4gCj4+
Pj4+IAo+Pj4+PiBCdXQgdGhlbiBhZ2FpbjogWEVOTUVNX2luY3JlYXNlX3Jlc2VydmF0aW9uIHJl
dHVybnMgYSBNRk4KPj4+Pj4gb2YgdGhlIGFsbG9jYXRlZCBwYWdlLiBXaGF0IGdvb2QgaXMgdGhp
cyBmb3IgdGhlIGFib3ZlCj4+Pj4+IHB1cnBvc2U/IElmIEkgdW5kZXJzdGFuZCBjb3JyZWN0bHks
IGEgSFZNIGRvZXNuJ3Qga25vdyByZWFsCj4+Pj4+IE1GTnMuIFNob3VsZCBJIHRyYW5zbGF0ZSBz
dWNoIE1GTiBpbnRvIGEgR01GTi9HUEZOIGFuZCB0aGVuCj4+Pj4+IHBhc3MgaXQgdG8gR05UVEFC
T1BfbWFwX2dyYW50X3JlZiBhcyB0aGUgYWRkcmVzcz8gSWYgc28sCj4+Pj4+IGhvdyB0byBwZXJm
b3JtIHN1Y2ggdHJhbnNsYXRpb24/Cj4+Pj4+IAo+Pj4+PiBJIGV4cGVyaW1lbnRlZCB3aXRoIHNv
bWUgWEVOTUVNIGh5cGVyY2FsbHMuIAo+Pj4+PiBYRU5NRU1fbWFjaHBoeXNfbWFwcGluZyAicmV0
dXJucyB0aGUgbG9jYXRpb24gaW4gdmlydHVhbCAKPj4+Pj4gYWRkcmVzcyBzcGFjZSBvZiB0aGUg
bWFjaGluZV90b19waHlzIG1hcHBpbmcgdGFibGUiLCBidXQKPj4+Pj4gdGhlIHN0cnVjdHVyZSBh
bmQgbWVhbmluZyBvZiBzdWNoIHRhYmxlIGlzIG5vdCBleHBsYWluZWQuCj4+Pj4+IEkgYXNzdW1l
IGl0IHRyYW5zbGF0ZXMgcmVhbCBNRk5zIGludG8gR01GTnMgaW4gc29tZSB3YXkuCj4+Pj4+IFRo
ZSBjYWxsIHN1Y2NlZWRlcyB3aXRoIGZvbGxvd2luZyBvdXRwdXQgdmFsdWVzOgo+Pj4+PiAKPj4+
Pj4gdl9zdGFydCAgMHhmZmZmODAwMGAwMDAwMDAwMCB2X2VuZCAgICAweGZmZmY4MDQwYDAwMDAw
MDAwIAo+Pj4+PiBtYXhfbWZuIDB4MDAwMDAwMDdgZmZmZmZmZmYKPj4+Pj4gCj4+Pj4+IC4uLmJ1
dCB0aGF0IFZBIHJhbmdlIGFwcGVhcnMgdG8gYmUgbm90IGFjY2Vzc2libGUvbm90IAo+Pj4+PiBt
YXBwZWQuCj4+Pj4+IAo+Pj4+PiBYRU5NRU1fbWFjaHBoeXNfbWZuX2xpc3QgY2FsbCBhbHNvIHdv
cmtlZCBhbmQgcmV0dXJuZWQgYQo+Pj4+PiBsaXN0IG9mIDkgdmFsdWVzIG9uIG15IHRlc3QgSFZN
IChXaW43IHg2NCB3aXRoIDFHQiBvZiBSQU0pLgo+Pj4+PiBJJ20gbm90IHJlYWxseSBzdXJlIHdo
YXQgdG8gbWFrZSBvZiB0aGVtLCB0aGUgZGVzY3JpcHRpb24KPj4+Pj4gaXNuJ3QgdmVyeSBoZWxw
ZnVsIGZvciBzb21lb25lIHdobyBkb2Vzbid0IGFscmVhZHkga25vdyBob3cKPj4+Pj4gdGhpcyB3
b3JrczogIlJldHVybnMgYSBsaXN0IG9mIE1GTiBiYXNlcyBvZiAyTUIgZXh0ZW50cwo+Pj4+PiBj
b21wcmlzaW5nIHRoZSBtYWNoaW5lX3RvX3BoeXMgbWFwcGluZyB0YWJsZSIuCj4+Pj4+IAo+Pj4+
PiBNYXliZSBJJ20gb3ZlcmNvbXBsaWNhdGluZyB0aGluZ3MgYW5kIG92ZXJsb29rZWQgc29tZXRo
aW5nCj4+Pj4+ICBvYnZpb3VzLiBJJ2Qgd2VsY29tZSBhbnkgY29ycmVjdGlvbnMgYW5kL29yIGhp
bnRzIDopCj4+Pj4+IAo+Pj4+Pj4gWWVhaCwgSSB0aGluayB5b3UncmUgb3ZlcmNvbXBsaWNhdGlu
ZyB0aGluZ3MgOi0pIFNlZSAKPj4+Pj4+IGFib3ZlLgo+Pj4+PiAKPj4+Pj4+IFBhdWwKPiAKPj4g
VGhhbmsgeW91LCBJJ2xsIHRpbmtlciBzb21lIG1vcmUgYW5kIHJlcG9ydCB3aGF0IGNvbWVzIG91
dCBvZgo+PiBpdC4KPiAKPiAKPj4+IFRoYW5rcywKPiAKPj4+IFBhdWwKPiAKPiBBbHJpZ2h0LCBh
ZnRlciBhIGxvdCBvZiB0aW5rZXJpbmcgSSBmaW5hbGx5IGdvdCBpdCB0byB3b3JrLiBJdAo+IHR1
cm5zIG91dCB0aGF0IHRoZSBHTlRUQUJPUF9tYXBfZ3JhbnRfcmVmIGh5cGVyY2FsbCBhY3R1YWxs
eSB0YWtlcwo+IGEgcGh5c2ljYWwgZ3Vlc3QgYWRkcmVzcywgbm90IGEgUEZOLgo+IAo+IEkgd2Fz
IGNvbmZ1c2VkIGF0IGZpcnN0IGJlY2F1c2UgdGhlIGNhbGwgc3VjY2VlZGVkIHdoZW4gSSBwYXNz
ZWQgYQo+IFBGTiBpbi4gSSBvZiBjb3Vyc2UgZGlkbid0IHNlZSB0aGUgbWFwcGVkIGNvbnRlbnQg
YXQgbXkgYWRkcmVzcywKPiBiZWNhdXNlIHRoZSBQRk4gd2FzIHRyZWF0ZWQgYXMgYSBwaHlzaWNh
bCBhZGRyZXNzLiBUaGlzIGNhdXNlZAo+IHNlZW1pbmdseSByYW5kb20gbWVtb3J5IGNvcnJ1cHRp
b24gQlNPRHMgdGhhdCB3ZXJlIHRyaWNreSB0bwo+IGRpYWdub3NlLgo+IAo+IEZpbmFsbHkgSSBw
dXQgc29tZSB1bmlxdWUgc3RyaW5nIGludG8gdGhlIHNoYXJlZCBwYWdlIGFuZCBzZWFyY2hlZAo+
IGZvciBpdCBpbiB0aGUgbWFwcGluZyBndWVzdCdzIG1lbW9yeS4gV2luRGJnJ3MgIXNlYXJjaCBm
b3VuZCB0aGUKPiBwYXR0ZXJuIGF0IGEgUEZOIHRoYXQgd2FzIG15IGh5cGVyY2FsbCdzIGFyZ3Vt
ZW50IHNoaWZ0ZWQgcmlnaHQgMTIKPiBiaXRzLiBTdXJlIGVub3VnaCwgdGhhdCdzIGEgcGh5c2lj
YWwgYWRkcmVzcy10by1QRk4gY29udmVyc2lvbi4KPiAKPiBOb3cgdGhhdCBpdCB3b3JrcyBJIG5l
ZWQgdG8gYWRkIHByb3BlciBpb2N0bCBpbnRlcmZhY2UgZm9yCj4gKHVuKW1hcHBpbmcgcGFnZXMu
IFNpbmNlIEknbSBhbGxvY2F0aW5nIGtlcm5lbCBtZW1vcnkgKG9yIFBDSQo+IGFkZHJlc3MgcmFu
Z2UpIEknbGwgbmVlZCB0byBlbnN1cmUgaXQncyBmcmVlZCBpbiBhbGwgY2FzZXMgKHRoZQo+IGRy
ZWFkZWQgRHVwbGljYXRlSGFuZGxlIHByb2JsZW0pLiBUaGUgZXhpc3RpbmcgY29kZSBmb3IgZ3Jh
bnRpbmcKPiBwYWdlcyBkZWFscyB3aXRoIGl0IGJ5IHBlbmRpbmcgdGhlIGlvY3RsIGZvcmV2ZXIg
YW5kIHVzaW5nIGFub3RoZXIKPiBpb2N0bCB0byBhY3R1YWxseSByZXR1cm4gZGF0YSB0byB0aGUg
Y2FsbGVyLiBUaGlzIGlzIHByZXR0eSBhd2t3YXJkCj4gYnV0IEkgZG9uJ3Qga25vdyBhIGJldHRl
ciB3YXkgdG8gZW5zdXJlIGV2ZXJ5dGhpbmcgaXMgT0sgaW4gY2FzZQo+IHRoZSBvcmlnaW5hbCB1
c2VyIG1vZGUgY2FsbGVyIGRpZXMgd2hpbGUgdGhlcmUncyBhIGR1cGxpY2F0ZWQKPiBoYW5kbGUg
b3BlbiBzb21ld2hlcmUgKGFwcGFyZW50bHkga2lsbGluZyBhIHByb2Nlc3MgdGhhdCBjb250YWlu
cwo+IGxvY2tlZCBwYWdlcyBjYXVzZXMgYSBCU09EKS4gQW55IHRob3VnaHQgcz8KCkZvciBub3cg
SSB3ZW50IHdpdGggUHNTZXRDcmVhdGVQcm9jZXNzTm90aWZ5Um91dGluZSBmb3IgY2xlYW51cApw
dXJwb3NlcyBhbmQgaXQgc2VlbXMgdG8gd29yayB3ZWxsLiBUaGUgY2FsbGJhY2sgcnVucyBhdCBQ
QVNTSVZFX0xFVkVMCmFuZCBpbiB0aGUgY29udGV4dCBvZiB0aGUgcHJvY2VzcyBiZWluZyBkZXN0
cm95ZWQgc28gdGhhdCBhbGxvd3MgZm9yCmVhc3kgY2xlYW51cCBvZiBsb2NrZWQgbWVtb3J5IGFs
bG9jYXRpb25zIGFuZCB0aGUgbGlrZS4KClRoZSBncmFudCBtYXBwaW5nIGl0c2VsZiBmaW5hbGx5
IHdvcmtzIHdlbGwgYWZ0ZXIgaXJvbmluZyBvdXQgc29tZQptb3JlIGlzc3Vlcy4gTm93IEkgbmVl
ZCB0byBpbXBsZW1lbnQgdGhlIGxpYnhjIGZ1bmN0aW9ucyB1c2VkIGJ5IG91cgpsaWJ4ZW52Y2hh
biAobGlrZSB4Y19nbnR0YWJfbWFwX2dyYW50X3JlZl9ub3RpZnkpLiBBZnRlciB0aGF0J3MKd29y
a2luZyBpdCBzaG91bGQgYmUgcmVsYXRpdmVseSBlYXN5IHRvIHBvcnQgdGhlIGNvZGUgdG8gdGhl
IG5ldwpwdmRyaXZlcnMgYXMgd2VsbCA6KQotIC0tIApSYWZhxYIgV29qZHnFgmEKUXViZXMgVG9v
bHMgZm9yIFdpbmRvd3MgZGV2ZWxvcGVyCi0tLS0tQkVHSU4gUEdQIFNJR05BVFVSRS0tLS0tCgpp
UUVjQkFFQkFnQUdCUUpWSnp5MUFBb0pFSVdpOXJCMkdyVzdPL2NILzA0TncyT2x0Y0RzVUFqT0Vm
MDhCejVDCkozVzNmS3E4TVFRSzhodGZQU3VpNlR0Mjc2TFRIcHFJdnk1MHd4LzJQYzg0VmRmTUU0
Y25xM2Y4dk5XeFVBMDAKRGUvUUhqUkhENVkwWnV1OXRISE1oU0RNSW5rQTkyblI5SjR3eC9BZlkv
ZUpjdSs5V1JFUWxJekI5MFlJcU4yNwo1WlNhT3hVQW1GOTE5dTB3aFdUL2xmVFh3V25xNkVJbCtN
ejRZRVhPaGRZRFlBa0NRdWVMTjZ6MnFoOUk0WGpoCmpaRnJkWnFQNXIxR1ByOTRHZ0k1NElYbFlp
L2hiOGtrd3dLVXRUR2JHYTFIaFo1K1FYcnVTMmhxdnRPclVCOWEKcURCQmVYeUxxdFA5Mkh2RC8x
a2hPdUtZUDRyT0Q5STBvdm5WUDdSdHNCU3RESFU5RUxjUnpZVDdFckp6VWZ3PQo9L1hFKwotLS0t
LUVORCBQR1AgU0lHTkFUVVJFLS0tLS0KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fCndpbi1wdi1kZXZlbCBtYWlsaW5nIGxpc3QKd2luLXB2LWRldmVsQGxp
c3RzLnhlbnByb2plY3Qub3JnCmh0dHA6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9jZ2ktYmluL21h
aWxtYW4vbGlzdGluZm8vd2luLXB2LWRldmVs

From win-pv-devel-bounces@lists.xenproject.org Fri Apr 10 03:00:11 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 10 Apr 2015 03:00:11 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YgPAx-0002wl-RZ; Fri, 10 Apr 2015 03:00:11 +0000
Received: from mail6.bemta14.messagelabs.com ([193.109.254.103])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <omeg@invisiblethingslab.com>) id 1YgPAw-0002wF-Ck
	for win-pv-devel@lists.xenproject.org; Fri, 10 Apr 2015 03:00:10 +0000
Received: from [193.109.254.147] by server-12.bemta-14.messagelabs.com id
	74/D7-24420-9BC37255; Fri, 10 Apr 2015 03:00:09 +0000
X-Env-Sender: omeg@invisiblethingslab.com
X-Msg-Ref: server-9.tower-27.messagelabs.com!1428634807!16829619!1
X-Originating-IP: [66.111.4.28]
X-SpamReason: No, hits=0.5 required=7.0 tests=BODY_RANDOM_LONG
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 3029 invoked from network); 10 Apr 2015 03:00:08 -0000
Received: from out4-smtp.messagingengine.com (HELO
	out4-smtp.messagingengine.com) (66.111.4.28)
	by server-9.tower-27.messagelabs.com with DHE-RSA-AES256-SHA encrypted
	SMTP; 10 Apr 2015 03:00:08 -0000
Received: from compute2.internal (compute2.nyi.internal [10.202.2.42])
	by mailout.nyi.internal (Postfix) with ESMTP id 036A1204BE
	for <win-pv-devel@lists.xenproject.org>;
	Thu,  9 Apr 2015 23:00:02 -0400 (EDT)
Received: from frontend2 ([10.202.2.161])
	by compute2.internal (MEProxy); Thu, 09 Apr 2015 23:00:07 -0400
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=
	invisiblethingslab.com; h=content-transfer-encoding:content-type
	:date:from:in-reply-to:message-id:mime-version:references
	:subject:to:x-sasl-enc:x-sasl-enc; s=mesmtp; bh=SEkpUvOamJqmD4fp
	JfUmoi9GUVI=; b=om9BtMUxW1TBtxmBktxzcy3Vpklk4KCM+szuUhy6IyzHOXT5
	qCARxIrjetFU6l6mBdbIxHQSPiDCn6KzVjYYeA4rnIzVpiuYfaAH+bQdPmGzKyHR
	W5XGH2zu/JKXZUaVEJFeMl1d9+12nWq/rAHWc7UCIl/7tCI6oovpOm9H+Rk=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=
	messagingengine.com; h=content-transfer-encoding:content-type
	:date:from:in-reply-to:message-id:mime-version:references
	:subject:to:x-sasl-enc:x-sasl-enc; s=smtpout; bh=SEkpUvOamJqmD4f
	pJfUmoi9GUVI=; b=lTcXCV636k4qHSWm2BRlePqQj+lj+xsCnhIbDtPyO0RkJSb
	ihoxvYHi/Lg9v0TH+sDrRGeCUWz5/8pR5kcLNjaI64t/IfEpl53C7LjiRwl6LnFJ
	nudgqs2Gwp6C+UI9bd6j/pd9Z59hD7Diq/7pYd7ZZ9TQBSUMv3W4Ujw1hNRQ=
X-Sasl-enc: J9Ungq65ZZ92ynj8gt58fD4bueBnRAPbzLcnM9kwi4Dz 1428634806
Received: from [192.168.0.3] (unknown [89.67.247.126])
	by mail.messagingengine.com (Postfix) with ESMTPA id 202FE680245;
	Thu,  9 Apr 2015 23:00:05 -0400 (EDT)
Message-ID: <55273CB5.5020609@invisiblethingslab.com>
Date: Fri, 10 Apr 2015 05:00:05 +0200
From: =?UTF-8?B?UmFmYcWCIFdvamR5xYJh?= <omeg@invisiblethingslab.com>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
	rv:31.0) Gecko/20100101 Thunderbird/31.6.0
MIME-Version: 1.0
To: Paul Durrant <Paul.Durrant@citrix.com>, 
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
References: <54FF50FF.3070304@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD02583F14E@AMSPEX01CL01.citrite.net>	<5501BBEF.20309@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD025840336@AMSPEX01CL01.citrite.net>	<5501C789.6030202@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD025840578@AMSPEX01CL01.citrite.net>	<5501F14F.7090105@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD025840FC6@AMSPEX01CL01.citrite.net>	<5502E5CF.4030804@invisiblethingslab.com>	<551A35C6.8080600@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD02585D2E9@AMSPEX01CL01.citrite.net>	<551A9150.9080705@invisiblethingslab.com>	<9AAE0902D5BC7E449B7C8E4E778ABCD02585D6DA@AMSPEX01CL01.citrite.net>
	<552479D3.2040007@invisiblethingslab.com>
In-Reply-To: <552479D3.2040007@invisiblethingslab.com>
Content-Length:10432
Subject: Re: [win-pv-devel] Porting libvchan to use the Windows PV Drivers
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

LS0tLS1CRUdJTiBQR1AgU0lHTkVEIE1FU1NBR0UtLS0tLQpIYXNoOiBTSEExCgpPbiAyMDE1LTA0
LTA4IDAyOjQ0LCBSYWZhxYIgV29qZHnFgmEgd3JvdGU6Cj4gT24gMjAxNS0wMy0zMSAxNDo1OSwg
UGF1bCBEdXJyYW50IHdyb3RlOgo+Pj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0gRnJvbTog
UmFmYcWCIFdvamR5xYJhIAo+Pj4gW21haWx0bzpvbWVnQGludmlzaWJsZXRoaW5nc2xhYi5jb21d
IFNlbnQ6IDMxIE1hcmNoIDIwMTUgMTM6MjIKPj4+ICBUbzogUGF1bCBEdXJyYW50OyB3aW4tcHYt
ZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcgU3ViamVjdDoKPj4+IFJlOiBbd2luLXB2LWRldmVs
XSBQb3J0aW5nIGxpYnZjaGFuIHRvIHVzZSB0aGUgV2luZG93cyBQVgo+Pj4gRHJpdmVycwo+Pj4g
Cj4+IE9uIDIwMTUtMDMtMzEgMTE6NTQsIFBhdWwgRHVycmFudCB3cm90ZToKPj4+Pj4+IC0tLS0t
T3JpZ2luYWwgTWVzc2FnZS0tLS0tIEZyb206IFJhZmHFgiBXb2pkecWCYSAKPj4+Pj4+IFttYWls
dG86b21lZ0BpbnZpc2libGV0aGluZ3NsYWIuY29tXSBTZW50OiAzMSBNYXJjaCAyMDE1IAo+Pj4+
Pj4gMDY6NTEgVG86IFBhdWwgRHVycmFudDsKPj4+Pj4+IHdpbi1wdi1kZXZlbEBsaXN0cy54ZW5w
cm9qZWN0Lm9yZyBTdWJqZWN0OiBSZToKPj4+Pj4+IFt3aW4tcHYtZGV2ZWxdIFBvcnRpbmcgbGli
dmNoYW4gdG8gdXNlIHRoZSBXaW5kb3dzIFBWCj4+Pj4+PiBEcml2ZXJzCj4+Pj4+PiAKPj4+Pj4g
QWZ0ZXIgc29tZSB0aG91Z2h0IEkndmUgZGVjaWRlZCB0byBpbXBsZW1lbnQgdGhlIG1pc3Npbmcg
Cj4+Pj4+IHBpZWNlcyBpbiB0aGUgR1BMUFYgZHJpdmVycyBmaXJzdCwgbW9zdGx5IHRvIG5vdCBk
byBtYW55IAo+Pj4+PiB0aGluZ3MgYXQgb25jZSAobGlrZSBwb3J0aW5nIG91ciBXaW5kb3dzIHRv
b2xzIHRvIHVzZSB0aGUKPj4+Pj4gbmV3IGRyaXZlcnMsIGNoYW5naW5nIG91ciBidWlsZCBwcm9j
ZXNzIGV0YykuIEknbGwKPj4+Pj4gZGVmaW5pdGVseSB0ZXN0IHRoZSBuZXcgZHJpdmVycyBvbmNl
IFF1YmVzIHIzIGJlY29tZXMgbW9yZQo+Pj4+PiBzdGFibGUuCj4+Pj4+IAo+Pj4+PiAKPj4+Pj4+
IE9rLCBmYWlyIGVub3VnaC4KPj4+Pj4gCj4+Pj4+IEkgaGF2ZSBzb21lIHF1ZXN0aW9ucyB0aG91
Z2gsIG1vc3RseSBvbiB0aGUgdG9waWMgb2YgWGVuJ3MgCj4+Pj4+IGdyYW50IG1hcHBpbmcgYW5k
IG1lbW9yeSBoeXBlcmNhbGxzLiBBcyBJIHdyb3RlIGJlZm9yZSwgSSdtCj4+Pj4+IGEgbmV3Y29t
ZXIgdG8gWGVuIEFQSSBvbiB0aGlzIGxldmVsIGFuZCB0byBtZSB0aGUgZXhpc3RpbmcgCj4+Pj4+
IGRvY3VtZW50YXRpb24gc2VlbXMgcHJldHR5IGltcGVuZXRyYWJsZS4gVGhlIG92ZXJhbGwKPj4+
Pj4gcGljdHVyZSBpcyBtb3N0bHkgY2xlYXIsIGJ1dCBtYW55IGltcG9ydGFudCBkZXRhaWxzIHNl
ZW0KPj4+Pj4gbWlzc2luZy4KPj4+Pj4gCj4+Pj4+IExldCdzIHRha2UgdGhlIEdOVFRBQk9QX21h
cF9ncmFudF9yZWYgY2FsbC4gSW4gdGhlIGhlYWRlcgo+Pj4+PiB3ZSBzZWU6Cj4+Pj4+IAo+Pj4+
PiBJZiBHTlRNQVBfaG9zdF9tYXAgaXMgc3BlY2lmaWVkIHRoZW4gYSBtYXBwaW5nIHdpbGwgYmUK
Pj4+Pj4gYWRkZWQgYXQgKiBlaXRoZXIgYSBob3N0IHZpcnR1YWwgYWRkcmVzcyBpbiB0aGUgY3Vy
cmVudAo+Pj4+PiBhZGRyZXNzIHNwYWNlLCBvciBhdCAqIGEgUFRFIGF0IHRoZSBzcGVjaWZpZWQg
bWFjaGluZQo+Pj4+PiBhZGRyZXNzLiAgVGhlIHR5cGUgb2YgbWFwcGluZyB0byAqIHBlcmZvcm0g
aXMgc2VsZWN0ZWQKPj4+Pj4gdGhyb3VnaCB0aGUgR05UTUFQX2NvbnRhaW5zX3B0ZSBmbGFnLCBh
bmQgdGhlICogYWRkcmVzcyBpcwo+Pj4+PiBzcGVjaWZpZWQgaW4gPGhvc3RfYWRkcj4uCj4+Pj4+
IAo+Pj4+PiBJJ20gcGFzc2luZyBHTlRNQVBfaG9zdF9tYXAgZmxhZywgYnV0IHdoYXQgdHlwZSBv
ZiBhZGRyZXNzIAo+Pj4+PiBzaG91bGQgYmUgcGFzc2VkIGZvciB0aGUgbWFwcGVkIHBhZ2U/IFRo
ZSBzZWN0aW9uIGFib3ZlCj4+Pj4+IHNheXMgIm1hcHBpbmcgd2lsbCBiZSBhZGRlZCBhdCBlaXRo
ZXIgYSBob3N0IHZpcnR1YWwKPj4+Pj4gYWRkcmVzcy4uLiIgYnV0IEkgZG91YnQgYSBWQSBpcyB3
YW50ZWQsIGJlY2F1c2UgSSdkIG5lZWQgdG8KPj4+Pj4gYWxsb2NhdGUgc29tZSBrZXJuZWwgbWVt
b3J5IHRvIHBhc3MgYSBWQSB0byB0aGlzIGNhbGwsIGFuZAo+Pj4+PiBhbGxvY2F0aW9uIG1lYW5z
IG1hcHBpbmcgaW4gaXRzZWxmLiBTaG91bGQgdGhpcyBiZSBhCj4+Pj4+IHBoeXNpY2FsIGFkZHJl
c3M/IEEgUEZOPyBTb21ldGhpbmcgZWxzZSBlbnRpcmVseT8KPj4+Pj4gCj4+Pj4+IAo+Pj4+Pj4g
SHlwZXJjYWxscyBvbiBIVk0gZ3Vlc3RzIHVzdWFsbHkgZGVhbCBpbiBHRk5zLiBUaGVyZSdzIAo+
Pj4+Pj4gYmFzaWNhbGx5IG5vIHdheSBmb3IgYW4gSFZNIGd1ZXN0IHRvIGdldCBob2xkIG9mIE1G
TiAKPj4+Pj4+IHZhbHVlcy4gUFYgZ3Vlc3RzIE9UT0ggZGVhbCBpbiBNRk5zLgo+Pj4+PiAKPj4+
Pj4gQWZ0ZXIgcmVhZGluZyBzb21lIExpbnV4IGNvZGUgdGhhdCB1c2VzIHRoaXMgY2FsbCBJIHNh
dwo+Pj4+PiB0aGF0IGl0ICJhbGxvY2F0ZWQiIHRoZSBhZGRyZXNzIGZvciB0aGUgbWFwcGVkIHBh
Z2UgdmlhCj4+Pj4+IHRoZSBiYWxsb29uIGRyaXZlci4gT24gV2luZG93cyB0aGlzIG1lYW5zIGdl
dHRpbmcgYSBwYWdlCj4+Pj4+IGZyb20gWGVuIHZpYSBYRU5NRU1faW5jcmVhc2VfcmVzZXJ2YXRp
b24gYXMgZmFyIGFzIEkga25vdy4KPj4+Pj4gCj4+Pj4+PiBVbmxlc3MgeW91ciB0b29sc3RhY2sg
aXMgYWxsb2NhdGluZyBleHRyYSBtZW1vcnkgdGhhdCdzIAo+Pj4+Pj4gbm90IGFscmVhZHkgaW4g
dGhlIGd1ZXN0IFAyTSB0aGVuIHRoYXQncyBnb2luZyB0byBmYWlsLgo+Pj4+Pj4gSSB0aGluayB3
aGF0IHlvdSBwcm9iYWJseSB3YW50IHRvIGRvIGlzIGVpdGhlciBmaW5kIGEKPj4+Pj4+ICdob2xl
JyAoaS5lLiBHRk5zIG5vdCBwb3B1bGF0ZWQgd2l0aCBSQU0pIHN1Y2ggYXMgdGhlIFhlbgo+Pj4+
Pj4gUGxhdGZvcm0gUENJIGRldmljZSdzIEJBUiBzcGFjZSwgb3IgY3JlYXRlIGEgaG9sZSB1c2lu
ZyAKPj4+Pj4+IGRlY3JlYXNlX3Jlc2VydmF0aW9uLiBFaXRoZXIgd2F5LCB5b3UnbGwgaGF2ZSBh
IEdGTiBpbgo+Pj4+Pj4geW91ciBoYW5kLgo+IAo+PiBJIHNlZSB0aGF0IGN1cnJlbnRseSB0aGUg
ZnVuY3Rpb24gdGhhdCBtYXBzIHRoZSBncmFudCB0YWJsZQo+PiBpdHNlbGYgY3JlYXRlcyBzdWNo
ICJob2xlcyIgd2l0aCBYRU5NRU1fZGVjcmVhc2VfcmVzZXJ2YXRpb24uCj4gCj4+PiBZZWFoLCBJ
IHVzZWQgdG8gZG8gdGhhdCB0b28gYnV0IHRoZXNlIGRheXMgSSBqdXN0IHB1dCBhIHNpbXBsZSAK
Pj4+IHBhZ2UgYWxsb2NhdG9yIG9uIHRvcCBvZiB0aGUgUENJIEJBUiBzcGFjZS4gR29vZCB0aGF0
IHlvdSBoYXZlIAo+Pj4gc29tZSBjb2RlIHRvIGNvcHknbidwYXN0ZSB0aG91Z2ggOi0pCj4gCj4+
Pj4+IAo+Pj4+PiBCdXQgdGhlbiBhZ2FpbjogWEVOTUVNX2luY3JlYXNlX3Jlc2VydmF0aW9uIHJl
dHVybnMgYSBNRk4KPj4+Pj4gb2YgdGhlIGFsbG9jYXRlZCBwYWdlLiBXaGF0IGdvb2QgaXMgdGhp
cyBmb3IgdGhlIGFib3ZlCj4+Pj4+IHB1cnBvc2U/IElmIEkgdW5kZXJzdGFuZCBjb3JyZWN0bHks
IGEgSFZNIGRvZXNuJ3Qga25vdyByZWFsCj4+Pj4+IE1GTnMuIFNob3VsZCBJIHRyYW5zbGF0ZSBz
dWNoIE1GTiBpbnRvIGEgR01GTi9HUEZOIGFuZCB0aGVuCj4+Pj4+IHBhc3MgaXQgdG8gR05UVEFC
T1BfbWFwX2dyYW50X3JlZiBhcyB0aGUgYWRkcmVzcz8gSWYgc28sCj4+Pj4+IGhvdyB0byBwZXJm
b3JtIHN1Y2ggdHJhbnNsYXRpb24/Cj4+Pj4+IAo+Pj4+PiBJIGV4cGVyaW1lbnRlZCB3aXRoIHNv
bWUgWEVOTUVNIGh5cGVyY2FsbHMuIAo+Pj4+PiBYRU5NRU1fbWFjaHBoeXNfbWFwcGluZyAicmV0
dXJucyB0aGUgbG9jYXRpb24gaW4gdmlydHVhbCAKPj4+Pj4gYWRkcmVzcyBzcGFjZSBvZiB0aGUg
bWFjaGluZV90b19waHlzIG1hcHBpbmcgdGFibGUiLCBidXQKPj4+Pj4gdGhlIHN0cnVjdHVyZSBh
bmQgbWVhbmluZyBvZiBzdWNoIHRhYmxlIGlzIG5vdCBleHBsYWluZWQuCj4+Pj4+IEkgYXNzdW1l
IGl0IHRyYW5zbGF0ZXMgcmVhbCBNRk5zIGludG8gR01GTnMgaW4gc29tZSB3YXkuCj4+Pj4+IFRo
ZSBjYWxsIHN1Y2NlZWRlcyB3aXRoIGZvbGxvd2luZyBvdXRwdXQgdmFsdWVzOgo+Pj4+PiAKPj4+
Pj4gdl9zdGFydCAgMHhmZmZmODAwMGAwMDAwMDAwMCB2X2VuZCAgICAweGZmZmY4MDQwYDAwMDAw
MDAwIAo+Pj4+PiBtYXhfbWZuIDB4MDAwMDAwMDdgZmZmZmZmZmYKPj4+Pj4gCj4+Pj4+IC4uLmJ1
dCB0aGF0IFZBIHJhbmdlIGFwcGVhcnMgdG8gYmUgbm90IGFjY2Vzc2libGUvbm90IAo+Pj4+PiBt
YXBwZWQuCj4+Pj4+IAo+Pj4+PiBYRU5NRU1fbWFjaHBoeXNfbWZuX2xpc3QgY2FsbCBhbHNvIHdv
cmtlZCBhbmQgcmV0dXJuZWQgYQo+Pj4+PiBsaXN0IG9mIDkgdmFsdWVzIG9uIG15IHRlc3QgSFZN
IChXaW43IHg2NCB3aXRoIDFHQiBvZiBSQU0pLgo+Pj4+PiBJJ20gbm90IHJlYWxseSBzdXJlIHdo
YXQgdG8gbWFrZSBvZiB0aGVtLCB0aGUgZGVzY3JpcHRpb24KPj4+Pj4gaXNuJ3QgdmVyeSBoZWxw
ZnVsIGZvciBzb21lb25lIHdobyBkb2Vzbid0IGFscmVhZHkga25vdyBob3cKPj4+Pj4gdGhpcyB3
b3JrczogIlJldHVybnMgYSBsaXN0IG9mIE1GTiBiYXNlcyBvZiAyTUIgZXh0ZW50cwo+Pj4+PiBj
b21wcmlzaW5nIHRoZSBtYWNoaW5lX3RvX3BoeXMgbWFwcGluZyB0YWJsZSIuCj4+Pj4+IAo+Pj4+
PiBNYXliZSBJJ20gb3ZlcmNvbXBsaWNhdGluZyB0aGluZ3MgYW5kIG92ZXJsb29rZWQgc29tZXRo
aW5nCj4+Pj4+ICBvYnZpb3VzLiBJJ2Qgd2VsY29tZSBhbnkgY29ycmVjdGlvbnMgYW5kL29yIGhp
bnRzIDopCj4+Pj4+IAo+Pj4+Pj4gWWVhaCwgSSB0aGluayB5b3UncmUgb3ZlcmNvbXBsaWNhdGlu
ZyB0aGluZ3MgOi0pIFNlZSAKPj4+Pj4+IGFib3ZlLgo+Pj4+PiAKPj4+Pj4+IFBhdWwKPiAKPj4g
VGhhbmsgeW91LCBJJ2xsIHRpbmtlciBzb21lIG1vcmUgYW5kIHJlcG9ydCB3aGF0IGNvbWVzIG91
dCBvZgo+PiBpdC4KPiAKPiAKPj4+IFRoYW5rcywKPiAKPj4+IFBhdWwKPiAKPiBBbHJpZ2h0LCBh
ZnRlciBhIGxvdCBvZiB0aW5rZXJpbmcgSSBmaW5hbGx5IGdvdCBpdCB0byB3b3JrLiBJdAo+IHR1
cm5zIG91dCB0aGF0IHRoZSBHTlRUQUJPUF9tYXBfZ3JhbnRfcmVmIGh5cGVyY2FsbCBhY3R1YWxs
eSB0YWtlcwo+IGEgcGh5c2ljYWwgZ3Vlc3QgYWRkcmVzcywgbm90IGEgUEZOLgo+IAo+IEkgd2Fz
IGNvbmZ1c2VkIGF0IGZpcnN0IGJlY2F1c2UgdGhlIGNhbGwgc3VjY2VlZGVkIHdoZW4gSSBwYXNz
ZWQgYQo+IFBGTiBpbi4gSSBvZiBjb3Vyc2UgZGlkbid0IHNlZSB0aGUgbWFwcGVkIGNvbnRlbnQg
YXQgbXkgYWRkcmVzcywKPiBiZWNhdXNlIHRoZSBQRk4gd2FzIHRyZWF0ZWQgYXMgYSBwaHlzaWNh
bCBhZGRyZXNzLiBUaGlzIGNhdXNlZAo+IHNlZW1pbmdseSByYW5kb20gbWVtb3J5IGNvcnJ1cHRp
b24gQlNPRHMgdGhhdCB3ZXJlIHRyaWNreSB0bwo+IGRpYWdub3NlLgo+IAo+IEZpbmFsbHkgSSBw
dXQgc29tZSB1bmlxdWUgc3RyaW5nIGludG8gdGhlIHNoYXJlZCBwYWdlIGFuZCBzZWFyY2hlZAo+
IGZvciBpdCBpbiB0aGUgbWFwcGluZyBndWVzdCdzIG1lbW9yeS4gV2luRGJnJ3MgIXNlYXJjaCBm
b3VuZCB0aGUKPiBwYXR0ZXJuIGF0IGEgUEZOIHRoYXQgd2FzIG15IGh5cGVyY2FsbCdzIGFyZ3Vt
ZW50IHNoaWZ0ZWQgcmlnaHQgMTIKPiBiaXRzLiBTdXJlIGVub3VnaCwgdGhhdCdzIGEgcGh5c2lj
YWwgYWRkcmVzcy10by1QRk4gY29udmVyc2lvbi4KPiAKPiBOb3cgdGhhdCBpdCB3b3JrcyBJIG5l
ZWQgdG8gYWRkIHByb3BlciBpb2N0bCBpbnRlcmZhY2UgZm9yCj4gKHVuKW1hcHBpbmcgcGFnZXMu
IFNpbmNlIEknbSBhbGxvY2F0aW5nIGtlcm5lbCBtZW1vcnkgKG9yIFBDSQo+IGFkZHJlc3MgcmFu
Z2UpIEknbGwgbmVlZCB0byBlbnN1cmUgaXQncyBmcmVlZCBpbiBhbGwgY2FzZXMgKHRoZQo+IGRy
ZWFkZWQgRHVwbGljYXRlSGFuZGxlIHByb2JsZW0pLiBUaGUgZXhpc3RpbmcgY29kZSBmb3IgZ3Jh
bnRpbmcKPiBwYWdlcyBkZWFscyB3aXRoIGl0IGJ5IHBlbmRpbmcgdGhlIGlvY3RsIGZvcmV2ZXIg
YW5kIHVzaW5nIGFub3RoZXIKPiBpb2N0bCB0byBhY3R1YWxseSByZXR1cm4gZGF0YSB0byB0aGUg
Y2FsbGVyLiBUaGlzIGlzIHByZXR0eSBhd2t3YXJkCj4gYnV0IEkgZG9uJ3Qga25vdyBhIGJldHRl
ciB3YXkgdG8gZW5zdXJlIGV2ZXJ5dGhpbmcgaXMgT0sgaW4gY2FzZQo+IHRoZSBvcmlnaW5hbCB1
c2VyIG1vZGUgY2FsbGVyIGRpZXMgd2hpbGUgdGhlcmUncyBhIGR1cGxpY2F0ZWQKPiBoYW5kbGUg
b3BlbiBzb21ld2hlcmUgKGFwcGFyZW50bHkga2lsbGluZyBhIHByb2Nlc3MgdGhhdCBjb250YWlu
cwo+IGxvY2tlZCBwYWdlcyBjYXVzZXMgYSBCU09EKS4gQW55IHRob3VnaHQgcz8KCkZvciBub3cg
SSB3ZW50IHdpdGggUHNTZXRDcmVhdGVQcm9jZXNzTm90aWZ5Um91dGluZSBmb3IgY2xlYW51cApw
dXJwb3NlcyBhbmQgaXQgc2VlbXMgdG8gd29yayB3ZWxsLiBUaGUgY2FsbGJhY2sgcnVucyBhdCBQ
QVNTSVZFX0xFVkVMCmFuZCBpbiB0aGUgY29udGV4dCBvZiB0aGUgcHJvY2VzcyBiZWluZyBkZXN0
cm95ZWQgc28gdGhhdCBhbGxvd3MgZm9yCmVhc3kgY2xlYW51cCBvZiBsb2NrZWQgbWVtb3J5IGFs
bG9jYXRpb25zIGFuZCB0aGUgbGlrZS4KClRoZSBncmFudCBtYXBwaW5nIGl0c2VsZiBmaW5hbGx5
IHdvcmtzIHdlbGwgYWZ0ZXIgaXJvbmluZyBvdXQgc29tZQptb3JlIGlzc3Vlcy4gTm93IEkgbmVl
ZCB0byBpbXBsZW1lbnQgdGhlIGxpYnhjIGZ1bmN0aW9ucyB1c2VkIGJ5IG91cgpsaWJ4ZW52Y2hh
biAobGlrZSB4Y19nbnR0YWJfbWFwX2dyYW50X3JlZl9ub3RpZnkpLiBBZnRlciB0aGF0J3MKd29y
a2luZyBpdCBzaG91bGQgYmUgcmVsYXRpdmVseSBlYXN5IHRvIHBvcnQgdGhlIGNvZGUgdG8gdGhl
IG5ldwpwdmRyaXZlcnMgYXMgd2VsbCA6KQotIC0tIApSYWZhxYIgV29qZHnFgmEKUXViZXMgVG9v
bHMgZm9yIFdpbmRvd3MgZGV2ZWxvcGVyCi0tLS0tQkVHSU4gUEdQIFNJR05BVFVSRS0tLS0tCgpp
UUVjQkFFQkFnQUdCUUpWSnp5MUFBb0pFSVdpOXJCMkdyVzdPL2NILzA0TncyT2x0Y0RzVUFqT0Vm
MDhCejVDCkozVzNmS3E4TVFRSzhodGZQU3VpNlR0Mjc2TFRIcHFJdnk1MHd4LzJQYzg0VmRmTUU0
Y25xM2Y4dk5XeFVBMDAKRGUvUUhqUkhENVkwWnV1OXRISE1oU0RNSW5rQTkyblI5SjR3eC9BZlkv
ZUpjdSs5V1JFUWxJekI5MFlJcU4yNwo1WlNhT3hVQW1GOTE5dTB3aFdUL2xmVFh3V25xNkVJbCtN
ejRZRVhPaGRZRFlBa0NRdWVMTjZ6MnFoOUk0WGpoCmpaRnJkWnFQNXIxR1ByOTRHZ0k1NElYbFlp
L2hiOGtrd3dLVXRUR2JHYTFIaFo1K1FYcnVTMmhxdnRPclVCOWEKcURCQmVYeUxxdFA5Mkh2RC8x
a2hPdUtZUDRyT0Q5STBvdm5WUDdSdHNCU3RESFU5RUxjUnpZVDdFckp6VWZ3PQo9L1hFKwotLS0t
LUVORCBQR1AgU0lHTkFUVVJFLS0tLS0KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fCndpbi1wdi1kZXZlbCBtYWlsaW5nIGxpc3QKd2luLXB2LWRldmVsQGxp
c3RzLnhlbnByb2plY3Qub3JnCmh0dHA6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9jZ2ktYmluL21h
aWxtYW4vbGlzdGluZm8vd2luLXB2LWRldmVs

From win-pv-devel-bounces@lists.xenproject.org Sat Apr 11 19:56:10 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sat, 11 Apr 2015 19:56:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Yh1Vi-0000sr-9M; Sat, 11 Apr 2015 19:56:10 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <wayne.gw@alibaba-inc.com>)
	id 1Ydpym-0002ak-3l; Fri, 03 Apr 2015 01:01:00 +0000
Received: from [85.158.139.211] by server-5.bemta-5.messagelabs.com id
	8E/18-02119-B46ED155; Fri, 03 Apr 2015 01:00:59 +0000
X-Env-Sender: wayne.gw@alibaba-inc.com
X-Msg-Ref: server-11.tower-206.messagelabs.com!1428022856!9484600!1
X-Originating-IP: [42.120.133.18]
X-SpamReason: No, hits=0.0 required=7.0 tests=HTML_MESSAGE, UNPARSEABLE_RELAY
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 17779 invoked from network); 3 Apr 2015 01:00:57 -0000
Received: from out4133-18.mail.aliyun.com (HELO out4133-18.mail.aliyun.com)
	(42.120.133.18) by server-11.tower-206.messagelabs.com with SMTP;
	3 Apr 2015 01:00:57 -0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=alibaba-inc.com; s=default; t=1428022855;
	h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type; 
	bh=tzxgHWGqEK4YgJIsxlmsxy0vlWUimjiaOyKu67gmV84=;
	b=fA/yY3OPUFj3RXBXVhtd6WDY5u2M0f+X75gy5ZpGwIoHkAJpIByLy/us1zY3DSV6wcgdOfVB1719w0g74I9uQXEXXyfZGfFBG3oOwN/vIUIuIPklqF875wN9WDwiZviWlevtrQmD5U0dtVsAL5Ot6IccViczoec4iRNwdnKxWqI=
X-Alimail-AntiSpam: AC=PASS; BC=-1|-1; BR=01201311R741e4;
	FP=0|-1|-1|-1|0|-1|-1|-1; HT=r41g03016;
	MF=wayne.gw@alibaba-inc.com; PH=DS; RN=3; RT=3; SR=0; 
Received: from MININTJOJHHD3(mailfrom:wayne.gw@alibaba-inc.com
	ip:42.120.74.163) by smtp.aliyun-inc.com(127.0.0.1);
	Fri, 03 Apr 2015 09:00:51 +0800
From: "=?GBK?B?uN/OsCjMq8bNKQ==?=" <wayne.gw@alibaba-inc.com>
To: <win-pv-devel@lists.xenproject.org>
References: <002101d06cea$37c50430$a74f0c90$@alibaba-inc.com>
	<87E8E591-1EB0-436F-9EB8-B47697B81AFE@gmail.com>
In-Reply-To: <87E8E591-1EB0-436F-9EB8-B47697B81AFE@gmail.com>
Date: Fri, 03 Apr 2015 09:00:51 +0800
Message-ID: <000401d06da9$a15112d0$e3f33870$@alibaba-inc.com>
MIME-Version: 1.0
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQGEseULV+QYJmT4FyuNzyhsYJh5qQKtDK7MnbyG50A=
Content-Language: zh-cn
X-Mailman-Approved-At: Sat, 11 Apr 2015 19:56:09 +0000
Cc: 'Lars Kurth' <lars.kurth.xen@gmail.com>,
	win-pv-devel-owner@lists.xenproject.org
Subject: [win-pv-devel] =?utf-8?b?562U5aSNOiBXYXluZSB3b3VsZCBsaWtlIGpvaW4g?=
 =?utf-8?q?in_this_team_and_make_some_contribution?=
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
Reply-To: =?GBK?B?uN/OsCjMq8bNKQ==?= <wayne.gw@alibaba-inc.com>
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============4190534701212812179=="
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

This is a multipart message in MIME format.

--===============4190534701212812179==
Content-Type: multipart/alternative;
	boundary="----=_NextPart_000_0005_01D06DEC.AF762790"
Content-Language: zh-cn

This is a multipart message in MIME format.

------=_NextPart_000_0005_01D06DEC.AF762790
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Hello guys,

=20

I used to worked at Intel, Microsoft, EMC and AMD, focus on storport =
storage driver, distributed File system and 10G Ethernet NDIS driver.

Also know basic thing on the Hyper-V VMBus.

=20

I would like join in this project team and make some contribution as a =
personal contributor.

=20

=20

Thank you so much for help me on this.

=20

=20

=E5=8F=91=E4=BB=B6=E4=BA=BA: Lars Kurth =
[mailto:lars.kurth.xen@gmail.com]=20
=E5=8F=91=E9=80=81=E6=97=B6=E9=97=B4: 2015=E5=B9=B44=E6=9C=882=E6=97=A5 =
17:09
=E6=94=B6=E4=BB=B6=E4=BA=BA: =E9=AB=98=E4=BC=9F(=E5=A4=AA=E4=BB=86)
=E6=8A=84=E9=80=81: win-pv-devel-owner@lists.xenproject.org
=E4=B8=BB=E9=A2=98: Re: Wayne would like join in this team and make some =
contribution

=20

Wayne,

can you resend your email to win-pv-devel@lists.xenproject.org instead =
of win-pv-devel-owner@lists.xenproject.org=20

To get started, check out =
http://wiki.xenproject.org/wiki/Category:Developers : in particular the =
documents under Basic Information and Contributor Training

Regards

Lars

=20

On 2 Apr 2015, at 03:10, =E9=AB=98=E4=BC=9F(=E5=A4=AA=E4=BB=86) =
<wayne.gw@alibaba-inc.com> wrote:

=20

Hello guys,

=20

I used to worked at Intel, Microsoft, EMC and AMD, focus on storport =
storage driver, distributed File system and 10G Ethernet NDIS driver.

Also know basic thing on the Hyper-V VMBus.

=20

I would like join in this project team and make some contribution as a =
personal contributor.

=20

=20

Thank you so much for help me on this.

=20


------=_NextPart_000_0005_01D06DEC.AF762790
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 14 (filtered =
medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:=E5=AE=8B=E4=BD=93;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:=E5=AE=8B=E4=BD=93;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:"\@=E5=AE=8B=E4=BD=93";
	panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:=E5=AE=8B=E4=BD=93;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DZH-CN link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal =
style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>Hello =
guys,<o:p></o:p></span></p><p class=3DMsoNormal =
style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>&nbsp;<o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'text-align:justify'><span =
lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>I used to =
worked at Intel, Microsoft, EMC and AMD, focus on storport storage =
driver, distributed File system and 10G Ethernet NDIS =
driver.<o:p></o:p></span></p><p class=3DMsoNormal =
style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>Also know =
basic thing on the Hyper-V VMBus.<o:p></o:p></span></p><p =
class=3DMsoNormal style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>&nbsp;<o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'text-align:justify'><span =
lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>I would =
like join in this project team and make some contribution as a personal =
contributor.<o:p></o:p></span></p><p class=3DMsoNormal =
style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>&nbsp;<o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'text-align:justify'><span =
lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>&nbsp;<o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'text-align:justify'><span =
lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>Thank you =
so much for help me on this.<o:p></o:p></span></p><p =
class=3DMsoNormal><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm =
0cm 0cm'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt'>=E5=8F=91=E4=BB=B6=E4=BA=BA<span =
lang=3DEN-US>:</span></span></b><span lang=3DEN-US =
style=3D'font-size:10.0pt'> Lars Kurth [mailto:lars.kurth.xen@gmail.com] =
<br></span><b><span =
style=3D'font-size:10.0pt'>=E5=8F=91=E9=80=81=E6=97=B6=E9=97=B4<span =
lang=3DEN-US>:</span></span></b><span lang=3DEN-US =
style=3D'font-size:10.0pt'> 2015</span><span =
style=3D'font-size:10.0pt'>=E5=B9=B4<span =
lang=3DEN-US>4</span>=E6=9C=88<span lang=3DEN-US>2</span>=E6=97=A5<span =
lang=3DEN-US> 17:09<br></span><b>=E6=94=B6=E4=BB=B6=E4=BA=BA<span =
lang=3DEN-US>:</span></b><span lang=3DEN-US> =
</span>=E9=AB=98=E4=BC=9F<span =
lang=3DEN-US>(</span>=E5=A4=AA=E4=BB=86<span =
lang=3DEN-US>)<br></span><b>=E6=8A=84=E9=80=81<span =
lang=3DEN-US>:</span></b><span lang=3DEN-US> =
win-pv-devel-owner@lists.xenproject.org<br></span><b>=E4=B8=BB=E9=A2=98<s=
pan lang=3DEN-US>:</span></b><span lang=3DEN-US> Re: Wayne would like =
join in this team and make some =
contribution<o:p></o:p></span></span></p></div></div><p =
class=3DMsoNormal><span lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span lang=3DEN-US>Wayne,<o:p></o:p></span></p><div><p =
class=3DMsoNormal><span lang=3DEN-US>can you resend your email =
to&nbsp;<a =
href=3D"mailto:win-pv-devel@lists.xenproject.org">win-pv-devel@lists.xenp=
roject.org</a>&nbsp;instead of&nbsp;<a =
href=3D"mailto:win-pv-devel-owner@lists.xenproject.org">win-pv-devel-owne=
r@lists.xenproject.org</a>&nbsp;<o:p></o:p></span></p></div><div><p =
class=3DMsoNormal><span lang=3DEN-US>To get started, check out&nbsp;<a =
href=3D"http://wiki.xenproject.org/wiki/Category:Developers">http://wiki.=
xenproject.org/wiki/Category:Developers</a>&nbsp;: in particular the =
documents under Basic Information and Contributor =
Training<o:p></o:p></span></p></div><div><p class=3DMsoNormal><span =
lang=3DEN-US>Regards<o:p></o:p></span></p></div><div><p =
class=3DMsoNormal><span =
lang=3DEN-US>Lars<o:p></o:p></span></p></div><div><p =
class=3DMsoNormal><span =
lang=3DEN-US><o:p>&nbsp;</o:p></span></p><div><blockquote =
style=3D'margin-top:5.0pt;margin-bottom:5.0pt'><div><p =
class=3DMsoNormal><span lang=3DEN-US>On 2 Apr 2015, at 03:10, =
</span>=E9=AB=98=E4=BC=9F<span =
lang=3DEN-US>(</span>=E5=A4=AA=E4=BB=86<span lang=3DEN-US>) &lt;<a =
href=3D"mailto:wayne.gw@alibaba-inc.com">wayne.gw@alibaba-inc.com</a>&gt;=
 wrote:<o:p></o:p></span></p></div><p class=3DMsoNormal><span =
lang=3DEN-US><o:p>&nbsp;</o:p></span></p><div><p class=3DMsoNormal =
style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>Hello =
guys,<o:p></o:p></span></p><p class=3DMsoNormal =
style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>&nbsp;<o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'text-align:justify'><span =
lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>I used to =
worked at Intel, Microsoft, EMC and AMD, focus on storport storage =
driver, distributed File system and 10G Ethernet NDIS =
driver.<o:p></o:p></span></p><p class=3DMsoNormal =
style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>Also know =
basic thing on the Hyper-V VMBus.<o:p></o:p></span></p><p =
class=3DMsoNormal style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>&nbsp;<o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'text-align:justify'><span =
lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>I would =
like join in this project team and make some contribution as a personal =
contributor.<o:p></o:p></span></p><p class=3DMsoNormal =
style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>&nbsp;<o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'text-align:justify'><span =
lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>&nbsp;<o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'text-align:justify'><span =
lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>Thank you =
so much for help me on =
this.<o:p></o:p></span></p></div></blockquote></div><p =
class=3DMsoNormal><span =
lang=3DEN-US><o:p>&nbsp;</o:p></span></p></div></div></body></html>
------=_NextPart_000_0005_01D06DEC.AF762790--



--===============4190534701212812179==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
--===============4190534701212812179==--



From win-pv-devel-bounces@lists.xenproject.org Sat Apr 11 19:56:10 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sat, 11 Apr 2015 19:56:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Yh1Vi-0000sr-9M; Sat, 11 Apr 2015 19:56:10 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <wayne.gw@alibaba-inc.com>)
	id 1Ydpym-0002ak-3l; Fri, 03 Apr 2015 01:01:00 +0000
Received: from [85.158.139.211] by server-5.bemta-5.messagelabs.com id
	8E/18-02119-B46ED155; Fri, 03 Apr 2015 01:00:59 +0000
X-Env-Sender: wayne.gw@alibaba-inc.com
X-Msg-Ref: server-11.tower-206.messagelabs.com!1428022856!9484600!1
X-Originating-IP: [42.120.133.18]
X-SpamReason: No, hits=0.0 required=7.0 tests=HTML_MESSAGE, UNPARSEABLE_RELAY
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 17779 invoked from network); 3 Apr 2015 01:00:57 -0000
Received: from out4133-18.mail.aliyun.com (HELO out4133-18.mail.aliyun.com)
	(42.120.133.18) by server-11.tower-206.messagelabs.com with SMTP;
	3 Apr 2015 01:00:57 -0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=alibaba-inc.com; s=default; t=1428022855;
	h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type; 
	bh=tzxgHWGqEK4YgJIsxlmsxy0vlWUimjiaOyKu67gmV84=;
	b=fA/yY3OPUFj3RXBXVhtd6WDY5u2M0f+X75gy5ZpGwIoHkAJpIByLy/us1zY3DSV6wcgdOfVB1719w0g74I9uQXEXXyfZGfFBG3oOwN/vIUIuIPklqF875wN9WDwiZviWlevtrQmD5U0dtVsAL5Ot6IccViczoec4iRNwdnKxWqI=
X-Alimail-AntiSpam: AC=PASS; BC=-1|-1; BR=01201311R741e4;
	FP=0|-1|-1|-1|0|-1|-1|-1; HT=r41g03016;
	MF=wayne.gw@alibaba-inc.com; PH=DS; RN=3; RT=3; SR=0; 
Received: from MININTJOJHHD3(mailfrom:wayne.gw@alibaba-inc.com
	ip:42.120.74.163) by smtp.aliyun-inc.com(127.0.0.1);
	Fri, 03 Apr 2015 09:00:51 +0800
From: "=?GBK?B?uN/OsCjMq8bNKQ==?=" <wayne.gw@alibaba-inc.com>
To: <win-pv-devel@lists.xenproject.org>
References: <002101d06cea$37c50430$a74f0c90$@alibaba-inc.com>
	<87E8E591-1EB0-436F-9EB8-B47697B81AFE@gmail.com>
In-Reply-To: <87E8E591-1EB0-436F-9EB8-B47697B81AFE@gmail.com>
Date: Fri, 03 Apr 2015 09:00:51 +0800
Message-ID: <000401d06da9$a15112d0$e3f33870$@alibaba-inc.com>
MIME-Version: 1.0
X-Mailer: Microsoft Outlook 14.0
Thread-Index: AQGEseULV+QYJmT4FyuNzyhsYJh5qQKtDK7MnbyG50A=
Content-Language: zh-cn
X-Mailman-Approved-At: Sat, 11 Apr 2015 19:56:09 +0000
Cc: 'Lars Kurth' <lars.kurth.xen@gmail.com>,
	win-pv-devel-owner@lists.xenproject.org
Subject: [win-pv-devel] =?utf-8?b?562U5aSNOiBXYXluZSB3b3VsZCBsaWtlIGpvaW4g?=
 =?utf-8?q?in_this_team_and_make_some_contribution?=
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
Reply-To: =?GBK?B?uN/OsCjMq8bNKQ==?= <wayne.gw@alibaba-inc.com>
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============4190534701212812179=="
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

This is a multipart message in MIME format.

--===============4190534701212812179==
Content-Type: multipart/alternative;
	boundary="----=_NextPart_000_0005_01D06DEC.AF762790"
Content-Language: zh-cn

This is a multipart message in MIME format.

------=_NextPart_000_0005_01D06DEC.AF762790
Content-Type: text/plain;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

Hello guys,

=20

I used to worked at Intel, Microsoft, EMC and AMD, focus on storport =
storage driver, distributed File system and 10G Ethernet NDIS driver.

Also know basic thing on the Hyper-V VMBus.

=20

I would like join in this project team and make some contribution as a =
personal contributor.

=20

=20

Thank you so much for help me on this.

=20

=20

=E5=8F=91=E4=BB=B6=E4=BA=BA: Lars Kurth =
[mailto:lars.kurth.xen@gmail.com]=20
=E5=8F=91=E9=80=81=E6=97=B6=E9=97=B4: 2015=E5=B9=B44=E6=9C=882=E6=97=A5 =
17:09
=E6=94=B6=E4=BB=B6=E4=BA=BA: =E9=AB=98=E4=BC=9F(=E5=A4=AA=E4=BB=86)
=E6=8A=84=E9=80=81: win-pv-devel-owner@lists.xenproject.org
=E4=B8=BB=E9=A2=98: Re: Wayne would like join in this team and make some =
contribution

=20

Wayne,

can you resend your email to win-pv-devel@lists.xenproject.org instead =
of win-pv-devel-owner@lists.xenproject.org=20

To get started, check out =
http://wiki.xenproject.org/wiki/Category:Developers : in particular the =
documents under Basic Information and Contributor Training

Regards

Lars

=20

On 2 Apr 2015, at 03:10, =E9=AB=98=E4=BC=9F(=E5=A4=AA=E4=BB=86) =
<wayne.gw@alibaba-inc.com> wrote:

=20

Hello guys,

=20

I used to worked at Intel, Microsoft, EMC and AMD, focus on storport =
storage driver, distributed File system and 10G Ethernet NDIS driver.

Also know basic thing on the Hyper-V VMBus.

=20

I would like join in this project team and make some contribution as a =
personal contributor.

=20

=20

Thank you so much for help me on this.

=20


------=_NextPart_000_0005_01D06DEC.AF762790
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" =
xmlns:o=3D"urn:schemas-microsoft-com:office:office" =
xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" =
xmlns=3D"http://www.w3.org/TR/REC-html40"><head><meta =
http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8"><meta =
name=3DGenerator content=3D"Microsoft Word 14 (filtered =
medium)"><style><!--
/* Font Definitions */
@font-face
	{font-family:=E5=AE=8B=E4=BD=93;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:=E5=AE=8B=E4=BD=93;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:"\@=E5=AE=8B=E4=BD=93";
	panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0cm;
	margin-bottom:.0001pt;
	font-size:12.0pt;
	font-family:=E5=AE=8B=E4=BD=93;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:blue;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:purple;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal-reply;
	font-family:"Calibri","sans-serif";
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:612.0pt 792.0pt;
	margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DZH-CN link=3Dblue =
vlink=3Dpurple><div class=3DWordSection1><p class=3DMsoNormal =
style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>Hello =
guys,<o:p></o:p></span></p><p class=3DMsoNormal =
style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>&nbsp;<o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'text-align:justify'><span =
lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>I used to =
worked at Intel, Microsoft, EMC and AMD, focus on storport storage =
driver, distributed File system and 10G Ethernet NDIS =
driver.<o:p></o:p></span></p><p class=3DMsoNormal =
style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>Also know =
basic thing on the Hyper-V VMBus.<o:p></o:p></span></p><p =
class=3DMsoNormal style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>&nbsp;<o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'text-align:justify'><span =
lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>I would =
like join in this project team and make some contribution as a personal =
contributor.<o:p></o:p></span></p><p class=3DMsoNormal =
style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>&nbsp;<o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'text-align:justify'><span =
lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>&nbsp;<o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'text-align:justify'><span =
lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>Thank you =
so much for help me on this.<o:p></o:p></span></p><p =
class=3DMsoNormal><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><p class=3DMsoNormal><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif";color:#1F497=
D'><o:p>&nbsp;</o:p></span></p><div><div =
style=3D'border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm =
0cm 0cm'><p class=3DMsoNormal><b><span =
style=3D'font-size:10.0pt'>=E5=8F=91=E4=BB=B6=E4=BA=BA<span =
lang=3DEN-US>:</span></span></b><span lang=3DEN-US =
style=3D'font-size:10.0pt'> Lars Kurth [mailto:lars.kurth.xen@gmail.com] =
<br></span><b><span =
style=3D'font-size:10.0pt'>=E5=8F=91=E9=80=81=E6=97=B6=E9=97=B4<span =
lang=3DEN-US>:</span></span></b><span lang=3DEN-US =
style=3D'font-size:10.0pt'> 2015</span><span =
style=3D'font-size:10.0pt'>=E5=B9=B4<span =
lang=3DEN-US>4</span>=E6=9C=88<span lang=3DEN-US>2</span>=E6=97=A5<span =
lang=3DEN-US> 17:09<br></span><b>=E6=94=B6=E4=BB=B6=E4=BA=BA<span =
lang=3DEN-US>:</span></b><span lang=3DEN-US> =
</span>=E9=AB=98=E4=BC=9F<span =
lang=3DEN-US>(</span>=E5=A4=AA=E4=BB=86<span =
lang=3DEN-US>)<br></span><b>=E6=8A=84=E9=80=81<span =
lang=3DEN-US>:</span></b><span lang=3DEN-US> =
win-pv-devel-owner@lists.xenproject.org<br></span><b>=E4=B8=BB=E9=A2=98<s=
pan lang=3DEN-US>:</span></b><span lang=3DEN-US> Re: Wayne would like =
join in this team and make some =
contribution<o:p></o:p></span></span></p></div></div><p =
class=3DMsoNormal><span lang=3DEN-US><o:p>&nbsp;</o:p></span></p><p =
class=3DMsoNormal><span lang=3DEN-US>Wayne,<o:p></o:p></span></p><div><p =
class=3DMsoNormal><span lang=3DEN-US>can you resend your email =
to&nbsp;<a =
href=3D"mailto:win-pv-devel@lists.xenproject.org">win-pv-devel@lists.xenp=
roject.org</a>&nbsp;instead of&nbsp;<a =
href=3D"mailto:win-pv-devel-owner@lists.xenproject.org">win-pv-devel-owne=
r@lists.xenproject.org</a>&nbsp;<o:p></o:p></span></p></div><div><p =
class=3DMsoNormal><span lang=3DEN-US>To get started, check out&nbsp;<a =
href=3D"http://wiki.xenproject.org/wiki/Category:Developers">http://wiki.=
xenproject.org/wiki/Category:Developers</a>&nbsp;: in particular the =
documents under Basic Information and Contributor =
Training<o:p></o:p></span></p></div><div><p class=3DMsoNormal><span =
lang=3DEN-US>Regards<o:p></o:p></span></p></div><div><p =
class=3DMsoNormal><span =
lang=3DEN-US>Lars<o:p></o:p></span></p></div><div><p =
class=3DMsoNormal><span =
lang=3DEN-US><o:p>&nbsp;</o:p></span></p><div><blockquote =
style=3D'margin-top:5.0pt;margin-bottom:5.0pt'><div><p =
class=3DMsoNormal><span lang=3DEN-US>On 2 Apr 2015, at 03:10, =
</span>=E9=AB=98=E4=BC=9F<span =
lang=3DEN-US>(</span>=E5=A4=AA=E4=BB=86<span lang=3DEN-US>) &lt;<a =
href=3D"mailto:wayne.gw@alibaba-inc.com">wayne.gw@alibaba-inc.com</a>&gt;=
 wrote:<o:p></o:p></span></p></div><p class=3DMsoNormal><span =
lang=3DEN-US><o:p>&nbsp;</o:p></span></p><div><p class=3DMsoNormal =
style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>Hello =
guys,<o:p></o:p></span></p><p class=3DMsoNormal =
style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>&nbsp;<o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'text-align:justify'><span =
lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>I used to =
worked at Intel, Microsoft, EMC and AMD, focus on storport storage =
driver, distributed File system and 10G Ethernet NDIS =
driver.<o:p></o:p></span></p><p class=3DMsoNormal =
style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>Also know =
basic thing on the Hyper-V VMBus.<o:p></o:p></span></p><p =
class=3DMsoNormal style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>&nbsp;<o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'text-align:justify'><span =
lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>I would =
like join in this project team and make some contribution as a personal =
contributor.<o:p></o:p></span></p><p class=3DMsoNormal =
style=3D'text-align:justify'><span lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>&nbsp;<o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'text-align:justify'><span =
lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>&nbsp;<o:p>=
</o:p></span></p><p class=3DMsoNormal style=3D'text-align:justify'><span =
lang=3DEN-US =
style=3D'font-size:10.5pt;font-family:"Calibri","sans-serif"'>Thank you =
so much for help me on =
this.<o:p></o:p></span></p></div></blockquote></div><p =
class=3DMsoNormal><span =
lang=3DEN-US><o:p>&nbsp;</o:p></span></p></div></div></body></html>
------=_NextPart_000_0005_01D06DEC.AF762790--



--===============4190534701212812179==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
--===============4190534701212812179==--



From win-pv-devel-bounces@lists.xenproject.org Mon Apr 13 08:48:10 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 13 Apr 2015 08:48:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Yha2M-0004ps-D0; Mon, 13 Apr 2015 08:48:10 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <Paul.Durrant@citrix.com>) id 1Yha2K-0004pc-EC
	for win-pv-devel@lists.xenproject.org; Mon, 13 Apr 2015 08:48:08 +0000
Received: from [85.158.139.211] by server-5.bemta-5.messagelabs.com id
	28/9B-02119-7C28B255; Mon, 13 Apr 2015 08:48:07 +0000
X-Env-Sender: Paul.Durrant@citrix.com
X-Msg-Ref: server-12.tower-206.messagelabs.com!1428914885!15400079!1
X-Originating-IP: [185.25.65.24]
X-SpamReason: No, hits=0.5 required=7.0 tests=BODY_RANDOM_LONG,
	received_headers: No Received headers
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 6635 invoked from network); 13 Apr 2015 08:48:05 -0000
Received: from smtp.eu.citrix.com (HELO SMTP.EU.CITRIX.COM) (185.25.65.24)
	by server-12.tower-206.messagelabs.com with RC4-SHA encrypted SMTP;
	13 Apr 2015 08:48:05 -0000
X-IronPort-AV: E=Sophos;i="5.11,568,1422921600"; d="scan'208";a="33488381"
From: Paul Durrant <Paul.Durrant@citrix.com>
To: =?utf-8?B?UmFmYcWCIFdvamR5xYJh?= <omeg@invisiblethingslab.com>,
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
Thread-Topic: [win-pv-devel] Porting libvchan to use the Windows PV Drivers
Thread-Index: AQHQW28a3XmHyTKwcEWapCOzUcYchJ0XicZggAFueICAABaqUP//9yuAgAARPoCAACCOgIAA7Q1wgAA2aoCAG7mbAIAAYSCggAAMAACAACuggIALpCKAgANKq4CABTk+QA==
Date: Mon, 13 Apr 2015 08:48:04 +0000
Message-ID: <9AAE0902D5BC7E449B7C8E4E778ABCD025867ED2@AMSPEX01CL01.citrite.net>
References: <54FF50FF.3070304@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02583F14E@AMSPEX01CL01.citrite.net>
	<5501BBEF.20309@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD025840336@AMSPEX01CL01.citrite.net>
	<5501C789.6030202@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD025840578@AMSPEX01CL01.citrite.net>
	<5501F14F.7090105@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD025840FC6@AMSPEX01CL01.citrite.net>
	<5502E5CF.4030804@invisiblethingslab.com>
	<551A35C6.8080600@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585D2E9@AMSPEX01CL01.citrite.net>
	<551A9150.9080705@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585D6DA@AMSPEX01CL01.citrite.net>
	<552479D3.2040007@invisiblethingslab.com>
	<55273CB5.5020609@invisiblethingslab.com>
In-Reply-To: <55273CB5.5020609@invisiblethingslab.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
MIME-Version: 1.0
X-DLP: AMS1
Subject: Re: [win-pv-devel] Porting libvchan to use the Windows PV Drivers
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBSYWZhxYIgV29qZHnFgmEgW21h
aWx0bzpvbWVnQGludmlzaWJsZXRoaW5nc2xhYi5jb21dDQo+IFNlbnQ6IDEwIEFwcmlsIDIwMTUg
MDQ6MDANCj4gVG86IFBhdWwgRHVycmFudDsgd2luLXB2LWRldmVsQGxpc3RzLnhlbnByb2plY3Qu
b3JnDQo+IFN1YmplY3Q6IFJlOiBbd2luLXB2LWRldmVsXSBQb3J0aW5nIGxpYnZjaGFuIHRvIHVz
ZSB0aGUgV2luZG93cyBQViBEcml2ZXJzDQo+IA0KPiAtLS0tLUJFR0lOIFBHUCBTSUdORUQgTUVT
U0FHRS0tLS0tDQo+IEhhc2g6IFNIQTENCj4gDQo+IE9uIDIwMTUtMDQtMDggMDI6NDQsIFJhZmHF
giBXb2pkecWCYSB3cm90ZToNCj4gPiBPbiAyMDE1LTAzLTMxIDE0OjU5LCBQYXVsIER1cnJhbnQg
d3JvdGU6DQo+ID4+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLSBGcm9tOiBSYWZhxYIgV29q
ZHnFgmENCj4gPj4+IFttYWlsdG86b21lZ0BpbnZpc2libGV0aGluZ3NsYWIuY29tXSBTZW50OiAz
MSBNYXJjaCAyMDE1IDEzOjIyDQo+ID4+PiAgVG86IFBhdWwgRHVycmFudDsgd2luLXB2LWRldmVs
QGxpc3RzLnhlbnByb2plY3Qub3JnIFN1YmplY3Q6DQo+ID4+PiBSZTogW3dpbi1wdi1kZXZlbF0g
UG9ydGluZyBsaWJ2Y2hhbiB0byB1c2UgdGhlIFdpbmRvd3MgUFYNCj4gPj4+IERyaXZlcnMNCj4g
Pj4+DQo+ID4+IE9uIDIwMTUtMDMtMzEgMTE6NTQsIFBhdWwgRHVycmFudCB3cm90ZToNCj4gPj4+
Pj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tIEZyb206IFJhZmHFgiBXb2pkecWCYQ0KPiA+
Pj4+Pj4gW21haWx0bzpvbWVnQGludmlzaWJsZXRoaW5nc2xhYi5jb21dIFNlbnQ6IDMxIE1hcmNo
IDIwMTUNCj4gPj4+Pj4+IDA2OjUxIFRvOiBQYXVsIER1cnJhbnQ7DQo+ID4+Pj4+PiB3aW4tcHYt
ZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcgU3ViamVjdDogUmU6DQo+ID4+Pj4+PiBbd2luLXB2
LWRldmVsXSBQb3J0aW5nIGxpYnZjaGFuIHRvIHVzZSB0aGUgV2luZG93cyBQVg0KPiA+Pj4+Pj4g
RHJpdmVycw0KPiA+Pj4+Pj4NCj4gPj4+Pj4gQWZ0ZXIgc29tZSB0aG91Z2h0IEkndmUgZGVjaWRl
ZCB0byBpbXBsZW1lbnQgdGhlIG1pc3NpbmcNCj4gPj4+Pj4gcGllY2VzIGluIHRoZSBHUExQViBk
cml2ZXJzIGZpcnN0LCBtb3N0bHkgdG8gbm90IGRvIG1hbnkNCj4gPj4+Pj4gdGhpbmdzIGF0IG9u
Y2UgKGxpa2UgcG9ydGluZyBvdXIgV2luZG93cyB0b29scyB0byB1c2UgdGhlDQo+ID4+Pj4+IG5l
dyBkcml2ZXJzLCBjaGFuZ2luZyBvdXIgYnVpbGQgcHJvY2VzcyBldGMpLiBJJ2xsDQo+ID4+Pj4+
IGRlZmluaXRlbHkgdGVzdCB0aGUgbmV3IGRyaXZlcnMgb25jZSBRdWJlcyByMyBiZWNvbWVzIG1v
cmUNCj4gPj4+Pj4gc3RhYmxlLg0KPiA+Pj4+Pg0KPiA+Pj4+Pg0KPiA+Pj4+Pj4gT2ssIGZhaXIg
ZW5vdWdoLg0KPiA+Pj4+Pg0KPiA+Pj4+PiBJIGhhdmUgc29tZSBxdWVzdGlvbnMgdGhvdWdoLCBt
b3N0bHkgb24gdGhlIHRvcGljIG9mIFhlbidzDQo+ID4+Pj4+IGdyYW50IG1hcHBpbmcgYW5kIG1l
bW9yeSBoeXBlcmNhbGxzLiBBcyBJIHdyb3RlIGJlZm9yZSwgSSdtDQo+ID4+Pj4+IGEgbmV3Y29t
ZXIgdG8gWGVuIEFQSSBvbiB0aGlzIGxldmVsIGFuZCB0byBtZSB0aGUgZXhpc3RpbmcNCj4gPj4+
Pj4gZG9jdW1lbnRhdGlvbiBzZWVtcyBwcmV0dHkgaW1wZW5ldHJhYmxlLiBUaGUgb3ZlcmFsbA0K
PiA+Pj4+PiBwaWN0dXJlIGlzIG1vc3RseSBjbGVhciwgYnV0IG1hbnkgaW1wb3J0YW50IGRldGFp
bHMgc2VlbQ0KPiA+Pj4+PiBtaXNzaW5nLg0KPiA+Pj4+Pg0KPiA+Pj4+PiBMZXQncyB0YWtlIHRo
ZSBHTlRUQUJPUF9tYXBfZ3JhbnRfcmVmIGNhbGwuIEluIHRoZSBoZWFkZXINCj4gPj4+Pj4gd2Ug
c2VlOg0KPiA+Pj4+Pg0KPiA+Pj4+PiBJZiBHTlRNQVBfaG9zdF9tYXAgaXMgc3BlY2lmaWVkIHRo
ZW4gYSBtYXBwaW5nIHdpbGwgYmUNCj4gPj4+Pj4gYWRkZWQgYXQgKiBlaXRoZXIgYSBob3N0IHZp
cnR1YWwgYWRkcmVzcyBpbiB0aGUgY3VycmVudA0KPiA+Pj4+PiBhZGRyZXNzIHNwYWNlLCBvciBh
dCAqIGEgUFRFIGF0IHRoZSBzcGVjaWZpZWQgbWFjaGluZQ0KPiA+Pj4+PiBhZGRyZXNzLiAgVGhl
IHR5cGUgb2YgbWFwcGluZyB0byAqIHBlcmZvcm0gaXMgc2VsZWN0ZWQNCj4gPj4+Pj4gdGhyb3Vn
aCB0aGUgR05UTUFQX2NvbnRhaW5zX3B0ZSBmbGFnLCBhbmQgdGhlICogYWRkcmVzcyBpcw0KPiA+
Pj4+PiBzcGVjaWZpZWQgaW4gPGhvc3RfYWRkcj4uDQo+ID4+Pj4+DQo+ID4+Pj4+IEknbSBwYXNz
aW5nIEdOVE1BUF9ob3N0X21hcCBmbGFnLCBidXQgd2hhdCB0eXBlIG9mIGFkZHJlc3MNCj4gPj4+
Pj4gc2hvdWxkIGJlIHBhc3NlZCBmb3IgdGhlIG1hcHBlZCBwYWdlPyBUaGUgc2VjdGlvbiBhYm92
ZQ0KPiA+Pj4+PiBzYXlzICJtYXBwaW5nIHdpbGwgYmUgYWRkZWQgYXQgZWl0aGVyIGEgaG9zdCB2
aXJ0dWFsDQo+ID4+Pj4+IGFkZHJlc3MuLi4iIGJ1dCBJIGRvdWJ0IGEgVkEgaXMgd2FudGVkLCBi
ZWNhdXNlIEknZCBuZWVkIHRvDQo+ID4+Pj4+IGFsbG9jYXRlIHNvbWUga2VybmVsIG1lbW9yeSB0
byBwYXNzIGEgVkEgdG8gdGhpcyBjYWxsLCBhbmQNCj4gPj4+Pj4gYWxsb2NhdGlvbiBtZWFucyBt
YXBwaW5nIGluIGl0c2VsZi4gU2hvdWxkIHRoaXMgYmUgYQ0KPiA+Pj4+PiBwaHlzaWNhbCBhZGRy
ZXNzPyBBIFBGTj8gU29tZXRoaW5nIGVsc2UgZW50aXJlbHk/DQo+ID4+Pj4+DQo+ID4+Pj4+DQo+
ID4+Pj4+PiBIeXBlcmNhbGxzIG9uIEhWTSBndWVzdHMgdXN1YWxseSBkZWFsIGluIEdGTnMuIFRo
ZXJlJ3MNCj4gPj4+Pj4+IGJhc2ljYWxseSBubyB3YXkgZm9yIGFuIEhWTSBndWVzdCB0byBnZXQg
aG9sZCBvZiBNRk4NCj4gPj4+Pj4+IHZhbHVlcy4gUFYgZ3Vlc3RzIE9UT0ggZGVhbCBpbiBNRk5z
Lg0KPiA+Pj4+Pg0KPiA+Pj4+PiBBZnRlciByZWFkaW5nIHNvbWUgTGludXggY29kZSB0aGF0IHVz
ZXMgdGhpcyBjYWxsIEkgc2F3DQo+ID4+Pj4+IHRoYXQgaXQgImFsbG9jYXRlZCIgdGhlIGFkZHJl
c3MgZm9yIHRoZSBtYXBwZWQgcGFnZSB2aWENCj4gPj4+Pj4gdGhlIGJhbGxvb24gZHJpdmVyLiBP
biBXaW5kb3dzIHRoaXMgbWVhbnMgZ2V0dGluZyBhIHBhZ2UNCj4gPj4+Pj4gZnJvbSBYZW4gdmlh
IFhFTk1FTV9pbmNyZWFzZV9yZXNlcnZhdGlvbiBhcyBmYXIgYXMgSSBrbm93Lg0KPiA+Pj4+Pg0K
PiA+Pj4+Pj4gVW5sZXNzIHlvdXIgdG9vbHN0YWNrIGlzIGFsbG9jYXRpbmcgZXh0cmEgbWVtb3J5
IHRoYXQncw0KPiA+Pj4+Pj4gbm90IGFscmVhZHkgaW4gdGhlIGd1ZXN0IFAyTSB0aGVuIHRoYXQn
cyBnb2luZyB0byBmYWlsLg0KPiA+Pj4+Pj4gSSB0aGluayB3aGF0IHlvdSBwcm9iYWJseSB3YW50
IHRvIGRvIGlzIGVpdGhlciBmaW5kIGENCj4gPj4+Pj4+ICdob2xlJyAoaS5lLiBHRk5zIG5vdCBw
b3B1bGF0ZWQgd2l0aCBSQU0pIHN1Y2ggYXMgdGhlIFhlbg0KPiA+Pj4+Pj4gUGxhdGZvcm0gUENJ
IGRldmljZSdzIEJBUiBzcGFjZSwgb3IgY3JlYXRlIGEgaG9sZSB1c2luZw0KPiA+Pj4+Pj4gZGVj
cmVhc2VfcmVzZXJ2YXRpb24uIEVpdGhlciB3YXksIHlvdSdsbCBoYXZlIGEgR0ZOIGluDQo+ID4+
Pj4+PiB5b3VyIGhhbmQuDQo+ID4NCj4gPj4gSSBzZWUgdGhhdCBjdXJyZW50bHkgdGhlIGZ1bmN0
aW9uIHRoYXQgbWFwcyB0aGUgZ3JhbnQgdGFibGUNCj4gPj4gaXRzZWxmIGNyZWF0ZXMgc3VjaCAi
aG9sZXMiIHdpdGggWEVOTUVNX2RlY3JlYXNlX3Jlc2VydmF0aW9uLg0KPiA+DQo+ID4+PiBZZWFo
LCBJIHVzZWQgdG8gZG8gdGhhdCB0b28gYnV0IHRoZXNlIGRheXMgSSBqdXN0IHB1dCBhIHNpbXBs
ZQ0KPiA+Pj4gcGFnZSBhbGxvY2F0b3Igb24gdG9wIG9mIHRoZSBQQ0kgQkFSIHNwYWNlLiBHb29k
IHRoYXQgeW91IGhhdmUNCj4gPj4+IHNvbWUgY29kZSB0byBjb3B5J24ncGFzdGUgdGhvdWdoIDot
KQ0KPiA+DQo+ID4+Pj4+DQo+ID4+Pj4+IEJ1dCB0aGVuIGFnYWluOiBYRU5NRU1faW5jcmVhc2Vf
cmVzZXJ2YXRpb24gcmV0dXJucyBhIE1GTg0KPiA+Pj4+PiBvZiB0aGUgYWxsb2NhdGVkIHBhZ2Uu
IFdoYXQgZ29vZCBpcyB0aGlzIGZvciB0aGUgYWJvdmUNCj4gPj4+Pj4gcHVycG9zZT8gSWYgSSB1
bmRlcnN0YW5kIGNvcnJlY3RseSwgYSBIVk0gZG9lc24ndCBrbm93IHJlYWwNCj4gPj4+Pj4gTUZO
cy4gU2hvdWxkIEkgdHJhbnNsYXRlIHN1Y2ggTUZOIGludG8gYSBHTUZOL0dQRk4gYW5kIHRoZW4N
Cj4gPj4+Pj4gcGFzcyBpdCB0byBHTlRUQUJPUF9tYXBfZ3JhbnRfcmVmIGFzIHRoZSBhZGRyZXNz
PyBJZiBzbywNCj4gPj4+Pj4gaG93IHRvIHBlcmZvcm0gc3VjaCB0cmFuc2xhdGlvbj8NCj4gPj4+
Pj4NCj4gPj4+Pj4gSSBleHBlcmltZW50ZWQgd2l0aCBzb21lIFhFTk1FTSBoeXBlcmNhbGxzLg0K
PiA+Pj4+PiBYRU5NRU1fbWFjaHBoeXNfbWFwcGluZyAicmV0dXJucyB0aGUgbG9jYXRpb24gaW4g
dmlydHVhbA0KPiA+Pj4+PiBhZGRyZXNzIHNwYWNlIG9mIHRoZSBtYWNoaW5lX3RvX3BoeXMgbWFw
cGluZyB0YWJsZSIsIGJ1dA0KPiA+Pj4+PiB0aGUgc3RydWN0dXJlIGFuZCBtZWFuaW5nIG9mIHN1
Y2ggdGFibGUgaXMgbm90IGV4cGxhaW5lZC4NCj4gPj4+Pj4gSSBhc3N1bWUgaXQgdHJhbnNsYXRl
cyByZWFsIE1GTnMgaW50byBHTUZOcyBpbiBzb21lIHdheS4NCj4gPj4+Pj4gVGhlIGNhbGwgc3Vj
Y2VlZGVzIHdpdGggZm9sbG93aW5nIG91dHB1dCB2YWx1ZXM6DQo+ID4+Pj4+DQo+ID4+Pj4+IHZf
c3RhcnQgIDB4ZmZmZjgwMDBgMDAwMDAwMDAgdl9lbmQgICAgMHhmZmZmODA0MGAwMDAwMDAwMA0K
PiA+Pj4+PiBtYXhfbWZuIDB4MDAwMDAwMDdgZmZmZmZmZmYNCj4gPj4+Pj4NCj4gPj4+Pj4gLi4u
YnV0IHRoYXQgVkEgcmFuZ2UgYXBwZWFycyB0byBiZSBub3QgYWNjZXNzaWJsZS9ub3QNCj4gPj4+
Pj4gbWFwcGVkLg0KPiA+Pj4+Pg0KPiA+Pj4+PiBYRU5NRU1fbWFjaHBoeXNfbWZuX2xpc3QgY2Fs
bCBhbHNvIHdvcmtlZCBhbmQgcmV0dXJuZWQgYQ0KPiA+Pj4+PiBsaXN0IG9mIDkgdmFsdWVzIG9u
IG15IHRlc3QgSFZNIChXaW43IHg2NCB3aXRoIDFHQiBvZiBSQU0pLg0KPiA+Pj4+PiBJJ20gbm90
IHJlYWxseSBzdXJlIHdoYXQgdG8gbWFrZSBvZiB0aGVtLCB0aGUgZGVzY3JpcHRpb24NCj4gPj4+
Pj4gaXNuJ3QgdmVyeSBoZWxwZnVsIGZvciBzb21lb25lIHdobyBkb2Vzbid0IGFscmVhZHkga25v
dyBob3cNCj4gPj4+Pj4gdGhpcyB3b3JrczogIlJldHVybnMgYSBsaXN0IG9mIE1GTiBiYXNlcyBv
ZiAyTUIgZXh0ZW50cw0KPiA+Pj4+PiBjb21wcmlzaW5nIHRoZSBtYWNoaW5lX3RvX3BoeXMgbWFw
cGluZyB0YWJsZSIuDQo+ID4+Pj4+DQo+ID4+Pj4+IE1heWJlIEknbSBvdmVyY29tcGxpY2F0aW5n
IHRoaW5ncyBhbmQgb3Zlcmxvb2tlZCBzb21ldGhpbmcNCj4gPj4+Pj4gIG9idmlvdXMuIEknZCB3
ZWxjb21lIGFueSBjb3JyZWN0aW9ucyBhbmQvb3IgaGludHMgOikNCj4gPj4+Pj4NCj4gPj4+Pj4+
IFllYWgsIEkgdGhpbmsgeW91J3JlIG92ZXJjb21wbGljYXRpbmcgdGhpbmdzIDotKSBTZWUNCj4g
Pj4+Pj4+IGFib3ZlLg0KPiA+Pj4+Pg0KPiA+Pj4+Pj4gUGF1bA0KPiA+DQo+ID4+IFRoYW5rIHlv
dSwgSSdsbCB0aW5rZXIgc29tZSBtb3JlIGFuZCByZXBvcnQgd2hhdCBjb21lcyBvdXQgb2YNCj4g
Pj4gaXQuDQo+ID4NCj4gPg0KPiA+Pj4gVGhhbmtzLA0KPiA+DQo+ID4+PiBQYXVsDQo+ID4NCj4g
PiBBbHJpZ2h0LCBhZnRlciBhIGxvdCBvZiB0aW5rZXJpbmcgSSBmaW5hbGx5IGdvdCBpdCB0byB3
b3JrLiBJdA0KPiA+IHR1cm5zIG91dCB0aGF0IHRoZSBHTlRUQUJPUF9tYXBfZ3JhbnRfcmVmIGh5
cGVyY2FsbCBhY3R1YWxseSB0YWtlcw0KPiA+IGEgcGh5c2ljYWwgZ3Vlc3QgYWRkcmVzcywgbm90
IGEgUEZOLg0KPiA+DQo+ID4gSSB3YXMgY29uZnVzZWQgYXQgZmlyc3QgYmVjYXVzZSB0aGUgY2Fs
bCBzdWNjZWVkZWQgd2hlbiBJIHBhc3NlZCBhDQo+ID4gUEZOIGluLiBJIG9mIGNvdXJzZSBkaWRu
J3Qgc2VlIHRoZSBtYXBwZWQgY29udGVudCBhdCBteSBhZGRyZXNzLA0KPiA+IGJlY2F1c2UgdGhl
IFBGTiB3YXMgdHJlYXRlZCBhcyBhIHBoeXNpY2FsIGFkZHJlc3MuIFRoaXMgY2F1c2VkDQo+ID4g
c2VlbWluZ2x5IHJhbmRvbSBtZW1vcnkgY29ycnVwdGlvbiBCU09EcyB0aGF0IHdlcmUgdHJpY2t5
IHRvDQo+ID4gZGlhZ25vc2UuDQo+ID4NCj4gPiBGaW5hbGx5IEkgcHV0IHNvbWUgdW5pcXVlIHN0
cmluZyBpbnRvIHRoZSBzaGFyZWQgcGFnZSBhbmQgc2VhcmNoZWQNCj4gPiBmb3IgaXQgaW4gdGhl
IG1hcHBpbmcgZ3Vlc3QncyBtZW1vcnkuIFdpbkRiZydzICFzZWFyY2ggZm91bmQgdGhlDQo+ID4g
cGF0dGVybiBhdCBhIFBGTiB0aGF0IHdhcyBteSBoeXBlcmNhbGwncyBhcmd1bWVudCBzaGlmdGVk
IHJpZ2h0IDEyDQo+ID4gYml0cy4gU3VyZSBlbm91Z2gsIHRoYXQncyBhIHBoeXNpY2FsIGFkZHJl
c3MtdG8tUEZOIGNvbnZlcnNpb24uDQo+ID4NCj4gPiBOb3cgdGhhdCBpdCB3b3JrcyBJIG5lZWQg
dG8gYWRkIHByb3BlciBpb2N0bCBpbnRlcmZhY2UgZm9yDQo+ID4gKHVuKW1hcHBpbmcgcGFnZXMu
IFNpbmNlIEknbSBhbGxvY2F0aW5nIGtlcm5lbCBtZW1vcnkgKG9yIFBDSQ0KPiA+IGFkZHJlc3Mg
cmFuZ2UpIEknbGwgbmVlZCB0byBlbnN1cmUgaXQncyBmcmVlZCBpbiBhbGwgY2FzZXMgKHRoZQ0K
PiA+IGRyZWFkZWQgRHVwbGljYXRlSGFuZGxlIHByb2JsZW0pLiBUaGUgZXhpc3RpbmcgY29kZSBm
b3IgZ3JhbnRpbmcNCj4gPiBwYWdlcyBkZWFscyB3aXRoIGl0IGJ5IHBlbmRpbmcgdGhlIGlvY3Rs
IGZvcmV2ZXIgYW5kIHVzaW5nIGFub3RoZXINCj4gPiBpb2N0bCB0byBhY3R1YWxseSByZXR1cm4g
ZGF0YSB0byB0aGUgY2FsbGVyLiBUaGlzIGlzIHByZXR0eSBhd2t3YXJkDQo+ID4gYnV0IEkgZG9u
J3Qga25vdyBhIGJldHRlciB3YXkgdG8gZW5zdXJlIGV2ZXJ5dGhpbmcgaXMgT0sgaW4gY2FzZQ0K
PiA+IHRoZSBvcmlnaW5hbCB1c2VyIG1vZGUgY2FsbGVyIGRpZXMgd2hpbGUgdGhlcmUncyBhIGR1
cGxpY2F0ZWQNCj4gPiBoYW5kbGUgb3BlbiBzb21ld2hlcmUgKGFwcGFyZW50bHkga2lsbGluZyBh
IHByb2Nlc3MgdGhhdCBjb250YWlucw0KPiA+IGxvY2tlZCBwYWdlcyBjYXVzZXMgYSBCU09EKS4g
QW55IHRob3VnaHQgcz8NCj4gDQo+IEZvciBub3cgSSB3ZW50IHdpdGggUHNTZXRDcmVhdGVQcm9j
ZXNzTm90aWZ5Um91dGluZSBmb3IgY2xlYW51cA0KPiBwdXJwb3NlcyBhbmQgaXQgc2VlbXMgdG8g
d29yayB3ZWxsLiBUaGUgY2FsbGJhY2sgcnVucyBhdCBQQVNTSVZFX0xFVkVMDQo+IGFuZCBpbiB0
aGUgY29udGV4dCBvZiB0aGUgcHJvY2VzcyBiZWluZyBkZXN0cm95ZWQgc28gdGhhdCBhbGxvd3Mg
Zm9yDQo+IGVhc3kgY2xlYW51cCBvZiBsb2NrZWQgbWVtb3J5IGFsbG9jYXRpb25zIGFuZCB0aGUg
bGlrZS4NCj4gDQoNClNvbWV0aGluZyBpbiB0aGUgYmFjayBvZiBteSBtaW5kIHF1ZXN0aW9ucyB3
aGV0aGVyIHRoYXQgd2lsbCB3b3JrLiBJIGhhdmUgYSBmZWVsaW5nIHRoYXQgdGhlIHByb2Nlc3Mg
bm90aWZ5IHJvdXRpbmUgZG9lcyBub3QgZ2V0IGNhbGxlZCB1bnRpbCB0aGUgcHJvY2VzcyBtZW1v
cnkgaGFzIGJlZW4gcmVsZWFzZWQsIGFuZCBhbGwgSVJQcyBjYW5jZWxsZWQuIElJUkMgdGhlIHBl
bmRlZCBJUlAgaXMgZ2VuZXJhbGx5IHRoZSB3YXkgbW9zdCBwZW9wbGUgZ28uDQoNCiAgUGF1bA0K
DQo+IFRoZSBncmFudCBtYXBwaW5nIGl0c2VsZiBmaW5hbGx5IHdvcmtzIHdlbGwgYWZ0ZXIgaXJv
bmluZyBvdXQgc29tZQ0KPiBtb3JlIGlzc3Vlcy4gTm93IEkgbmVlZCB0byBpbXBsZW1lbnQgdGhl
IGxpYnhjIGZ1bmN0aW9ucyB1c2VkIGJ5IG91cg0KPiBsaWJ4ZW52Y2hhbiAobGlrZSB4Y19nbnR0
YWJfbWFwX2dyYW50X3JlZl9ub3RpZnkpLiBBZnRlciB0aGF0J3MNCj4gd29ya2luZyBpdCBzaG91
bGQgYmUgcmVsYXRpdmVseSBlYXN5IHRvIHBvcnQgdGhlIGNvZGUgdG8gdGhlIG5ldw0KPiBwdmRy
aXZlcnMgYXMgd2VsbCA6KQ0KPiAtIC0tDQo+IFJhZmHFgiBXb2pkecWCYQ0KPiBRdWJlcyBUb29s
cyBmb3IgV2luZG93cyBkZXZlbG9wZXINCj4gLS0tLS1CRUdJTiBQR1AgU0lHTkFUVVJFLS0tLS0N
Cj4gDQo+IGlRRWNCQUVCQWdBR0JRSlZKenkxQUFvSkVJV2k5ckIyR3JXN08vY0gvMDROdzJPbHRj
RHNVQWpPRWYwOEJ6NQ0KPiBDDQo+IEozVzNmS3E4TVFRSzhodGZQU3VpNlR0Mjc2TFRIcHFJdnk1
MHd4LzJQYzg0VmRmTUU0Y25xM2Y4dk5XeFVBDQo+IDAwDQo+IERlL1FIalJIRDVZMFp1dTl0SEhN
aFNETUlua0E5Mm5SOUo0d3gvQWZZL2VKY3UrOVdSRVFsSXpCOTBZSXFODQo+IDI3DQo+IDVaU2FP
eFVBbUY5MTl1MHdoV1QvbGZUWHdXbnE2RUlsK016NFlFWE9oZFlEWUFrQ1F1ZUxONnoycWg5SQ0K
PiA0WGpoDQo+IGpaRnJkWnFQNXIxR1ByOTRHZ0k1NElYbFlpL2hiOGtrd3dLVXRUR2JHYTFIaFo1
K1FYcnVTMmhxdnRPclVCOWENCj4gcURCQmVYeUxxdFA5Mkh2RC8xa2hPdUtZUDRyT0Q5STBvdm5W
UDdSdHNCU3RESFU5RUxjUnpZVDdFckp6VWZ3DQo+ID0NCj4gPS9YRSsNCj4gLS0tLS1FTkQgUEdQ
IFNJR05BVFVSRS0tLS0tDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fXwp3aW4tcHYtZGV2ZWwgbWFpbGluZyBsaXN0Cndpbi1wdi1kZXZlbEBsaXN0cy54ZW5w
cm9qZWN0Lm9yZwpodHRwOi8vbGlzdHMueGVucHJvamVjdC5vcmcvY2dpLWJpbi9tYWlsbWFuL2xp
c3RpbmZvL3dpbi1wdi1kZXZlbA==

From win-pv-devel-bounces@lists.xenproject.org Mon Apr 13 08:48:10 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 13 Apr 2015 08:48:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Yha2M-0004ps-D0; Mon, 13 Apr 2015 08:48:10 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <Paul.Durrant@citrix.com>) id 1Yha2K-0004pc-EC
	for win-pv-devel@lists.xenproject.org; Mon, 13 Apr 2015 08:48:08 +0000
Received: from [85.158.139.211] by server-5.bemta-5.messagelabs.com id
	28/9B-02119-7C28B255; Mon, 13 Apr 2015 08:48:07 +0000
X-Env-Sender: Paul.Durrant@citrix.com
X-Msg-Ref: server-12.tower-206.messagelabs.com!1428914885!15400079!1
X-Originating-IP: [185.25.65.24]
X-SpamReason: No, hits=0.5 required=7.0 tests=BODY_RANDOM_LONG,
	received_headers: No Received headers
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 6635 invoked from network); 13 Apr 2015 08:48:05 -0000
Received: from smtp.eu.citrix.com (HELO SMTP.EU.CITRIX.COM) (185.25.65.24)
	by server-12.tower-206.messagelabs.com with RC4-SHA encrypted SMTP;
	13 Apr 2015 08:48:05 -0000
X-IronPort-AV: E=Sophos;i="5.11,568,1422921600"; d="scan'208";a="33488381"
From: Paul Durrant <Paul.Durrant@citrix.com>
To: =?utf-8?B?UmFmYcWCIFdvamR5xYJh?= <omeg@invisiblethingslab.com>,
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
Thread-Topic: [win-pv-devel] Porting libvchan to use the Windows PV Drivers
Thread-Index: AQHQW28a3XmHyTKwcEWapCOzUcYchJ0XicZggAFueICAABaqUP//9yuAgAARPoCAACCOgIAA7Q1wgAA2aoCAG7mbAIAAYSCggAAMAACAACuggIALpCKAgANKq4CABTk+QA==
Date: Mon, 13 Apr 2015 08:48:04 +0000
Message-ID: <9AAE0902D5BC7E449B7C8E4E778ABCD025867ED2@AMSPEX01CL01.citrite.net>
References: <54FF50FF.3070304@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02583F14E@AMSPEX01CL01.citrite.net>
	<5501BBEF.20309@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD025840336@AMSPEX01CL01.citrite.net>
	<5501C789.6030202@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD025840578@AMSPEX01CL01.citrite.net>
	<5501F14F.7090105@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD025840FC6@AMSPEX01CL01.citrite.net>
	<5502E5CF.4030804@invisiblethingslab.com>
	<551A35C6.8080600@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585D2E9@AMSPEX01CL01.citrite.net>
	<551A9150.9080705@invisiblethingslab.com>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585D6DA@AMSPEX01CL01.citrite.net>
	<552479D3.2040007@invisiblethingslab.com>
	<55273CB5.5020609@invisiblethingslab.com>
In-Reply-To: <55273CB5.5020609@invisiblethingslab.com>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
MIME-Version: 1.0
X-DLP: AMS1
Subject: Re: [win-pv-devel] Porting libvchan to use the Windows PV Drivers
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBSYWZhxYIgV29qZHnFgmEgW21h
aWx0bzpvbWVnQGludmlzaWJsZXRoaW5nc2xhYi5jb21dDQo+IFNlbnQ6IDEwIEFwcmlsIDIwMTUg
MDQ6MDANCj4gVG86IFBhdWwgRHVycmFudDsgd2luLXB2LWRldmVsQGxpc3RzLnhlbnByb2plY3Qu
b3JnDQo+IFN1YmplY3Q6IFJlOiBbd2luLXB2LWRldmVsXSBQb3J0aW5nIGxpYnZjaGFuIHRvIHVz
ZSB0aGUgV2luZG93cyBQViBEcml2ZXJzDQo+IA0KPiAtLS0tLUJFR0lOIFBHUCBTSUdORUQgTUVT
U0FHRS0tLS0tDQo+IEhhc2g6IFNIQTENCj4gDQo+IE9uIDIwMTUtMDQtMDggMDI6NDQsIFJhZmHF
giBXb2pkecWCYSB3cm90ZToNCj4gPiBPbiAyMDE1LTAzLTMxIDE0OjU5LCBQYXVsIER1cnJhbnQg
d3JvdGU6DQo+ID4+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLSBGcm9tOiBSYWZhxYIgV29q
ZHnFgmENCj4gPj4+IFttYWlsdG86b21lZ0BpbnZpc2libGV0aGluZ3NsYWIuY29tXSBTZW50OiAz
MSBNYXJjaCAyMDE1IDEzOjIyDQo+ID4+PiAgVG86IFBhdWwgRHVycmFudDsgd2luLXB2LWRldmVs
QGxpc3RzLnhlbnByb2plY3Qub3JnIFN1YmplY3Q6DQo+ID4+PiBSZTogW3dpbi1wdi1kZXZlbF0g
UG9ydGluZyBsaWJ2Y2hhbiB0byB1c2UgdGhlIFdpbmRvd3MgUFYNCj4gPj4+IERyaXZlcnMNCj4g
Pj4+DQo+ID4+IE9uIDIwMTUtMDMtMzEgMTE6NTQsIFBhdWwgRHVycmFudCB3cm90ZToNCj4gPj4+
Pj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tIEZyb206IFJhZmHFgiBXb2pkecWCYQ0KPiA+
Pj4+Pj4gW21haWx0bzpvbWVnQGludmlzaWJsZXRoaW5nc2xhYi5jb21dIFNlbnQ6IDMxIE1hcmNo
IDIwMTUNCj4gPj4+Pj4+IDA2OjUxIFRvOiBQYXVsIER1cnJhbnQ7DQo+ID4+Pj4+PiB3aW4tcHYt
ZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcgU3ViamVjdDogUmU6DQo+ID4+Pj4+PiBbd2luLXB2
LWRldmVsXSBQb3J0aW5nIGxpYnZjaGFuIHRvIHVzZSB0aGUgV2luZG93cyBQVg0KPiA+Pj4+Pj4g
RHJpdmVycw0KPiA+Pj4+Pj4NCj4gPj4+Pj4gQWZ0ZXIgc29tZSB0aG91Z2h0IEkndmUgZGVjaWRl
ZCB0byBpbXBsZW1lbnQgdGhlIG1pc3NpbmcNCj4gPj4+Pj4gcGllY2VzIGluIHRoZSBHUExQViBk
cml2ZXJzIGZpcnN0LCBtb3N0bHkgdG8gbm90IGRvIG1hbnkNCj4gPj4+Pj4gdGhpbmdzIGF0IG9u
Y2UgKGxpa2UgcG9ydGluZyBvdXIgV2luZG93cyB0b29scyB0byB1c2UgdGhlDQo+ID4+Pj4+IG5l
dyBkcml2ZXJzLCBjaGFuZ2luZyBvdXIgYnVpbGQgcHJvY2VzcyBldGMpLiBJJ2xsDQo+ID4+Pj4+
IGRlZmluaXRlbHkgdGVzdCB0aGUgbmV3IGRyaXZlcnMgb25jZSBRdWJlcyByMyBiZWNvbWVzIG1v
cmUNCj4gPj4+Pj4gc3RhYmxlLg0KPiA+Pj4+Pg0KPiA+Pj4+Pg0KPiA+Pj4+Pj4gT2ssIGZhaXIg
ZW5vdWdoLg0KPiA+Pj4+Pg0KPiA+Pj4+PiBJIGhhdmUgc29tZSBxdWVzdGlvbnMgdGhvdWdoLCBt
b3N0bHkgb24gdGhlIHRvcGljIG9mIFhlbidzDQo+ID4+Pj4+IGdyYW50IG1hcHBpbmcgYW5kIG1l
bW9yeSBoeXBlcmNhbGxzLiBBcyBJIHdyb3RlIGJlZm9yZSwgSSdtDQo+ID4+Pj4+IGEgbmV3Y29t
ZXIgdG8gWGVuIEFQSSBvbiB0aGlzIGxldmVsIGFuZCB0byBtZSB0aGUgZXhpc3RpbmcNCj4gPj4+
Pj4gZG9jdW1lbnRhdGlvbiBzZWVtcyBwcmV0dHkgaW1wZW5ldHJhYmxlLiBUaGUgb3ZlcmFsbA0K
PiA+Pj4+PiBwaWN0dXJlIGlzIG1vc3RseSBjbGVhciwgYnV0IG1hbnkgaW1wb3J0YW50IGRldGFp
bHMgc2VlbQ0KPiA+Pj4+PiBtaXNzaW5nLg0KPiA+Pj4+Pg0KPiA+Pj4+PiBMZXQncyB0YWtlIHRo
ZSBHTlRUQUJPUF9tYXBfZ3JhbnRfcmVmIGNhbGwuIEluIHRoZSBoZWFkZXINCj4gPj4+Pj4gd2Ug
c2VlOg0KPiA+Pj4+Pg0KPiA+Pj4+PiBJZiBHTlRNQVBfaG9zdF9tYXAgaXMgc3BlY2lmaWVkIHRo
ZW4gYSBtYXBwaW5nIHdpbGwgYmUNCj4gPj4+Pj4gYWRkZWQgYXQgKiBlaXRoZXIgYSBob3N0IHZp
cnR1YWwgYWRkcmVzcyBpbiB0aGUgY3VycmVudA0KPiA+Pj4+PiBhZGRyZXNzIHNwYWNlLCBvciBh
dCAqIGEgUFRFIGF0IHRoZSBzcGVjaWZpZWQgbWFjaGluZQ0KPiA+Pj4+PiBhZGRyZXNzLiAgVGhl
IHR5cGUgb2YgbWFwcGluZyB0byAqIHBlcmZvcm0gaXMgc2VsZWN0ZWQNCj4gPj4+Pj4gdGhyb3Vn
aCB0aGUgR05UTUFQX2NvbnRhaW5zX3B0ZSBmbGFnLCBhbmQgdGhlICogYWRkcmVzcyBpcw0KPiA+
Pj4+PiBzcGVjaWZpZWQgaW4gPGhvc3RfYWRkcj4uDQo+ID4+Pj4+DQo+ID4+Pj4+IEknbSBwYXNz
aW5nIEdOVE1BUF9ob3N0X21hcCBmbGFnLCBidXQgd2hhdCB0eXBlIG9mIGFkZHJlc3MNCj4gPj4+
Pj4gc2hvdWxkIGJlIHBhc3NlZCBmb3IgdGhlIG1hcHBlZCBwYWdlPyBUaGUgc2VjdGlvbiBhYm92
ZQ0KPiA+Pj4+PiBzYXlzICJtYXBwaW5nIHdpbGwgYmUgYWRkZWQgYXQgZWl0aGVyIGEgaG9zdCB2
aXJ0dWFsDQo+ID4+Pj4+IGFkZHJlc3MuLi4iIGJ1dCBJIGRvdWJ0IGEgVkEgaXMgd2FudGVkLCBi
ZWNhdXNlIEknZCBuZWVkIHRvDQo+ID4+Pj4+IGFsbG9jYXRlIHNvbWUga2VybmVsIG1lbW9yeSB0
byBwYXNzIGEgVkEgdG8gdGhpcyBjYWxsLCBhbmQNCj4gPj4+Pj4gYWxsb2NhdGlvbiBtZWFucyBt
YXBwaW5nIGluIGl0c2VsZi4gU2hvdWxkIHRoaXMgYmUgYQ0KPiA+Pj4+PiBwaHlzaWNhbCBhZGRy
ZXNzPyBBIFBGTj8gU29tZXRoaW5nIGVsc2UgZW50aXJlbHk/DQo+ID4+Pj4+DQo+ID4+Pj4+DQo+
ID4+Pj4+PiBIeXBlcmNhbGxzIG9uIEhWTSBndWVzdHMgdXN1YWxseSBkZWFsIGluIEdGTnMuIFRo
ZXJlJ3MNCj4gPj4+Pj4+IGJhc2ljYWxseSBubyB3YXkgZm9yIGFuIEhWTSBndWVzdCB0byBnZXQg
aG9sZCBvZiBNRk4NCj4gPj4+Pj4+IHZhbHVlcy4gUFYgZ3Vlc3RzIE9UT0ggZGVhbCBpbiBNRk5z
Lg0KPiA+Pj4+Pg0KPiA+Pj4+PiBBZnRlciByZWFkaW5nIHNvbWUgTGludXggY29kZSB0aGF0IHVz
ZXMgdGhpcyBjYWxsIEkgc2F3DQo+ID4+Pj4+IHRoYXQgaXQgImFsbG9jYXRlZCIgdGhlIGFkZHJl
c3MgZm9yIHRoZSBtYXBwZWQgcGFnZSB2aWENCj4gPj4+Pj4gdGhlIGJhbGxvb24gZHJpdmVyLiBP
biBXaW5kb3dzIHRoaXMgbWVhbnMgZ2V0dGluZyBhIHBhZ2UNCj4gPj4+Pj4gZnJvbSBYZW4gdmlh
IFhFTk1FTV9pbmNyZWFzZV9yZXNlcnZhdGlvbiBhcyBmYXIgYXMgSSBrbm93Lg0KPiA+Pj4+Pg0K
PiA+Pj4+Pj4gVW5sZXNzIHlvdXIgdG9vbHN0YWNrIGlzIGFsbG9jYXRpbmcgZXh0cmEgbWVtb3J5
IHRoYXQncw0KPiA+Pj4+Pj4gbm90IGFscmVhZHkgaW4gdGhlIGd1ZXN0IFAyTSB0aGVuIHRoYXQn
cyBnb2luZyB0byBmYWlsLg0KPiA+Pj4+Pj4gSSB0aGluayB3aGF0IHlvdSBwcm9iYWJseSB3YW50
IHRvIGRvIGlzIGVpdGhlciBmaW5kIGENCj4gPj4+Pj4+ICdob2xlJyAoaS5lLiBHRk5zIG5vdCBw
b3B1bGF0ZWQgd2l0aCBSQU0pIHN1Y2ggYXMgdGhlIFhlbg0KPiA+Pj4+Pj4gUGxhdGZvcm0gUENJ
IGRldmljZSdzIEJBUiBzcGFjZSwgb3IgY3JlYXRlIGEgaG9sZSB1c2luZw0KPiA+Pj4+Pj4gZGVj
cmVhc2VfcmVzZXJ2YXRpb24uIEVpdGhlciB3YXksIHlvdSdsbCBoYXZlIGEgR0ZOIGluDQo+ID4+
Pj4+PiB5b3VyIGhhbmQuDQo+ID4NCj4gPj4gSSBzZWUgdGhhdCBjdXJyZW50bHkgdGhlIGZ1bmN0
aW9uIHRoYXQgbWFwcyB0aGUgZ3JhbnQgdGFibGUNCj4gPj4gaXRzZWxmIGNyZWF0ZXMgc3VjaCAi
aG9sZXMiIHdpdGggWEVOTUVNX2RlY3JlYXNlX3Jlc2VydmF0aW9uLg0KPiA+DQo+ID4+PiBZZWFo
LCBJIHVzZWQgdG8gZG8gdGhhdCB0b28gYnV0IHRoZXNlIGRheXMgSSBqdXN0IHB1dCBhIHNpbXBs
ZQ0KPiA+Pj4gcGFnZSBhbGxvY2F0b3Igb24gdG9wIG9mIHRoZSBQQ0kgQkFSIHNwYWNlLiBHb29k
IHRoYXQgeW91IGhhdmUNCj4gPj4+IHNvbWUgY29kZSB0byBjb3B5J24ncGFzdGUgdGhvdWdoIDot
KQ0KPiA+DQo+ID4+Pj4+DQo+ID4+Pj4+IEJ1dCB0aGVuIGFnYWluOiBYRU5NRU1faW5jcmVhc2Vf
cmVzZXJ2YXRpb24gcmV0dXJucyBhIE1GTg0KPiA+Pj4+PiBvZiB0aGUgYWxsb2NhdGVkIHBhZ2Uu
IFdoYXQgZ29vZCBpcyB0aGlzIGZvciB0aGUgYWJvdmUNCj4gPj4+Pj4gcHVycG9zZT8gSWYgSSB1
bmRlcnN0YW5kIGNvcnJlY3RseSwgYSBIVk0gZG9lc24ndCBrbm93IHJlYWwNCj4gPj4+Pj4gTUZO
cy4gU2hvdWxkIEkgdHJhbnNsYXRlIHN1Y2ggTUZOIGludG8gYSBHTUZOL0dQRk4gYW5kIHRoZW4N
Cj4gPj4+Pj4gcGFzcyBpdCB0byBHTlRUQUJPUF9tYXBfZ3JhbnRfcmVmIGFzIHRoZSBhZGRyZXNz
PyBJZiBzbywNCj4gPj4+Pj4gaG93IHRvIHBlcmZvcm0gc3VjaCB0cmFuc2xhdGlvbj8NCj4gPj4+
Pj4NCj4gPj4+Pj4gSSBleHBlcmltZW50ZWQgd2l0aCBzb21lIFhFTk1FTSBoeXBlcmNhbGxzLg0K
PiA+Pj4+PiBYRU5NRU1fbWFjaHBoeXNfbWFwcGluZyAicmV0dXJucyB0aGUgbG9jYXRpb24gaW4g
dmlydHVhbA0KPiA+Pj4+PiBhZGRyZXNzIHNwYWNlIG9mIHRoZSBtYWNoaW5lX3RvX3BoeXMgbWFw
cGluZyB0YWJsZSIsIGJ1dA0KPiA+Pj4+PiB0aGUgc3RydWN0dXJlIGFuZCBtZWFuaW5nIG9mIHN1
Y2ggdGFibGUgaXMgbm90IGV4cGxhaW5lZC4NCj4gPj4+Pj4gSSBhc3N1bWUgaXQgdHJhbnNsYXRl
cyByZWFsIE1GTnMgaW50byBHTUZOcyBpbiBzb21lIHdheS4NCj4gPj4+Pj4gVGhlIGNhbGwgc3Vj
Y2VlZGVzIHdpdGggZm9sbG93aW5nIG91dHB1dCB2YWx1ZXM6DQo+ID4+Pj4+DQo+ID4+Pj4+IHZf
c3RhcnQgIDB4ZmZmZjgwMDBgMDAwMDAwMDAgdl9lbmQgICAgMHhmZmZmODA0MGAwMDAwMDAwMA0K
PiA+Pj4+PiBtYXhfbWZuIDB4MDAwMDAwMDdgZmZmZmZmZmYNCj4gPj4+Pj4NCj4gPj4+Pj4gLi4u
YnV0IHRoYXQgVkEgcmFuZ2UgYXBwZWFycyB0byBiZSBub3QgYWNjZXNzaWJsZS9ub3QNCj4gPj4+
Pj4gbWFwcGVkLg0KPiA+Pj4+Pg0KPiA+Pj4+PiBYRU5NRU1fbWFjaHBoeXNfbWZuX2xpc3QgY2Fs
bCBhbHNvIHdvcmtlZCBhbmQgcmV0dXJuZWQgYQ0KPiA+Pj4+PiBsaXN0IG9mIDkgdmFsdWVzIG9u
IG15IHRlc3QgSFZNIChXaW43IHg2NCB3aXRoIDFHQiBvZiBSQU0pLg0KPiA+Pj4+PiBJJ20gbm90
IHJlYWxseSBzdXJlIHdoYXQgdG8gbWFrZSBvZiB0aGVtLCB0aGUgZGVzY3JpcHRpb24NCj4gPj4+
Pj4gaXNuJ3QgdmVyeSBoZWxwZnVsIGZvciBzb21lb25lIHdobyBkb2Vzbid0IGFscmVhZHkga25v
dyBob3cNCj4gPj4+Pj4gdGhpcyB3b3JrczogIlJldHVybnMgYSBsaXN0IG9mIE1GTiBiYXNlcyBv
ZiAyTUIgZXh0ZW50cw0KPiA+Pj4+PiBjb21wcmlzaW5nIHRoZSBtYWNoaW5lX3RvX3BoeXMgbWFw
cGluZyB0YWJsZSIuDQo+ID4+Pj4+DQo+ID4+Pj4+IE1heWJlIEknbSBvdmVyY29tcGxpY2F0aW5n
IHRoaW5ncyBhbmQgb3Zlcmxvb2tlZCBzb21ldGhpbmcNCj4gPj4+Pj4gIG9idmlvdXMuIEknZCB3
ZWxjb21lIGFueSBjb3JyZWN0aW9ucyBhbmQvb3IgaGludHMgOikNCj4gPj4+Pj4NCj4gPj4+Pj4+
IFllYWgsIEkgdGhpbmsgeW91J3JlIG92ZXJjb21wbGljYXRpbmcgdGhpbmdzIDotKSBTZWUNCj4g
Pj4+Pj4+IGFib3ZlLg0KPiA+Pj4+Pg0KPiA+Pj4+Pj4gUGF1bA0KPiA+DQo+ID4+IFRoYW5rIHlv
dSwgSSdsbCB0aW5rZXIgc29tZSBtb3JlIGFuZCByZXBvcnQgd2hhdCBjb21lcyBvdXQgb2YNCj4g
Pj4gaXQuDQo+ID4NCj4gPg0KPiA+Pj4gVGhhbmtzLA0KPiA+DQo+ID4+PiBQYXVsDQo+ID4NCj4g
PiBBbHJpZ2h0LCBhZnRlciBhIGxvdCBvZiB0aW5rZXJpbmcgSSBmaW5hbGx5IGdvdCBpdCB0byB3
b3JrLiBJdA0KPiA+IHR1cm5zIG91dCB0aGF0IHRoZSBHTlRUQUJPUF9tYXBfZ3JhbnRfcmVmIGh5
cGVyY2FsbCBhY3R1YWxseSB0YWtlcw0KPiA+IGEgcGh5c2ljYWwgZ3Vlc3QgYWRkcmVzcywgbm90
IGEgUEZOLg0KPiA+DQo+ID4gSSB3YXMgY29uZnVzZWQgYXQgZmlyc3QgYmVjYXVzZSB0aGUgY2Fs
bCBzdWNjZWVkZWQgd2hlbiBJIHBhc3NlZCBhDQo+ID4gUEZOIGluLiBJIG9mIGNvdXJzZSBkaWRu
J3Qgc2VlIHRoZSBtYXBwZWQgY29udGVudCBhdCBteSBhZGRyZXNzLA0KPiA+IGJlY2F1c2UgdGhl
IFBGTiB3YXMgdHJlYXRlZCBhcyBhIHBoeXNpY2FsIGFkZHJlc3MuIFRoaXMgY2F1c2VkDQo+ID4g
c2VlbWluZ2x5IHJhbmRvbSBtZW1vcnkgY29ycnVwdGlvbiBCU09EcyB0aGF0IHdlcmUgdHJpY2t5
IHRvDQo+ID4gZGlhZ25vc2UuDQo+ID4NCj4gPiBGaW5hbGx5IEkgcHV0IHNvbWUgdW5pcXVlIHN0
cmluZyBpbnRvIHRoZSBzaGFyZWQgcGFnZSBhbmQgc2VhcmNoZWQNCj4gPiBmb3IgaXQgaW4gdGhl
IG1hcHBpbmcgZ3Vlc3QncyBtZW1vcnkuIFdpbkRiZydzICFzZWFyY2ggZm91bmQgdGhlDQo+ID4g
cGF0dGVybiBhdCBhIFBGTiB0aGF0IHdhcyBteSBoeXBlcmNhbGwncyBhcmd1bWVudCBzaGlmdGVk
IHJpZ2h0IDEyDQo+ID4gYml0cy4gU3VyZSBlbm91Z2gsIHRoYXQncyBhIHBoeXNpY2FsIGFkZHJl
c3MtdG8tUEZOIGNvbnZlcnNpb24uDQo+ID4NCj4gPiBOb3cgdGhhdCBpdCB3b3JrcyBJIG5lZWQg
dG8gYWRkIHByb3BlciBpb2N0bCBpbnRlcmZhY2UgZm9yDQo+ID4gKHVuKW1hcHBpbmcgcGFnZXMu
IFNpbmNlIEknbSBhbGxvY2F0aW5nIGtlcm5lbCBtZW1vcnkgKG9yIFBDSQ0KPiA+IGFkZHJlc3Mg
cmFuZ2UpIEknbGwgbmVlZCB0byBlbnN1cmUgaXQncyBmcmVlZCBpbiBhbGwgY2FzZXMgKHRoZQ0K
PiA+IGRyZWFkZWQgRHVwbGljYXRlSGFuZGxlIHByb2JsZW0pLiBUaGUgZXhpc3RpbmcgY29kZSBm
b3IgZ3JhbnRpbmcNCj4gPiBwYWdlcyBkZWFscyB3aXRoIGl0IGJ5IHBlbmRpbmcgdGhlIGlvY3Rs
IGZvcmV2ZXIgYW5kIHVzaW5nIGFub3RoZXINCj4gPiBpb2N0bCB0byBhY3R1YWxseSByZXR1cm4g
ZGF0YSB0byB0aGUgY2FsbGVyLiBUaGlzIGlzIHByZXR0eSBhd2t3YXJkDQo+ID4gYnV0IEkgZG9u
J3Qga25vdyBhIGJldHRlciB3YXkgdG8gZW5zdXJlIGV2ZXJ5dGhpbmcgaXMgT0sgaW4gY2FzZQ0K
PiA+IHRoZSBvcmlnaW5hbCB1c2VyIG1vZGUgY2FsbGVyIGRpZXMgd2hpbGUgdGhlcmUncyBhIGR1
cGxpY2F0ZWQNCj4gPiBoYW5kbGUgb3BlbiBzb21ld2hlcmUgKGFwcGFyZW50bHkga2lsbGluZyBh
IHByb2Nlc3MgdGhhdCBjb250YWlucw0KPiA+IGxvY2tlZCBwYWdlcyBjYXVzZXMgYSBCU09EKS4g
QW55IHRob3VnaHQgcz8NCj4gDQo+IEZvciBub3cgSSB3ZW50IHdpdGggUHNTZXRDcmVhdGVQcm9j
ZXNzTm90aWZ5Um91dGluZSBmb3IgY2xlYW51cA0KPiBwdXJwb3NlcyBhbmQgaXQgc2VlbXMgdG8g
d29yayB3ZWxsLiBUaGUgY2FsbGJhY2sgcnVucyBhdCBQQVNTSVZFX0xFVkVMDQo+IGFuZCBpbiB0
aGUgY29udGV4dCBvZiB0aGUgcHJvY2VzcyBiZWluZyBkZXN0cm95ZWQgc28gdGhhdCBhbGxvd3Mg
Zm9yDQo+IGVhc3kgY2xlYW51cCBvZiBsb2NrZWQgbWVtb3J5IGFsbG9jYXRpb25zIGFuZCB0aGUg
bGlrZS4NCj4gDQoNClNvbWV0aGluZyBpbiB0aGUgYmFjayBvZiBteSBtaW5kIHF1ZXN0aW9ucyB3
aGV0aGVyIHRoYXQgd2lsbCB3b3JrLiBJIGhhdmUgYSBmZWVsaW5nIHRoYXQgdGhlIHByb2Nlc3Mg
bm90aWZ5IHJvdXRpbmUgZG9lcyBub3QgZ2V0IGNhbGxlZCB1bnRpbCB0aGUgcHJvY2VzcyBtZW1v
cnkgaGFzIGJlZW4gcmVsZWFzZWQsIGFuZCBhbGwgSVJQcyBjYW5jZWxsZWQuIElJUkMgdGhlIHBl
bmRlZCBJUlAgaXMgZ2VuZXJhbGx5IHRoZSB3YXkgbW9zdCBwZW9wbGUgZ28uDQoNCiAgUGF1bA0K
DQo+IFRoZSBncmFudCBtYXBwaW5nIGl0c2VsZiBmaW5hbGx5IHdvcmtzIHdlbGwgYWZ0ZXIgaXJv
bmluZyBvdXQgc29tZQ0KPiBtb3JlIGlzc3Vlcy4gTm93IEkgbmVlZCB0byBpbXBsZW1lbnQgdGhl
IGxpYnhjIGZ1bmN0aW9ucyB1c2VkIGJ5IG91cg0KPiBsaWJ4ZW52Y2hhbiAobGlrZSB4Y19nbnR0
YWJfbWFwX2dyYW50X3JlZl9ub3RpZnkpLiBBZnRlciB0aGF0J3MNCj4gd29ya2luZyBpdCBzaG91
bGQgYmUgcmVsYXRpdmVseSBlYXN5IHRvIHBvcnQgdGhlIGNvZGUgdG8gdGhlIG5ldw0KPiBwdmRy
aXZlcnMgYXMgd2VsbCA6KQ0KPiAtIC0tDQo+IFJhZmHFgiBXb2pkecWCYQ0KPiBRdWJlcyBUb29s
cyBmb3IgV2luZG93cyBkZXZlbG9wZXINCj4gLS0tLS1CRUdJTiBQR1AgU0lHTkFUVVJFLS0tLS0N
Cj4gDQo+IGlRRWNCQUVCQWdBR0JRSlZKenkxQUFvSkVJV2k5ckIyR3JXN08vY0gvMDROdzJPbHRj
RHNVQWpPRWYwOEJ6NQ0KPiBDDQo+IEozVzNmS3E4TVFRSzhodGZQU3VpNlR0Mjc2TFRIcHFJdnk1
MHd4LzJQYzg0VmRmTUU0Y25xM2Y4dk5XeFVBDQo+IDAwDQo+IERlL1FIalJIRDVZMFp1dTl0SEhN
aFNETUlua0E5Mm5SOUo0d3gvQWZZL2VKY3UrOVdSRVFsSXpCOTBZSXFODQo+IDI3DQo+IDVaU2FP
eFVBbUY5MTl1MHdoV1QvbGZUWHdXbnE2RUlsK016NFlFWE9oZFlEWUFrQ1F1ZUxONnoycWg5SQ0K
PiA0WGpoDQo+IGpaRnJkWnFQNXIxR1ByOTRHZ0k1NElYbFlpL2hiOGtrd3dLVXRUR2JHYTFIaFo1
K1FYcnVTMmhxdnRPclVCOWENCj4gcURCQmVYeUxxdFA5Mkh2RC8xa2hPdUtZUDRyT0Q5STBvdm5W
UDdSdHNCU3RESFU5RUxjUnpZVDdFckp6VWZ3DQo+ID0NCj4gPS9YRSsNCj4gLS0tLS1FTkQgUEdQ
IFNJR05BVFVSRS0tLS0tDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fXwp3aW4tcHYtZGV2ZWwgbWFpbGluZyBsaXN0Cndpbi1wdi1kZXZlbEBsaXN0cy54ZW5w
cm9qZWN0Lm9yZwpodHRwOi8vbGlzdHMueGVucHJvamVjdC5vcmcvY2dpLWJpbi9tYWlsbWFuL2xp
c3RpbmZvL3dpbi1wdi1kZXZlbA==

From win-pv-devel-bounces@lists.xenproject.org Tue Apr 14 10:20:21 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 14 Apr 2015 10:20:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Yhxx7-0008Eb-Os; Tue, 14 Apr 2015 10:20:21 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <lars.kurth.xen@gmail.com>)
	id 1Yhxx6-0008EB-Pi; Tue, 14 Apr 2015 10:20:20 +0000
Received: from [85.158.137.68] by server-17.bemta-3.messagelabs.com id
	D9/64-14975-3E9EC255; Tue, 14 Apr 2015 10:20:19 +0000
X-Env-Sender: lars.kurth.xen@gmail.com
X-Msg-Ref: server-12.tower-31.messagelabs.com!1429006818!16207764!1
X-Originating-IP: [74.125.82.41]
X-SpamReason: No, hits=0.0 required=7.0 tests=HTML_MESSAGE
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 30466 invoked from network); 14 Apr 2015 10:20:18 -0000
Received: from mail-wg0-f41.google.com (HELO mail-wg0-f41.google.com)
	(74.125.82.41)
	by server-12.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	14 Apr 2015 10:20:18 -0000
Received: by wgin8 with SMTP id n8so6435457wgi.0;
	Tue, 14 Apr 2015 03:20:18 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:content-type:subject:date:message-id:cc:to:mime-version;
	bh=vSblshgxs5ALvnkkVGrsAJBiAl5RZJHDwfATCml3QbI=;
	b=ma+RHzrGCgC5fSYMKgs64ZGgxRViE5B7XPd4JFONXmUfJ4q0mBpfMppjBGGe0Prh9j
	C9IJlSvZabgH65QzbVS30Z4I+YltFpUqV8PRpka18kNK5Eu0er+xOxCf62y3iIVmq2Vk
	Z5NXGzMkcuZwpkEAaGUtk7YbObExZFmXF8/xEkeoJ13jzw1U6jToz+nARmsU+UR04jxi
	tEbeXjzHDL40rCaoq6kgp42s04sKUI+Bm9DbXfOUt5xO9YlUM2ZNPXQPKQJYqnJvwIOv
	KgbLtkdWgaOGoAZfawQSwXQZ8obAIe0LcjxSOE45DHNMAidi6uBpZoHJbnPZXcAtfZMm
	x97Q==
X-Received: by 10.195.12.138 with SMTP id eq10mr36359569wjd.65.1429006818461; 
	Tue, 14 Apr 2015 03:20:18 -0700 (PDT)
Received: from [192.168.0.12] (97e5522d.skybroadband.com. [151.229.82.45])
	by mx.google.com with ESMTPSA id
	gu7sm14944489wib.21.2015.04.14.03.20.16
	(version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128);
	Tue, 14 Apr 2015 03:20:17 -0700 (PDT)
From: Lars Kurth <lars.kurth.xen@gmail.com>
Date: Tue, 14 Apr 2015 11:20:16 +0100
Message-Id: <BBB27505-4839-45AD-A000-12534C6544F9@gmail.com>
To: "<xen-devel@lists.xen.org>" <xen-devel@lists.xen.org>,
	xen-api@lists.xenproject.org, mirageos-devel@xenproject.org,
	embedded-pv-devel@lists.xenproject.org, Win-pv-devel@lists.xenproject.org
Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2070.6\))
X-Mailer: Apple Mail (2.2070.6)
Cc: xen-users@lists.xenproject.org
Subject: [win-pv-devel] Reminder: CfP for Xen Project Development Summit is
	closing on May 1st
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============6241337978277263989=="
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org


--===============6241337978277263989==
Content-Type: multipart/alternative; boundary="Apple-Mail=_6B14DE52-3863-4A22-80AB-5CD642AF2320"


--Apple-Mail=_6B14DE52-3863-4A22-80AB-5CD642AF2320
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii

The CfP is at =
http://events.linuxfoundation.org/events/xen-project-developer-summit/prog=
ram/cfp =
<http://events.linuxfoundation.org/events/xen-project-developer-summit/pro=
gram/cfp>
Regards
Lars=

--Apple-Mail=_6B14DE52-3863-4A22-80AB-5CD642AF2320
Content-Transfer-Encoding: 7bit
Content-Type: text/html;
	charset=us-ascii

<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">The CfP is at&nbsp;<a href="http://events.linuxfoundation.org/events/xen-project-developer-summit/program/cfp" class="">http://events.linuxfoundation.org/events/xen-project-developer-summit/program/cfp</a><div class="">Regards</div><div class="">Lars</div></body></html>
--Apple-Mail=_6B14DE52-3863-4A22-80AB-5CD642AF2320--


--===============6241337978277263989==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
--===============6241337978277263989==--


From win-pv-devel-bounces@lists.xenproject.org Tue Apr 14 10:20:21 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 14 Apr 2015 10:20:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Yhxx7-0008Eb-Os; Tue, 14 Apr 2015 10:20:21 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <lars.kurth.xen@gmail.com>)
	id 1Yhxx6-0008EB-Pi; Tue, 14 Apr 2015 10:20:20 +0000
Received: from [85.158.137.68] by server-17.bemta-3.messagelabs.com id
	D9/64-14975-3E9EC255; Tue, 14 Apr 2015 10:20:19 +0000
X-Env-Sender: lars.kurth.xen@gmail.com
X-Msg-Ref: server-12.tower-31.messagelabs.com!1429006818!16207764!1
X-Originating-IP: [74.125.82.41]
X-SpamReason: No, hits=0.0 required=7.0 tests=HTML_MESSAGE
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 30466 invoked from network); 14 Apr 2015 10:20:18 -0000
Received: from mail-wg0-f41.google.com (HELO mail-wg0-f41.google.com)
	(74.125.82.41)
	by server-12.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	14 Apr 2015 10:20:18 -0000
Received: by wgin8 with SMTP id n8so6435457wgi.0;
	Tue, 14 Apr 2015 03:20:18 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:content-type:subject:date:message-id:cc:to:mime-version;
	bh=vSblshgxs5ALvnkkVGrsAJBiAl5RZJHDwfATCml3QbI=;
	b=ma+RHzrGCgC5fSYMKgs64ZGgxRViE5B7XPd4JFONXmUfJ4q0mBpfMppjBGGe0Prh9j
	C9IJlSvZabgH65QzbVS30Z4I+YltFpUqV8PRpka18kNK5Eu0er+xOxCf62y3iIVmq2Vk
	Z5NXGzMkcuZwpkEAaGUtk7YbObExZFmXF8/xEkeoJ13jzw1U6jToz+nARmsU+UR04jxi
	tEbeXjzHDL40rCaoq6kgp42s04sKUI+Bm9DbXfOUt5xO9YlUM2ZNPXQPKQJYqnJvwIOv
	KgbLtkdWgaOGoAZfawQSwXQZ8obAIe0LcjxSOE45DHNMAidi6uBpZoHJbnPZXcAtfZMm
	x97Q==
X-Received: by 10.195.12.138 with SMTP id eq10mr36359569wjd.65.1429006818461; 
	Tue, 14 Apr 2015 03:20:18 -0700 (PDT)
Received: from [192.168.0.12] (97e5522d.skybroadband.com. [151.229.82.45])
	by mx.google.com with ESMTPSA id
	gu7sm14944489wib.21.2015.04.14.03.20.16
	(version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128);
	Tue, 14 Apr 2015 03:20:17 -0700 (PDT)
From: Lars Kurth <lars.kurth.xen@gmail.com>
Date: Tue, 14 Apr 2015 11:20:16 +0100
Message-Id: <BBB27505-4839-45AD-A000-12534C6544F9@gmail.com>
To: "<xen-devel@lists.xen.org>" <xen-devel@lists.xen.org>,
	xen-api@lists.xenproject.org, mirageos-devel@xenproject.org,
	embedded-pv-devel@lists.xenproject.org, Win-pv-devel@lists.xenproject.org
Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2070.6\))
X-Mailer: Apple Mail (2.2070.6)
Cc: xen-users@lists.xenproject.org
Subject: [win-pv-devel] Reminder: CfP for Xen Project Development Summit is
	closing on May 1st
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============6241337978277263989=="
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org


--===============6241337978277263989==
Content-Type: multipart/alternative; boundary="Apple-Mail=_6B14DE52-3863-4A22-80AB-5CD642AF2320"


--Apple-Mail=_6B14DE52-3863-4A22-80AB-5CD642AF2320
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii

The CfP is at =
http://events.linuxfoundation.org/events/xen-project-developer-summit/prog=
ram/cfp =
<http://events.linuxfoundation.org/events/xen-project-developer-summit/pro=
gram/cfp>
Regards
Lars=

--Apple-Mail=_6B14DE52-3863-4A22-80AB-5CD642AF2320
Content-Transfer-Encoding: 7bit
Content-Type: text/html;
	charset=us-ascii

<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">The CfP is at&nbsp;<a href="http://events.linuxfoundation.org/events/xen-project-developer-summit/program/cfp" class="">http://events.linuxfoundation.org/events/xen-project-developer-summit/program/cfp</a><div class="">Regards</div><div class="">Lars</div></body></html>
--Apple-Mail=_6B14DE52-3863-4A22-80AB-5CD642AF2320--


--===============6241337978277263989==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
--===============6241337978277263989==--


From win-pv-devel-bounces@lists.xenproject.org Tue Apr 14 20:43:25 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 14 Apr 2015 20:43:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Yi7g5-0001L7-Fk; Tue, 14 Apr 2015 20:43:25 +0000
Received: from mail6.bemta14.messagelabs.com ([193.109.254.103])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <martin@c-home.cz>) id 1Yi7g4-0001Kx-CT
	for win-pv-devel@lists.xenproject.org; Tue, 14 Apr 2015 20:43:24 +0000
Received: from [193.109.254.147] by server-12.bemta-14.messagelabs.com id
	B9/BC-24420-BEB7D255; Tue, 14 Apr 2015 20:43:23 +0000
X-Env-Sender: martin@c-home.cz
X-Msg-Ref: server-6.tower-27.messagelabs.com!1429044200!17936066!1
X-Originating-IP: [89.24.150.100]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 28330 invoked from network); 14 Apr 2015 20:43:21 -0000
Received: from gw.c-home.cz (HELO dmz.c-home.cz) (89.24.150.100)
	by server-6.tower-27.messagelabs.com with DHE-RSA-AES256-SHA encrypted
	SMTP; 14 Apr 2015 20:43:21 -0000
Received: from dmz.c-home.cz (localhost [127.0.0.1])
	by dmz.c-home.cz (8.14.4+Sun/8.14.4) with ESMTP id t3EKhJmB009441
	for <win-pv-devel@lists.xenproject.org>;
	Tue, 14 Apr 2015 22:43:19 +0200 (CEST)
Received: from localhost (martin@localhost)
	by dmz.c-home.cz (8.14.4+Sun/8.14.4/Submit) with ESMTP id
	t3EKhIBk009438 for <win-pv-devel@lists.xenproject.org>;
	Tue, 14 Apr 2015 22:43:19 +0200 (CEST)
X-Authentication-Warning: dmz.c-home.cz: martin owned process doing -bs
Date: Tue, 14 Apr 2015 22:43:18 +0200 (CEST)
From: Martin Cerveny <martin@c-home.cz>
To: win-pv-devel@lists.xenproject.org
Message-ID: <alpine.GSO.2.00.1504142218200.8798@dmz.c-home.cz>
User-Agent: Alpine 2.00 (GSO 1167 2008-08-23)
MIME-Version: 1.0
Subject: [win-pv-devel] Signing PV drivers
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
Reply-To: Martin Cerveny <M.Cerveny@computer.org>
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Hello.

The "Bcdedit.exe -set TESTSIGNING ON" is not very comfortable.
Will the PV drivers be signed by trusted-chain authority (http://xenproject.org/downloads/windows-pv-drivers.html) ?
- ReactOS (https://reactos.org/wiki/Driver_Signing)
- maybe univention.de
- maybe cirix

Thanks, Martin Cerveny

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Tue Apr 14 20:43:25 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 14 Apr 2015 20:43:25 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Yi7g5-0001L7-Fk; Tue, 14 Apr 2015 20:43:25 +0000
Received: from mail6.bemta14.messagelabs.com ([193.109.254.103])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <martin@c-home.cz>) id 1Yi7g4-0001Kx-CT
	for win-pv-devel@lists.xenproject.org; Tue, 14 Apr 2015 20:43:24 +0000
Received: from [193.109.254.147] by server-12.bemta-14.messagelabs.com id
	B9/BC-24420-BEB7D255; Tue, 14 Apr 2015 20:43:23 +0000
X-Env-Sender: martin@c-home.cz
X-Msg-Ref: server-6.tower-27.messagelabs.com!1429044200!17936066!1
X-Originating-IP: [89.24.150.100]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 28330 invoked from network); 14 Apr 2015 20:43:21 -0000
Received: from gw.c-home.cz (HELO dmz.c-home.cz) (89.24.150.100)
	by server-6.tower-27.messagelabs.com with DHE-RSA-AES256-SHA encrypted
	SMTP; 14 Apr 2015 20:43:21 -0000
Received: from dmz.c-home.cz (localhost [127.0.0.1])
	by dmz.c-home.cz (8.14.4+Sun/8.14.4) with ESMTP id t3EKhJmB009441
	for <win-pv-devel@lists.xenproject.org>;
	Tue, 14 Apr 2015 22:43:19 +0200 (CEST)
Received: from localhost (martin@localhost)
	by dmz.c-home.cz (8.14.4+Sun/8.14.4/Submit) with ESMTP id
	t3EKhIBk009438 for <win-pv-devel@lists.xenproject.org>;
	Tue, 14 Apr 2015 22:43:19 +0200 (CEST)
X-Authentication-Warning: dmz.c-home.cz: martin owned process doing -bs
Date: Tue, 14 Apr 2015 22:43:18 +0200 (CEST)
From: Martin Cerveny <martin@c-home.cz>
To: win-pv-devel@lists.xenproject.org
Message-ID: <alpine.GSO.2.00.1504142218200.8798@dmz.c-home.cz>
User-Agent: Alpine 2.00 (GSO 1167 2008-08-23)
MIME-Version: 1.0
Subject: [win-pv-devel] Signing PV drivers
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
Reply-To: Martin Cerveny <M.Cerveny@computer.org>
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Hello.

The "Bcdedit.exe -set TESTSIGNING ON" is not very comfortable.
Will the PV drivers be signed by trusted-chain authority (http://xenproject.org/downloads/windows-pv-drivers.html) ?
- ReactOS (https://reactos.org/wiki/Driver_Signing)
- maybe univention.de
- maybe cirix

Thanks, Martin Cerveny

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Tue Apr 14 21:59:21 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 14 Apr 2015 21:59:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Yi8rZ-0005jZ-3S; Tue, 14 Apr 2015 21:59:21 +0000
Received: from mail6.bemta14.messagelabs.com ([193.109.254.103])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <martin@c-home.cz>) id 1Yi8rY-0005jL-9k
	for win-pv-devel@lists.xenproject.org; Tue, 14 Apr 2015 21:59:20 +0000
Received: from [193.109.254.147] by server-16.bemta-14.messagelabs.com id
	70/13-06072-7BD8D255; Tue, 14 Apr 2015 21:59:19 +0000
X-Env-Sender: martin@c-home.cz
X-Msg-Ref: server-15.tower-27.messagelabs.com!1429048758!17963100!1
X-Originating-IP: [89.24.150.100]
X-SpamReason: No, hits=0.0 required=7.0 tests=UPPERCASE_25_50
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 30666 invoked from network); 14 Apr 2015 21:59:18 -0000
Received: from gw.c-home.cz (HELO dmz.c-home.cz) (89.24.150.100)
	by server-15.tower-27.messagelabs.com with DHE-RSA-AES256-SHA encrypted
	SMTP; 14 Apr 2015 21:59:18 -0000
Received: from dmz.c-home.cz (localhost [127.0.0.1])
	by dmz.c-home.cz (8.14.4+Sun/8.14.4) with ESMTP id t3ELxGhp011452
	for <win-pv-devel@lists.xenproject.org>;
	Tue, 14 Apr 2015 23:59:17 +0200 (CEST)
Received: from localhost (martin@localhost)
	by dmz.c-home.cz (8.14.4+Sun/8.14.4/Submit) with ESMTP id
	t3ELxFaS011449 for <win-pv-devel@lists.xenproject.org>;
	Tue, 14 Apr 2015 23:59:16 +0200 (CEST)
X-Authentication-Warning: dmz.c-home.cz: martin owned process doing -bs
Date: Tue, 14 Apr 2015 23:59:15 +0200 (CEST)
From: Martin Cerveny <martin@c-home.cz>
To: win-pv-devel@lists.xenproject.org
Message-ID: <alpine.GSO.2.00.1504142243520.8798@dmz.c-home.cz>
User-Agent: Alpine 2.00 (GSO 1167 2008-08-23)
MIME-Version: 1.0
Subject: [win-pv-devel] Performance CrystalDiskMark/4k/QD=1
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
Reply-To: Martin Cerveny <M.Cerveny@computer.org>
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Hello.

I wanted to replace GplPv (1.0.1105) to new Pv (actual) drivers.
(GplPv drivers are not compatible with new XenServer kernel 
kernel-3.10.41-323).

I use CrystalDiskMark to test performace:

1) without any Pv drivers:

     Random Read 4KB (QD=1) :     5.874 MB/s [  1434.0 IOPS]
    Random Write 4KB (QD=1) :     5.823 MB/s [  1421.5 IOPS]
    Random Read 4KB (QD=32) :     6.551 MB/s [  1599.4 IOPS]
   Random Write 4KB (QD=32) :     5.998 MB/s [  1464.4 IOPS]


2) with GplPv drivers (1.0.1105) (few test with some modified parameters):

     Random Read 4KB (QD=1) :    19.438 MB/s [  4745.7 IOPS]
    Random Write 4KB (QD=1) :    15.271 MB/s [  3728.4 IOPS]
    Random Read 4KB (QD=32) :   117.721 MB/s [ 28740.5 IOPS]
   Random Write 4KB (QD=32) :    88.781 MB/s [ 21675.2 IOPS]

     Random Read 4KB (QD=1) :    17.857 MB/s [  4359.5 IOPS]
    Random Write 4KB (QD=1) :    15.738 MB/s [  3842.3 IOPS]
    Random Read 4KB (QD=32) :   119.328 MB/s [ 29132.9 IOPS]
   Random Write 4KB (QD=32) :    86.786 MB/s [ 21188.0 IOPS]

     Random Read 4KB (QD=1) :    19.727 MB/s [  4816.2 IOPS]
    Random Write 4KB (QD=1) :    16.712 MB/s [  4080.1 IOPS]
    Random Read 4KB (QD=32) :   118.237 MB/s [ 28866.3 IOPS]
   Random Write 4KB (QD=32) :    77.756 MB/s [ 18983.4 IOPS]

     Random Read 4KB (QD=1) :    20.983 MB/s [  5122.8 IOPS]
    Random Write 4KB (QD=1) :    17.742 MB/s [  4331.5 IOPS]
    Random Read 4KB (QD=32) :   116.874 MB/s [ 28533.7 IOPS]
   Random Write 4KB (QD=32) :    86.288 MB/s [ 21066.5 IOPS]

3) with new Pv drivers (http://www.xenproject.org/downloads/windows-pv-drivers.html) (few test with some modified parameters):

     Random Read 4KB (QD=1) :     4.476 MB/s [  1092.8 IOPS]
    Random Write 4KB (QD=1) :     4.639 MB/s [  1132.5 IOPS]
    Random Read 4KB (QD=32) :   118.523 MB/s [ 28936.4 IOPS]
   Random Write 4KB (QD=32) :    96.955 MB/s [ 23670.6 IOPS]

     Random Read 4KB (QD=1) :     7.253 MB/s [  1770.7 IOPS]
    Random Write 4KB (QD=1) :     4.208 MB/s [  1027.3 IOPS]
    Random Read 4KB (QD=32) :   109.751 MB/s [ 26794.8 IOPS]
   Random Write 4KB (QD=32) :    93.910 MB/s [ 22927.3 IOPS]

     Random Read 4KB (QD=1) :     4.874 MB/s [  1189.9 IOPS]
    Random Write 4KB (QD=1) :     4.119 MB/s [  1005.6 IOPS]
    Random Read 4KB (QD=32) :    95.588 MB/s [ 23336.9 IOPS]
   Random Write 4KB (QD=32) :    94.827 MB/s [ 23151.2 IOPS]

     Random Read 4KB (QD=1) :     4.135 MB/s [  1009.5 IOPS]
    Random Write 4KB (QD=1) :     4.125 MB/s [  1007.1 IOPS]
    Random Read 4KB (QD=32) :   130.020 MB/s [ 31743.2 IOPS]
   Random Write 4KB (QD=32) :   105.073 MB/s [ 25652.6 IOPS]


Xen - 4.5.0
Dom0 kernel (XenServer kernel Creedence prerelease) - kernel-3.10.41-299.380404

Why are "Random Read/Write 4KB (QD=1)" tests with new Pv drivers slower 
(~4x) than GplPv and even slower than without any Pv drivers ?

Thanks for clarification, Martin Cerveny

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Tue Apr 14 21:59:21 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 14 Apr 2015 21:59:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Yi8rZ-0005jZ-3S; Tue, 14 Apr 2015 21:59:21 +0000
Received: from mail6.bemta14.messagelabs.com ([193.109.254.103])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <martin@c-home.cz>) id 1Yi8rY-0005jL-9k
	for win-pv-devel@lists.xenproject.org; Tue, 14 Apr 2015 21:59:20 +0000
Received: from [193.109.254.147] by server-16.bemta-14.messagelabs.com id
	70/13-06072-7BD8D255; Tue, 14 Apr 2015 21:59:19 +0000
X-Env-Sender: martin@c-home.cz
X-Msg-Ref: server-15.tower-27.messagelabs.com!1429048758!17963100!1
X-Originating-IP: [89.24.150.100]
X-SpamReason: No, hits=0.0 required=7.0 tests=UPPERCASE_25_50
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 30666 invoked from network); 14 Apr 2015 21:59:18 -0000
Received: from gw.c-home.cz (HELO dmz.c-home.cz) (89.24.150.100)
	by server-15.tower-27.messagelabs.com with DHE-RSA-AES256-SHA encrypted
	SMTP; 14 Apr 2015 21:59:18 -0000
Received: from dmz.c-home.cz (localhost [127.0.0.1])
	by dmz.c-home.cz (8.14.4+Sun/8.14.4) with ESMTP id t3ELxGhp011452
	for <win-pv-devel@lists.xenproject.org>;
	Tue, 14 Apr 2015 23:59:17 +0200 (CEST)
Received: from localhost (martin@localhost)
	by dmz.c-home.cz (8.14.4+Sun/8.14.4/Submit) with ESMTP id
	t3ELxFaS011449 for <win-pv-devel@lists.xenproject.org>;
	Tue, 14 Apr 2015 23:59:16 +0200 (CEST)
X-Authentication-Warning: dmz.c-home.cz: martin owned process doing -bs
Date: Tue, 14 Apr 2015 23:59:15 +0200 (CEST)
From: Martin Cerveny <martin@c-home.cz>
To: win-pv-devel@lists.xenproject.org
Message-ID: <alpine.GSO.2.00.1504142243520.8798@dmz.c-home.cz>
User-Agent: Alpine 2.00 (GSO 1167 2008-08-23)
MIME-Version: 1.0
Subject: [win-pv-devel] Performance CrystalDiskMark/4k/QD=1
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
Reply-To: Martin Cerveny <M.Cerveny@computer.org>
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Hello.

I wanted to replace GplPv (1.0.1105) to new Pv (actual) drivers.
(GplPv drivers are not compatible with new XenServer kernel 
kernel-3.10.41-323).

I use CrystalDiskMark to test performace:

1) without any Pv drivers:

     Random Read 4KB (QD=1) :     5.874 MB/s [  1434.0 IOPS]
    Random Write 4KB (QD=1) :     5.823 MB/s [  1421.5 IOPS]
    Random Read 4KB (QD=32) :     6.551 MB/s [  1599.4 IOPS]
   Random Write 4KB (QD=32) :     5.998 MB/s [  1464.4 IOPS]


2) with GplPv drivers (1.0.1105) (few test with some modified parameters):

     Random Read 4KB (QD=1) :    19.438 MB/s [  4745.7 IOPS]
    Random Write 4KB (QD=1) :    15.271 MB/s [  3728.4 IOPS]
    Random Read 4KB (QD=32) :   117.721 MB/s [ 28740.5 IOPS]
   Random Write 4KB (QD=32) :    88.781 MB/s [ 21675.2 IOPS]

     Random Read 4KB (QD=1) :    17.857 MB/s [  4359.5 IOPS]
    Random Write 4KB (QD=1) :    15.738 MB/s [  3842.3 IOPS]
    Random Read 4KB (QD=32) :   119.328 MB/s [ 29132.9 IOPS]
   Random Write 4KB (QD=32) :    86.786 MB/s [ 21188.0 IOPS]

     Random Read 4KB (QD=1) :    19.727 MB/s [  4816.2 IOPS]
    Random Write 4KB (QD=1) :    16.712 MB/s [  4080.1 IOPS]
    Random Read 4KB (QD=32) :   118.237 MB/s [ 28866.3 IOPS]
   Random Write 4KB (QD=32) :    77.756 MB/s [ 18983.4 IOPS]

     Random Read 4KB (QD=1) :    20.983 MB/s [  5122.8 IOPS]
    Random Write 4KB (QD=1) :    17.742 MB/s [  4331.5 IOPS]
    Random Read 4KB (QD=32) :   116.874 MB/s [ 28533.7 IOPS]
   Random Write 4KB (QD=32) :    86.288 MB/s [ 21066.5 IOPS]

3) with new Pv drivers (http://www.xenproject.org/downloads/windows-pv-drivers.html) (few test with some modified parameters):

     Random Read 4KB (QD=1) :     4.476 MB/s [  1092.8 IOPS]
    Random Write 4KB (QD=1) :     4.639 MB/s [  1132.5 IOPS]
    Random Read 4KB (QD=32) :   118.523 MB/s [ 28936.4 IOPS]
   Random Write 4KB (QD=32) :    96.955 MB/s [ 23670.6 IOPS]

     Random Read 4KB (QD=1) :     7.253 MB/s [  1770.7 IOPS]
    Random Write 4KB (QD=1) :     4.208 MB/s [  1027.3 IOPS]
    Random Read 4KB (QD=32) :   109.751 MB/s [ 26794.8 IOPS]
   Random Write 4KB (QD=32) :    93.910 MB/s [ 22927.3 IOPS]

     Random Read 4KB (QD=1) :     4.874 MB/s [  1189.9 IOPS]
    Random Write 4KB (QD=1) :     4.119 MB/s [  1005.6 IOPS]
    Random Read 4KB (QD=32) :    95.588 MB/s [ 23336.9 IOPS]
   Random Write 4KB (QD=32) :    94.827 MB/s [ 23151.2 IOPS]

     Random Read 4KB (QD=1) :     4.135 MB/s [  1009.5 IOPS]
    Random Write 4KB (QD=1) :     4.125 MB/s [  1007.1 IOPS]
    Random Read 4KB (QD=32) :   130.020 MB/s [ 31743.2 IOPS]
   Random Write 4KB (QD=32) :   105.073 MB/s [ 25652.6 IOPS]


Xen - 4.5.0
Dom0 kernel (XenServer kernel Creedence prerelease) - kernel-3.10.41-299.380404

Why are "Random Read/Write 4KB (QD=1)" tests with new Pv drivers slower 
(~4x) than GplPv and even slower than without any Pv drivers ?

Thanks for clarification, Martin Cerveny

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 15 08:49:54 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 15 Apr 2015 08:49:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YiJ18-00075E-8R; Wed, 15 Apr 2015 08:49:54 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <ben.chalmers@citrix.com>) id 1YiJ16-000754-UQ
	for win-pv-devel@lists.xenproject.org; Wed, 15 Apr 2015 08:49:53 +0000
Received: from [85.158.137.68] by server-5.bemta-3.messagelabs.com id
	C2/C3-23555-0362E255; Wed, 15 Apr 2015 08:49:52 +0000
X-Env-Sender: ben.chalmers@citrix.com
X-Msg-Ref: server-4.tower-31.messagelabs.com!1429087791!16580851!1
X-Originating-IP: [185.25.65.24]
X-SpamReason: No, hits=0.0 required=7.0 tests=received_headers: No 
	Received headers
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 22949 invoked from network); 15 Apr 2015 08:49:51 -0000
Received: from smtp.ctxuk.citrix.com (HELO SMTP.EU.CITRIX.COM) (185.25.65.24)
	by server-4.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	15 Apr 2015 08:49:51 -0000
X-IronPort-AV: E=Sophos;i="5.11,581,1422921600"; d="scan'208";a="33544233"
From: Ben Chalmers <ben.chalmers@citrix.com>
To: 'Martin Cerveny' <M.Cerveny@computer.org>,
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
Thread-Topic: [win-pv-devel] Signing PV drivers
Thread-Index: AQHQdvO+rqpxnIDabUusywenZSttUp1NuBkg
Date: Wed, 15 Apr 2015 08:49:49 +0000
Message-ID: <1AD33E34BA5E3649B4F6C7FE476686F4041822B1@AMSPEX01CL02.citrite.net>
References: <alpine.GSO.2.00.1504142218200.8798@dmz.c-home.cz>
In-Reply-To: <alpine.GSO.2.00.1504142218200.8798@dmz.c-home.cz>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
MIME-Version: 1.0
X-DLP: AMS1
Subject: Re: [win-pv-devel] Signing PV drivers
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Citrix currently sign the XenServer builds of the Xen Project PV drivers (which are often less up-to-date than the xenbits repos, and may contain one or two patches that are not upstreamed.  At the moment there are a few issues known to exist in the 8.0 driver set, so for stability's sake it's still 7.2 drivers - which predate the drivers being part of the Xen Project, and for which sources can be found on github - that are being packaged.  I'm hoping to get 8.0 drivers in place there soon). 

You can get them from the development snapshots at 
http://xenserver.org/open-source-virtualization-download/2-uncategorised/115-development-snapshots.html

(Download the Base ISO from the snapshot list, then mount it and look inside, specifically at  packages.main\tools-iso.tar.bz2\tools-iso.tar\.\opt\xensource\packages\iso\xs-tools-*.iso

You'll find 2 drivers msi  files (one 64 bit, one 32 bit) - you can open these with msiexec or 7zip, and extract the signed drivers from within.)

 Citrix also currently arrange for Microsoft WHQL signing of XenServer PV driver releases

However - none of this addresses Xen Project nightly builds which, I believe, Citrix can't  vouch for (as it doesn't have control of who gets to be a project committer).

Of course, if you - or anyone else - has a trusted-chain code signing certificate, there is nothing to stop you from signing the xen project driver builds yourself. 

Ben

> -----Original Message-----
> From: win-pv-devel-bounces@lists.xenproject.org [mailto:win-pv-devel-
> bounces@lists.xenproject.org] On Behalf Of Martin Cerveny
> Sent: 14 April 2015 9:43 PM
> To: win-pv-devel@lists.xenproject.org
> Subject: [win-pv-devel] Signing PV drivers
> 
> Hello.
> 
> The "Bcdedit.exe -set TESTSIGNING ON" is not very comfortable.
> Will the PV drivers be signed by trusted-chain authority
> (http://xenproject.org/downloads/windows-pv-drivers.html) ?
> - ReactOS (https://reactos.org/wiki/Driver_Signing)
> - maybe univention.de
> - maybe cirix
> 
> Thanks, Martin Cerveny
> 
> _______________________________________________
> win-pv-devel mailing list
> win-pv-devel@lists.xenproject.org
> http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 15 08:49:54 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 15 Apr 2015 08:49:54 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YiJ18-00075E-8R; Wed, 15 Apr 2015 08:49:54 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <ben.chalmers@citrix.com>) id 1YiJ16-000754-UQ
	for win-pv-devel@lists.xenproject.org; Wed, 15 Apr 2015 08:49:53 +0000
Received: from [85.158.137.68] by server-5.bemta-3.messagelabs.com id
	C2/C3-23555-0362E255; Wed, 15 Apr 2015 08:49:52 +0000
X-Env-Sender: ben.chalmers@citrix.com
X-Msg-Ref: server-4.tower-31.messagelabs.com!1429087791!16580851!1
X-Originating-IP: [185.25.65.24]
X-SpamReason: No, hits=0.0 required=7.0 tests=received_headers: No 
	Received headers
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 22949 invoked from network); 15 Apr 2015 08:49:51 -0000
Received: from smtp.ctxuk.citrix.com (HELO SMTP.EU.CITRIX.COM) (185.25.65.24)
	by server-4.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	15 Apr 2015 08:49:51 -0000
X-IronPort-AV: E=Sophos;i="5.11,581,1422921600"; d="scan'208";a="33544233"
From: Ben Chalmers <ben.chalmers@citrix.com>
To: 'Martin Cerveny' <M.Cerveny@computer.org>,
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
Thread-Topic: [win-pv-devel] Signing PV drivers
Thread-Index: AQHQdvO+rqpxnIDabUusywenZSttUp1NuBkg
Date: Wed, 15 Apr 2015 08:49:49 +0000
Message-ID: <1AD33E34BA5E3649B4F6C7FE476686F4041822B1@AMSPEX01CL02.citrite.net>
References: <alpine.GSO.2.00.1504142218200.8798@dmz.c-home.cz>
In-Reply-To: <alpine.GSO.2.00.1504142218200.8798@dmz.c-home.cz>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
MIME-Version: 1.0
X-DLP: AMS1
Subject: Re: [win-pv-devel] Signing PV drivers
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Citrix currently sign the XenServer builds of the Xen Project PV drivers (which are often less up-to-date than the xenbits repos, and may contain one or two patches that are not upstreamed.  At the moment there are a few issues known to exist in the 8.0 driver set, so for stability's sake it's still 7.2 drivers - which predate the drivers being part of the Xen Project, and for which sources can be found on github - that are being packaged.  I'm hoping to get 8.0 drivers in place there soon). 

You can get them from the development snapshots at 
http://xenserver.org/open-source-virtualization-download/2-uncategorised/115-development-snapshots.html

(Download the Base ISO from the snapshot list, then mount it and look inside, specifically at  packages.main\tools-iso.tar.bz2\tools-iso.tar\.\opt\xensource\packages\iso\xs-tools-*.iso

You'll find 2 drivers msi  files (one 64 bit, one 32 bit) - you can open these with msiexec or 7zip, and extract the signed drivers from within.)

 Citrix also currently arrange for Microsoft WHQL signing of XenServer PV driver releases

However - none of this addresses Xen Project nightly builds which, I believe, Citrix can't  vouch for (as it doesn't have control of who gets to be a project committer).

Of course, if you - or anyone else - has a trusted-chain code signing certificate, there is nothing to stop you from signing the xen project driver builds yourself. 

Ben

> -----Original Message-----
> From: win-pv-devel-bounces@lists.xenproject.org [mailto:win-pv-devel-
> bounces@lists.xenproject.org] On Behalf Of Martin Cerveny
> Sent: 14 April 2015 9:43 PM
> To: win-pv-devel@lists.xenproject.org
> Subject: [win-pv-devel] Signing PV drivers
> 
> Hello.
> 
> The "Bcdedit.exe -set TESTSIGNING ON" is not very comfortable.
> Will the PV drivers be signed by trusted-chain authority
> (http://xenproject.org/downloads/windows-pv-drivers.html) ?
> - ReactOS (https://reactos.org/wiki/Driver_Signing)
> - maybe univention.de
> - maybe cirix
> 
> Thanks, Martin Cerveny
> 
> _______________________________________________
> win-pv-devel mailing list
> win-pv-devel@lists.xenproject.org
> http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 15 10:49:01 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 15 Apr 2015 10:49:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YiKsP-0004Al-Fo; Wed, 15 Apr 2015 10:49:01 +0000
Received: from mail6.bemta14.messagelabs.com ([193.109.254.103])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <Paul.Durrant@citrix.com>) id 1YiKsO-0004Ag-K5
	for win-pv-devel@lists.xenproject.org; Wed, 15 Apr 2015 10:49:00 +0000
Received: from [193.109.254.147] by server-2.bemta-14.messagelabs.com id
	41/9E-14319-B124E255; Wed, 15 Apr 2015 10:48:59 +0000
X-Env-Sender: Paul.Durrant@citrix.com
X-Msg-Ref: server-11.tower-27.messagelabs.com!1429094938!14793249!1
X-Originating-IP: [185.25.65.24]
X-SpamReason: No, hits=0.5 required=7.0 tests=BODY_RANDOM_LONG,
	received_headers: No Received headers
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 20433 invoked from network); 15 Apr 2015 10:48:59 -0000
Received: from smtp.ctxuk.citrix.com (HELO SMTP.EU.CITRIX.COM) (185.25.65.24)
	by server-11.tower-27.messagelabs.com with RC4-SHA encrypted SMTP;
	15 Apr 2015 10:48:59 -0000
X-IronPort-AV: E=Sophos;i="5.11,581,1422921600"; d="scan'208";a="33548631"
From: Paul Durrant <Paul.Durrant@citrix.com>
To: Martin Cerveny <M.Cerveny@computer.org>,
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
Thread-Topic: [win-pv-devel] Performance CrystalDiskMark/4k/QD=1
Thread-Index: AQHQdv5dD1PBJkYZM0yBMv8EVQrhQZ1N48/A
Date: Wed, 15 Apr 2015 10:43:27 +0000
Message-ID: <9AAE0902D5BC7E449B7C8E4E778ABCD02586B030@AMSPEX01CL01.citrite.net>
References: <alpine.GSO.2.00.1504142243520.8798@dmz.c-home.cz>
In-Reply-To: <alpine.GSO.2.00.1504142243520.8798@dmz.c-home.cz>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
MIME-Version: 1.0
X-DLP: AMS1
Subject: Re: [win-pv-devel] Performance CrystalDiskMark/4k/QD=1
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

> -----Original Message-----
> From: win-pv-devel-bounces@lists.xenproject.org [mailto:win-pv-devel-
> bounces@lists.xenproject.org] On Behalf Of Martin Cerveny
> Sent: 14 April 2015 22:59
> To: win-pv-devel@lists.xenproject.org
> Subject: [win-pv-devel] Performance CrystalDiskMark/4k/QD=1
> 
> Hello.
> 
> I wanted to replace GplPv (1.0.1105) to new Pv (actual) drivers.
> (GplPv drivers are not compatible with new XenServer kernel
> kernel-3.10.41-323).
> 
> I use CrystalDiskMark to test performace:
> 
> 1) without any Pv drivers:
> 
>      Random Read 4KB (QD=1) :     5.874 MB/s [  1434.0 IOPS]
>     Random Write 4KB (QD=1) :     5.823 MB/s [  1421.5 IOPS]
>     Random Read 4KB (QD=32) :     6.551 MB/s [  1599.4 IOPS]
>    Random Write 4KB (QD=32) :     5.998 MB/s [  1464.4 IOPS]
> 
> 
> 2) with GplPv drivers (1.0.1105) (few test with some modified parameters):
> 
>      Random Read 4KB (QD=1) :    19.438 MB/s [  4745.7 IOPS]
>     Random Write 4KB (QD=1) :    15.271 MB/s [  3728.4 IOPS]
>     Random Read 4KB (QD=32) :   117.721 MB/s [ 28740.5 IOPS]
>    Random Write 4KB (QD=32) :    88.781 MB/s [ 21675.2 IOPS]
> 
>      Random Read 4KB (QD=1) :    17.857 MB/s [  4359.5 IOPS]
>     Random Write 4KB (QD=1) :    15.738 MB/s [  3842.3 IOPS]
>     Random Read 4KB (QD=32) :   119.328 MB/s [ 29132.9 IOPS]
>    Random Write 4KB (QD=32) :    86.786 MB/s [ 21188.0 IOPS]
> 
>      Random Read 4KB (QD=1) :    19.727 MB/s [  4816.2 IOPS]
>     Random Write 4KB (QD=1) :    16.712 MB/s [  4080.1 IOPS]
>     Random Read 4KB (QD=32) :   118.237 MB/s [ 28866.3 IOPS]
>    Random Write 4KB (QD=32) :    77.756 MB/s [ 18983.4 IOPS]
> 
>      Random Read 4KB (QD=1) :    20.983 MB/s [  5122.8 IOPS]
>     Random Write 4KB (QD=1) :    17.742 MB/s [  4331.5 IOPS]
>     Random Read 4KB (QD=32) :   116.874 MB/s [ 28533.7 IOPS]
>    Random Write 4KB (QD=32) :    86.288 MB/s [ 21066.5 IOPS]
> 
> 3) with new Pv drivers (http://www.xenproject.org/downloads/windows-
> pv-drivers.html) (few test with some modified parameters):
> 
>      Random Read 4KB (QD=1) :     4.476 MB/s [  1092.8 IOPS]
>     Random Write 4KB (QD=1) :     4.639 MB/s [  1132.5 IOPS]
>     Random Read 4KB (QD=32) :   118.523 MB/s [ 28936.4 IOPS]
>    Random Write 4KB (QD=32) :    96.955 MB/s [ 23670.6 IOPS]
> 
>      Random Read 4KB (QD=1) :     7.253 MB/s [  1770.7 IOPS]
>     Random Write 4KB (QD=1) :     4.208 MB/s [  1027.3 IOPS]
>     Random Read 4KB (QD=32) :   109.751 MB/s [ 26794.8 IOPS]
>    Random Write 4KB (QD=32) :    93.910 MB/s [ 22927.3 IOPS]
> 
>      Random Read 4KB (QD=1) :     4.874 MB/s [  1189.9 IOPS]
>     Random Write 4KB (QD=1) :     4.119 MB/s [  1005.6 IOPS]
>     Random Read 4KB (QD=32) :    95.588 MB/s [ 23336.9 IOPS]
>    Random Write 4KB (QD=32) :    94.827 MB/s [ 23151.2 IOPS]
> 
>      Random Read 4KB (QD=1) :     4.135 MB/s [  1009.5 IOPS]
>     Random Write 4KB (QD=1) :     4.125 MB/s [  1007.1 IOPS]
>     Random Read 4KB (QD=32) :   130.020 MB/s [ 31743.2 IOPS]
>    Random Write 4KB (QD=32) :   105.073 MB/s [ 25652.6 IOPS]
> 
> 
> Xen - 4.5.0
> Dom0 kernel (XenServer kernel Creedence prerelease) - kernel-3.10.41-
> 299.380404
> 
> Why are "Random Read/Write 4KB (QD=1)" tests with new Pv drivers slower
> (~4x) than GplPv and even slower than without any Pv drivers ?
> 

Good question. There's clearly something going wrong there - like a missed event - so we'll have to try to repro your numbers and have a look.

Thanks,

  Paul

> Thanks for clarification, Martin Cerveny
> 
> _______________________________________________
> win-pv-devel mailing list
> win-pv-devel@lists.xenproject.org
> http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 15 10:49:01 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 15 Apr 2015 10:49:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YiKsP-0004Al-Fo; Wed, 15 Apr 2015 10:49:01 +0000
Received: from mail6.bemta14.messagelabs.com ([193.109.254.103])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <Paul.Durrant@citrix.com>) id 1YiKsO-0004Ag-K5
	for win-pv-devel@lists.xenproject.org; Wed, 15 Apr 2015 10:49:00 +0000
Received: from [193.109.254.147] by server-2.bemta-14.messagelabs.com id
	41/9E-14319-B124E255; Wed, 15 Apr 2015 10:48:59 +0000
X-Env-Sender: Paul.Durrant@citrix.com
X-Msg-Ref: server-11.tower-27.messagelabs.com!1429094938!14793249!1
X-Originating-IP: [185.25.65.24]
X-SpamReason: No, hits=0.5 required=7.0 tests=BODY_RANDOM_LONG,
	received_headers: No Received headers
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 20433 invoked from network); 15 Apr 2015 10:48:59 -0000
Received: from smtp.ctxuk.citrix.com (HELO SMTP.EU.CITRIX.COM) (185.25.65.24)
	by server-11.tower-27.messagelabs.com with RC4-SHA encrypted SMTP;
	15 Apr 2015 10:48:59 -0000
X-IronPort-AV: E=Sophos;i="5.11,581,1422921600"; d="scan'208";a="33548631"
From: Paul Durrant <Paul.Durrant@citrix.com>
To: Martin Cerveny <M.Cerveny@computer.org>,
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
Thread-Topic: [win-pv-devel] Performance CrystalDiskMark/4k/QD=1
Thread-Index: AQHQdv5dD1PBJkYZM0yBMv8EVQrhQZ1N48/A
Date: Wed, 15 Apr 2015 10:43:27 +0000
Message-ID: <9AAE0902D5BC7E449B7C8E4E778ABCD02586B030@AMSPEX01CL01.citrite.net>
References: <alpine.GSO.2.00.1504142243520.8798@dmz.c-home.cz>
In-Reply-To: <alpine.GSO.2.00.1504142243520.8798@dmz.c-home.cz>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
MIME-Version: 1.0
X-DLP: AMS1
Subject: Re: [win-pv-devel] Performance CrystalDiskMark/4k/QD=1
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

> -----Original Message-----
> From: win-pv-devel-bounces@lists.xenproject.org [mailto:win-pv-devel-
> bounces@lists.xenproject.org] On Behalf Of Martin Cerveny
> Sent: 14 April 2015 22:59
> To: win-pv-devel@lists.xenproject.org
> Subject: [win-pv-devel] Performance CrystalDiskMark/4k/QD=1
> 
> Hello.
> 
> I wanted to replace GplPv (1.0.1105) to new Pv (actual) drivers.
> (GplPv drivers are not compatible with new XenServer kernel
> kernel-3.10.41-323).
> 
> I use CrystalDiskMark to test performace:
> 
> 1) without any Pv drivers:
> 
>      Random Read 4KB (QD=1) :     5.874 MB/s [  1434.0 IOPS]
>     Random Write 4KB (QD=1) :     5.823 MB/s [  1421.5 IOPS]
>     Random Read 4KB (QD=32) :     6.551 MB/s [  1599.4 IOPS]
>    Random Write 4KB (QD=32) :     5.998 MB/s [  1464.4 IOPS]
> 
> 
> 2) with GplPv drivers (1.0.1105) (few test with some modified parameters):
> 
>      Random Read 4KB (QD=1) :    19.438 MB/s [  4745.7 IOPS]
>     Random Write 4KB (QD=1) :    15.271 MB/s [  3728.4 IOPS]
>     Random Read 4KB (QD=32) :   117.721 MB/s [ 28740.5 IOPS]
>    Random Write 4KB (QD=32) :    88.781 MB/s [ 21675.2 IOPS]
> 
>      Random Read 4KB (QD=1) :    17.857 MB/s [  4359.5 IOPS]
>     Random Write 4KB (QD=1) :    15.738 MB/s [  3842.3 IOPS]
>     Random Read 4KB (QD=32) :   119.328 MB/s [ 29132.9 IOPS]
>    Random Write 4KB (QD=32) :    86.786 MB/s [ 21188.0 IOPS]
> 
>      Random Read 4KB (QD=1) :    19.727 MB/s [  4816.2 IOPS]
>     Random Write 4KB (QD=1) :    16.712 MB/s [  4080.1 IOPS]
>     Random Read 4KB (QD=32) :   118.237 MB/s [ 28866.3 IOPS]
>    Random Write 4KB (QD=32) :    77.756 MB/s [ 18983.4 IOPS]
> 
>      Random Read 4KB (QD=1) :    20.983 MB/s [  5122.8 IOPS]
>     Random Write 4KB (QD=1) :    17.742 MB/s [  4331.5 IOPS]
>     Random Read 4KB (QD=32) :   116.874 MB/s [ 28533.7 IOPS]
>    Random Write 4KB (QD=32) :    86.288 MB/s [ 21066.5 IOPS]
> 
> 3) with new Pv drivers (http://www.xenproject.org/downloads/windows-
> pv-drivers.html) (few test with some modified parameters):
> 
>      Random Read 4KB (QD=1) :     4.476 MB/s [  1092.8 IOPS]
>     Random Write 4KB (QD=1) :     4.639 MB/s [  1132.5 IOPS]
>     Random Read 4KB (QD=32) :   118.523 MB/s [ 28936.4 IOPS]
>    Random Write 4KB (QD=32) :    96.955 MB/s [ 23670.6 IOPS]
> 
>      Random Read 4KB (QD=1) :     7.253 MB/s [  1770.7 IOPS]
>     Random Write 4KB (QD=1) :     4.208 MB/s [  1027.3 IOPS]
>     Random Read 4KB (QD=32) :   109.751 MB/s [ 26794.8 IOPS]
>    Random Write 4KB (QD=32) :    93.910 MB/s [ 22927.3 IOPS]
> 
>      Random Read 4KB (QD=1) :     4.874 MB/s [  1189.9 IOPS]
>     Random Write 4KB (QD=1) :     4.119 MB/s [  1005.6 IOPS]
>     Random Read 4KB (QD=32) :    95.588 MB/s [ 23336.9 IOPS]
>    Random Write 4KB (QD=32) :    94.827 MB/s [ 23151.2 IOPS]
> 
>      Random Read 4KB (QD=1) :     4.135 MB/s [  1009.5 IOPS]
>     Random Write 4KB (QD=1) :     4.125 MB/s [  1007.1 IOPS]
>     Random Read 4KB (QD=32) :   130.020 MB/s [ 31743.2 IOPS]
>    Random Write 4KB (QD=32) :   105.073 MB/s [ 25652.6 IOPS]
> 
> 
> Xen - 4.5.0
> Dom0 kernel (XenServer kernel Creedence prerelease) - kernel-3.10.41-
> 299.380404
> 
> Why are "Random Read/Write 4KB (QD=1)" tests with new Pv drivers slower
> (~4x) than GplPv and even slower than without any Pv drivers ?
> 

Good question. There's clearly something going wrong there - like a missed event - so we'll have to try to repro your numbers and have a look.

Thanks,

  Paul

> Thanks for clarification, Martin Cerveny
> 
> _______________________________________________
> win-pv-devel mailing list
> win-pv-devel@lists.xenproject.org
> http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 15 14:18:42 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 15 Apr 2015 14:18:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YiO9J-0006dR-QE; Wed, 15 Apr 2015 14:18:41 +0000
Received: from mail6.bemta14.messagelabs.com ([193.109.254.103])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YiO9J-0006dD-9R
	for win-pv-devel@lists.xenproject.org; Wed, 15 Apr 2015 14:18:41 +0000
Received: from [193.109.254.147] by server-4.bemta-14.messagelabs.com id
	21/97-23180-0437E255; Wed, 15 Apr 2015 14:18:40 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-9.tower-27.messagelabs.com!1429107517!18173403!1
X-Originating-IP: [74.125.82.50]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 18697 invoked from network); 15 Apr 2015 14:18:38 -0000
Received: from mail-wg0-f50.google.com (HELO mail-wg0-f50.google.com)
	(74.125.82.50)
	by server-9.tower-27.messagelabs.com with RC4-SHA encrypted SMTP;
	15 Apr 2015 14:18:38 -0000
Received: by wgin8 with SMTP id n8so48512504wgi.0
	for <win-pv-devel@lists.xenproject.org>;
	Wed, 15 Apr 2015 07:18:37 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id;
	bh=6ZAm6p64J30CHApV6sHcJfH26RoxCxkA03IElRj/zbE=;
	b=0yMaCcGDg4mvzszOSJZjjq1gTESI/cG+BAmO/IXqaSg4B9GF15PqU//ZxKoX53jL7g
	iU9K0Jqxtaj5WyGsVFMTlol9J3DZcGC93PNBba7vm6y67hzMsIZAkYj+0e4HSsRPLS8R
	+ELnq5I7Lla038P9oJ4Lo/G6hWs16qyj1bUKGBZgOEBNpyChJ4OD6uKmD+/IJNftvqtz
	k0fQdDl95Uqx0arxCoxY/KtcQfmy0swObLDD1kZ09p8XloLJzJWLDaJ7MujRyOuEKJkk
	qnrnIFS9I9KhEoCdvzNtc10TSB4zllv0z4GTRZZmr50XqWdOaZw/baxdDUCAPZJqIdV3
	Zxjg==
X-Received: by 10.180.109.134 with SMTP id hs6mr42710745wib.14.1429107517718; 
	Wed, 15 Apr 2015 07:18:37 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id wr2sm6170664wjb.45.2015.04.15.07.18.36
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Wed, 15 Apr 2015 07:18:36 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Wed, 15 Apr 2015 15:18:38 +0100
Message-Id: <1429107518-9804-1-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH] Ping the transmitter backend when trying to
	disable
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Any transmit requests which have been pushed to the backend must be
responded to before the frontend shuts down, otherwise the frontend
cannot safely tear down the shared ring structures. Whilst waiting
for the backend to respond, send events to make sure it is awake.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/xenvif/transmitter.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/xenvif/transmitter.c b/src/xenvif/transmitter.c
index 3aeac93..1a3e26f 100644
--- a/src/xenvif/transmitter.c
+++ b/src/xenvif/transmitter.c
@@ -3321,6 +3321,8 @@ __TransmitterRingDisable(
         Attempt++;
         ASSERT(Attempt < 100);
 
+        // Try to move things along
+        __TransmitterRingSend(Ring);
         TransmitterRingPoll(Ring);
 
         if (State != XenbusStateConnected)
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 15 14:18:42 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 15 Apr 2015 14:18:42 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YiO9J-0006dR-QE; Wed, 15 Apr 2015 14:18:41 +0000
Received: from mail6.bemta14.messagelabs.com ([193.109.254.103])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YiO9J-0006dD-9R
	for win-pv-devel@lists.xenproject.org; Wed, 15 Apr 2015 14:18:41 +0000
Received: from [193.109.254.147] by server-4.bemta-14.messagelabs.com id
	21/97-23180-0437E255; Wed, 15 Apr 2015 14:18:40 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-9.tower-27.messagelabs.com!1429107517!18173403!1
X-Originating-IP: [74.125.82.50]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 18697 invoked from network); 15 Apr 2015 14:18:38 -0000
Received: from mail-wg0-f50.google.com (HELO mail-wg0-f50.google.com)
	(74.125.82.50)
	by server-9.tower-27.messagelabs.com with RC4-SHA encrypted SMTP;
	15 Apr 2015 14:18:38 -0000
Received: by wgin8 with SMTP id n8so48512504wgi.0
	for <win-pv-devel@lists.xenproject.org>;
	Wed, 15 Apr 2015 07:18:37 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id;
	bh=6ZAm6p64J30CHApV6sHcJfH26RoxCxkA03IElRj/zbE=;
	b=0yMaCcGDg4mvzszOSJZjjq1gTESI/cG+BAmO/IXqaSg4B9GF15PqU//ZxKoX53jL7g
	iU9K0Jqxtaj5WyGsVFMTlol9J3DZcGC93PNBba7vm6y67hzMsIZAkYj+0e4HSsRPLS8R
	+ELnq5I7Lla038P9oJ4Lo/G6hWs16qyj1bUKGBZgOEBNpyChJ4OD6uKmD+/IJNftvqtz
	k0fQdDl95Uqx0arxCoxY/KtcQfmy0swObLDD1kZ09p8XloLJzJWLDaJ7MujRyOuEKJkk
	qnrnIFS9I9KhEoCdvzNtc10TSB4zllv0z4GTRZZmr50XqWdOaZw/baxdDUCAPZJqIdV3
	Zxjg==
X-Received: by 10.180.109.134 with SMTP id hs6mr42710745wib.14.1429107517718; 
	Wed, 15 Apr 2015 07:18:37 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id wr2sm6170664wjb.45.2015.04.15.07.18.36
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Wed, 15 Apr 2015 07:18:36 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Wed, 15 Apr 2015 15:18:38 +0100
Message-Id: <1429107518-9804-1-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH] Ping the transmitter backend when trying to
	disable
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Any transmit requests which have been pushed to the backend must be
responded to before the frontend shuts down, otherwise the frontend
cannot safely tear down the shared ring structures. Whilst waiting
for the backend to respond, send events to make sure it is awake.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/xenvif/transmitter.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/xenvif/transmitter.c b/src/xenvif/transmitter.c
index 3aeac93..1a3e26f 100644
--- a/src/xenvif/transmitter.c
+++ b/src/xenvif/transmitter.c
@@ -3321,6 +3321,8 @@ __TransmitterRingDisable(
         Attempt++;
         ASSERT(Attempt < 100);
 
+        // Try to move things along
+        __TransmitterRingSend(Ring);
         TransmitterRingPoll(Ring);
 
         if (State != XenbusStateConnected)
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 15 14:19:13 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 15 Apr 2015 14:19:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YiO9o-0006hm-SQ; Wed, 15 Apr 2015 14:19:12 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YiO9n-0006hV-M7
	for win-pv-devel@lists.xenproject.org; Wed, 15 Apr 2015 14:19:11 +0000
Received: from [85.158.139.211] by server-3.bemta-5.messagelabs.com id
	4C/86-30545-E537E255; Wed, 15 Apr 2015 14:19:10 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-2.tower-206.messagelabs.com!1429107549!16115164!1
X-Originating-IP: [74.125.82.45]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 14075 invoked from network); 15 Apr 2015 14:19:10 -0000
Received: from mail-wg0-f45.google.com (HELO mail-wg0-f45.google.com)
	(74.125.82.45)
	by server-2.tower-206.messagelabs.com with RC4-SHA encrypted SMTP;
	15 Apr 2015 14:19:10 -0000
Received: by wgsk9 with SMTP id k9so48481347wgs.3
	for <win-pv-devel@lists.xenproject.org>;
	Wed, 15 Apr 2015 07:19:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id;
	bh=BINaQRwEe9w8ummtgVl4V9vpzW1EW7utLt4Epyme+BY=;
	b=AJfWpb7UYx8BOarRRH6jAtQoHzPlaold7ZVd3wv+lFz+0YglML4seAUmMk4dAbbpjS
	zwqOKQe5i6p5vAvT/nCV97OinqBqP+j+PPx7o76pXtrNV2QtIrlX98MXsyjwTAp0uaiV
	tKsWJo/QmUg4GBpFEcQ9BPNhFnT0CVEkRmnF6Dj6D8tBsJn7+wG5Nl42OjE0xkgrxTWA
	T6ZcF8JHY3oTnjh9hKjpy4rr7NRQ7B06uN+3vycyhdgtW7ciJ+dwfzewR1a7fkvIKINf
	a5q07yeFw3YE8kN+jsqyh7PZ2+lh+5ineLo85Be68AWAWeV9loEOjDIKUa4ks73cSr8F
	Ha2Q==
X-Received: by 10.180.20.14 with SMTP id j14mr25805771wie.45.1429107549776;
	Wed, 15 Apr 2015 07:19:09 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id e2sm2327832wix.15.2015.04.15.07.19.08
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Wed, 15 Apr 2015 07:19:09 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Wed, 15 Apr 2015 15:19:17 +0100
Message-Id: <1429107557-9364-1-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH] Log a message to note that when a receiver
	is waiting for packets
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Before the receiver object in the frontend can be shut down, the Windows
network stack must return all buffers passed up. The code therefore
waits for this to happen during the VIF Disable method. Add logging to
note that the wait is occuring as it can take a significant amount of time.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/xenvif/receiver.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/src/xenvif/receiver.c b/src/xenvif/receiver.c
index e414fba..20ce0de 100644
--- a/src/xenvif/receiver.c
+++ b/src/xenvif/receiver.c
@@ -3271,9 +3271,15 @@ ReceiverWaitForPackets(
 
     Loaned = Receiver->Loaned;
 
-    while (Receiver->Returned != Loaned) {
-        Trace("waiting for packets\n");
+    if (Receiver->Returned != Loaned) {
+        PXENVIF_FRONTEND    Frontend;
+
+        Frontend = Receiver->Frontend;
 
+        Info("%s\n", FrontendGetPath(Frontend));
+    }
+
+    while (Receiver->Returned != Loaned) {
         (VOID) KeWaitForSingleObject(&Receiver->Event,
                                      Executive,
                                      KernelMode,
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 15 14:19:13 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 15 Apr 2015 14:19:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YiO9o-0006hm-SQ; Wed, 15 Apr 2015 14:19:12 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YiO9n-0006hV-M7
	for win-pv-devel@lists.xenproject.org; Wed, 15 Apr 2015 14:19:11 +0000
Received: from [85.158.139.211] by server-3.bemta-5.messagelabs.com id
	4C/86-30545-E537E255; Wed, 15 Apr 2015 14:19:10 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-2.tower-206.messagelabs.com!1429107549!16115164!1
X-Originating-IP: [74.125.82.45]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 14075 invoked from network); 15 Apr 2015 14:19:10 -0000
Received: from mail-wg0-f45.google.com (HELO mail-wg0-f45.google.com)
	(74.125.82.45)
	by server-2.tower-206.messagelabs.com with RC4-SHA encrypted SMTP;
	15 Apr 2015 14:19:10 -0000
Received: by wgsk9 with SMTP id k9so48481347wgs.3
	for <win-pv-devel@lists.xenproject.org>;
	Wed, 15 Apr 2015 07:19:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id;
	bh=BINaQRwEe9w8ummtgVl4V9vpzW1EW7utLt4Epyme+BY=;
	b=AJfWpb7UYx8BOarRRH6jAtQoHzPlaold7ZVd3wv+lFz+0YglML4seAUmMk4dAbbpjS
	zwqOKQe5i6p5vAvT/nCV97OinqBqP+j+PPx7o76pXtrNV2QtIrlX98MXsyjwTAp0uaiV
	tKsWJo/QmUg4GBpFEcQ9BPNhFnT0CVEkRmnF6Dj6D8tBsJn7+wG5Nl42OjE0xkgrxTWA
	T6ZcF8JHY3oTnjh9hKjpy4rr7NRQ7B06uN+3vycyhdgtW7ciJ+dwfzewR1a7fkvIKINf
	a5q07yeFw3YE8kN+jsqyh7PZ2+lh+5ineLo85Be68AWAWeV9loEOjDIKUa4ks73cSr8F
	Ha2Q==
X-Received: by 10.180.20.14 with SMTP id j14mr25805771wie.45.1429107549776;
	Wed, 15 Apr 2015 07:19:09 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id e2sm2327832wix.15.2015.04.15.07.19.08
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Wed, 15 Apr 2015 07:19:09 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Wed, 15 Apr 2015 15:19:17 +0100
Message-Id: <1429107557-9364-1-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH] Log a message to note that when a receiver
	is waiting for packets
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Before the receiver object in the frontend can be shut down, the Windows
network stack must return all buffers passed up. The code therefore
waits for this to happen during the VIF Disable method. Add logging to
note that the wait is occuring as it can take a significant amount of time.

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/xenvif/receiver.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/src/xenvif/receiver.c b/src/xenvif/receiver.c
index e414fba..20ce0de 100644
--- a/src/xenvif/receiver.c
+++ b/src/xenvif/receiver.c
@@ -3271,9 +3271,15 @@ ReceiverWaitForPackets(
 
     Loaned = Receiver->Loaned;
 
-    while (Receiver->Returned != Loaned) {
-        Trace("waiting for packets\n");
+    if (Receiver->Returned != Loaned) {
+        PXENVIF_FRONTEND    Frontend;
+
+        Frontend = Receiver->Frontend;
 
+        Info("%s\n", FrontendGetPath(Frontend));
+    }
+
+    while (Receiver->Returned != Loaned) {
         (VOID) KeWaitForSingleObject(&Receiver->Event,
                                      Executive,
                                      KernelMode,
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 15 14:19:45 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 15 Apr 2015 14:19:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YiOAL-0006pt-Aq; Wed, 15 Apr 2015 14:19:45 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YiOAK-0006pa-CU
	for win-pv-devel@lists.xenproject.org; Wed, 15 Apr 2015 14:19:44 +0000
Received: from [85.158.137.68] by server-17.bemta-3.messagelabs.com id
	9D/16-14975-F737E255; Wed, 15 Apr 2015 14:19:43 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-12.tower-31.messagelabs.com!1429107582!16688208!1
X-Originating-IP: [209.85.212.173]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 30343 invoked from network); 15 Apr 2015 14:19:42 -0000
Received: from mail-wi0-f173.google.com (HELO mail-wi0-f173.google.com)
	(209.85.212.173)
	by server-12.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	15 Apr 2015 14:19:42 -0000
Received: by wiax7 with SMTP id x7so113220030wia.0
	for <win-pv-devel@lists.xenproject.org>;
	Wed, 15 Apr 2015 07:19:42 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id;
	bh=qlvd4kd3C/kY5JHd1MLH8hrNb+8FXxnQyltYePPvAxQ=;
	b=KK8cW05A/tjpuLZTQ4KR4/uq/Yf1RXb8k8QPu8iC6zLQ9V3JFF/nKpTZq7uwsXYzCd
	I8mC/YDlEws58cMOSVicDaKmnRfLJybKJksNALOIQaR/3FxdWWp4LWKcbAlooTui4Yza
	I+F0fDOibCIUlgaTbR5aAVou7fbRHmRsNEClI5vMXKWA/zkbAlw4TKnuPV6UgNkgSlX7
	m0XWipFUzo3Qa11n2WK1GMr+qobDzfBmEX8G1MUDdM/6Hu9f91BUXHD+02Qylh1HIix5
	AFn5NklQtz13qrPafqnkH7KjRzdqbuE01LOZFR6P3JB3R3TRMg4GcwmEvwi7szy7h9/+
	uRuw==
X-Received: by 10.180.126.41 with SMTP id mv9mr42794199wib.72.1429107582526;
	Wed, 15 Apr 2015 07:19:42 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id n1sm7437453wix.0.2015.04.15.07.19.41
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Wed, 15 Apr 2015 07:19:41 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Wed, 15 Apr 2015 15:19:50 +0100
Message-Id: <1429107590-12388-1-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH] Remove excessive force-inlining from
	co-installer
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/coinst/coinst.c                        | 56 +++++++++++++++---------------
 vs2012/xenvif_coinst/xenvif_coinst.vcxproj |  2 +-
 vs2013/xenvif_coinst/xenvif_coinst.vcxproj |  2 +-
 3 files changed, 30 insertions(+), 30 deletions(-)

diff --git a/src/coinst/coinst.c b/src/coinst/coinst.c
index bc3c214..82bd86e 100644
--- a/src/coinst/coinst.c
+++ b/src/coinst/coinst.c
@@ -103,8 +103,8 @@ __Log(
 #define Log(_Format, ...) \
         __Log(__MODULE__ "|" __FUNCTION__ ": " _Format, __VA_ARGS__)
 
-static FORCEINLINE PTCHAR
-__GetErrorMessage(
+static PTCHAR
+GetErrorMessage(
     IN  DWORD   Error
     )
 {
@@ -338,7 +338,7 @@ fail1:
     {
         PTCHAR  Message;
 
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -476,7 +476,7 @@ fail1:
     {
         PTCHAR  Message;
 
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -612,7 +612,7 @@ fail1:
     {
         PTCHAR  Message;
 
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -741,7 +741,7 @@ fail1:
     {
         PTCHAR  Message;
 
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -789,7 +789,7 @@ fail1:
 
     {
         PTCHAR  Message;
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -860,7 +860,7 @@ fail1:
 
     {
         PTCHAR  Message;
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -911,7 +911,7 @@ fail1:
 
     {
         PTCHAR  Message;
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -919,8 +919,8 @@ fail1:
     return FALSE;
 }
 
-static FORCEINLINE HRESULT
-__DifInstallPreProcess(
+static HRESULT
+DifInstallPreProcess(
     IN  HDEVINFO                    DeviceInfoSet,
     IN  PSP_DEVINFO_DATA            DeviceInfoData,
     IN  PCOINSTALLER_CONTEXT_DATA   Context
@@ -949,7 +949,7 @@ fail1:
     {
         PTCHAR  Message;
 
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -957,8 +957,8 @@ fail1:
     return Error;
 }
 
-static FORCEINLINE HRESULT
-__DifInstallPostProcess(
+static HRESULT
+DifInstallPostProcess(
     IN  HDEVINFO                    DeviceInfoSet,
     IN  PSP_DEVINFO_DATA            DeviceInfoData,
     IN  PCOINSTALLER_CONTEXT_DATA   Context
@@ -1005,7 +1005,7 @@ DifInstall(
     Log("Flags = %08x", DeviceInstallParams.Flags);
 
     if (!Context->PostProcessing) {
-        Error = __DifInstallPreProcess(DeviceInfoSet, DeviceInfoData, Context);
+        Error = DifInstallPreProcess(DeviceInfoSet, DeviceInfoData, Context);
 
         if (Error == NO_ERROR)
             Error = ERROR_DI_POSTPROCESSING_REQUIRED; 
@@ -1013,12 +1013,12 @@ DifInstall(
         Error = Context->InstallResult;
         
         if (Error == NO_ERROR) {
-            (VOID) __DifInstallPostProcess(DeviceInfoSet, DeviceInfoData, Context);
+            (VOID) DifInstallPostProcess(DeviceInfoSet, DeviceInfoData, Context);
         } else {
             PTCHAR  Message;
 
-            Message = __GetErrorMessage(Error);
-            Log("NOT RUNNING (__DifInstallPreProcess Error: %s)", Message);
+            Message = GetErrorMessage(Error);
+            Log("NOT RUNNING (DifInstallPreProcess Error: %s)", Message);
             LocalFree(Message);
         }
 
@@ -1033,7 +1033,7 @@ fail1:
     {
         PTCHAR  Message;
 
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -1041,8 +1041,8 @@ fail1:
     return Error;
 }
 
-static FORCEINLINE HRESULT
-__DifRemovePreProcess(
+static HRESULT
+DifRemovePreProcess(
     IN  HDEVINFO                    DeviceInfoSet,
     IN  PSP_DEVINFO_DATA            DeviceInfoData,
     IN  PCOINSTALLER_CONTEXT_DATA   Context
@@ -1063,8 +1063,8 @@ __DifRemovePreProcess(
     return NO_ERROR; 
 }
 
-static FORCEINLINE HRESULT
-__DifRemovePostProcess(
+static HRESULT
+DifRemovePostProcess(
     IN  HDEVINFO                    DeviceInfoSet,
     IN  PSP_DEVINFO_DATA            DeviceInfoData,
     IN  PCOINSTALLER_CONTEXT_DATA   Context
@@ -1099,7 +1099,7 @@ DifRemove(
     Log("Flags = %08x", DeviceInstallParams.Flags);
 
     if (!Context->PostProcessing) {
-        Error = __DifRemovePreProcess(DeviceInfoSet, DeviceInfoData, Context);
+        Error = DifRemovePreProcess(DeviceInfoSet, DeviceInfoData, Context);
 
         if (Error == NO_ERROR)
             Error = ERROR_DI_POSTPROCESSING_REQUIRED; 
@@ -1107,12 +1107,12 @@ DifRemove(
         Error = Context->InstallResult;
         
         if (Error == NO_ERROR) {
-            (VOID) __DifRemovePostProcess(DeviceInfoSet, DeviceInfoData, Context);
+            (VOID) DifRemovePostProcess(DeviceInfoSet, DeviceInfoData, Context);
         } else {
             PTCHAR  Message;
 
-            Message = __GetErrorMessage(Error);
-            Log("NOT RUNNING (__DifRemovePreProcess Error: %s)", Message);
+            Message = GetErrorMessage(Error);
+            Log("NOT RUNNING (DifRemovePreProcess Error: %s)", Message);
             LocalFree(Message);
         }
 
@@ -1127,7 +1127,7 @@ fail1:
     {
         PTCHAR  Message;
 
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
diff --git a/vs2012/xenvif_coinst/xenvif_coinst.vcxproj b/vs2012/xenvif_coinst/xenvif_coinst.vcxproj
index b50dd77..da24ed0 100644
--- a/vs2012/xenvif_coinst/xenvif_coinst.vcxproj
+++ b/vs2012/xenvif_coinst/xenvif_coinst.vcxproj
@@ -29,7 +29,7 @@
     <ClCompile>
       <PreprocessorDefinitions>__MODULE__="XENVIF_COINST";%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <WarningLevel>EnableAllWarnings</WarningLevel>
-      <DisableSpecificWarnings>4127;4548;4820;4668;4255;6001;6054;28196;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <DisableSpecificWarnings>4127;4548;4711;4820;4668;4255;6001;6054;28196;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
       <EnablePREfast>true</EnablePREfast>
       <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary>
diff --git a/vs2013/xenvif_coinst/xenvif_coinst.vcxproj b/vs2013/xenvif_coinst/xenvif_coinst.vcxproj
index 3b3607e..94d80c1 100644
--- a/vs2013/xenvif_coinst/xenvif_coinst.vcxproj
+++ b/vs2013/xenvif_coinst/xenvif_coinst.vcxproj
@@ -29,7 +29,7 @@
     <ClCompile>
       <PreprocessorDefinitions>__MODULE__="XENVIF_COINST";%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <WarningLevel>EnableAllWarnings</WarningLevel>
-      <DisableSpecificWarnings>4127;4548;4820;4668;4255;6001;6054;28196;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <DisableSpecificWarnings>4127;4548;4711;4820;4668;4255;6001;6054;28196;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
       <EnablePREfast>true</EnablePREfast>
       <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary>
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Wed Apr 15 14:19:45 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 15 Apr 2015 14:19:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YiOAL-0006pt-Aq; Wed, 15 Apr 2015 14:19:45 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YiOAK-0006pa-CU
	for win-pv-devel@lists.xenproject.org; Wed, 15 Apr 2015 14:19:44 +0000
Received: from [85.158.137.68] by server-17.bemta-3.messagelabs.com id
	9D/16-14975-F737E255; Wed, 15 Apr 2015 14:19:43 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-12.tower-31.messagelabs.com!1429107582!16688208!1
X-Originating-IP: [209.85.212.173]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 30343 invoked from network); 15 Apr 2015 14:19:42 -0000
Received: from mail-wi0-f173.google.com (HELO mail-wi0-f173.google.com)
	(209.85.212.173)
	by server-12.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	15 Apr 2015 14:19:42 -0000
Received: by wiax7 with SMTP id x7so113220030wia.0
	for <win-pv-devel@lists.xenproject.org>;
	Wed, 15 Apr 2015 07:19:42 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id;
	bh=qlvd4kd3C/kY5JHd1MLH8hrNb+8FXxnQyltYePPvAxQ=;
	b=KK8cW05A/tjpuLZTQ4KR4/uq/Yf1RXb8k8QPu8iC6zLQ9V3JFF/nKpTZq7uwsXYzCd
	I8mC/YDlEws58cMOSVicDaKmnRfLJybKJksNALOIQaR/3FxdWWp4LWKcbAlooTui4Yza
	I+F0fDOibCIUlgaTbR5aAVou7fbRHmRsNEClI5vMXKWA/zkbAlw4TKnuPV6UgNkgSlX7
	m0XWipFUzo3Qa11n2WK1GMr+qobDzfBmEX8G1MUDdM/6Hu9f91BUXHD+02Qylh1HIix5
	AFn5NklQtz13qrPafqnkH7KjRzdqbuE01LOZFR6P3JB3R3TRMg4GcwmEvwi7szy7h9/+
	uRuw==
X-Received: by 10.180.126.41 with SMTP id mv9mr42794199wib.72.1429107582526;
	Wed, 15 Apr 2015 07:19:42 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id n1sm7437453wix.0.2015.04.15.07.19.41
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Wed, 15 Apr 2015 07:19:41 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Wed, 15 Apr 2015 15:19:50 +0100
Message-Id: <1429107590-12388-1-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH] Remove excessive force-inlining from
	co-installer
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/coinst/coinst.c                        | 56 +++++++++++++++---------------
 vs2012/xenvif_coinst/xenvif_coinst.vcxproj |  2 +-
 vs2013/xenvif_coinst/xenvif_coinst.vcxproj |  2 +-
 3 files changed, 30 insertions(+), 30 deletions(-)

diff --git a/src/coinst/coinst.c b/src/coinst/coinst.c
index bc3c214..82bd86e 100644
--- a/src/coinst/coinst.c
+++ b/src/coinst/coinst.c
@@ -103,8 +103,8 @@ __Log(
 #define Log(_Format, ...) \
         __Log(__MODULE__ "|" __FUNCTION__ ": " _Format, __VA_ARGS__)
 
-static FORCEINLINE PTCHAR
-__GetErrorMessage(
+static PTCHAR
+GetErrorMessage(
     IN  DWORD   Error
     )
 {
@@ -338,7 +338,7 @@ fail1:
     {
         PTCHAR  Message;
 
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -476,7 +476,7 @@ fail1:
     {
         PTCHAR  Message;
 
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -612,7 +612,7 @@ fail1:
     {
         PTCHAR  Message;
 
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -741,7 +741,7 @@ fail1:
     {
         PTCHAR  Message;
 
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -789,7 +789,7 @@ fail1:
 
     {
         PTCHAR  Message;
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -860,7 +860,7 @@ fail1:
 
     {
         PTCHAR  Message;
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -911,7 +911,7 @@ fail1:
 
     {
         PTCHAR  Message;
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -919,8 +919,8 @@ fail1:
     return FALSE;
 }
 
-static FORCEINLINE HRESULT
-__DifInstallPreProcess(
+static HRESULT
+DifInstallPreProcess(
     IN  HDEVINFO                    DeviceInfoSet,
     IN  PSP_DEVINFO_DATA            DeviceInfoData,
     IN  PCOINSTALLER_CONTEXT_DATA   Context
@@ -949,7 +949,7 @@ fail1:
     {
         PTCHAR  Message;
 
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -957,8 +957,8 @@ fail1:
     return Error;
 }
 
-static FORCEINLINE HRESULT
-__DifInstallPostProcess(
+static HRESULT
+DifInstallPostProcess(
     IN  HDEVINFO                    DeviceInfoSet,
     IN  PSP_DEVINFO_DATA            DeviceInfoData,
     IN  PCOINSTALLER_CONTEXT_DATA   Context
@@ -1005,7 +1005,7 @@ DifInstall(
     Log("Flags = %08x", DeviceInstallParams.Flags);
 
     if (!Context->PostProcessing) {
-        Error = __DifInstallPreProcess(DeviceInfoSet, DeviceInfoData, Context);
+        Error = DifInstallPreProcess(DeviceInfoSet, DeviceInfoData, Context);
 
         if (Error == NO_ERROR)
             Error = ERROR_DI_POSTPROCESSING_REQUIRED; 
@@ -1013,12 +1013,12 @@ DifInstall(
         Error = Context->InstallResult;
         
         if (Error == NO_ERROR) {
-            (VOID) __DifInstallPostProcess(DeviceInfoSet, DeviceInfoData, Context);
+            (VOID) DifInstallPostProcess(DeviceInfoSet, DeviceInfoData, Context);
         } else {
             PTCHAR  Message;
 
-            Message = __GetErrorMessage(Error);
-            Log("NOT RUNNING (__DifInstallPreProcess Error: %s)", Message);
+            Message = GetErrorMessage(Error);
+            Log("NOT RUNNING (DifInstallPreProcess Error: %s)", Message);
             LocalFree(Message);
         }
 
@@ -1033,7 +1033,7 @@ fail1:
     {
         PTCHAR  Message;
 
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
@@ -1041,8 +1041,8 @@ fail1:
     return Error;
 }
 
-static FORCEINLINE HRESULT
-__DifRemovePreProcess(
+static HRESULT
+DifRemovePreProcess(
     IN  HDEVINFO                    DeviceInfoSet,
     IN  PSP_DEVINFO_DATA            DeviceInfoData,
     IN  PCOINSTALLER_CONTEXT_DATA   Context
@@ -1063,8 +1063,8 @@ __DifRemovePreProcess(
     return NO_ERROR; 
 }
 
-static FORCEINLINE HRESULT
-__DifRemovePostProcess(
+static HRESULT
+DifRemovePostProcess(
     IN  HDEVINFO                    DeviceInfoSet,
     IN  PSP_DEVINFO_DATA            DeviceInfoData,
     IN  PCOINSTALLER_CONTEXT_DATA   Context
@@ -1099,7 +1099,7 @@ DifRemove(
     Log("Flags = %08x", DeviceInstallParams.Flags);
 
     if (!Context->PostProcessing) {
-        Error = __DifRemovePreProcess(DeviceInfoSet, DeviceInfoData, Context);
+        Error = DifRemovePreProcess(DeviceInfoSet, DeviceInfoData, Context);
 
         if (Error == NO_ERROR)
             Error = ERROR_DI_POSTPROCESSING_REQUIRED; 
@@ -1107,12 +1107,12 @@ DifRemove(
         Error = Context->InstallResult;
         
         if (Error == NO_ERROR) {
-            (VOID) __DifRemovePostProcess(DeviceInfoSet, DeviceInfoData, Context);
+            (VOID) DifRemovePostProcess(DeviceInfoSet, DeviceInfoData, Context);
         } else {
             PTCHAR  Message;
 
-            Message = __GetErrorMessage(Error);
-            Log("NOT RUNNING (__DifRemovePreProcess Error: %s)", Message);
+            Message = GetErrorMessage(Error);
+            Log("NOT RUNNING (DifRemovePreProcess Error: %s)", Message);
             LocalFree(Message);
         }
 
@@ -1127,7 +1127,7 @@ fail1:
     {
         PTCHAR  Message;
 
-        Message = __GetErrorMessage(Error);
+        Message = GetErrorMessage(Error);
         Log("fail1 (%s)", Message);
         LocalFree(Message);
     }
diff --git a/vs2012/xenvif_coinst/xenvif_coinst.vcxproj b/vs2012/xenvif_coinst/xenvif_coinst.vcxproj
index b50dd77..da24ed0 100644
--- a/vs2012/xenvif_coinst/xenvif_coinst.vcxproj
+++ b/vs2012/xenvif_coinst/xenvif_coinst.vcxproj
@@ -29,7 +29,7 @@
     <ClCompile>
       <PreprocessorDefinitions>__MODULE__="XENVIF_COINST";%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <WarningLevel>EnableAllWarnings</WarningLevel>
-      <DisableSpecificWarnings>4127;4548;4820;4668;4255;6001;6054;28196;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <DisableSpecificWarnings>4127;4548;4711;4820;4668;4255;6001;6054;28196;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
       <EnablePREfast>true</EnablePREfast>
       <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary>
diff --git a/vs2013/xenvif_coinst/xenvif_coinst.vcxproj b/vs2013/xenvif_coinst/xenvif_coinst.vcxproj
index 3b3607e..94d80c1 100644
--- a/vs2013/xenvif_coinst/xenvif_coinst.vcxproj
+++ b/vs2013/xenvif_coinst/xenvif_coinst.vcxproj
@@ -29,7 +29,7 @@
     <ClCompile>
       <PreprocessorDefinitions>__MODULE__="XENVIF_COINST";%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <WarningLevel>EnableAllWarnings</WarningLevel>
-      <DisableSpecificWarnings>4127;4548;4820;4668;4255;6001;6054;28196;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <DisableSpecificWarnings>4127;4548;4711;4820;4668;4255;6001;6054;28196;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
       <EnablePREfast>true</EnablePREfast>
       <RuntimeLibrary Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary>
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Mon Apr 20 16:19:00 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 20 Apr 2015 16:19:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YkEPT-0002bv-3n; Mon, 20 Apr 2015 16:18:59 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YkEPR-0002bp-Qp
	for win-pv-devel@lists.xenproject.org; Mon, 20 Apr 2015 16:18:58 +0000
Received: from [85.158.137.68] by server-9.bemta-3.messagelabs.com id
	3A/EB-26324-1F625355; Mon, 20 Apr 2015 16:18:57 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-3.tower-31.messagelabs.com!1429546735!18212427!1
X-Originating-IP: [209.85.160.175]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 16217 invoked from network); 20 Apr 2015 16:18:56 -0000
Received: from mail-yk0-f175.google.com (HELO mail-yk0-f175.google.com)
	(209.85.160.175)
	by server-3.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	20 Apr 2015 16:18:56 -0000
Received: by ykfa3 with SMTP id a3so18522484ykf.0
	for <win-pv-devel@lists.xenproject.org>;
	Mon, 20 Apr 2015 09:18:55 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id;
	bh=y2Koi7ChRWQZbly38Cg2voIRF0YlMmUyJCLHUWJWk/8=;
	b=nmytlgJnFqUomS+S4aiT90mEXckXCuaNAOrbWgY+/0EZwXRgEjN0f0msKzVdnksz5A
	dMa4GNuFUBEcBtQfsUFr9UBRBr5eEeRmvR/kZreVapPm3ouLLdOcCavDQ53LOHyJ4wPT
	isag457IvrdHr9owxPdCYNGpUFbpB2q9/jQYiVB+3cedwOtwu+9hpuwlW3CCcJ+iQaqu
	aDF6w5Axbv9jBPZdgSZ6f4/d5qBzz0oiAivJx+to2pjaXWuTraIXwPK2+lnrVbi+RWSE
	Xt6IDUqnAU5AF1MYBuauVE0ZvnCiZ9jAEXfbdGRKva3587WVEPkHqyry9Zfx4GFxGAbC
	TBgg==
X-Received: by 10.170.138.134 with SMTP id f128mr15659965ykc.90.1429546735116; 
	Mon, 20 Apr 2015 09:18:55 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id 29sm15773767yhe.50.2015.04.20.09.18.53
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Mon, 20 Apr 2015 09:18:54 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Mon, 20 Apr 2015 17:18:59 +0100
Message-Id: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH 0/4] Fix VIF plug/unplug races
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

XenServer system test highlighted problems with VIF plug and unplug not
always completing successfully. Several races were then subsequently
exposed by running a script to continuously plug and unplug a vif in
a tight loop.

This series re-works several aspects of the PDO management and
frontend code to fix these races.

Patch #1 fixes a BSOD the could occur if the VIF was unplugged very
quickly after detection by the frontend.

Patch #2 removes excessive function inlining that made debugging tricky

Patch #3 prevents some uninteresting log spew

Patch #4 re-works the frontend state model code and also the way in
which IoRequestDeviceEject() is invoked, to avoid it racing with PDO
destruction due to surprise removal.

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Mon Apr 20 16:19:00 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 20 Apr 2015 16:19:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YkEPT-0002bv-3n; Mon, 20 Apr 2015 16:18:59 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YkEPR-0002bp-Qp
	for win-pv-devel@lists.xenproject.org; Mon, 20 Apr 2015 16:18:58 +0000
Received: from [85.158.137.68] by server-9.bemta-3.messagelabs.com id
	3A/EB-26324-1F625355; Mon, 20 Apr 2015 16:18:57 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-3.tower-31.messagelabs.com!1429546735!18212427!1
X-Originating-IP: [209.85.160.175]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 16217 invoked from network); 20 Apr 2015 16:18:56 -0000
Received: from mail-yk0-f175.google.com (HELO mail-yk0-f175.google.com)
	(209.85.160.175)
	by server-3.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	20 Apr 2015 16:18:56 -0000
Received: by ykfa3 with SMTP id a3so18522484ykf.0
	for <win-pv-devel@lists.xenproject.org>;
	Mon, 20 Apr 2015 09:18:55 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id;
	bh=y2Koi7ChRWQZbly38Cg2voIRF0YlMmUyJCLHUWJWk/8=;
	b=nmytlgJnFqUomS+S4aiT90mEXckXCuaNAOrbWgY+/0EZwXRgEjN0f0msKzVdnksz5A
	dMa4GNuFUBEcBtQfsUFr9UBRBr5eEeRmvR/kZreVapPm3ouLLdOcCavDQ53LOHyJ4wPT
	isag457IvrdHr9owxPdCYNGpUFbpB2q9/jQYiVB+3cedwOtwu+9hpuwlW3CCcJ+iQaqu
	aDF6w5Axbv9jBPZdgSZ6f4/d5qBzz0oiAivJx+to2pjaXWuTraIXwPK2+lnrVbi+RWSE
	Xt6IDUqnAU5AF1MYBuauVE0ZvnCiZ9jAEXfbdGRKva3587WVEPkHqyry9Zfx4GFxGAbC
	TBgg==
X-Received: by 10.170.138.134 with SMTP id f128mr15659965ykc.90.1429546735116; 
	Mon, 20 Apr 2015 09:18:55 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id 29sm15773767yhe.50.2015.04.20.09.18.53
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Mon, 20 Apr 2015 09:18:54 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Mon, 20 Apr 2015 17:18:59 +0100
Message-Id: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH 0/4] Fix VIF plug/unplug races
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

XenServer system test highlighted problems with VIF plug and unplug not
always completing successfully. Several races were then subsequently
exposed by running a script to continuously plug and unplug a vif in
a tight loop.

This series re-works several aspects of the PDO management and
frontend code to fix these races.

Patch #1 fixes a BSOD the could occur if the VIF was unplugged very
quickly after detection by the frontend.

Patch #2 removes excessive function inlining that made debugging tricky

Patch #3 prevents some uninteresting log spew

Patch #4 re-works the frontend state model code and also the way in
which IoRequestDeviceEject() is invoked, to avoid it racing with PDO
destruction due to surprise removal.

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Mon Apr 20 16:19:02 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 20 Apr 2015 16:19:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YkEPV-0002cN-58; Mon, 20 Apr 2015 16:19:01 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YkEPT-0002bz-VW
	for win-pv-devel@lists.xenproject.org; Mon, 20 Apr 2015 16:19:00 +0000
Received: from [85.158.137.68] by server-4.bemta-3.messagelabs.com id
	ED/B5-18531-3F625355; Mon, 20 Apr 2015 16:18:59 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-11.tower-31.messagelabs.com!1429546737!18226414!1
X-Originating-IP: [209.85.160.182]
X-SpamReason: No, hits=0.0 required=7.0 tests=UPPERCASE_25_50
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 1023 invoked from network); 20 Apr 2015 16:18:58 -0000
Received: from mail-yk0-f182.google.com (HELO mail-yk0-f182.google.com)
	(209.85.160.182)
	by server-11.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	20 Apr 2015 16:18:58 -0000
Received: by ykec202 with SMTP id c202so18532521yke.2
	for <win-pv-devel@lists.xenproject.org>;
	Mon, 20 Apr 2015 09:18:57 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id:in-reply-to:references;
	bh=rEBZij0hqrKZaI5066OIvCQLPcqyVCYzwxFW2K25WFk=;
	b=EUAlHs1WYgLUAPwrAAY+6hJJPldmZCEdk3JFepk85owBVWdtZvfkVnCEIdTzFP4xSL
	md0xMrb1Eb9jc2gtEB/nEKgxpVl6YYsuLDn7+Ns3Mry/Uj0gaeGDm2GMLC6at8zSOt6o
	gemtMZgFLLnakaAJ6IB4BBMLuwSb/6nXVuMl57a+ZZtji/ehIAjAafAvx/JJCJtFMt0V
	0z/YoVXW8o/9XZnfwC0Q2FJ3ZRyr3W1d/Gw40kISIdUDXu7pkcHx5PwyjTSPXHT3NhuS
	BljaYy42d+hdibPD43K+uWkIBsc+aWlzSEuS+UVnNAY5xtwWdgGSgMLx1P181xdq7Zwl
	q7BA==
X-Received: by 10.170.135.19 with SMTP id b19mr15202838ykc.27.1429546737049;
	Mon, 20 Apr 2015 09:18:57 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id 29sm15773767yhe.50.2015.04.20.09.18.55
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Mon, 20 Apr 2015 09:18:56 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Mon, 20 Apr 2015 17:19:00 +0100
Message-Id: <1429546743-8196-2-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
In-Reply-To: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
References: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH 1/4] Allow PdoResume() to fail
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

At the moment FrontendResume() can fail, but PdoResume() cannot and hence
the error status is ignored. This is problematic because it is not safe to
call FrontendSuspend() if FrontendResume() did not complete successfully.
This patch, therefore, wires through the failure of FrontendResume() into
PdoResume() and on into FdoAddPhysicalDeviceObject().

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/xenvif/fdo.c | 37 +++++++++++++++++++++++++++----------
 src/xenvif/fdo.h |  2 +-
 src/xenvif/pdo.c | 47 +++++++++++++++++++++++++++++------------------
 src/xenvif/pdo.h |  2 +-
 4 files changed, 58 insertions(+), 30 deletions(-)

diff --git a/src/xenvif/fdo.c b/src/xenvif/fdo.c
index 4b40777..3f6713b 100644
--- a/src/xenvif/fdo.c
+++ b/src/xenvif/fdo.c
@@ -614,7 +614,7 @@ FdoForwardIrpSynchronously(
     return status;
 }
 
-VOID
+NTSTATUS
 FdoAddPhysicalDeviceObject(
     IN  PXENVIF_FDO     Fdo,
     IN  PXENVIF_PDO     Pdo
@@ -622,17 +622,30 @@ FdoAddPhysicalDeviceObject(
 {
     PDEVICE_OBJECT      DeviceObject;
     PXENVIF_DX          Dx;
+    NTSTATUS            status;
 
     DeviceObject = PdoGetDeviceObject(Pdo);
     Dx = (PXENVIF_DX)DeviceObject->DeviceExtension;
     ASSERT3U(Dx->Type, ==, PHYSICAL_DEVICE_OBJECT);
 
+    if (__FdoGetDevicePowerState(Fdo) == PowerDeviceD3)
+        goto done;
+
+    status = PdoResume(Pdo);
+    if (!NT_SUCCESS(status))
+        goto fail1;
+
+done:
     InsertTailList(&Fdo->Dx->ListEntry, &Dx->ListEntry);
     ASSERT3U(Fdo->References, !=, 0);
     Fdo->References++;
 
-    if (__FdoGetDevicePowerState(Fdo) == PowerDeviceD0)
-        PdoResume(Pdo);
+    return STATUS_SUCCESS;
+
+fail1:
+    Error("fail1 (%08x)\n", status);
+
+    return status;
 }
 
 VOID
@@ -648,9 +661,12 @@ FdoRemovePhysicalDeviceObject(
     Dx = (PXENVIF_DX)DeviceObject->DeviceExtension;
     ASSERT3U(Dx->Type, ==, PHYSICAL_DEVICE_OBJECT);
 
-    if (__FdoGetDevicePowerState(Fdo) == PowerDeviceD0)
-        PdoSuspend(Pdo);
+    if (__FdoGetDevicePowerState(Fdo) == PowerDeviceD3)
+        goto done;
 
+    PdoSuspend(Pdo);
+
+done:
     RemoveEntryList(&Dx->ListEntry);
     ASSERT3U(Fdo->References, !=, 0);
     --Fdo->References;
@@ -1176,7 +1192,8 @@ FdoD3ToD0(
 
         ASSERT3U(Dx->Type, ==, PHYSICAL_DEVICE_OBJECT);
 
-        PdoResume(Pdo);
+        status = PdoResume(Pdo);
+        ASSERT(NT_SUCCESS(status));
     }
 
     __FdoReleaseMutex(Fdo);
@@ -2881,6 +2898,8 @@ FdoCreate(
     if (!NT_SUCCESS(status))
         goto fail13;
 
+    Dx->Fdo = Fdo;
+
     InitializeMutex(&Fdo->Mutex);
     InitializeListHead(&Dx->ListEntry);
     Fdo->References = 1;
@@ -2889,9 +2908,7 @@ FdoCreate(
          FunctionDeviceObject,
          __FdoGetName(Fdo));
 
-    Dx->Fdo = Fdo;
     FunctionDeviceObject->Flags &= ~DO_DEVICE_INITIALIZING;
-
     return STATUS_SUCCESS;
 
 fail13:
@@ -2996,10 +3013,10 @@ FdoDestroy(
          FunctionDeviceObject,
          __FdoGetName(Fdo));
 
-    Dx->Fdo = NULL;
-
     RtlZeroMemory(&Fdo->Mutex, sizeof (MUTEX));
 
+    Dx->Fdo = NULL;
+
     RtlZeroMemory(&Fdo->GnttabInterface,
                   sizeof (XENBUS_GNTTAB_INTERFACE));
 
diff --git a/src/xenvif/fdo.h b/src/xenvif/fdo.h
index 78cfbfb..68d7b4a 100644
--- a/src/xenvif/fdo.h
+++ b/src/xenvif/fdo.h
@@ -55,7 +55,7 @@ FdoGetName(
     IN  PXENVIF_FDO Fdo
     );
 
-extern VOID
+extern NTSTATUS
 FdoAddPhysicalDeviceObject(
     IN  PXENVIF_FDO     Fdo,
     IN  PXENVIF_PDO     Pdo
diff --git a/src/xenvif/pdo.c b/src/xenvif/pdo.c
index 9352594..dc7eacd 100644
--- a/src/xenvif/pdo.c
+++ b/src/xenvif/pdo.c
@@ -2552,16 +2552,12 @@ PdoDispatch(
     return status;
 }
 
-VOID
+NTSTATUS
 PdoResume(
-    IN  PXENVIF_PDO     Pdo
+    IN  PXENVIF_PDO Pdo
     )
 {
-    Trace("====>\n");
-
-    FrontendResume(__PdoGetFrontend(Pdo));
-
-    Trace("<====\n");
+    return FrontendResume(__PdoGetFrontend(Pdo));
 }
 
 VOID
@@ -2569,11 +2565,7 @@ PdoSuspend(
     IN  PXENVIF_PDO     Pdo
     )
 {
-    Trace("====>\n");
-
     FrontendSuspend(__PdoGetFrontend(Pdo));
-
-    Trace("<====\n");
 }
 
 NTSTATUS
@@ -2654,6 +2646,14 @@ PdoCreate(
 
     FdoGetSuspendInterface(Fdo,&Pdo->SuspendInterface);
 
+    Dx->Pdo = Pdo;
+
+    KeInitializeSpinLock(&Pdo->EjectLock);
+
+    status = FdoAddPhysicalDeviceObject(Fdo, Pdo);
+    if (!NT_SUCCESS(status))
+        goto fail11;
+
     for (Index = 0; Index < Pdo->Count; Index++) {
         Info("%p (%s %08X)\n",
              PhysicalDeviceObject,
@@ -2661,14 +2661,22 @@ PdoCreate(
              Pdo->Revision[Index]);
     }
 
-    Dx->Pdo = Pdo;
     PhysicalDeviceObject->Flags &= ~DO_DEVICE_INITIALIZING;
+    return STATUS_SUCCESS;
 
-    KeInitializeSpinLock(&Pdo->EjectLock);
+fail11:
+    Error("fail11\n");
 
-    FdoAddPhysicalDeviceObject(Fdo, Pdo);
+    (VOID) __PdoClearEjectRequested(Pdo);
+    RtlZeroMemory(&Pdo->EjectLock, sizeof (KSPIN_LOCK));
 
-    return STATUS_SUCCESS;
+    Dx->Pdo = NULL;
+
+    RtlZeroMemory(&Pdo->SuspendInterface,
+                  sizeof (XENBUS_SUSPEND_INTERFACE));
+
+    FrontendTeardown(__PdoGetFrontend(Pdo));
+    Pdo->Frontend = NULL;
 
 fail10:
     Error("fail10\n");
@@ -2762,17 +2770,20 @@ PdoDestroy(
 
     FdoRemovePhysicalDeviceObject(Fdo, Pdo);
 
+    (VOID) __PdoClearEjectRequested(Pdo);
+    RtlZeroMemory(&Pdo->EjectLock, sizeof (KSPIN_LOCK));
+
     Dx->Pdo = NULL;
 
     RtlZeroMemory(&Pdo->SuspendInterface,
                   sizeof (XENBUS_SUSPEND_INTERFACE));
 
-    VifTeardown(Pdo->VifContext);
-    Pdo->VifContext = NULL;
-    
     FrontendTeardown(__PdoGetFrontend(Pdo));
     Pdo->Frontend = NULL;    
 
+    VifTeardown(Pdo->VifContext);
+    Pdo->VifContext = NULL;
+
     BusTeardown(&Pdo->BusInterface);
 
     for (Index = 0; Index < Pdo->Count; Index++)
diff --git a/src/xenvif/pdo.h b/src/xenvif/pdo.h
index 76ff3a4..13dbe81 100644
--- a/src/xenvif/pdo.h
+++ b/src/xenvif/pdo.h
@@ -144,7 +144,7 @@ PdoCreate(
     IN  PCHAR       Address
     );
 
-extern VOID
+extern NTSTATUS
 PdoResume(
     IN  PXENVIF_PDO Pdo
     );
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Mon Apr 20 16:19:02 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 20 Apr 2015 16:19:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YkEPV-0002cN-58; Mon, 20 Apr 2015 16:19:01 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YkEPT-0002bz-VW
	for win-pv-devel@lists.xenproject.org; Mon, 20 Apr 2015 16:19:00 +0000
Received: from [85.158.137.68] by server-4.bemta-3.messagelabs.com id
	ED/B5-18531-3F625355; Mon, 20 Apr 2015 16:18:59 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-11.tower-31.messagelabs.com!1429546737!18226414!1
X-Originating-IP: [209.85.160.182]
X-SpamReason: No, hits=0.0 required=7.0 tests=UPPERCASE_25_50
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 1023 invoked from network); 20 Apr 2015 16:18:58 -0000
Received: from mail-yk0-f182.google.com (HELO mail-yk0-f182.google.com)
	(209.85.160.182)
	by server-11.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	20 Apr 2015 16:18:58 -0000
Received: by ykec202 with SMTP id c202so18532521yke.2
	for <win-pv-devel@lists.xenproject.org>;
	Mon, 20 Apr 2015 09:18:57 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id:in-reply-to:references;
	bh=rEBZij0hqrKZaI5066OIvCQLPcqyVCYzwxFW2K25WFk=;
	b=EUAlHs1WYgLUAPwrAAY+6hJJPldmZCEdk3JFepk85owBVWdtZvfkVnCEIdTzFP4xSL
	md0xMrb1Eb9jc2gtEB/nEKgxpVl6YYsuLDn7+Ns3Mry/Uj0gaeGDm2GMLC6at8zSOt6o
	gemtMZgFLLnakaAJ6IB4BBMLuwSb/6nXVuMl57a+ZZtji/ehIAjAafAvx/JJCJtFMt0V
	0z/YoVXW8o/9XZnfwC0Q2FJ3ZRyr3W1d/Gw40kISIdUDXu7pkcHx5PwyjTSPXHT3NhuS
	BljaYy42d+hdibPD43K+uWkIBsc+aWlzSEuS+UVnNAY5xtwWdgGSgMLx1P181xdq7Zwl
	q7BA==
X-Received: by 10.170.135.19 with SMTP id b19mr15202838ykc.27.1429546737049;
	Mon, 20 Apr 2015 09:18:57 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id 29sm15773767yhe.50.2015.04.20.09.18.55
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Mon, 20 Apr 2015 09:18:56 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Mon, 20 Apr 2015 17:19:00 +0100
Message-Id: <1429546743-8196-2-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
In-Reply-To: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
References: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH 1/4] Allow PdoResume() to fail
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

At the moment FrontendResume() can fail, but PdoResume() cannot and hence
the error status is ignored. This is problematic because it is not safe to
call FrontendSuspend() if FrontendResume() did not complete successfully.
This patch, therefore, wires through the failure of FrontendResume() into
PdoResume() and on into FdoAddPhysicalDeviceObject().

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/xenvif/fdo.c | 37 +++++++++++++++++++++++++++----------
 src/xenvif/fdo.h |  2 +-
 src/xenvif/pdo.c | 47 +++++++++++++++++++++++++++++------------------
 src/xenvif/pdo.h |  2 +-
 4 files changed, 58 insertions(+), 30 deletions(-)

diff --git a/src/xenvif/fdo.c b/src/xenvif/fdo.c
index 4b40777..3f6713b 100644
--- a/src/xenvif/fdo.c
+++ b/src/xenvif/fdo.c
@@ -614,7 +614,7 @@ FdoForwardIrpSynchronously(
     return status;
 }
 
-VOID
+NTSTATUS
 FdoAddPhysicalDeviceObject(
     IN  PXENVIF_FDO     Fdo,
     IN  PXENVIF_PDO     Pdo
@@ -622,17 +622,30 @@ FdoAddPhysicalDeviceObject(
 {
     PDEVICE_OBJECT      DeviceObject;
     PXENVIF_DX          Dx;
+    NTSTATUS            status;
 
     DeviceObject = PdoGetDeviceObject(Pdo);
     Dx = (PXENVIF_DX)DeviceObject->DeviceExtension;
     ASSERT3U(Dx->Type, ==, PHYSICAL_DEVICE_OBJECT);
 
+    if (__FdoGetDevicePowerState(Fdo) == PowerDeviceD3)
+        goto done;
+
+    status = PdoResume(Pdo);
+    if (!NT_SUCCESS(status))
+        goto fail1;
+
+done:
     InsertTailList(&Fdo->Dx->ListEntry, &Dx->ListEntry);
     ASSERT3U(Fdo->References, !=, 0);
     Fdo->References++;
 
-    if (__FdoGetDevicePowerState(Fdo) == PowerDeviceD0)
-        PdoResume(Pdo);
+    return STATUS_SUCCESS;
+
+fail1:
+    Error("fail1 (%08x)\n", status);
+
+    return status;
 }
 
 VOID
@@ -648,9 +661,12 @@ FdoRemovePhysicalDeviceObject(
     Dx = (PXENVIF_DX)DeviceObject->DeviceExtension;
     ASSERT3U(Dx->Type, ==, PHYSICAL_DEVICE_OBJECT);
 
-    if (__FdoGetDevicePowerState(Fdo) == PowerDeviceD0)
-        PdoSuspend(Pdo);
+    if (__FdoGetDevicePowerState(Fdo) == PowerDeviceD3)
+        goto done;
 
+    PdoSuspend(Pdo);
+
+done:
     RemoveEntryList(&Dx->ListEntry);
     ASSERT3U(Fdo->References, !=, 0);
     --Fdo->References;
@@ -1176,7 +1192,8 @@ FdoD3ToD0(
 
         ASSERT3U(Dx->Type, ==, PHYSICAL_DEVICE_OBJECT);
 
-        PdoResume(Pdo);
+        status = PdoResume(Pdo);
+        ASSERT(NT_SUCCESS(status));
     }
 
     __FdoReleaseMutex(Fdo);
@@ -2881,6 +2898,8 @@ FdoCreate(
     if (!NT_SUCCESS(status))
         goto fail13;
 
+    Dx->Fdo = Fdo;
+
     InitializeMutex(&Fdo->Mutex);
     InitializeListHead(&Dx->ListEntry);
     Fdo->References = 1;
@@ -2889,9 +2908,7 @@ FdoCreate(
          FunctionDeviceObject,
          __FdoGetName(Fdo));
 
-    Dx->Fdo = Fdo;
     FunctionDeviceObject->Flags &= ~DO_DEVICE_INITIALIZING;
-
     return STATUS_SUCCESS;
 
 fail13:
@@ -2996,10 +3013,10 @@ FdoDestroy(
          FunctionDeviceObject,
          __FdoGetName(Fdo));
 
-    Dx->Fdo = NULL;
-
     RtlZeroMemory(&Fdo->Mutex, sizeof (MUTEX));
 
+    Dx->Fdo = NULL;
+
     RtlZeroMemory(&Fdo->GnttabInterface,
                   sizeof (XENBUS_GNTTAB_INTERFACE));
 
diff --git a/src/xenvif/fdo.h b/src/xenvif/fdo.h
index 78cfbfb..68d7b4a 100644
--- a/src/xenvif/fdo.h
+++ b/src/xenvif/fdo.h
@@ -55,7 +55,7 @@ FdoGetName(
     IN  PXENVIF_FDO Fdo
     );
 
-extern VOID
+extern NTSTATUS
 FdoAddPhysicalDeviceObject(
     IN  PXENVIF_FDO     Fdo,
     IN  PXENVIF_PDO     Pdo
diff --git a/src/xenvif/pdo.c b/src/xenvif/pdo.c
index 9352594..dc7eacd 100644
--- a/src/xenvif/pdo.c
+++ b/src/xenvif/pdo.c
@@ -2552,16 +2552,12 @@ PdoDispatch(
     return status;
 }
 
-VOID
+NTSTATUS
 PdoResume(
-    IN  PXENVIF_PDO     Pdo
+    IN  PXENVIF_PDO Pdo
     )
 {
-    Trace("====>\n");
-
-    FrontendResume(__PdoGetFrontend(Pdo));
-
-    Trace("<====\n");
+    return FrontendResume(__PdoGetFrontend(Pdo));
 }
 
 VOID
@@ -2569,11 +2565,7 @@ PdoSuspend(
     IN  PXENVIF_PDO     Pdo
     )
 {
-    Trace("====>\n");
-
     FrontendSuspend(__PdoGetFrontend(Pdo));
-
-    Trace("<====\n");
 }
 
 NTSTATUS
@@ -2654,6 +2646,14 @@ PdoCreate(
 
     FdoGetSuspendInterface(Fdo,&Pdo->SuspendInterface);
 
+    Dx->Pdo = Pdo;
+
+    KeInitializeSpinLock(&Pdo->EjectLock);
+
+    status = FdoAddPhysicalDeviceObject(Fdo, Pdo);
+    if (!NT_SUCCESS(status))
+        goto fail11;
+
     for (Index = 0; Index < Pdo->Count; Index++) {
         Info("%p (%s %08X)\n",
              PhysicalDeviceObject,
@@ -2661,14 +2661,22 @@ PdoCreate(
              Pdo->Revision[Index]);
     }
 
-    Dx->Pdo = Pdo;
     PhysicalDeviceObject->Flags &= ~DO_DEVICE_INITIALIZING;
+    return STATUS_SUCCESS;
 
-    KeInitializeSpinLock(&Pdo->EjectLock);
+fail11:
+    Error("fail11\n");
 
-    FdoAddPhysicalDeviceObject(Fdo, Pdo);
+    (VOID) __PdoClearEjectRequested(Pdo);
+    RtlZeroMemory(&Pdo->EjectLock, sizeof (KSPIN_LOCK));
 
-    return STATUS_SUCCESS;
+    Dx->Pdo = NULL;
+
+    RtlZeroMemory(&Pdo->SuspendInterface,
+                  sizeof (XENBUS_SUSPEND_INTERFACE));
+
+    FrontendTeardown(__PdoGetFrontend(Pdo));
+    Pdo->Frontend = NULL;
 
 fail10:
     Error("fail10\n");
@@ -2762,17 +2770,20 @@ PdoDestroy(
 
     FdoRemovePhysicalDeviceObject(Fdo, Pdo);
 
+    (VOID) __PdoClearEjectRequested(Pdo);
+    RtlZeroMemory(&Pdo->EjectLock, sizeof (KSPIN_LOCK));
+
     Dx->Pdo = NULL;
 
     RtlZeroMemory(&Pdo->SuspendInterface,
                   sizeof (XENBUS_SUSPEND_INTERFACE));
 
-    VifTeardown(Pdo->VifContext);
-    Pdo->VifContext = NULL;
-    
     FrontendTeardown(__PdoGetFrontend(Pdo));
     Pdo->Frontend = NULL;    
 
+    VifTeardown(Pdo->VifContext);
+    Pdo->VifContext = NULL;
+
     BusTeardown(&Pdo->BusInterface);
 
     for (Index = 0; Index < Pdo->Count; Index++)
diff --git a/src/xenvif/pdo.h b/src/xenvif/pdo.h
index 76ff3a4..13dbe81 100644
--- a/src/xenvif/pdo.h
+++ b/src/xenvif/pdo.h
@@ -144,7 +144,7 @@ PdoCreate(
     IN  PCHAR       Address
     );
 
-extern VOID
+extern NTSTATUS
 PdoResume(
     IN  PXENVIF_PDO Pdo
     );
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Mon Apr 20 16:19:04 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 20 Apr 2015 16:19:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YkEPY-0002d9-1n; Mon, 20 Apr 2015 16:19:04 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YkEPX-0002cm-4G
	for win-pv-devel@lists.xenproject.org; Mon, 20 Apr 2015 16:19:03 +0000
Received: from [85.158.137.68] by server-8.bemta-3.messagelabs.com id
	3C/FF-09361-5F625355; Mon, 20 Apr 2015 16:19:01 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-9.tower-31.messagelabs.com!1429546739!14457886!1
X-Originating-IP: [209.85.160.175]
X-SpamReason: No, hits=0.0 required=7.0 tests=UPPERCASE_25_50
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 5328 invoked from network); 20 Apr 2015 16:19:00 -0000
Received: from mail-yk0-f175.google.com (HELO mail-yk0-f175.google.com)
	(209.85.160.175)
	by server-9.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	20 Apr 2015 16:19:00 -0000
Received: by ykft189 with SMTP id t189so18571365ykf.1
	for <win-pv-devel@lists.xenproject.org>;
	Mon, 20 Apr 2015 09:18:59 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id:in-reply-to:references;
	bh=6M96/XZCSd/7lqIZikkZXe43axCO7wxULtkQZ2OInjE=;
	b=DmkZ6fpURARY/7hku5o4g140TAMFOXEUJi0s/GKOxs4bSq6KCrCYKwl60oEufLSEVA
	jQZW1zOfR4d6knJbt5kSAxuS7qWXLvaAxhOsnn2ZjYfKCDLWXKZHnoJIovo4q4q0al4A
	9Lo/qiIaSFqkwwADHpgFRimypNAXOsrQm3w6h5MGRy94ouzwyB+ItEtmAm8+YPTLSJE/
	CRv3sB05PrroLBfcfT1jbabtpT5B0eVfV/4l2FPiRKGLYNhFhYtkxFzhuht1wr/1yFMW
	E22wQM2dgmgMu2m908XeiiO/8TayNoB6Kx+taF/n1tuxh04+JDsb9LDcAyEvKPJHQH9A
	69aQ==
X-Received: by 10.170.188.140 with SMTP id f134mr15082544yke.63.1429546738928; 
	Mon, 20 Apr 2015 09:18:58 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id 29sm15773767yhe.50.2015.04.20.09.18.57
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Mon, 20 Apr 2015 09:18:58 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Mon, 20 Apr 2015 17:19:01 +0100
Message-Id: <1429546743-8196-3-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
In-Reply-To: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
References: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH 2/4] Remove excessive force-inlining from the
	frontend module
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/xenvif/frontend.c | 112 +++++++++++++++++++++++++-------------------------
 1 file changed, 56 insertions(+), 56 deletions(-)

diff --git a/src/xenvif/frontend.c b/src/xenvif/frontend.c
index 0e393b5..51cf906 100644
--- a/src/xenvif/frontend.c
+++ b/src/xenvif/frontend.c
@@ -207,8 +207,8 @@ FrontendGetBackendDomain(
     return __FrontendGetBackendDomain(Frontend);
 }
 
-static FORCEINLINE VOID
-__FrontendSetMaxQueues(
+static VOID
+FrontendSetMaxQueues(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
@@ -486,8 +486,8 @@ fail1:
     KeReleaseSpinLock(&Frontend->Lock, Irql);
 }
 
-static FORCEINLINE NTSTATUS
-__FrontendInsertAddress(
+static NTSTATUS
+FrontendInsertAddress(
     IN OUT  PSOCKADDR_INET      *AddressTable,
     IN      const SOCKADDR_INET *Address,
     IN OUT  PULONG              AddressCount
@@ -540,8 +540,8 @@ fail1:
     return status;
 }
 
-static FORCEINLINE NTSTATUS
-__FrontendProcessAddressTable(
+static NTSTATUS
+FrontendProcessAddressTable(
     IN  PXENVIF_FRONTEND            Frontend,
     IN  PMIB_UNICASTIPADDRESS_TABLE MibTable,
     OUT PSOCKADDR_INET              *AddressTable,
@@ -570,9 +570,9 @@ __FrontendProcessAddressTable(
             Row->Address.si_family != AF_INET6)
             continue;
 
-        status = __FrontendInsertAddress(AddressTable,
-                                         &Row->Address,
-                                         AddressCount);
+        status = FrontendInsertAddress(AddressTable,
+                                       &Row->Address,
+                                       AddressCount);
         if (!NT_SUCCESS(status))
             goto fail1;
     }
@@ -588,8 +588,8 @@ fail1:
     return status;
 }
 
-static FORCEINLINE NTSTATUS
-__FrontendDumpAddressTable(
+static NTSTATUS
+FrontendDumpAddressTable(
     IN  PXENVIF_FRONTEND        Frontend,
     IN  PSOCKADDR_INET          AddressTable,
     IN  ULONG                   AddressCount
@@ -825,10 +825,10 @@ FrontendMib(
             Frontend->State != FRONTEND_ENABLED)
             goto loop;
 
-        status = __FrontendProcessAddressTable(Frontend,
-                                               MibTable,
-                                               &AddressTable,
-                                               &AddressCount);
+        status = FrontendProcessAddressTable(Frontend,
+                                             MibTable,
+                                             &AddressTable,
+                                             &AddressCount);
         if (!NT_SUCCESS(status))
             goto loop;
 
@@ -836,9 +836,9 @@ FrontendMib(
                                       AddressTable,
                                       AddressCount);
 
-        (VOID) __FrontendDumpAddressTable(Frontend,
-                                          AddressTable,
-                                          AddressCount);
+        (VOID) FrontendDumpAddressTable(Frontend,
+                                        AddressTable,
+                                        AddressCount);
 
         if (AddressCount != 0)
             __FrontendFree(AddressTable);
@@ -874,8 +874,8 @@ fail1:
     return status;
 }
 
-static FORCEINLINE NTSTATUS
-__FrontendWaitForStateChange(
+static NTSTATUS
+FrontendWaitForStateChange(
     IN  PXENVIF_FRONTEND    Frontend,
     IN  PCHAR               Path,
     IN  XenbusState         *State
@@ -984,8 +984,8 @@ fail1:
     return status;
 }
 
-static FORCEINLINE NTSTATUS
-__FrontendClose(
+static NTSTATUS
+FrontendClose(
     IN  PXENVIF_FRONTEND    Frontend,
     IN  BOOLEAN             Force            
     )
@@ -1024,7 +1024,7 @@ __FrontendClose(
         goto fail1;
 
     State = XenbusStateInitialising;
-    status = __FrontendWaitForStateChange(Frontend, Path, &State);
+    status = FrontendWaitForStateChange(Frontend, Path, &State);
     if (!NT_SUCCESS(status))
         goto fail2;
 
@@ -1038,7 +1038,7 @@ __FrontendClose(
                             "state",
                             "%u",
                             XenbusStateClosing);
-        status = __FrontendWaitForStateChange(Frontend, Path, &State);
+        status = FrontendWaitForStateChange(Frontend, Path, &State);
         if (!NT_SUCCESS(status))
             goto fail2;
     }
@@ -1052,7 +1052,7 @@ __FrontendClose(
                             "state",
                             "%u",
                             XenbusStateClosed);
-        status = __FrontendWaitForStateChange(Frontend, Path, &State);
+        status = FrontendWaitForStateChange(Frontend, Path, &State);
         if (!NT_SUCCESS(status))
             goto fail3;
     }
@@ -1085,8 +1085,8 @@ fail1:
     return status;
 }
 
-static FORCEINLINE NTSTATUS
-__FrontendPrepare(
+static NTSTATUS
+FrontendPrepare(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
@@ -1111,7 +1111,7 @@ __FrontendPrepare(
         goto fail2;
 
     State = XenbusStateUnknown;
-    status = __FrontendWaitForStateChange(Frontend, Path, &State);
+    status = FrontendWaitForStateChange(Frontend, Path, &State);
     if (!NT_SUCCESS(status))
         goto fail3;
 
@@ -1123,7 +1123,7 @@ __FrontendPrepare(
                             "state",
                             "%u",
                             XenbusStateClosing);
-        status = __FrontendWaitForStateChange(Frontend, Path, &State);
+        status = FrontendWaitForStateChange(Frontend, Path, &State);
         if (!NT_SUCCESS(status))
             goto fail4;
     }
@@ -1136,7 +1136,7 @@ __FrontendPrepare(
                             "state",
                             "%u",
                             XenbusStateClosed);
-        status = __FrontendWaitForStateChange(Frontend, Path, &State);
+        status = FrontendWaitForStateChange(Frontend, Path, &State);
         if (!NT_SUCCESS(status))
             goto fail5;
     }
@@ -1145,7 +1145,7 @@ __FrontendPrepare(
            State != XenbusStateInitialising &&
            State != XenbusStateInitWait &&
            State != XenbusStateUnknown) {
-        status = __FrontendWaitForStateChange(Frontend, Path, &State);
+        status = FrontendWaitForStateChange(Frontend, Path, &State);
         if (!NT_SUCCESS(status))
             goto fail6;
     }
@@ -1166,7 +1166,7 @@ __FrontendPrepare(
 
     while (State == XenbusStateClosed ||
            State == XenbusStateInitialising) {
-        status = __FrontendWaitForStateChange(Frontend, Path, &State);
+        status = FrontendWaitForStateChange(Frontend, Path, &State);
         if (!NT_SUCCESS(status))
             goto fail9;
     }
@@ -1372,8 +1372,8 @@ FrontendDebugCallback(
     }
 }
 
-static FORCEINLINE VOID
-__FrontendSetNumQueues(
+static VOID
+FrontendSetNumQueues(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
@@ -1418,8 +1418,8 @@ FrontendGetNumQueues(
     return __FrontendGetNumQueues(Frontend);
 }
 
-static FORCEINLINE NTSTATUS
-__FrontendConnect(
+static NTSTATUS
+FrontendConnect(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
@@ -1454,7 +1454,7 @@ __FrontendConnect(
     if (!NT_SUCCESS(status))
         goto fail4;
 
-    __FrontendSetNumQueues(Frontend);
+    FrontendSetNumQueues(Frontend);
 
     status = ReceiverConnect(__FrontendGetReceiver(Frontend));
     if (!NT_SUCCESS(status))
@@ -1525,7 +1525,7 @@ abort:
         goto fail8;
 
     State = XenbusStateInitWait;
-    status = __FrontendWaitForStateChange(Frontend, Path, &State);
+    status = FrontendWaitForStateChange(Frontend, Path, &State);
     if (!NT_SUCCESS(status))
         goto fail9;
 
@@ -1591,8 +1591,8 @@ fail1:
     return status;
 }
 
-static FORCEINLINE VOID
-__FrontendDisconnect(
+static VOID
+FrontendDisconnect(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
@@ -1618,8 +1618,8 @@ __FrontendDisconnect(
     Trace("<====\n");
 }
 
-static FORCEINLINE NTSTATUS
-__FrontendEnable(
+static NTSTATUS
+FrontendEnable(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
@@ -1658,8 +1658,8 @@ fail1:
     return status;
 }
 
-static FORCEINLINE VOID
-__FrontendDisable(
+static VOID
+FrontendDisable(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
@@ -1698,7 +1698,7 @@ FrontendSetState(
             case FRONTEND_PREPARED:
             case FRONTEND_CONNECTED:
             case FRONTEND_ENABLED:
-                status = __FrontendPrepare(Frontend);
+                status = FrontendPrepare(Frontend);
                 if (NT_SUCCESS(status)) {
                     Frontend->State = FRONTEND_PREPARED;
                 } else {
@@ -1716,11 +1716,11 @@ FrontendSetState(
             switch (State) {
             case FRONTEND_CONNECTED:
             case FRONTEND_ENABLED:
-                status = __FrontendConnect(Frontend);
+                status = FrontendConnect(Frontend);
                 if (NT_SUCCESS(status)) {
                     Frontend->State = FRONTEND_CONNECTED;
                 } else {
-                    status = __FrontendClose(Frontend, FALSE);
+                    status = FrontendClose(Frontend, FALSE);
                     if (NT_SUCCESS(status))
                         Frontend->State = FRONTEND_CLOSED;
                     else
@@ -1731,7 +1731,7 @@ FrontendSetState(
                 break;
 
             case FRONTEND_CLOSED:
-                status = __FrontendClose(Frontend, FALSE);
+                status = FrontendClose(Frontend, FALSE);
                 if (NT_SUCCESS(status)) {
                     Frontend->State = FRONTEND_CLOSED;
                 } else {
@@ -1750,24 +1750,24 @@ FrontendSetState(
         case FRONTEND_CONNECTED:
             switch (State) {
             case FRONTEND_ENABLED:
-                status = __FrontendEnable(Frontend);
+                status = FrontendEnable(Frontend);
                 if (NT_SUCCESS(status)) {
                     Frontend->State = FRONTEND_ENABLED;
                 } else {
-                    status = __FrontendClose(Frontend, FALSE);
+                    status = FrontendClose(Frontend, FALSE);
                     if (NT_SUCCESS(status))
                         Frontend->State = FRONTEND_CLOSED;
                     else
                         Frontend->State = FRONTEND_STATE_INVALID;
 
-                    __FrontendDisconnect(Frontend);
+                    FrontendDisconnect(Frontend);
                     Failed = TRUE;
                 }
                 break;
 
             case FRONTEND_PREPARED:
             case FRONTEND_CLOSED:
-                status = __FrontendClose(Frontend, FALSE);
+                status = FrontendClose(Frontend, FALSE);
                 if (NT_SUCCESS(status)) {
                     Frontend->State = FRONTEND_CLOSED;
                 } else {
@@ -1775,7 +1775,7 @@ FrontendSetState(
                     Failed = TRUE;
                 }
 
-                __FrontendDisconnect(Frontend);
+                FrontendDisconnect(Frontend);
 
                 break;
 
@@ -1790,7 +1790,7 @@ FrontendSetState(
             case FRONTEND_CONNECTED:
             case FRONTEND_PREPARED:
             case FRONTEND_CLOSED:
-                __FrontendDisable(Frontend);
+                FrontendDisable(Frontend);
                 Frontend->State = FRONTEND_CONNECTED;
                 break;
 
@@ -2018,7 +2018,7 @@ FrontendInitialize(
     FdoGetSuspendInterface(PdoGetFdo(Pdo), &(*Frontend)->SuspendInterface);
     FdoGetStoreInterface(PdoGetFdo(Pdo), &(*Frontend)->StoreInterface);
 
-    __FrontendSetMaxQueues(*Frontend);
+    FrontendSetMaxQueues(*Frontend);
 
     status = MacInitialize(*Frontend, &(*Frontend)->Mac);
     if (!NT_SUCCESS(status))
@@ -2132,7 +2132,7 @@ FrontendTeardown(
     ASSERT(Frontend->State != FRONTEND_CONNECTED);
 
     if (Frontend->State == FRONTEND_PREPARED) {
-        (VOID) __FrontendClose(Frontend, TRUE);
+        (VOID) FrontendClose(Frontend, TRUE);
         Frontend->State = FRONTEND_CLOSED;
     }
 
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Mon Apr 20 16:19:04 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 20 Apr 2015 16:19:04 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YkEPY-0002d9-1n; Mon, 20 Apr 2015 16:19:04 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YkEPX-0002cm-4G
	for win-pv-devel@lists.xenproject.org; Mon, 20 Apr 2015 16:19:03 +0000
Received: from [85.158.137.68] by server-8.bemta-3.messagelabs.com id
	3C/FF-09361-5F625355; Mon, 20 Apr 2015 16:19:01 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-9.tower-31.messagelabs.com!1429546739!14457886!1
X-Originating-IP: [209.85.160.175]
X-SpamReason: No, hits=0.0 required=7.0 tests=UPPERCASE_25_50
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 5328 invoked from network); 20 Apr 2015 16:19:00 -0000
Received: from mail-yk0-f175.google.com (HELO mail-yk0-f175.google.com)
	(209.85.160.175)
	by server-9.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	20 Apr 2015 16:19:00 -0000
Received: by ykft189 with SMTP id t189so18571365ykf.1
	for <win-pv-devel@lists.xenproject.org>;
	Mon, 20 Apr 2015 09:18:59 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id:in-reply-to:references;
	bh=6M96/XZCSd/7lqIZikkZXe43axCO7wxULtkQZ2OInjE=;
	b=DmkZ6fpURARY/7hku5o4g140TAMFOXEUJi0s/GKOxs4bSq6KCrCYKwl60oEufLSEVA
	jQZW1zOfR4d6knJbt5kSAxuS7qWXLvaAxhOsnn2ZjYfKCDLWXKZHnoJIovo4q4q0al4A
	9Lo/qiIaSFqkwwADHpgFRimypNAXOsrQm3w6h5MGRy94ouzwyB+ItEtmAm8+YPTLSJE/
	CRv3sB05PrroLBfcfT1jbabtpT5B0eVfV/4l2FPiRKGLYNhFhYtkxFzhuht1wr/1yFMW
	E22wQM2dgmgMu2m908XeiiO/8TayNoB6Kx+taF/n1tuxh04+JDsb9LDcAyEvKPJHQH9A
	69aQ==
X-Received: by 10.170.188.140 with SMTP id f134mr15082544yke.63.1429546738928; 
	Mon, 20 Apr 2015 09:18:58 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id 29sm15773767yhe.50.2015.04.20.09.18.57
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Mon, 20 Apr 2015 09:18:58 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Mon, 20 Apr 2015 17:19:01 +0100
Message-Id: <1429546743-8196-3-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
In-Reply-To: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
References: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH 2/4] Remove excessive force-inlining from the
	frontend module
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/xenvif/frontend.c | 112 +++++++++++++++++++++++++-------------------------
 1 file changed, 56 insertions(+), 56 deletions(-)

diff --git a/src/xenvif/frontend.c b/src/xenvif/frontend.c
index 0e393b5..51cf906 100644
--- a/src/xenvif/frontend.c
+++ b/src/xenvif/frontend.c
@@ -207,8 +207,8 @@ FrontendGetBackendDomain(
     return __FrontendGetBackendDomain(Frontend);
 }
 
-static FORCEINLINE VOID
-__FrontendSetMaxQueues(
+static VOID
+FrontendSetMaxQueues(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
@@ -486,8 +486,8 @@ fail1:
     KeReleaseSpinLock(&Frontend->Lock, Irql);
 }
 
-static FORCEINLINE NTSTATUS
-__FrontendInsertAddress(
+static NTSTATUS
+FrontendInsertAddress(
     IN OUT  PSOCKADDR_INET      *AddressTable,
     IN      const SOCKADDR_INET *Address,
     IN OUT  PULONG              AddressCount
@@ -540,8 +540,8 @@ fail1:
     return status;
 }
 
-static FORCEINLINE NTSTATUS
-__FrontendProcessAddressTable(
+static NTSTATUS
+FrontendProcessAddressTable(
     IN  PXENVIF_FRONTEND            Frontend,
     IN  PMIB_UNICASTIPADDRESS_TABLE MibTable,
     OUT PSOCKADDR_INET              *AddressTable,
@@ -570,9 +570,9 @@ __FrontendProcessAddressTable(
             Row->Address.si_family != AF_INET6)
             continue;
 
-        status = __FrontendInsertAddress(AddressTable,
-                                         &Row->Address,
-                                         AddressCount);
+        status = FrontendInsertAddress(AddressTable,
+                                       &Row->Address,
+                                       AddressCount);
         if (!NT_SUCCESS(status))
             goto fail1;
     }
@@ -588,8 +588,8 @@ fail1:
     return status;
 }
 
-static FORCEINLINE NTSTATUS
-__FrontendDumpAddressTable(
+static NTSTATUS
+FrontendDumpAddressTable(
     IN  PXENVIF_FRONTEND        Frontend,
     IN  PSOCKADDR_INET          AddressTable,
     IN  ULONG                   AddressCount
@@ -825,10 +825,10 @@ FrontendMib(
             Frontend->State != FRONTEND_ENABLED)
             goto loop;
 
-        status = __FrontendProcessAddressTable(Frontend,
-                                               MibTable,
-                                               &AddressTable,
-                                               &AddressCount);
+        status = FrontendProcessAddressTable(Frontend,
+                                             MibTable,
+                                             &AddressTable,
+                                             &AddressCount);
         if (!NT_SUCCESS(status))
             goto loop;
 
@@ -836,9 +836,9 @@ FrontendMib(
                                       AddressTable,
                                       AddressCount);
 
-        (VOID) __FrontendDumpAddressTable(Frontend,
-                                          AddressTable,
-                                          AddressCount);
+        (VOID) FrontendDumpAddressTable(Frontend,
+                                        AddressTable,
+                                        AddressCount);
 
         if (AddressCount != 0)
             __FrontendFree(AddressTable);
@@ -874,8 +874,8 @@ fail1:
     return status;
 }
 
-static FORCEINLINE NTSTATUS
-__FrontendWaitForStateChange(
+static NTSTATUS
+FrontendWaitForStateChange(
     IN  PXENVIF_FRONTEND    Frontend,
     IN  PCHAR               Path,
     IN  XenbusState         *State
@@ -984,8 +984,8 @@ fail1:
     return status;
 }
 
-static FORCEINLINE NTSTATUS
-__FrontendClose(
+static NTSTATUS
+FrontendClose(
     IN  PXENVIF_FRONTEND    Frontend,
     IN  BOOLEAN             Force            
     )
@@ -1024,7 +1024,7 @@ __FrontendClose(
         goto fail1;
 
     State = XenbusStateInitialising;
-    status = __FrontendWaitForStateChange(Frontend, Path, &State);
+    status = FrontendWaitForStateChange(Frontend, Path, &State);
     if (!NT_SUCCESS(status))
         goto fail2;
 
@@ -1038,7 +1038,7 @@ __FrontendClose(
                             "state",
                             "%u",
                             XenbusStateClosing);
-        status = __FrontendWaitForStateChange(Frontend, Path, &State);
+        status = FrontendWaitForStateChange(Frontend, Path, &State);
         if (!NT_SUCCESS(status))
             goto fail2;
     }
@@ -1052,7 +1052,7 @@ __FrontendClose(
                             "state",
                             "%u",
                             XenbusStateClosed);
-        status = __FrontendWaitForStateChange(Frontend, Path, &State);
+        status = FrontendWaitForStateChange(Frontend, Path, &State);
         if (!NT_SUCCESS(status))
             goto fail3;
     }
@@ -1085,8 +1085,8 @@ fail1:
     return status;
 }
 
-static FORCEINLINE NTSTATUS
-__FrontendPrepare(
+static NTSTATUS
+FrontendPrepare(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
@@ -1111,7 +1111,7 @@ __FrontendPrepare(
         goto fail2;
 
     State = XenbusStateUnknown;
-    status = __FrontendWaitForStateChange(Frontend, Path, &State);
+    status = FrontendWaitForStateChange(Frontend, Path, &State);
     if (!NT_SUCCESS(status))
         goto fail3;
 
@@ -1123,7 +1123,7 @@ __FrontendPrepare(
                             "state",
                             "%u",
                             XenbusStateClosing);
-        status = __FrontendWaitForStateChange(Frontend, Path, &State);
+        status = FrontendWaitForStateChange(Frontend, Path, &State);
         if (!NT_SUCCESS(status))
             goto fail4;
     }
@@ -1136,7 +1136,7 @@ __FrontendPrepare(
                             "state",
                             "%u",
                             XenbusStateClosed);
-        status = __FrontendWaitForStateChange(Frontend, Path, &State);
+        status = FrontendWaitForStateChange(Frontend, Path, &State);
         if (!NT_SUCCESS(status))
             goto fail5;
     }
@@ -1145,7 +1145,7 @@ __FrontendPrepare(
            State != XenbusStateInitialising &&
            State != XenbusStateInitWait &&
            State != XenbusStateUnknown) {
-        status = __FrontendWaitForStateChange(Frontend, Path, &State);
+        status = FrontendWaitForStateChange(Frontend, Path, &State);
         if (!NT_SUCCESS(status))
             goto fail6;
     }
@@ -1166,7 +1166,7 @@ __FrontendPrepare(
 
     while (State == XenbusStateClosed ||
            State == XenbusStateInitialising) {
-        status = __FrontendWaitForStateChange(Frontend, Path, &State);
+        status = FrontendWaitForStateChange(Frontend, Path, &State);
         if (!NT_SUCCESS(status))
             goto fail9;
     }
@@ -1372,8 +1372,8 @@ FrontendDebugCallback(
     }
 }
 
-static FORCEINLINE VOID
-__FrontendSetNumQueues(
+static VOID
+FrontendSetNumQueues(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
@@ -1418,8 +1418,8 @@ FrontendGetNumQueues(
     return __FrontendGetNumQueues(Frontend);
 }
 
-static FORCEINLINE NTSTATUS
-__FrontendConnect(
+static NTSTATUS
+FrontendConnect(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
@@ -1454,7 +1454,7 @@ __FrontendConnect(
     if (!NT_SUCCESS(status))
         goto fail4;
 
-    __FrontendSetNumQueues(Frontend);
+    FrontendSetNumQueues(Frontend);
 
     status = ReceiverConnect(__FrontendGetReceiver(Frontend));
     if (!NT_SUCCESS(status))
@@ -1525,7 +1525,7 @@ abort:
         goto fail8;
 
     State = XenbusStateInitWait;
-    status = __FrontendWaitForStateChange(Frontend, Path, &State);
+    status = FrontendWaitForStateChange(Frontend, Path, &State);
     if (!NT_SUCCESS(status))
         goto fail9;
 
@@ -1591,8 +1591,8 @@ fail1:
     return status;
 }
 
-static FORCEINLINE VOID
-__FrontendDisconnect(
+static VOID
+FrontendDisconnect(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
@@ -1618,8 +1618,8 @@ __FrontendDisconnect(
     Trace("<====\n");
 }
 
-static FORCEINLINE NTSTATUS
-__FrontendEnable(
+static NTSTATUS
+FrontendEnable(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
@@ -1658,8 +1658,8 @@ fail1:
     return status;
 }
 
-static FORCEINLINE VOID
-__FrontendDisable(
+static VOID
+FrontendDisable(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
@@ -1698,7 +1698,7 @@ FrontendSetState(
             case FRONTEND_PREPARED:
             case FRONTEND_CONNECTED:
             case FRONTEND_ENABLED:
-                status = __FrontendPrepare(Frontend);
+                status = FrontendPrepare(Frontend);
                 if (NT_SUCCESS(status)) {
                     Frontend->State = FRONTEND_PREPARED;
                 } else {
@@ -1716,11 +1716,11 @@ FrontendSetState(
             switch (State) {
             case FRONTEND_CONNECTED:
             case FRONTEND_ENABLED:
-                status = __FrontendConnect(Frontend);
+                status = FrontendConnect(Frontend);
                 if (NT_SUCCESS(status)) {
                     Frontend->State = FRONTEND_CONNECTED;
                 } else {
-                    status = __FrontendClose(Frontend, FALSE);
+                    status = FrontendClose(Frontend, FALSE);
                     if (NT_SUCCESS(status))
                         Frontend->State = FRONTEND_CLOSED;
                     else
@@ -1731,7 +1731,7 @@ FrontendSetState(
                 break;
 
             case FRONTEND_CLOSED:
-                status = __FrontendClose(Frontend, FALSE);
+                status = FrontendClose(Frontend, FALSE);
                 if (NT_SUCCESS(status)) {
                     Frontend->State = FRONTEND_CLOSED;
                 } else {
@@ -1750,24 +1750,24 @@ FrontendSetState(
         case FRONTEND_CONNECTED:
             switch (State) {
             case FRONTEND_ENABLED:
-                status = __FrontendEnable(Frontend);
+                status = FrontendEnable(Frontend);
                 if (NT_SUCCESS(status)) {
                     Frontend->State = FRONTEND_ENABLED;
                 } else {
-                    status = __FrontendClose(Frontend, FALSE);
+                    status = FrontendClose(Frontend, FALSE);
                     if (NT_SUCCESS(status))
                         Frontend->State = FRONTEND_CLOSED;
                     else
                         Frontend->State = FRONTEND_STATE_INVALID;
 
-                    __FrontendDisconnect(Frontend);
+                    FrontendDisconnect(Frontend);
                     Failed = TRUE;
                 }
                 break;
 
             case FRONTEND_PREPARED:
             case FRONTEND_CLOSED:
-                status = __FrontendClose(Frontend, FALSE);
+                status = FrontendClose(Frontend, FALSE);
                 if (NT_SUCCESS(status)) {
                     Frontend->State = FRONTEND_CLOSED;
                 } else {
@@ -1775,7 +1775,7 @@ FrontendSetState(
                     Failed = TRUE;
                 }
 
-                __FrontendDisconnect(Frontend);
+                FrontendDisconnect(Frontend);
 
                 break;
 
@@ -1790,7 +1790,7 @@ FrontendSetState(
             case FRONTEND_CONNECTED:
             case FRONTEND_PREPARED:
             case FRONTEND_CLOSED:
-                __FrontendDisable(Frontend);
+                FrontendDisable(Frontend);
                 Frontend->State = FRONTEND_CONNECTED;
                 break;
 
@@ -2018,7 +2018,7 @@ FrontendInitialize(
     FdoGetSuspendInterface(PdoGetFdo(Pdo), &(*Frontend)->SuspendInterface);
     FdoGetStoreInterface(PdoGetFdo(Pdo), &(*Frontend)->StoreInterface);
 
-    __FrontendSetMaxQueues(*Frontend);
+    FrontendSetMaxQueues(*Frontend);
 
     status = MacInitialize(*Frontend, &(*Frontend)->Mac);
     if (!NT_SUCCESS(status))
@@ -2132,7 +2132,7 @@ FrontendTeardown(
     ASSERT(Frontend->State != FRONTEND_CONNECTED);
 
     if (Frontend->State == FRONTEND_PREPARED) {
-        (VOID) __FrontendClose(Frontend, TRUE);
+        (VOID) FrontendClose(Frontend, TRUE);
         Frontend->State = FRONTEND_CLOSED;
     }
 
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Mon Apr 20 16:19:05 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 20 Apr 2015 16:19:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YkEPZ-0002dc-3L; Mon, 20 Apr 2015 16:19:05 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YkEPY-0002cw-2K
	for win-pv-devel@lists.xenproject.org; Mon, 20 Apr 2015 16:19:04 +0000
Received: from [85.158.137.68] by server-8.bemta-3.messagelabs.com id
	77/00-09361-6F625355; Mon, 20 Apr 2015 16:19:02 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-11.tower-31.messagelabs.com!1429546741!18226427!1
X-Originating-IP: [209.85.213.48]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 1393 invoked from network); 20 Apr 2015 16:19:02 -0000
Received: from mail-yh0-f48.google.com (HELO mail-yh0-f48.google.com)
	(209.85.213.48)
	by server-11.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	20 Apr 2015 16:19:02 -0000
Received: by yhda23 with SMTP id a23so17955234yhd.2
	for <win-pv-devel@lists.xenproject.org>;
	Mon, 20 Apr 2015 09:19:00 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id:in-reply-to:references;
	bh=P/RTmIDIH7dzBVr1WZd+gVa9/iXQ3n28d7VE34+YbEs=;
	b=j3bsolBmdlgtFIjTQ4MbXg+T7OIJ2BI2NDL/WDyDIRixRbb+8L/KUYBy6/vsSp62W2
	1yvXIX051sWeWHz9DumTczLNtSZrw0fUiEYMpdIxipQOZlMF8oaMpFUy/Ec61Q4Ns7ET
	7zwrzajge6iZNdNm9sWffElDswraV0hcyFUEH5kXaKAlt0Qs+1qevDl8foEgaqm+fYHc
	QTOLfRdyHZKU75hFUAtG974vBl3Xui5uXIYxiaQFwJZ+SeAMr0NbPpMRhUOal3GOQCC9
	+MlnE3srhkNWtKF5PsoaT+roKJHIkbM6jWE3ZmBRry3F/r4A2iE/VPefwP17u5AAs+jv
	oHMw==
X-Received: by 10.170.145.85 with SMTP id m82mr15342766ykc.38.1429546740869;
	Mon, 20 Apr 2015 09:19:00 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id 29sm15773767yhe.50.2015.04.20.09.18.59
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Mon, 20 Apr 2015 09:19:00 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Mon, 20 Apr 2015 17:19:02 +0100
Message-Id: <1429546743-8196-4-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
In-Reply-To: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
References: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH 3/4] Demote the link Info message to a Trace
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

It doesn't really need to go into the log

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/xenvif/link.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/xenvif/link.c b/src/xenvif/link.c
index 0319767..5161159 100644
--- a/src/xenvif/link.c
+++ b/src/xenvif/link.c
@@ -223,11 +223,11 @@ LinkGetRoutineAddress(
 found:
     *Address = Function;
 
-    Info("%s:%s (%04X) @ %p\n",
-         ModuleName,
-         FunctionName,
-         Ordinal,
-         Function);
+    Trace("%s:%s (%04X) @ %p\n",
+          ModuleName,
+          FunctionName,
+          Ordinal,
+          Function);
 
     Trace("<====\n");
 
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Mon Apr 20 16:19:05 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 20 Apr 2015 16:19:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YkEPZ-0002dc-3L; Mon, 20 Apr 2015 16:19:05 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YkEPY-0002cw-2K
	for win-pv-devel@lists.xenproject.org; Mon, 20 Apr 2015 16:19:04 +0000
Received: from [85.158.137.68] by server-8.bemta-3.messagelabs.com id
	77/00-09361-6F625355; Mon, 20 Apr 2015 16:19:02 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-11.tower-31.messagelabs.com!1429546741!18226427!1
X-Originating-IP: [209.85.213.48]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 1393 invoked from network); 20 Apr 2015 16:19:02 -0000
Received: from mail-yh0-f48.google.com (HELO mail-yh0-f48.google.com)
	(209.85.213.48)
	by server-11.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	20 Apr 2015 16:19:02 -0000
Received: by yhda23 with SMTP id a23so17955234yhd.2
	for <win-pv-devel@lists.xenproject.org>;
	Mon, 20 Apr 2015 09:19:00 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id:in-reply-to:references;
	bh=P/RTmIDIH7dzBVr1WZd+gVa9/iXQ3n28d7VE34+YbEs=;
	b=j3bsolBmdlgtFIjTQ4MbXg+T7OIJ2BI2NDL/WDyDIRixRbb+8L/KUYBy6/vsSp62W2
	1yvXIX051sWeWHz9DumTczLNtSZrw0fUiEYMpdIxipQOZlMF8oaMpFUy/Ec61Q4Ns7ET
	7zwrzajge6iZNdNm9sWffElDswraV0hcyFUEH5kXaKAlt0Qs+1qevDl8foEgaqm+fYHc
	QTOLfRdyHZKU75hFUAtG974vBl3Xui5uXIYxiaQFwJZ+SeAMr0NbPpMRhUOal3GOQCC9
	+MlnE3srhkNWtKF5PsoaT+roKJHIkbM6jWE3ZmBRry3F/r4A2iE/VPefwP17u5AAs+jv
	oHMw==
X-Received: by 10.170.145.85 with SMTP id m82mr15342766ykc.38.1429546740869;
	Mon, 20 Apr 2015 09:19:00 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id 29sm15773767yhe.50.2015.04.20.09.18.59
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Mon, 20 Apr 2015 09:19:00 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Mon, 20 Apr 2015 17:19:02 +0100
Message-Id: <1429546743-8196-4-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
In-Reply-To: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
References: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH 3/4] Demote the link Info message to a Trace
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

It doesn't really need to go into the log

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/xenvif/link.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/xenvif/link.c b/src/xenvif/link.c
index 0319767..5161159 100644
--- a/src/xenvif/link.c
+++ b/src/xenvif/link.c
@@ -223,11 +223,11 @@ LinkGetRoutineAddress(
 found:
     *Address = Function;
 
-    Info("%s:%s (%04X) @ %p\n",
-         ModuleName,
-         FunctionName,
-         Ordinal,
-         Function);
+    Trace("%s:%s (%04X) @ %p\n",
+          ModuleName,
+          FunctionName,
+          Ordinal,
+          Function);
 
     Trace("<====\n");
 
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Mon Apr 20 16:19:08 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 20 Apr 2015 16:19:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YkEPc-0002eZ-5h; Mon, 20 Apr 2015 16:19:08 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YkEPb-0002eJ-2r
	for win-pv-devel@lists.xenproject.org; Mon, 20 Apr 2015 16:19:07 +0000
Received: from [85.158.139.211] by server-12.bemta-5.messagelabs.com id
	80/BD-22236-AF625355; Mon, 20 Apr 2015 16:19:06 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-2.tower-206.messagelabs.com!1429546743!17233252!1
X-Originating-IP: [209.85.160.179]
X-SpamReason: No, hits=0.5 required=7.0 tests=BODY_RANDOM_LONG, UPPERCASE_25_50
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 22062 invoked from network); 20 Apr 2015 16:19:04 -0000
Received: from mail-yk0-f179.google.com (HELO mail-yk0-f179.google.com)
	(209.85.160.179)
	by server-2.tower-206.messagelabs.com with RC4-SHA encrypted SMTP;
	20 Apr 2015 16:19:04 -0000
Received: by ykft189 with SMTP id t189so18571642ykf.1
	for <win-pv-devel@lists.xenproject.org>;
	Mon, 20 Apr 2015 09:19:03 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id:in-reply-to:references;
	bh=ZDd3Glqyn6NTQKHCWzAxmB/zBicaK8HFbC/aJ+/lRK4=;
	b=UwfkAaZYXbkDU3bzpmeGNmSIumyx/KG8WeEVAVe0RFxZZlMgqqXBlaOC2ZecN+1ax/
	iH1bot2YtVsUyxjdFn7TnG0ZmqUBgcAtuDYm/V45ooeGDLx8mYjp1smAOI4KuvDwctJa
	sida/j4H1E/36aqtxRlE52Q9JjuBAq/Cl4Cn04C+v6fw/bqCCxF8tEs9Ow4hamPOgP9a
	G9nldF17ID5xeUbhjWnRs0oh/OcRicOGC8pyf8I4MvyhuaNQF+NQ7kKirH7YD/GhmEtj
	5voCbKVnjDqZP5d3gQrEdxeBjn2Q22OKjYWW4Jx0HjiTfCNt2pjgCcTwCOkDXOpHPwvA
	ITig==
X-Received: by 10.170.90.70 with SMTP id h67mr15237134yka.46.1429546743101;
	Mon, 20 Apr 2015 09:19:03 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id 29sm15773767yhe.50.2015.04.20.09.19.01
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Mon, 20 Apr 2015 09:19:02 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Mon, 20 Apr 2015 17:19:03 +0100
Message-Id: <1429546743-8196-5-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
In-Reply-To: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
References: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH 4/4] Re-work frontend xenbus state handling
	code
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Any time the xenbus state transitions through XenbusStateClosed (6) then
it's possible for the toolstack to tear down the vif, regardless of whether
the state transition was initialiated by the backend going offline or the
frontend being disabled at the same time the backend happens to go offline.
It's important, therefore, that the frontend code allows for this and
always requests PDO ejection if the backend does go away (even if a new
immediately appears).

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/xenvif/fdo.c      |  39 +--
 src/xenvif/frontend.c | 809 ++++++++++++++++++++++++--------------------------
 src/xenvif/frontend.h |   2 +-
 src/xenvif/pdo.c      | 160 +++++-----
 src/xenvif/pdo.h      |  10 +-
 5 files changed, 492 insertions(+), 528 deletions(-)

diff --git a/src/xenvif/fdo.c b/src/xenvif/fdo.c
index 3f6713b..b903b09 100644
--- a/src/xenvif/fdo.c
+++ b/src/xenvif/fdo.c
@@ -766,20 +766,22 @@ __FdoEnumerate(
             }
         }
 
-        if (Missing &&
-            !PdoIsMissing(Pdo) &&
-            !PdoIsEjectRequested(Pdo) &&
-            PdoGetDevicePnpState(Pdo) != Deleted) {
-            PdoSetMissing(Pdo, "device disappeared");
-
-            // If the PDO has not yet been enumerated then we can go ahead
-            // and mark it as deleted, otherwise we need to notify PnP manager and
-            // wait for the REMOVE_DEVICE IRP.
-            if (PdoGetDevicePnpState(Pdo) == Present) {
-                PdoSetDevicePnpState(Pdo, Deleted);
-                PdoDestroy(Pdo);
-            } else {
-                NeedInvalidate = TRUE;
+        if (!PdoIsMissing(Pdo) && PdoGetDevicePnpState(Pdo) != Deleted) {
+            if (PdoIsEjectRequested(Pdo)) {
+                IoRequestDeviceEject(PdoGetDeviceObject(Pdo));
+            } else if (Missing) {
+                PdoSetMissing(Pdo, "device disappeared");
+
+                // If the PDO has not yet been enumerated then we can
+                // go ahead and mark it as deleted, otherwise we need
+                // to notify PnP manager and wait for the REMOVE_DEVICE
+                // IRP.
+                if (PdoGetDevicePnpState(Pdo) == Present) {
+                    PdoSetDevicePnpState(Pdo, Deleted);
+                    PdoDestroy(Pdo);
+                } else {
+                    NeedInvalidate = TRUE;
+                }
             }
         }
 
@@ -1611,6 +1613,11 @@ FdoQueryDeviceRelations(
         goto done;
     }
 
+    KeClearEvent(&Fdo->ScanEvent);
+    ThreadWake(Fdo->ScanThread);
+
+    Trace("waiting for scan thread\n");
+
     (VOID) KeWaitForSingleObject(&Fdo->ScanEvent,
                                  Executive,
                                  KernelMode,
@@ -1643,10 +1650,6 @@ FdoQueryDeviceRelations(
 
         ASSERT3U(Dx->Type, ==, PHYSICAL_DEVICE_OBJECT);
 
-        if (PdoGetDevicePnpState(Pdo) == Deleted &&
-            !PdoIsMissing(Pdo))
-            PdoSetMissing(Pdo, "surprise remove");
-
         if (PdoIsMissing(Pdo))
             continue;
 
diff --git a/src/xenvif/frontend.c b/src/xenvif/frontend.c
index 51cf906..ce04bbf 100644
--- a/src/xenvif/frontend.c
+++ b/src/xenvif/frontend.c
@@ -61,9 +61,11 @@ struct _XENVIF_FRONTEND {
     PCHAR                       Path;
     PCHAR                       Prefix;
     XENVIF_FRONTEND_STATE       State;
+    BOOLEAN                     Online;
     KSPIN_LOCK                  Lock;
     PXENVIF_THREAD              MibThread;
     PXENVIF_THREAD              EjectThread;
+    KEVENT                      EjectEvent;
 
     PCHAR                       BackendPath;
     USHORT                      BackendDomain;
@@ -96,6 +98,7 @@ FrontendStateName(
         return #_State;
 
     switch (State) {
+    _STATE_NAME(UNKNOWN);
     _STATE_NAME(CLOSED);
     _STATE_NAME(PREPARED);
     _STATE_NAME(CONNECTED);
@@ -312,6 +315,42 @@ DEFINE_FRONTEND_GET_FUNCTION(Mac, PXENVIF_MAC)
 DEFINE_FRONTEND_GET_FUNCTION(Transmitter, PXENVIF_TRANSMITTER)
 DEFINE_FRONTEND_GET_FUNCTION(Receiver, PXENVIF_RECEIVER)
 
+static BOOLEAN
+FrontendIsOnline(
+    IN  PXENVIF_FRONTEND    Frontend
+    )
+{
+    return Frontend->Online;
+}
+
+static BOOLEAN
+FrontendIsBackendOnline(
+    IN  PXENVIF_FRONTEND    Frontend
+    )
+{
+    PCHAR                   Buffer;
+    BOOLEAN                 Online;
+    NTSTATUS                status;
+
+    status = XENBUS_STORE(Read,
+                          &Frontend->StoreInterface,
+                          NULL,
+                          __FrontendGetBackendPath(Frontend),
+                          "online",
+                          &Buffer);
+    if (!NT_SUCCESS(status)) {
+        Online = FALSE;
+    } else {
+        Online = (BOOLEAN)strtol(Buffer, NULL, 2);
+
+        XENBUS_STORE(Free,
+                     &Frontend->StoreInterface,
+                     Buffer);
+    }
+
+    return Online;
+}
+
 static DECLSPEC_NOINLINE NTSTATUS
 FrontendEject(
     IN  PXENVIF_THREAD  Self,
@@ -326,11 +365,7 @@ FrontendEject(
     Event = ThreadGetEvent(Self);
 
     for (;;) {
-        BOOLEAN             Online;
-        XenbusState         State;
-        ULONG               Attempt;
-        KIRQL               Irql;
-        NTSTATUS            status;
+        KIRQL       Irql;
 
         KeWaitForSingleObject(Event,
                               Executive,
@@ -345,91 +380,24 @@ FrontendEject(
         KeAcquireSpinLock(&Frontend->Lock, &Irql);
 
         // It is not safe to use interfaces before this point
-        if (Frontend->State == FRONTEND_CLOSED) {
-            KeReleaseSpinLock(&Frontend->Lock, Irql);
-            continue;
-        }
-
-        Online = TRUE;
-        State = XenbusStateUnknown;
-
-        Attempt = 0;
-        for (;;) {
-            PXENBUS_STORE_TRANSACTION   Transaction;
-            PCHAR                       Buffer;
-
-            status = STATUS_UNSUCCESSFUL;
-            if (__FrontendGetBackendPath(Frontend) == NULL)
-                break;
-
-            status = XENBUS_STORE(TransactionStart,
-                                  &Frontend->StoreInterface,
-                                  &Transaction);
-            if (!NT_SUCCESS(status))
-                break;
-
-            status = XENBUS_STORE(Read,
-                                  &Frontend->StoreInterface,
-                                  Transaction,
-                                  __FrontendGetBackendPath(Frontend),
-                                  "online",
-                                  &Buffer);
-            if (!NT_SUCCESS(status))
-                goto abort;
-
-            Online = (BOOLEAN)strtol(Buffer, NULL, 2);
-
-            XENBUS_STORE(Free,
-                         &Frontend->StoreInterface,
-                         Buffer);
-
-            status = XENBUS_STORE(Read,
-                                  &Frontend->StoreInterface,
-                                  Transaction,
-                                  __FrontendGetBackendPath(Frontend),
-                                  "state",
-                                  &Buffer);
-            if (!NT_SUCCESS(status))
-                goto abort;
-
-            State = (XenbusState)strtol(Buffer, NULL, 10);
-
-            XENBUS_STORE(Free,
-                         &Frontend->StoreInterface,
-                         Buffer);
-
-            status = XENBUS_STORE(TransactionEnd,
-                                  &Frontend->StoreInterface,
-                                  Transaction,
-                                  TRUE);
-            if (status != STATUS_RETRY || ++Attempt > 10)
-                break;
-
-            continue;
-
-abort:
-            (VOID) XENBUS_STORE(TransactionEnd,
-                                &Frontend->StoreInterface,
-                                Transaction,
-                                FALSE);
-            break;
-        }
-
-        if (!NT_SUCCESS(status)) {
-            Online = TRUE;
-            State = XenbusStateUnknown;
-        }
+        if (Frontend->State == FRONTEND_UNKNOWN ||
+            Frontend->State == FRONTEND_CLOSED)
+            goto loop;
 
-        if (!Online && State == XenbusStateClosing) {
-            Info("%s: requesting device eject\n",
-                 __FrontendGetPath(Frontend));
+        if (!FrontendIsOnline(Frontend))
+            goto loop;
 
-            PdoRequestEject(Frontend->Pdo);
-        }
+        if (!FrontendIsBackendOnline(Frontend))
+            PdoRequestEject(__FrontendGetPdo(Frontend));
 
+loop:
         KeReleaseSpinLock(&Frontend->Lock, Irql);
+
+        KeSetEvent(&Frontend->EjectEvent, IO_NO_INCREMENT, FALSE);
     }
 
+    KeSetEvent(&Frontend->EjectEvent, IO_NO_INCREMENT, FALSE);
+
     Trace("%s: <====\n", __FrontendGetPath(Frontend));
 
     return STATUS_SUCCESS;
@@ -555,7 +523,7 @@ FrontendProcessAddressTable(
     *AddressTable = NULL;
     *AddressCount = 0;
 
-    Luid = PdoGetLuid(Frontend->Pdo);
+    Luid = PdoGetLuid(__FrontendGetPdo(Frontend));
 
     for (Index = 0; Index < MibTable->NumEntries; Index++) {
         PMIB_UNICASTIPADDRESS_ROW   Row = &MibTable->Table[Index];
@@ -874,33 +842,140 @@ fail1:
     return status;
 }
 
-static NTSTATUS
-FrontendWaitForStateChange(
+static VOID
+FrontendSetOnline(
+    IN  PXENVIF_FRONTEND    Frontend
+    )
+{
+    Trace("====>\n");
+
+    Frontend->Online = TRUE;
+
+    Trace("<====\n");
+}
+
+static VOID
+FrontendSetOffline(
+    IN  PXENVIF_FRONTEND    Frontend
+    )
+{
+    Trace("====>\n");
+
+    Frontend->Online = FALSE;
+    PdoRequestEject(__FrontendGetPdo(Frontend));
+
+    Trace("<====\n");
+}
+
+static VOID
+FrontendSetXenbusState(
     IN  PXENVIF_FRONTEND    Frontend,
-    IN  PCHAR               Path,
-    IN  XenbusState         *State
+    IN  XenbusState         State
+    )
+{
+    BOOLEAN                 Online;
+
+    Trace("%s: ====> %s\n",
+          __FrontendGetPath(Frontend),
+          XenbusStateName(State));
+
+    ASSERT(FrontendIsOnline(Frontend));
+
+    Online = !PdoIsEjectRequested(__FrontendGetPdo(Frontend)) &&
+             FrontendIsBackendOnline(Frontend);
+
+    (VOID) XENBUS_STORE(Printf,
+                        &Frontend->StoreInterface,
+                        NULL,
+                        __FrontendGetPath(Frontend),
+                        "state",
+                        "%u",
+                        State);
+
+    if (State == XenbusStateClosed && !Online)
+        FrontendSetOffline(Frontend);
+
+    Trace("%s: <==== %s\n",
+          __FrontendGetPath(Frontend),
+          XenbusStateName(State));
+}
+
+static NTSTATUS
+FrontendAcquireBackend(
+    IN  PXENVIF_FRONTEND    Frontend
     )
 {
-    KEVENT                  Event;
-    PXENBUS_STORE_WATCH     Watch;
-    LARGE_INTEGER           Start;
-    ULONGLONG               TimeDelta;
-    LARGE_INTEGER           Timeout;
-    XenbusState             Old = *State;
+    PCHAR                   Buffer;
     NTSTATUS                status;
 
-    Trace("%s: ====> (%s)\n", Path, XenbusStateName(*State));
+    Trace("=====>\n");
+
+    status = XENBUS_STORE(Read,
+                          &Frontend->StoreInterface,
+                          NULL,
+                          __FrontendGetPath(Frontend),
+                          "backend",
+                          &Buffer);
+    if (!NT_SUCCESS(status))
+        goto fail1;
+
+    Frontend->BackendPath = Buffer;
+
+    status = XENBUS_STORE(Read,
+                          &Frontend->StoreInterface,
+                          NULL,
+                          __FrontendGetPath(Frontend),
+                          "backend-id",
+                          &Buffer);
+    if (!NT_SUCCESS(status)) {
+        Frontend->BackendDomain = 0;
+    } else {
+        Frontend->BackendDomain = (USHORT)strtol(Buffer, NULL, 10);
+
+        XENBUS_STORE(Free,
+                     &Frontend->StoreInterface,
+                     Buffer);
+    }
+
+    return STATUS_SUCCESS;
+
+fail1:
+    Error("fail1 (%08x)\n", status);
+
+    Trace("<====\n");
+    return status;
+}
+
+static VOID
+FrontendWaitForBackendXenbusStateChange(
+    IN      PXENVIF_FRONTEND    Frontend,
+    IN OUT  XenbusState         *State
+    )
+{
+    KEVENT                      Event;
+    PXENBUS_STORE_WATCH         Watch;
+    LARGE_INTEGER               Start;
+    ULONGLONG                   TimeDelta;
+    LARGE_INTEGER               Timeout;
+    XenbusState                 Old = *State;
+    NTSTATUS                    status;
+
+    Trace("%s: ====> %s\n",
+          __FrontendGetBackendPath(Frontend),
+          XenbusStateName(*State));
+
+    ASSERT(FrontendIsOnline(Frontend));
 
     KeInitializeEvent(&Event, NotificationEvent, FALSE);
 
     status = XENBUS_STORE(WatchAdd,
                           &Frontend->StoreInterface,
-                          Path,
+                          __FrontendGetBackendPath(Frontend),
                           "state",
                           &Event,
                           &Watch);
     if (!NT_SUCCESS(status))
-        goto fail1;
+        Watch = NULL;
 
     KeQuerySystemTime(&Start);
     TimeDelta = 0;
@@ -908,40 +983,39 @@ FrontendWaitForStateChange(
     Timeout.QuadPart = 0;
 
     while (*State == Old && TimeDelta < 120000) {
-        ULONG           Attempt;
         PCHAR           Buffer;
         LARGE_INTEGER   Now;
 
-        Attempt = 0;
-        while (++Attempt < 1000) {
-            status = KeWaitForSingleObject(&Event,
-                                           Executive,
-                                           KernelMode,
-                                           FALSE,
-                                           &Timeout);
-            if (status != STATUS_TIMEOUT)
-                break;
+        if (Watch != NULL) {
+            ULONG   Attempt = 0;
 
-            // We are waiting for a watch event at DISPATCH_LEVEL so
-            // it is our responsibility to poll the store ring.
-            XENBUS_STORE(Poll,
-                         &Frontend->StoreInterface);
+            while (++Attempt < 1000) {
+                status = KeWaitForSingleObject(&Event,
+                                               Executive,
+                                               KernelMode,
+                                               FALSE,
+                                               &Timeout);
+                if (status != STATUS_TIMEOUT)
+                    break;
 
-            KeStallExecutionProcessor(1000);   // 1ms
-        }
+                // We are waiting for a watch event at DISPATCH_LEVEL so
+                // it is our responsibility to poll the store ring.
+                XENBUS_STORE(Poll,
+                             &Frontend->StoreInterface);
+
+                KeStallExecutionProcessor(1000);   // 1ms
+            }
 
-        KeClearEvent(&Event);
+            KeClearEvent(&Event);
+        }
 
         status = XENBUS_STORE(Read,
                               &Frontend->StoreInterface,
                               NULL,
-                              Path,
+                              __FrontendGetBackendPath(Frontend),
                               "state",
                               &Buffer);
         if (!NT_SUCCESS(status)) {
-            if (status != STATUS_OBJECT_NAME_NOT_FOUND)
-                goto fail2;
-
             *State = XenbusStateUnknown;
         } else {
             *State = (XenbusState)strtol(Buffer, NULL, 10);
@@ -956,45 +1030,44 @@ FrontendWaitForStateChange(
         TimeDelta = (Now.QuadPart - Start.QuadPart) / 10000ull;
     }
 
-    status = STATUS_UNSUCCESSFUL;
-    if (*State == Old)
-        goto fail3;
-
-    (VOID) XENBUS_STORE(WatchRemove,
-                        &Frontend->StoreInterface,
-                        Watch);
+    if (Watch != NULL)
+        (VOID) XENBUS_STORE(WatchRemove,
+                            &Frontend->StoreInterface,
+                            Watch);
 
-    Trace("%s: <==== (%s)\n", Path, XenbusStateName(*State));
+    Trace("%s: <==== (%s)\n",
+          __FrontendGetBackendPath(Frontend),
+          XenbusStateName(*State));
+}
 
-    return STATUS_SUCCESS;
+static VOID
+FrontendReleaseBackend(
+    IN      PXENVIF_FRONTEND    Frontend
+    )
+{
+    Trace("=====>\n");
 
-fail3:
-    Error("fail3\n");
+    ASSERT(Frontend->BackendDomain != DOMID_INVALID);
+    ASSERT(Frontend->BackendPath != NULL);
 
-fail2:
-    Error("fail2\n");
+    Frontend->BackendDomain = DOMID_INVALID;
 
-    (VOID) XENBUS_STORE(WatchRemove,
-                        &Frontend->StoreInterface,
-                        Watch);
+    XENBUS_STORE(Free,
+                 &Frontend->StoreInterface,
+                 Frontend->BackendPath);
+    Frontend->BackendPath = NULL;
 
-fail1:
-    Error("fail1 (%08x)\n", status);
-                   
-    return status;
+    Trace("<=====\n");
 }
 
-static NTSTATUS
+static VOID
 FrontendClose(
-    IN  PXENVIF_FRONTEND    Frontend,
-    IN  BOOLEAN             Force            
+    IN  PXENVIF_FRONTEND    Frontend
     )
 {
-    PCHAR                   Path;
     XenbusState             State;
-    NTSTATUS                status;
 
-    Trace("====>\n");
+    Trace("====> %s\n");
 
     ASSERT(Frontend->Watch != NULL);
     (VOID) XENBUS_STORE(WatchRemove,
@@ -1002,87 +1075,44 @@ FrontendClose(
                         Frontend->Watch);
     Frontend->Watch = NULL;
 
-    // Release cached information about the backend
-    ASSERT(Frontend->BackendPath != NULL);
-    XENBUS_STORE(Free,
-                 &Frontend->StoreInterface,
-                 Frontend->BackendPath);
-    Frontend->BackendPath = NULL;
+    State = XenbusStateUnknown;
+    while (State != XenbusStateClosed) {
+        if (!FrontendIsOnline(Frontend))
+            break;
 
-    Frontend->BackendDomain = DOMID_INVALID;
+        FrontendWaitForBackendXenbusStateChange(Frontend,
+                                                &State);
 
-    if (Force)
-        goto done;
+        switch (State) {
+        case XenbusStateUnknown:
+            FrontendSetOffline(Frontend);
+            break;
 
-    status = XENBUS_STORE(Read,
-                          &Frontend->StoreInterface,
-                          NULL,
-                          __FrontendGetPath(Frontend),
-                          "backend",
-                   &Path);
-    if (!NT_SUCCESS(status))
-        goto fail1;
+        case XenbusStateConnected:
+        case XenbusStateInitWait:
+            FrontendSetXenbusState(Frontend,
+                                   XenbusStateClosing);
+            break;
 
-    State = XenbusStateInitialising;
-    status = FrontendWaitForStateChange(Frontend, Path, &State);
-    if (!NT_SUCCESS(status))
-        goto fail2;
+        case XenbusStateClosing:
+            FrontendSetXenbusState(Frontend,
+                                   XenbusStateClosed);
+            break;
 
-    while (State != XenbusStateClosing &&
-           State != XenbusStateClosed &&
-           State != XenbusStateUnknown) {
-        (VOID) XENBUS_STORE(Printf,
-                            &Frontend->StoreInterface,
-                            NULL,
-                            __FrontendGetPath(Frontend),
-                            "state",
-                            "%u",
-                            XenbusStateClosing);
-        status = FrontendWaitForStateChange(Frontend, Path, &State);
-        if (!NT_SUCCESS(status))
-            goto fail2;
-    }
+        case XenbusStateClosed:
+            break;
 
-    while (State != XenbusStateClosed &&
-           State != XenbusStateUnknown) {
-        (VOID) XENBUS_STORE(Printf,
-                            &Frontend->StoreInterface,
-                            NULL,
-                            __FrontendGetPath(Frontend),
-                            "state",
-                            "%u",
-                            XenbusStateClosed);
-        status = FrontendWaitForStateChange(Frontend, Path, &State);
-        if (!NT_SUCCESS(status))
-            goto fail3;
+        default:
+            ASSERT(FALSE);
+            break;
+        }
     }
 
-    XENBUS_STORE(Free,
-                 &Frontend->StoreInterface,
-                 Path);
+    FrontendReleaseBackend(Frontend);
 
-done:
     XENBUS_STORE(Release, &Frontend->StoreInterface);
 
     Trace("<====\n");
-    return STATUS_SUCCESS;
-
-fail3:
-    Error("fail3\n");
-
-fail2:
-    Error("fail2\n");
-
-    XENBUS_STORE(Free,
-                 &Frontend->StoreInterface,
-                 Path);
-
-fail1:
-    Error("fail1 (%08x)\n", status);
-
-    XENBUS_STORE(Release, &Frontend->StoreInterface);
-
-    return status;
 }
 
 static NTSTATUS
@@ -1090,9 +1120,7 @@ FrontendPrepare(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
-    PCHAR                   Path;
     XenbusState             State;
-    PCHAR                   Buffer;
     NTSTATUS                status;
 
     Trace("====>\n");
@@ -1101,97 +1129,48 @@ FrontendPrepare(
     if (!NT_SUCCESS(status))
         goto fail1;
 
-    status = XENBUS_STORE(Read,
-                          &Frontend->StoreInterface,
-                          NULL,
-                          __FrontendGetPath(Frontend),
-                          "backend",
-                          &Path);
+    FrontendSetOnline(Frontend);
+
+    status = FrontendAcquireBackend(Frontend);
     if (!NT_SUCCESS(status))
         goto fail2;
 
     State = XenbusStateUnknown;
-    status = FrontendWaitForStateChange(Frontend, Path, &State);
-    if (!NT_SUCCESS(status))
-        goto fail3;
+    while (State != XenbusStateInitWait) {
+        if (!FrontendIsOnline(Frontend))
+            break;
 
-    while (State == XenbusStateConnected) {
-        (VOID) XENBUS_STORE(Printf,
-                            &Frontend->StoreInterface,
-                            NULL,
-                            __FrontendGetPath(Frontend),
-                            "state",
-                            "%u",
-                            XenbusStateClosing);
-        status = FrontendWaitForStateChange(Frontend, Path, &State);
-        if (!NT_SUCCESS(status))
-            goto fail4;
-    }
+        FrontendWaitForBackendXenbusStateChange(Frontend,
+                                                &State);
 
-    while (State == XenbusStateClosing) {
-        (VOID) XENBUS_STORE(Printf,
-                            &Frontend->StoreInterface,
-                            NULL,
-                            __FrontendGetPath(Frontend),
-                            "state",
-                            "%u",
-                            XenbusStateClosed);
-        status = FrontendWaitForStateChange(Frontend, Path, &State);
-        if (!NT_SUCCESS(status))
-            goto fail5;
-    }
+        status = STATUS_SUCCESS;
+        switch (State) {
+        case XenbusStateUnknown:
+            FrontendSetOffline(Frontend);
+            break;
 
-    while (State != XenbusStateClosed &&
-           State != XenbusStateInitialising &&
-           State != XenbusStateInitWait &&
-           State != XenbusStateUnknown) {
-        status = FrontendWaitForStateChange(Frontend, Path, &State);
-        if (!NT_SUCCESS(status))
-            goto fail6;
-    }
+        case XenbusStateClosed:
+            FrontendSetXenbusState(Frontend,
+                                   XenbusStateInitialising);
+            break;
 
-    status = STATUS_UNSUCCESSFUL;
-    if (State == XenbusStateUnknown)
-        goto fail7;
+        case XenbusStateClosing:
+            FrontendSetXenbusState(Frontend,
+                                   XenbusStateClosed);
+            break;
 
-    status = XENBUS_STORE(Printf,
-                          &Frontend->StoreInterface,
-                          NULL,
-                          __FrontendGetPath(Frontend),
-                          "state",
-                          "%u",
-                          XenbusStateInitialising);
-    if (!NT_SUCCESS(status))
-        goto fail8;
+        case XenbusStateInitWait:
+            break;
 
-    while (State == XenbusStateClosed ||
-           State == XenbusStateInitialising) {
-        status = FrontendWaitForStateChange(Frontend, Path, &State);
-        if (!NT_SUCCESS(status))
-            goto fail9;
+        default:
+            ASSERT(FALSE);
+            break;
+        }
     }
 
     status = STATUS_UNSUCCESSFUL;
     if (State != XenbusStateInitWait)
-        goto fail10;
-
-    Frontend->BackendPath = Path;
-
-    status = XENBUS_STORE(Read,
-                          &Frontend->StoreInterface,
-                          NULL,
-                          __FrontendGetPath(Frontend),
-                          "backend-id",
-                          &Buffer);
-    if (!NT_SUCCESS(status)) {
-        Frontend->BackendDomain = 0;
-    } else {
-        Frontend->BackendDomain = (USHORT)strtol(Buffer, NULL, 10);
-
-        XENBUS_STORE(Free,
-                     &Frontend->StoreInterface,
-                     Buffer);
-    }
+        goto fail3;
 
     status = XENBUS_STORE(WatchAdd,
                           &Frontend->StoreInterface,
@@ -1200,47 +1179,24 @@ FrontendPrepare(
                           ThreadGetEvent(Frontend->EjectThread),
                           &Frontend->Watch);
     if (!NT_SUCCESS(status))
-        goto fail11;
+        goto fail4;
 
     Trace("<====\n");
     return STATUS_SUCCESS;
 
-fail11:
-    Error("fail11\n");
-
-    Frontend->BackendDomain = DOMID_INVALID;
-    Frontend->BackendPath = NULL;
-
-fail10:
-    Error("fail10\n");
-
-fail9:
-    Error("fail9\n");
-
-fail8:
-    Error("fail8\n");
-
-fail7:
-    Error("fail7\n");
-
-fail6:
-    Error("fail6\n");
-
-fail5:
-    Error("fail5\n");
-
 fail4:
     Error("fail4\n");
 
 fail3:
     Error("fail3\n");
 
-    XENBUS_STORE(Free,
-                 &Frontend->StoreInterface,
-                 Path);
+    FrontendReleaseBackend(Frontend);
+
 fail2:
     Error("fail2\n");
 
+    FrontendSetOffline(Frontend);
+
     XENBUS_STORE(Release, &Frontend->StoreInterface);
 
 fail1:
@@ -1423,7 +1379,6 @@ FrontendConnect(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
-    PCHAR                   Path = __FrontendGetBackendPath(Frontend);
     XenbusState             State;
     ULONG                   Attempt;
     NTSTATUS                status;
@@ -1514,36 +1469,49 @@ abort:
     if (!NT_SUCCESS(status))
         goto fail7;
 
-    status = XENBUS_STORE(Printf,
-                          &Frontend->StoreInterface,
-                          NULL,
-                          __FrontendGetPath(Frontend),
-                          "state",
-                          "%u",
-                          XenbusStateConnected);
-    if (!NT_SUCCESS(status))
-        goto fail8;
+    State = XenbusStateUnknown;
+    while (State != XenbusStateConnected) {
+        if (!FrontendIsOnline(Frontend))
+            break;
 
-    State = XenbusStateInitWait;
-    status = FrontendWaitForStateChange(Frontend, Path, &State);
-    if (!NT_SUCCESS(status))
-        goto fail9;
+        FrontendWaitForBackendXenbusStateChange(Frontend,
+                                                &State);
+
+        status = STATUS_SUCCESS;
+        switch (State) {
+        case XenbusStateUnknown:
+            FrontendSetOffline(Frontend);
+            break;
+
+        case XenbusStateInitWait:
+        case XenbusStateInitialised:
+            FrontendSetXenbusState(Frontend,
+                                   XenbusStateConnected);
+            break;
+
+        case XenbusStateClosing:
+            FrontendSetXenbusState(Frontend,
+                                   XenbusStateClosed);
+            break;
+
+        case XenbusStateConnected:
+            break;
+
+        default:
+            ASSERT(FALSE);
+            break;
+        }
+    }
 
     status = STATUS_UNSUCCESSFUL;
     if (State != XenbusStateConnected)
-        goto fail10;
+        goto fail8;
 
     ThreadWake(Frontend->MibThread);
 
     Trace("<====\n");
     return STATUS_SUCCESS;
 
-fail10:
-    Error("fail10\n");
-
-fail9:
-    Error("fail9\n");
-
 fail8:
     Error("fail8\n");
 
@@ -1693,6 +1661,26 @@ FrontendSetState(
         NTSTATUS    status;
 
         switch (Frontend->State) {
+        case FRONTEND_UNKNOWN:
+            switch (State) {
+            case FRONTEND_CLOSED:
+            case FRONTEND_PREPARED:
+            case FRONTEND_CONNECTED:
+            case FRONTEND_ENABLED:
+                status = FrontendPrepare(Frontend);
+                if (NT_SUCCESS(status)) {
+                    Frontend->State = FRONTEND_PREPARED;
+                } else {
+                    Failed = TRUE;
+                }
+                break;
+
+            default:
+                ASSERT(FALSE);
+                break;
+            }
+            break;
+
         case FRONTEND_CLOSED:
             switch (State) {
             case FRONTEND_PREPARED:
@@ -1706,6 +1694,10 @@ FrontendSetState(
                 }
                 break;
 
+            case FRONTEND_UNKNOWN:
+                Frontend->State = FRONTEND_UNKNOWN;
+                break;
+
             default:
                 ASSERT(FALSE);
                 break;
@@ -1720,25 +1712,17 @@ FrontendSetState(
                 if (NT_SUCCESS(status)) {
                     Frontend->State = FRONTEND_CONNECTED;
                 } else {
-                    status = FrontendClose(Frontend, FALSE);
-                    if (NT_SUCCESS(status))
-                        Frontend->State = FRONTEND_CLOSED;
-                    else
-                        Frontend->State = FRONTEND_STATE_INVALID;
+                    FrontendClose(Frontend);
+                    Frontend->State = FRONTEND_CLOSED;
 
                     Failed = TRUE;
                 }
                 break;
 
             case FRONTEND_CLOSED:
-                status = FrontendClose(Frontend, FALSE);
-                if (NT_SUCCESS(status)) {
-                    Frontend->State = FRONTEND_CLOSED;
-                } else {
-                    Frontend->State = FRONTEND_STATE_INVALID;
-                    Failed = TRUE;
-                }
-
+            case FRONTEND_UNKNOWN:
+                FrontendClose(Frontend);
+                Frontend->State = FRONTEND_CLOSED;
                 break;
 
             default:
@@ -1754,11 +1738,8 @@ FrontendSetState(
                 if (NT_SUCCESS(status)) {
                     Frontend->State = FRONTEND_ENABLED;
                 } else {
-                    status = FrontendClose(Frontend, FALSE);
-                    if (NT_SUCCESS(status))
-                        Frontend->State = FRONTEND_CLOSED;
-                    else
-                        Frontend->State = FRONTEND_STATE_INVALID;
+                    FrontendClose(Frontend);
+                    Frontend->State = FRONTEND_CLOSED;
 
                     FrontendDisconnect(Frontend);
                     Failed = TRUE;
@@ -1767,16 +1748,11 @@ FrontendSetState(
 
             case FRONTEND_PREPARED:
             case FRONTEND_CLOSED:
-                status = FrontendClose(Frontend, FALSE);
-                if (NT_SUCCESS(status)) {
-                    Frontend->State = FRONTEND_CLOSED;
-                } else {
-                    Frontend->State = FRONTEND_STATE_INVALID;
-                    Failed = TRUE;
-                }
+            case FRONTEND_UNKNOWN:
+                FrontendClose(Frontend);
+                Frontend->State = FRONTEND_CLOSED;
 
                 FrontendDisconnect(Frontend);
-
                 break;
 
             default:
@@ -1790,6 +1766,7 @@ FrontendSetState(
             case FRONTEND_CONNECTED:
             case FRONTEND_PREPARED:
             case FRONTEND_CLOSED:
+            case FRONTEND_UNKNOWN:
                 FrontendDisable(Frontend);
                 Frontend->State = FRONTEND_CONNECTED;
                 break;
@@ -1800,10 +1777,6 @@ FrontendSetState(
             }
             break;
 
-        case FRONTEND_STATE_INVALID:
-            Failed = TRUE;
-            break;
-
         default:
             ASSERT(FALSE);
             break;
@@ -1821,34 +1794,15 @@ FrontendSetState(
     return (!Failed) ? STATUS_SUCCESS : STATUS_UNSUCCESSFUL;
 }
 
-static FORCEINLINE NTSTATUS
+static FORCEINLINE VOID
 __FrontendResume(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
-    NTSTATUS                status;
-
     ASSERT3U(KeGetCurrentIrql(), ==, DISPATCH_LEVEL);
 
-    status = FrontendSetState(Frontend, FRONTEND_PREPARED);
-    if (!NT_SUCCESS(status))
-        goto fail1;
-
-    status = FrontendSetState(Frontend, FRONTEND_CLOSED);
-    if (!NT_SUCCESS(status))
-        goto fail2;
-
-    return STATUS_SUCCESS;
-
-fail2:
-    Error("fail2\n");
-
-    Frontend->State = FRONTEND_CLOSED;
-
-fail1:
-    Error("fail1 (%08x)\n", status);
-
-    return status;
+    ASSERT3U(Frontend->State, ==, FRONTEND_UNKNOWN);
+    (VOID) FrontendSetState(Frontend, FRONTEND_CLOSED);
 }
 
 static FORCEINLINE VOID
@@ -1856,9 +1810,9 @@ __FrontendSuspend(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
-    UNREFERENCED_PARAMETER(Frontend);
-
     ASSERT3U(KeGetCurrentIrql(), ==, DISPATCH_LEVEL);
+
+    (VOID) FrontendSetState(Frontend, FRONTEND_UNKNOWN);
 }
 
 static DECLSPEC_NOINLINE VOID
@@ -1867,12 +1821,9 @@ FrontendSuspendCallbackLate(
     )
 {
     PXENVIF_FRONTEND    Frontend = Argument;
-    NTSTATUS            status;
 
     __FrontendSuspend(Frontend);
-
-    status = __FrontendResume(Frontend);
-    ASSERT(NT_SUCCESS(status));
+    __FrontendResume(Frontend);
 }
 
 NTSTATUS
@@ -1891,9 +1842,7 @@ FrontendResume(
     if (!NT_SUCCESS(status))
         goto fail1;
 
-    status = __FrontendResume(Frontend);
-    if (!NT_SUCCESS(status))
-        goto fail2;
+    __FrontendResume(Frontend);
 
     status = XENBUS_SUSPEND(Register,
                             &Frontend->SuspendInterface,
@@ -1902,22 +1851,30 @@ FrontendResume(
                             Frontend,
                             &Frontend->SuspendCallbackLate);
     if (!NT_SUCCESS(status))
-        goto fail3;
+        goto fail2;
 
     KeLowerIrql(Irql);
 
+    KeClearEvent(&Frontend->EjectEvent);
+    ThreadWake(Frontend->EjectThread);
+
+    Trace("waiting for eject thread\n");
+
+    (VOID) KeWaitForSingleObject(&Frontend->EjectEvent,
+                                 Executive,
+                                 KernelMode,
+                                 FALSE,
+                                 NULL);
+
     Trace("<====\n");
 
     return STATUS_SUCCESS;
     
-fail3:
-    Error("fail3\n");
-
-    __FrontendSuspend(Frontend);
-
 fail2:
     Error("fail2\n");
 
+    __FrontendSuspend(Frontend);
+
     XENBUS_SUSPEND(Release, &Frontend->SuspendInterface);
 
 fail1:
@@ -1950,6 +1907,17 @@ FrontendSuspend(
 
     KeLowerIrql(Irql);
 
+    KeClearEvent(&Frontend->EjectEvent);
+    ThreadWake(Frontend->EjectThread);
+
+    Trace("waiting for eject thread\n");
+
+    (VOID) KeWaitForSingleObject(&Frontend->EjectEvent,
+                                 Executive,
+                                 KernelMode,
+                                 FALSE,
+                                 NULL);
+
     Trace("<====\n");
 }
 
@@ -2012,7 +1980,7 @@ FrontendInitialize(
 
     KeInitializeSpinLock(&(*Frontend)->Lock);
 
-    (*Frontend)->State = FRONTEND_CLOSED;
+    (*Frontend)->Online = TRUE;
 
     FdoGetDebugInterface(PdoGetFdo(Pdo), &(*Frontend)->DebugInterface);
     FdoGetSuspendInterface(PdoGetFdo(Pdo), &(*Frontend)->SuspendInterface);
@@ -2032,6 +2000,8 @@ FrontendInitialize(
     if (!NT_SUCCESS(status))
         goto fail8;
 
+    KeInitializeEvent(&(*Frontend)->EjectEvent, NotificationEvent, FALSE);
+
     status = ThreadCreate(FrontendEject, *Frontend, &(*Frontend)->EjectThread);
     if (!NT_SUCCESS(status))
         goto fail9;
@@ -2054,6 +2024,8 @@ fail10:
 fail9:
     Error("fail9\n");
 
+    RtlZeroMemory(&(*Frontend)->EjectEvent, sizeof (KEVENT));
+
     TransmitterTeardown(__FrontendGetTransmitter(*Frontend));
     (*Frontend)->Transmitter = NULL;
 
@@ -2083,7 +2055,7 @@ fail6:
     RtlZeroMemory(&(*Frontend)->DebugInterface,
                   sizeof (XENBUS_DEBUG_INTERFACE));
 
-    (*Frontend)->State = FRONTEND_STATE_INVALID;
+    (*Frontend)->Online = FALSE;
 
     RtlZeroMemory(&(*Frontend)->Lock, sizeof (KSPIN_LOCK));
 
@@ -2128,16 +2100,7 @@ FrontendTeardown(
 
     ASSERT3U(KeGetCurrentIrql(), ==, PASSIVE_LEVEL);
 
-    ASSERT(Frontend->State != FRONTEND_ENABLED);
-    ASSERT(Frontend->State != FRONTEND_CONNECTED);
-
-    if (Frontend->State == FRONTEND_PREPARED) {
-        (VOID) FrontendClose(Frontend, TRUE);
-        Frontend->State = FRONTEND_CLOSED;
-    }
-
-    ASSERT(Frontend->State == FRONTEND_CLOSED ||
-           Frontend->State == FRONTEND_STATE_INVALID);
+    ASSERT(Frontend->State == FRONTEND_UNKNOWN);
 
     ThreadAlert(Frontend->MibThread);
     ThreadJoin(Frontend->MibThread);
@@ -2147,6 +2110,8 @@ FrontendTeardown(
     ThreadJoin(Frontend->EjectThread);
     Frontend->EjectThread = NULL;
 
+    RtlZeroMemory(&Frontend->EjectEvent, sizeof (KEVENT));
+
     TransmitterTeardown(__FrontendGetTransmitter(Frontend));
     Frontend->Transmitter = NULL;
 
@@ -2167,7 +2132,7 @@ FrontendTeardown(
     RtlZeroMemory(&Frontend->DebugInterface,
                   sizeof (XENBUS_DEBUG_INTERFACE));
 
-    Frontend->State = FRONTEND_STATE_INVALID;
+    Frontend->Online = FALSE;
 
     RtlZeroMemory(&Frontend->Lock, sizeof (KSPIN_LOCK));
 
diff --git a/src/xenvif/frontend.h b/src/xenvif/frontend.h
index 1673fac..374e9b4 100644
--- a/src/xenvif/frontend.h
+++ b/src/xenvif/frontend.h
@@ -48,7 +48,7 @@
 typedef struct _XENVIF_FRONTEND XENVIF_FRONTEND, *PXENVIF_FRONTEND;
 
 typedef enum _XENVIF_FRONTEND_STATE {
-    FRONTEND_STATE_INVALID,
+    FRONTEND_UNKNOWN,
     FRONTEND_CLOSED,
     FRONTEND_PREPARED,
     FRONTEND_CONNECTED,
diff --git a/src/xenvif/pdo.c b/src/xenvif/pdo.c
index dc7eacd..5b6e085 100644
--- a/src/xenvif/pdo.c
+++ b/src/xenvif/pdo.c
@@ -70,8 +70,7 @@ struct _XENVIF_PDO {
     PXENVIF_FDO                 Fdo;
     BOOLEAN                     Missing;
     const CHAR                  *Reason;
-    BOOLEAN                     EjectRequested;
-    KSPIN_LOCK                  EjectLock;
+    LONG                        Eject;
 
     UNICODE_STRING              ContainerID;
 
@@ -241,55 +240,20 @@ PdoIsMissing(
     return __PdoIsMissing(Pdo);
 }
 
-static FORCEINLINE VOID
-__PdoSetEjectRequested(
-    IN  PXENVIF_PDO Pdo
-    )
-{
-    KIRQL           Irql;
-
-    KeAcquireSpinLock(&Pdo->EjectLock, &Irql);
-    Pdo->EjectRequested = TRUE;
-    KeReleaseSpinLock(&Pdo->EjectLock, Irql);
-}
-
-static FORCEINLINE BOOLEAN
-__PdoClearEjectRequested(
-    IN  PXENVIF_PDO Pdo
-    )
-{
-    KIRQL           Irql;
-    BOOLEAN         EjectRequested;
-
-    KeAcquireSpinLock(&Pdo->EjectLock, &Irql);
-    EjectRequested = Pdo->EjectRequested;
-    Pdo->EjectRequested = FALSE;
-    KeReleaseSpinLock(&Pdo->EjectLock, Irql);
-
-    return EjectRequested;
-}
-
-static FORCEINLINE BOOLEAN
-__PdoIsEjectRequested(
+static FORCEINLINE PXENVIF_FDO
+__PdoGetFdo(
     IN  PXENVIF_PDO Pdo
     )
 {
-    KIRQL           Irql;
-    BOOLEAN         EjectRequested;
-
-    KeAcquireSpinLock(&Pdo->EjectLock, &Irql);
-    EjectRequested = Pdo->EjectRequested;
-    KeReleaseSpinLock(&Pdo->EjectLock, Irql);
-
-    return EjectRequested;
+    return Pdo->Fdo;
 }
 
-BOOLEAN
-PdoIsEjectRequested(
+PXENVIF_FDO
+PdoGetFdo(
     IN  PXENVIF_PDO Pdo
     )
 {
-    return __PdoIsEjectRequested(Pdo);
+    return __PdoGetFdo(Pdo);
 }
 
 static FORCEINLINE VOID
@@ -326,6 +290,59 @@ PdoGetName(
     return __PdoGetName(Pdo);
 }
 
+static FORCEINLINE BOOLEAN
+__PdoSetEjectRequested(
+    IN  PXENVIF_PDO Pdo
+    )
+{
+    return (InterlockedBitTestAndSet(&Pdo->Eject, 0) == 0) ? TRUE : FALSE;
+}
+
+VOID
+PdoRequestEject(
+    IN  PXENVIF_PDO Pdo
+    )
+{
+    PXENVIF_DX      Dx = Pdo->Dx;
+    PDEVICE_OBJECT  PhysicalDeviceObject = Dx->DeviceObject;
+    PXENVIF_FDO     Fdo = __PdoGetFdo(Pdo);
+
+    if (!__PdoSetEjectRequested(Pdo))
+        return;
+
+    Info("%p (%s)\n",
+         PhysicalDeviceObject,
+         __PdoGetName(Pdo));
+
+    IoInvalidateDeviceRelations(FdoGetPhysicalDeviceObject(Fdo),
+                                BusRelations);
+}
+
+static FORCEINLINE BOOLEAN
+__PdoClearEjectRequested(
+    IN  PXENVIF_PDO Pdo
+    )
+{
+    return (InterlockedBitTestAndReset(&Pdo->Eject, 0) != 0) ? TRUE : FALSE;
+}
+
+static FORCEINLINE BOOLEAN
+__PdoIsEjectRequested(
+    IN  PXENVIF_PDO Pdo
+    )
+{
+    KeMemoryBarrier();
+    return (Pdo->Eject & 1) ? TRUE : FALSE;
+}
+
+BOOLEAN
+PdoIsEjectRequested(
+    IN  PXENVIF_PDO Pdo
+    )
+{
+    return __PdoIsEjectRequested(Pdo);
+}
+
 // {2A597D5E-8864-4428-A110-F568F316D4E4}
 DEFINE_GUID(GUID_CONTAINER_ID_NAME_SPACE,
 0x2a597d5e, 0x8864, 0x4428, 0xa1, 0x10, 0xf5, 0x68, 0xf3, 0x16, 0xd4, 0xe4);
@@ -511,22 +528,6 @@ fail1:
 
 #define MAXTEXTLEN  1024
 
-static FORCEINLINE PXENVIF_FDO
-__PdoGetFdo(
-    IN  PXENVIF_PDO Pdo
-    )
-{
-    return Pdo->Fdo;
-}
-
-PXENVIF_FDO
-PdoGetFdo(
-    IN  PXENVIF_PDO Pdo
-    )
-{
-    return __PdoGetFdo(Pdo);
-}
-
 static NTSTATUS
 PdoAddRevision(
     IN  PXENVIF_PDO Pdo,
@@ -1018,15 +1019,6 @@ PdoGetBusData(
                          Length);
 }
 
-VOID
-PdoRequestEject(
-    IN  PXENVIF_PDO Pdo
-    )
-{
-    __PdoSetEjectRequested(Pdo);
-    IoRequestDeviceEject(__PdoGetDeviceObject(Pdo));
-}
-
 static FORCEINLINE NTSTATUS
 __PdoD3ToD0(
     IN  PXENVIF_PDO             Pdo
@@ -1474,17 +1466,17 @@ done:
 
     FdoAcquireMutex(Fdo);
 
-    if (__PdoIsMissing(Pdo) ||
-        __PdoGetDevicePnpState(Pdo) == SurpriseRemovePending)
+    if (__PdoIsMissing(Pdo)) {
+        DEVICE_PNP_STATE    State = __PdoGetDevicePnpState(Pdo);
+
         __PdoSetDevicePnpState(Pdo, Deleted);
-    else
-        __PdoSetDevicePnpState(Pdo, Enumerated);
 
-    if (__PdoIsMissing(Pdo)) {
-        if (__PdoGetDevicePnpState(Pdo) == Deleted)
+        if (State == SurpriseRemovePending)
             PdoDestroy(Pdo);
         else
             NeedInvalidate = TRUE;
+    } else {
+        __PdoSetDevicePnpState(Pdo, Enumerated);
     }
 
     FdoReleaseMutex(Fdo);
@@ -2088,17 +2080,16 @@ PdoEject(
 
     Trace("%s\n", __PdoGetName(Pdo));
 
-    __PdoClearEjectRequested(Pdo);
-
     FdoAcquireMutex(Fdo);
 
     __PdoSetDevicePnpState(Pdo, Deleted);
     __PdoSetMissing(Pdo, "device ejected");
 
-    PdoDestroy(Pdo);
-
     FdoReleaseMutex(Fdo);
 
+    IoInvalidateDeviceRelations(FdoGetPhysicalDeviceObject(Fdo),
+                                BusRelations);
+
     status = STATUS_SUCCESS;
 
     Irp->IoStatus.Status = status;
@@ -2648,12 +2639,14 @@ PdoCreate(
 
     Dx->Pdo = Pdo;
 
-    KeInitializeSpinLock(&Pdo->EjectLock);
-
     status = FdoAddPhysicalDeviceObject(Fdo, Pdo);
     if (!NT_SUCCESS(status))
         goto fail11;
 
+    status = STATUS_UNSUCCESSFUL;
+    if (__PdoIsEjectRequested(Pdo))
+        goto fail12;
+
     for (Index = 0; Index < Pdo->Count; Index++) {
         Info("%p (%s %08X)\n",
              PhysicalDeviceObject,
@@ -2664,11 +2657,15 @@ PdoCreate(
     PhysicalDeviceObject->Flags &= ~DO_DEVICE_INITIALIZING;
     return STATUS_SUCCESS;
 
+fail12:
+    Error("fail12\n");
+
+    FdoRemovePhysicalDeviceObject(Fdo, Pdo);
+
 fail11:
     Error("fail11\n");
 
     (VOID) __PdoClearEjectRequested(Pdo);
-    RtlZeroMemory(&Pdo->EjectLock, sizeof (KSPIN_LOCK));
 
     Dx->Pdo = NULL;
 
@@ -2771,7 +2768,6 @@ PdoDestroy(
     FdoRemovePhysicalDeviceObject(Fdo, Pdo);
 
     (VOID) __PdoClearEjectRequested(Pdo);
-    RtlZeroMemory(&Pdo->EjectLock, sizeof (KSPIN_LOCK));
 
     Dx->Pdo = NULL;
 
diff --git a/src/xenvif/pdo.h b/src/xenvif/pdo.h
index 13dbe81..be05125 100644
--- a/src/xenvif/pdo.h
+++ b/src/xenvif/pdo.h
@@ -61,6 +61,11 @@ PdoIsMissing(
     IN  PXENVIF_PDO Pdo
     );
 
+extern VOID
+PdoRequestEject(
+    IN  PXENVIF_PDO Pdo
+    );
+
 extern BOOLEAN
 PdoIsEjectRequested(
     IN  PXENVIF_PDO Pdo
@@ -203,11 +208,6 @@ PdoGetVifInterface(
     IN  PXENVIF_PDO Pdo
     );
 
-extern VOID
-PdoRequestEject(
-    IN  PXENVIF_PDO Pdo
-    );
-
 extern NTSTATUS
 PdoDispatch(
     IN  PXENVIF_PDO Pdo,
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Mon Apr 20 16:19:08 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 20 Apr 2015 16:19:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YkEPc-0002eZ-5h; Mon, 20 Apr 2015 16:19:08 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YkEPb-0002eJ-2r
	for win-pv-devel@lists.xenproject.org; Mon, 20 Apr 2015 16:19:07 +0000
Received: from [85.158.139.211] by server-12.bemta-5.messagelabs.com id
	80/BD-22236-AF625355; Mon, 20 Apr 2015 16:19:06 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-2.tower-206.messagelabs.com!1429546743!17233252!1
X-Originating-IP: [209.85.160.179]
X-SpamReason: No, hits=0.5 required=7.0 tests=BODY_RANDOM_LONG, UPPERCASE_25_50
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 22062 invoked from network); 20 Apr 2015 16:19:04 -0000
Received: from mail-yk0-f179.google.com (HELO mail-yk0-f179.google.com)
	(209.85.160.179)
	by server-2.tower-206.messagelabs.com with RC4-SHA encrypted SMTP;
	20 Apr 2015 16:19:04 -0000
Received: by ykft189 with SMTP id t189so18571642ykf.1
	for <win-pv-devel@lists.xenproject.org>;
	Mon, 20 Apr 2015 09:19:03 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id:in-reply-to:references;
	bh=ZDd3Glqyn6NTQKHCWzAxmB/zBicaK8HFbC/aJ+/lRK4=;
	b=UwfkAaZYXbkDU3bzpmeGNmSIumyx/KG8WeEVAVe0RFxZZlMgqqXBlaOC2ZecN+1ax/
	iH1bot2YtVsUyxjdFn7TnG0ZmqUBgcAtuDYm/V45ooeGDLx8mYjp1smAOI4KuvDwctJa
	sida/j4H1E/36aqtxRlE52Q9JjuBAq/Cl4Cn04C+v6fw/bqCCxF8tEs9Ow4hamPOgP9a
	G9nldF17ID5xeUbhjWnRs0oh/OcRicOGC8pyf8I4MvyhuaNQF+NQ7kKirH7YD/GhmEtj
	5voCbKVnjDqZP5d3gQrEdxeBjn2Q22OKjYWW4Jx0HjiTfCNt2pjgCcTwCOkDXOpHPwvA
	ITig==
X-Received: by 10.170.90.70 with SMTP id h67mr15237134yka.46.1429546743101;
	Mon, 20 Apr 2015 09:19:03 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id 29sm15773767yhe.50.2015.04.20.09.19.01
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Mon, 20 Apr 2015 09:19:02 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Mon, 20 Apr 2015 17:19:03 +0100
Message-Id: <1429546743-8196-5-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
In-Reply-To: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
References: <1429546743-8196-1-git-send-email-paul.durrant@citrix.com>
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH 4/4] Re-work frontend xenbus state handling
	code
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Any time the xenbus state transitions through XenbusStateClosed (6) then
it's possible for the toolstack to tear down the vif, regardless of whether
the state transition was initialiated by the backend going offline or the
frontend being disabled at the same time the backend happens to go offline.
It's important, therefore, that the frontend code allows for this and
always requests PDO ejection if the backend does go away (even if a new
immediately appears).

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/xenvif/fdo.c      |  39 +--
 src/xenvif/frontend.c | 809 ++++++++++++++++++++++++--------------------------
 src/xenvif/frontend.h |   2 +-
 src/xenvif/pdo.c      | 160 +++++-----
 src/xenvif/pdo.h      |  10 +-
 5 files changed, 492 insertions(+), 528 deletions(-)

diff --git a/src/xenvif/fdo.c b/src/xenvif/fdo.c
index 3f6713b..b903b09 100644
--- a/src/xenvif/fdo.c
+++ b/src/xenvif/fdo.c
@@ -766,20 +766,22 @@ __FdoEnumerate(
             }
         }
 
-        if (Missing &&
-            !PdoIsMissing(Pdo) &&
-            !PdoIsEjectRequested(Pdo) &&
-            PdoGetDevicePnpState(Pdo) != Deleted) {
-            PdoSetMissing(Pdo, "device disappeared");
-
-            // If the PDO has not yet been enumerated then we can go ahead
-            // and mark it as deleted, otherwise we need to notify PnP manager and
-            // wait for the REMOVE_DEVICE IRP.
-            if (PdoGetDevicePnpState(Pdo) == Present) {
-                PdoSetDevicePnpState(Pdo, Deleted);
-                PdoDestroy(Pdo);
-            } else {
-                NeedInvalidate = TRUE;
+        if (!PdoIsMissing(Pdo) && PdoGetDevicePnpState(Pdo) != Deleted) {
+            if (PdoIsEjectRequested(Pdo)) {
+                IoRequestDeviceEject(PdoGetDeviceObject(Pdo));
+            } else if (Missing) {
+                PdoSetMissing(Pdo, "device disappeared");
+
+                // If the PDO has not yet been enumerated then we can
+                // go ahead and mark it as deleted, otherwise we need
+                // to notify PnP manager and wait for the REMOVE_DEVICE
+                // IRP.
+                if (PdoGetDevicePnpState(Pdo) == Present) {
+                    PdoSetDevicePnpState(Pdo, Deleted);
+                    PdoDestroy(Pdo);
+                } else {
+                    NeedInvalidate = TRUE;
+                }
             }
         }
 
@@ -1611,6 +1613,11 @@ FdoQueryDeviceRelations(
         goto done;
     }
 
+    KeClearEvent(&Fdo->ScanEvent);
+    ThreadWake(Fdo->ScanThread);
+
+    Trace("waiting for scan thread\n");
+
     (VOID) KeWaitForSingleObject(&Fdo->ScanEvent,
                                  Executive,
                                  KernelMode,
@@ -1643,10 +1650,6 @@ FdoQueryDeviceRelations(
 
         ASSERT3U(Dx->Type, ==, PHYSICAL_DEVICE_OBJECT);
 
-        if (PdoGetDevicePnpState(Pdo) == Deleted &&
-            !PdoIsMissing(Pdo))
-            PdoSetMissing(Pdo, "surprise remove");
-
         if (PdoIsMissing(Pdo))
             continue;
 
diff --git a/src/xenvif/frontend.c b/src/xenvif/frontend.c
index 51cf906..ce04bbf 100644
--- a/src/xenvif/frontend.c
+++ b/src/xenvif/frontend.c
@@ -61,9 +61,11 @@ struct _XENVIF_FRONTEND {
     PCHAR                       Path;
     PCHAR                       Prefix;
     XENVIF_FRONTEND_STATE       State;
+    BOOLEAN                     Online;
     KSPIN_LOCK                  Lock;
     PXENVIF_THREAD              MibThread;
     PXENVIF_THREAD              EjectThread;
+    KEVENT                      EjectEvent;
 
     PCHAR                       BackendPath;
     USHORT                      BackendDomain;
@@ -96,6 +98,7 @@ FrontendStateName(
         return #_State;
 
     switch (State) {
+    _STATE_NAME(UNKNOWN);
     _STATE_NAME(CLOSED);
     _STATE_NAME(PREPARED);
     _STATE_NAME(CONNECTED);
@@ -312,6 +315,42 @@ DEFINE_FRONTEND_GET_FUNCTION(Mac, PXENVIF_MAC)
 DEFINE_FRONTEND_GET_FUNCTION(Transmitter, PXENVIF_TRANSMITTER)
 DEFINE_FRONTEND_GET_FUNCTION(Receiver, PXENVIF_RECEIVER)
 
+static BOOLEAN
+FrontendIsOnline(
+    IN  PXENVIF_FRONTEND    Frontend
+    )
+{
+    return Frontend->Online;
+}
+
+static BOOLEAN
+FrontendIsBackendOnline(
+    IN  PXENVIF_FRONTEND    Frontend
+    )
+{
+    PCHAR                   Buffer;
+    BOOLEAN                 Online;
+    NTSTATUS                status;
+
+    status = XENBUS_STORE(Read,
+                          &Frontend->StoreInterface,
+                          NULL,
+                          __FrontendGetBackendPath(Frontend),
+                          "online",
+                          &Buffer);
+    if (!NT_SUCCESS(status)) {
+        Online = FALSE;
+    } else {
+        Online = (BOOLEAN)strtol(Buffer, NULL, 2);
+
+        XENBUS_STORE(Free,
+                     &Frontend->StoreInterface,
+                     Buffer);
+    }
+
+    return Online;
+}
+
 static DECLSPEC_NOINLINE NTSTATUS
 FrontendEject(
     IN  PXENVIF_THREAD  Self,
@@ -326,11 +365,7 @@ FrontendEject(
     Event = ThreadGetEvent(Self);
 
     for (;;) {
-        BOOLEAN             Online;
-        XenbusState         State;
-        ULONG               Attempt;
-        KIRQL               Irql;
-        NTSTATUS            status;
+        KIRQL       Irql;
 
         KeWaitForSingleObject(Event,
                               Executive,
@@ -345,91 +380,24 @@ FrontendEject(
         KeAcquireSpinLock(&Frontend->Lock, &Irql);
 
         // It is not safe to use interfaces before this point
-        if (Frontend->State == FRONTEND_CLOSED) {
-            KeReleaseSpinLock(&Frontend->Lock, Irql);
-            continue;
-        }
-
-        Online = TRUE;
-        State = XenbusStateUnknown;
-
-        Attempt = 0;
-        for (;;) {
-            PXENBUS_STORE_TRANSACTION   Transaction;
-            PCHAR                       Buffer;
-
-            status = STATUS_UNSUCCESSFUL;
-            if (__FrontendGetBackendPath(Frontend) == NULL)
-                break;
-
-            status = XENBUS_STORE(TransactionStart,
-                                  &Frontend->StoreInterface,
-                                  &Transaction);
-            if (!NT_SUCCESS(status))
-                break;
-
-            status = XENBUS_STORE(Read,
-                                  &Frontend->StoreInterface,
-                                  Transaction,
-                                  __FrontendGetBackendPath(Frontend),
-                                  "online",
-                                  &Buffer);
-            if (!NT_SUCCESS(status))
-                goto abort;
-
-            Online = (BOOLEAN)strtol(Buffer, NULL, 2);
-
-            XENBUS_STORE(Free,
-                         &Frontend->StoreInterface,
-                         Buffer);
-
-            status = XENBUS_STORE(Read,
-                                  &Frontend->StoreInterface,
-                                  Transaction,
-                                  __FrontendGetBackendPath(Frontend),
-                                  "state",
-                                  &Buffer);
-            if (!NT_SUCCESS(status))
-                goto abort;
-
-            State = (XenbusState)strtol(Buffer, NULL, 10);
-
-            XENBUS_STORE(Free,
-                         &Frontend->StoreInterface,
-                         Buffer);
-
-            status = XENBUS_STORE(TransactionEnd,
-                                  &Frontend->StoreInterface,
-                                  Transaction,
-                                  TRUE);
-            if (status != STATUS_RETRY || ++Attempt > 10)
-                break;
-
-            continue;
-
-abort:
-            (VOID) XENBUS_STORE(TransactionEnd,
-                                &Frontend->StoreInterface,
-                                Transaction,
-                                FALSE);
-            break;
-        }
-
-        if (!NT_SUCCESS(status)) {
-            Online = TRUE;
-            State = XenbusStateUnknown;
-        }
+        if (Frontend->State == FRONTEND_UNKNOWN ||
+            Frontend->State == FRONTEND_CLOSED)
+            goto loop;
 
-        if (!Online && State == XenbusStateClosing) {
-            Info("%s: requesting device eject\n",
-                 __FrontendGetPath(Frontend));
+        if (!FrontendIsOnline(Frontend))
+            goto loop;
 
-            PdoRequestEject(Frontend->Pdo);
-        }
+        if (!FrontendIsBackendOnline(Frontend))
+            PdoRequestEject(__FrontendGetPdo(Frontend));
 
+loop:
         KeReleaseSpinLock(&Frontend->Lock, Irql);
+
+        KeSetEvent(&Frontend->EjectEvent, IO_NO_INCREMENT, FALSE);
     }
 
+    KeSetEvent(&Frontend->EjectEvent, IO_NO_INCREMENT, FALSE);
+
     Trace("%s: <====\n", __FrontendGetPath(Frontend));
 
     return STATUS_SUCCESS;
@@ -555,7 +523,7 @@ FrontendProcessAddressTable(
     *AddressTable = NULL;
     *AddressCount = 0;
 
-    Luid = PdoGetLuid(Frontend->Pdo);
+    Luid = PdoGetLuid(__FrontendGetPdo(Frontend));
 
     for (Index = 0; Index < MibTable->NumEntries; Index++) {
         PMIB_UNICASTIPADDRESS_ROW   Row = &MibTable->Table[Index];
@@ -874,33 +842,140 @@ fail1:
     return status;
 }
 
-static NTSTATUS
-FrontendWaitForStateChange(
+static VOID
+FrontendSetOnline(
+    IN  PXENVIF_FRONTEND    Frontend
+    )
+{
+    Trace("====>\n");
+
+    Frontend->Online = TRUE;
+
+    Trace("<====\n");
+}
+
+static VOID
+FrontendSetOffline(
+    IN  PXENVIF_FRONTEND    Frontend
+    )
+{
+    Trace("====>\n");
+
+    Frontend->Online = FALSE;
+    PdoRequestEject(__FrontendGetPdo(Frontend));
+
+    Trace("<====\n");
+}
+
+static VOID
+FrontendSetXenbusState(
     IN  PXENVIF_FRONTEND    Frontend,
-    IN  PCHAR               Path,
-    IN  XenbusState         *State
+    IN  XenbusState         State
+    )
+{
+    BOOLEAN                 Online;
+
+    Trace("%s: ====> %s\n",
+          __FrontendGetPath(Frontend),
+          XenbusStateName(State));
+
+    ASSERT(FrontendIsOnline(Frontend));
+
+    Online = !PdoIsEjectRequested(__FrontendGetPdo(Frontend)) &&
+             FrontendIsBackendOnline(Frontend);
+
+    (VOID) XENBUS_STORE(Printf,
+                        &Frontend->StoreInterface,
+                        NULL,
+                        __FrontendGetPath(Frontend),
+                        "state",
+                        "%u",
+                        State);
+
+    if (State == XenbusStateClosed && !Online)
+        FrontendSetOffline(Frontend);
+
+    Trace("%s: <==== %s\n",
+          __FrontendGetPath(Frontend),
+          XenbusStateName(State));
+}
+
+static NTSTATUS
+FrontendAcquireBackend(
+    IN  PXENVIF_FRONTEND    Frontend
     )
 {
-    KEVENT                  Event;
-    PXENBUS_STORE_WATCH     Watch;
-    LARGE_INTEGER           Start;
-    ULONGLONG               TimeDelta;
-    LARGE_INTEGER           Timeout;
-    XenbusState             Old = *State;
+    PCHAR                   Buffer;
     NTSTATUS                status;
 
-    Trace("%s: ====> (%s)\n", Path, XenbusStateName(*State));
+    Trace("=====>\n");
+
+    status = XENBUS_STORE(Read,
+                          &Frontend->StoreInterface,
+                          NULL,
+                          __FrontendGetPath(Frontend),
+                          "backend",
+                          &Buffer);
+    if (!NT_SUCCESS(status))
+        goto fail1;
+
+    Frontend->BackendPath = Buffer;
+
+    status = XENBUS_STORE(Read,
+                          &Frontend->StoreInterface,
+                          NULL,
+                          __FrontendGetPath(Frontend),
+                          "backend-id",
+                          &Buffer);
+    if (!NT_SUCCESS(status)) {
+        Frontend->BackendDomain = 0;
+    } else {
+        Frontend->BackendDomain = (USHORT)strtol(Buffer, NULL, 10);
+
+        XENBUS_STORE(Free,
+                     &Frontend->StoreInterface,
+                     Buffer);
+    }
+
+    return STATUS_SUCCESS;
+
+fail1:
+    Error("fail1 (%08x)\n", status);
+
+    Trace("<====\n");
+    return status;
+}
+
+static VOID
+FrontendWaitForBackendXenbusStateChange(
+    IN      PXENVIF_FRONTEND    Frontend,
+    IN OUT  XenbusState         *State
+    )
+{
+    KEVENT                      Event;
+    PXENBUS_STORE_WATCH         Watch;
+    LARGE_INTEGER               Start;
+    ULONGLONG                   TimeDelta;
+    LARGE_INTEGER               Timeout;
+    XenbusState                 Old = *State;
+    NTSTATUS                    status;
+
+    Trace("%s: ====> %s\n",
+          __FrontendGetBackendPath(Frontend),
+          XenbusStateName(*State));
+
+    ASSERT(FrontendIsOnline(Frontend));
 
     KeInitializeEvent(&Event, NotificationEvent, FALSE);
 
     status = XENBUS_STORE(WatchAdd,
                           &Frontend->StoreInterface,
-                          Path,
+                          __FrontendGetBackendPath(Frontend),
                           "state",
                           &Event,
                           &Watch);
     if (!NT_SUCCESS(status))
-        goto fail1;
+        Watch = NULL;
 
     KeQuerySystemTime(&Start);
     TimeDelta = 0;
@@ -908,40 +983,39 @@ FrontendWaitForStateChange(
     Timeout.QuadPart = 0;
 
     while (*State == Old && TimeDelta < 120000) {
-        ULONG           Attempt;
         PCHAR           Buffer;
         LARGE_INTEGER   Now;
 
-        Attempt = 0;
-        while (++Attempt < 1000) {
-            status = KeWaitForSingleObject(&Event,
-                                           Executive,
-                                           KernelMode,
-                                           FALSE,
-                                           &Timeout);
-            if (status != STATUS_TIMEOUT)
-                break;
+        if (Watch != NULL) {
+            ULONG   Attempt = 0;
 
-            // We are waiting for a watch event at DISPATCH_LEVEL so
-            // it is our responsibility to poll the store ring.
-            XENBUS_STORE(Poll,
-                         &Frontend->StoreInterface);
+            while (++Attempt < 1000) {
+                status = KeWaitForSingleObject(&Event,
+                                               Executive,
+                                               KernelMode,
+                                               FALSE,
+                                               &Timeout);
+                if (status != STATUS_TIMEOUT)
+                    break;
 
-            KeStallExecutionProcessor(1000);   // 1ms
-        }
+                // We are waiting for a watch event at DISPATCH_LEVEL so
+                // it is our responsibility to poll the store ring.
+                XENBUS_STORE(Poll,
+                             &Frontend->StoreInterface);
+
+                KeStallExecutionProcessor(1000);   // 1ms
+            }
 
-        KeClearEvent(&Event);
+            KeClearEvent(&Event);
+        }
 
         status = XENBUS_STORE(Read,
                               &Frontend->StoreInterface,
                               NULL,
-                              Path,
+                              __FrontendGetBackendPath(Frontend),
                               "state",
                               &Buffer);
         if (!NT_SUCCESS(status)) {
-            if (status != STATUS_OBJECT_NAME_NOT_FOUND)
-                goto fail2;
-
             *State = XenbusStateUnknown;
         } else {
             *State = (XenbusState)strtol(Buffer, NULL, 10);
@@ -956,45 +1030,44 @@ FrontendWaitForStateChange(
         TimeDelta = (Now.QuadPart - Start.QuadPart) / 10000ull;
     }
 
-    status = STATUS_UNSUCCESSFUL;
-    if (*State == Old)
-        goto fail3;
-
-    (VOID) XENBUS_STORE(WatchRemove,
-                        &Frontend->StoreInterface,
-                        Watch);
+    if (Watch != NULL)
+        (VOID) XENBUS_STORE(WatchRemove,
+                            &Frontend->StoreInterface,
+                            Watch);
 
-    Trace("%s: <==== (%s)\n", Path, XenbusStateName(*State));
+    Trace("%s: <==== (%s)\n",
+          __FrontendGetBackendPath(Frontend),
+          XenbusStateName(*State));
+}
 
-    return STATUS_SUCCESS;
+static VOID
+FrontendReleaseBackend(
+    IN      PXENVIF_FRONTEND    Frontend
+    )
+{
+    Trace("=====>\n");
 
-fail3:
-    Error("fail3\n");
+    ASSERT(Frontend->BackendDomain != DOMID_INVALID);
+    ASSERT(Frontend->BackendPath != NULL);
 
-fail2:
-    Error("fail2\n");
+    Frontend->BackendDomain = DOMID_INVALID;
 
-    (VOID) XENBUS_STORE(WatchRemove,
-                        &Frontend->StoreInterface,
-                        Watch);
+    XENBUS_STORE(Free,
+                 &Frontend->StoreInterface,
+                 Frontend->BackendPath);
+    Frontend->BackendPath = NULL;
 
-fail1:
-    Error("fail1 (%08x)\n", status);
-                   
-    return status;
+    Trace("<=====\n");
 }
 
-static NTSTATUS
+static VOID
 FrontendClose(
-    IN  PXENVIF_FRONTEND    Frontend,
-    IN  BOOLEAN             Force            
+    IN  PXENVIF_FRONTEND    Frontend
     )
 {
-    PCHAR                   Path;
     XenbusState             State;
-    NTSTATUS                status;
 
-    Trace("====>\n");
+    Trace("====> %s\n");
 
     ASSERT(Frontend->Watch != NULL);
     (VOID) XENBUS_STORE(WatchRemove,
@@ -1002,87 +1075,44 @@ FrontendClose(
                         Frontend->Watch);
     Frontend->Watch = NULL;
 
-    // Release cached information about the backend
-    ASSERT(Frontend->BackendPath != NULL);
-    XENBUS_STORE(Free,
-                 &Frontend->StoreInterface,
-                 Frontend->BackendPath);
-    Frontend->BackendPath = NULL;
+    State = XenbusStateUnknown;
+    while (State != XenbusStateClosed) {
+        if (!FrontendIsOnline(Frontend))
+            break;
 
-    Frontend->BackendDomain = DOMID_INVALID;
+        FrontendWaitForBackendXenbusStateChange(Frontend,
+                                                &State);
 
-    if (Force)
-        goto done;
+        switch (State) {
+        case XenbusStateUnknown:
+            FrontendSetOffline(Frontend);
+            break;
 
-    status = XENBUS_STORE(Read,
-                          &Frontend->StoreInterface,
-                          NULL,
-                          __FrontendGetPath(Frontend),
-                          "backend",
-                   &Path);
-    if (!NT_SUCCESS(status))
-        goto fail1;
+        case XenbusStateConnected:
+        case XenbusStateInitWait:
+            FrontendSetXenbusState(Frontend,
+                                   XenbusStateClosing);
+            break;
 
-    State = XenbusStateInitialising;
-    status = FrontendWaitForStateChange(Frontend, Path, &State);
-    if (!NT_SUCCESS(status))
-        goto fail2;
+        case XenbusStateClosing:
+            FrontendSetXenbusState(Frontend,
+                                   XenbusStateClosed);
+            break;
 
-    while (State != XenbusStateClosing &&
-           State != XenbusStateClosed &&
-           State != XenbusStateUnknown) {
-        (VOID) XENBUS_STORE(Printf,
-                            &Frontend->StoreInterface,
-                            NULL,
-                            __FrontendGetPath(Frontend),
-                            "state",
-                            "%u",
-                            XenbusStateClosing);
-        status = FrontendWaitForStateChange(Frontend, Path, &State);
-        if (!NT_SUCCESS(status))
-            goto fail2;
-    }
+        case XenbusStateClosed:
+            break;
 
-    while (State != XenbusStateClosed &&
-           State != XenbusStateUnknown) {
-        (VOID) XENBUS_STORE(Printf,
-                            &Frontend->StoreInterface,
-                            NULL,
-                            __FrontendGetPath(Frontend),
-                            "state",
-                            "%u",
-                            XenbusStateClosed);
-        status = FrontendWaitForStateChange(Frontend, Path, &State);
-        if (!NT_SUCCESS(status))
-            goto fail3;
+        default:
+            ASSERT(FALSE);
+            break;
+        }
     }
 
-    XENBUS_STORE(Free,
-                 &Frontend->StoreInterface,
-                 Path);
+    FrontendReleaseBackend(Frontend);
 
-done:
     XENBUS_STORE(Release, &Frontend->StoreInterface);
 
     Trace("<====\n");
-    return STATUS_SUCCESS;
-
-fail3:
-    Error("fail3\n");
-
-fail2:
-    Error("fail2\n");
-
-    XENBUS_STORE(Free,
-                 &Frontend->StoreInterface,
-                 Path);
-
-fail1:
-    Error("fail1 (%08x)\n", status);
-
-    XENBUS_STORE(Release, &Frontend->StoreInterface);
-
-    return status;
 }
 
 static NTSTATUS
@@ -1090,9 +1120,7 @@ FrontendPrepare(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
-    PCHAR                   Path;
     XenbusState             State;
-    PCHAR                   Buffer;
     NTSTATUS                status;
 
     Trace("====>\n");
@@ -1101,97 +1129,48 @@ FrontendPrepare(
     if (!NT_SUCCESS(status))
         goto fail1;
 
-    status = XENBUS_STORE(Read,
-                          &Frontend->StoreInterface,
-                          NULL,
-                          __FrontendGetPath(Frontend),
-                          "backend",
-                          &Path);
+    FrontendSetOnline(Frontend);
+
+    status = FrontendAcquireBackend(Frontend);
     if (!NT_SUCCESS(status))
         goto fail2;
 
     State = XenbusStateUnknown;
-    status = FrontendWaitForStateChange(Frontend, Path, &State);
-    if (!NT_SUCCESS(status))
-        goto fail3;
+    while (State != XenbusStateInitWait) {
+        if (!FrontendIsOnline(Frontend))
+            break;
 
-    while (State == XenbusStateConnected) {
-        (VOID) XENBUS_STORE(Printf,
-                            &Frontend->StoreInterface,
-                            NULL,
-                            __FrontendGetPath(Frontend),
-                            "state",
-                            "%u",
-                            XenbusStateClosing);
-        status = FrontendWaitForStateChange(Frontend, Path, &State);
-        if (!NT_SUCCESS(status))
-            goto fail4;
-    }
+        FrontendWaitForBackendXenbusStateChange(Frontend,
+                                                &State);
 
-    while (State == XenbusStateClosing) {
-        (VOID) XENBUS_STORE(Printf,
-                            &Frontend->StoreInterface,
-                            NULL,
-                            __FrontendGetPath(Frontend),
-                            "state",
-                            "%u",
-                            XenbusStateClosed);
-        status = FrontendWaitForStateChange(Frontend, Path, &State);
-        if (!NT_SUCCESS(status))
-            goto fail5;
-    }
+        status = STATUS_SUCCESS;
+        switch (State) {
+        case XenbusStateUnknown:
+            FrontendSetOffline(Frontend);
+            break;
 
-    while (State != XenbusStateClosed &&
-           State != XenbusStateInitialising &&
-           State != XenbusStateInitWait &&
-           State != XenbusStateUnknown) {
-        status = FrontendWaitForStateChange(Frontend, Path, &State);
-        if (!NT_SUCCESS(status))
-            goto fail6;
-    }
+        case XenbusStateClosed:
+            FrontendSetXenbusState(Frontend,
+                                   XenbusStateInitialising);
+            break;
 
-    status = STATUS_UNSUCCESSFUL;
-    if (State == XenbusStateUnknown)
-        goto fail7;
+        case XenbusStateClosing:
+            FrontendSetXenbusState(Frontend,
+                                   XenbusStateClosed);
+            break;
 
-    status = XENBUS_STORE(Printf,
-                          &Frontend->StoreInterface,
-                          NULL,
-                          __FrontendGetPath(Frontend),
-                          "state",
-                          "%u",
-                          XenbusStateInitialising);
-    if (!NT_SUCCESS(status))
-        goto fail8;
+        case XenbusStateInitWait:
+            break;
 
-    while (State == XenbusStateClosed ||
-           State == XenbusStateInitialising) {
-        status = FrontendWaitForStateChange(Frontend, Path, &State);
-        if (!NT_SUCCESS(status))
-            goto fail9;
+        default:
+            ASSERT(FALSE);
+            break;
+        }
     }
 
     status = STATUS_UNSUCCESSFUL;
     if (State != XenbusStateInitWait)
-        goto fail10;
-
-    Frontend->BackendPath = Path;
-
-    status = XENBUS_STORE(Read,
-                          &Frontend->StoreInterface,
-                          NULL,
-                          __FrontendGetPath(Frontend),
-                          "backend-id",
-                          &Buffer);
-    if (!NT_SUCCESS(status)) {
-        Frontend->BackendDomain = 0;
-    } else {
-        Frontend->BackendDomain = (USHORT)strtol(Buffer, NULL, 10);
-
-        XENBUS_STORE(Free,
-                     &Frontend->StoreInterface,
-                     Buffer);
-    }
+        goto fail3;
 
     status = XENBUS_STORE(WatchAdd,
                           &Frontend->StoreInterface,
@@ -1200,47 +1179,24 @@ FrontendPrepare(
                           ThreadGetEvent(Frontend->EjectThread),
                           &Frontend->Watch);
     if (!NT_SUCCESS(status))
-        goto fail11;
+        goto fail4;
 
     Trace("<====\n");
     return STATUS_SUCCESS;
 
-fail11:
-    Error("fail11\n");
-
-    Frontend->BackendDomain = DOMID_INVALID;
-    Frontend->BackendPath = NULL;
-
-fail10:
-    Error("fail10\n");
-
-fail9:
-    Error("fail9\n");
-
-fail8:
-    Error("fail8\n");
-
-fail7:
-    Error("fail7\n");
-
-fail6:
-    Error("fail6\n");
-
-fail5:
-    Error("fail5\n");
-
 fail4:
     Error("fail4\n");
 
 fail3:
     Error("fail3\n");
 
-    XENBUS_STORE(Free,
-                 &Frontend->StoreInterface,
-                 Path);
+    FrontendReleaseBackend(Frontend);
+
 fail2:
     Error("fail2\n");
 
+    FrontendSetOffline(Frontend);
+
     XENBUS_STORE(Release, &Frontend->StoreInterface);
 
 fail1:
@@ -1423,7 +1379,6 @@ FrontendConnect(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
-    PCHAR                   Path = __FrontendGetBackendPath(Frontend);
     XenbusState             State;
     ULONG                   Attempt;
     NTSTATUS                status;
@@ -1514,36 +1469,49 @@ abort:
     if (!NT_SUCCESS(status))
         goto fail7;
 
-    status = XENBUS_STORE(Printf,
-                          &Frontend->StoreInterface,
-                          NULL,
-                          __FrontendGetPath(Frontend),
-                          "state",
-                          "%u",
-                          XenbusStateConnected);
-    if (!NT_SUCCESS(status))
-        goto fail8;
+    State = XenbusStateUnknown;
+    while (State != XenbusStateConnected) {
+        if (!FrontendIsOnline(Frontend))
+            break;
 
-    State = XenbusStateInitWait;
-    status = FrontendWaitForStateChange(Frontend, Path, &State);
-    if (!NT_SUCCESS(status))
-        goto fail9;
+        FrontendWaitForBackendXenbusStateChange(Frontend,
+                                                &State);
+
+        status = STATUS_SUCCESS;
+        switch (State) {
+        case XenbusStateUnknown:
+            FrontendSetOffline(Frontend);
+            break;
+
+        case XenbusStateInitWait:
+        case XenbusStateInitialised:
+            FrontendSetXenbusState(Frontend,
+                                   XenbusStateConnected);
+            break;
+
+        case XenbusStateClosing:
+            FrontendSetXenbusState(Frontend,
+                                   XenbusStateClosed);
+            break;
+
+        case XenbusStateConnected:
+            break;
+
+        default:
+            ASSERT(FALSE);
+            break;
+        }
+    }
 
     status = STATUS_UNSUCCESSFUL;
     if (State != XenbusStateConnected)
-        goto fail10;
+        goto fail8;
 
     ThreadWake(Frontend->MibThread);
 
     Trace("<====\n");
     return STATUS_SUCCESS;
 
-fail10:
-    Error("fail10\n");
-
-fail9:
-    Error("fail9\n");
-
 fail8:
     Error("fail8\n");
 
@@ -1693,6 +1661,26 @@ FrontendSetState(
         NTSTATUS    status;
 
         switch (Frontend->State) {
+        case FRONTEND_UNKNOWN:
+            switch (State) {
+            case FRONTEND_CLOSED:
+            case FRONTEND_PREPARED:
+            case FRONTEND_CONNECTED:
+            case FRONTEND_ENABLED:
+                status = FrontendPrepare(Frontend);
+                if (NT_SUCCESS(status)) {
+                    Frontend->State = FRONTEND_PREPARED;
+                } else {
+                    Failed = TRUE;
+                }
+                break;
+
+            default:
+                ASSERT(FALSE);
+                break;
+            }
+            break;
+
         case FRONTEND_CLOSED:
             switch (State) {
             case FRONTEND_PREPARED:
@@ -1706,6 +1694,10 @@ FrontendSetState(
                 }
                 break;
 
+            case FRONTEND_UNKNOWN:
+                Frontend->State = FRONTEND_UNKNOWN;
+                break;
+
             default:
                 ASSERT(FALSE);
                 break;
@@ -1720,25 +1712,17 @@ FrontendSetState(
                 if (NT_SUCCESS(status)) {
                     Frontend->State = FRONTEND_CONNECTED;
                 } else {
-                    status = FrontendClose(Frontend, FALSE);
-                    if (NT_SUCCESS(status))
-                        Frontend->State = FRONTEND_CLOSED;
-                    else
-                        Frontend->State = FRONTEND_STATE_INVALID;
+                    FrontendClose(Frontend);
+                    Frontend->State = FRONTEND_CLOSED;
 
                     Failed = TRUE;
                 }
                 break;
 
             case FRONTEND_CLOSED:
-                status = FrontendClose(Frontend, FALSE);
-                if (NT_SUCCESS(status)) {
-                    Frontend->State = FRONTEND_CLOSED;
-                } else {
-                    Frontend->State = FRONTEND_STATE_INVALID;
-                    Failed = TRUE;
-                }
-
+            case FRONTEND_UNKNOWN:
+                FrontendClose(Frontend);
+                Frontend->State = FRONTEND_CLOSED;
                 break;
 
             default:
@@ -1754,11 +1738,8 @@ FrontendSetState(
                 if (NT_SUCCESS(status)) {
                     Frontend->State = FRONTEND_ENABLED;
                 } else {
-                    status = FrontendClose(Frontend, FALSE);
-                    if (NT_SUCCESS(status))
-                        Frontend->State = FRONTEND_CLOSED;
-                    else
-                        Frontend->State = FRONTEND_STATE_INVALID;
+                    FrontendClose(Frontend);
+                    Frontend->State = FRONTEND_CLOSED;
 
                     FrontendDisconnect(Frontend);
                     Failed = TRUE;
@@ -1767,16 +1748,11 @@ FrontendSetState(
 
             case FRONTEND_PREPARED:
             case FRONTEND_CLOSED:
-                status = FrontendClose(Frontend, FALSE);
-                if (NT_SUCCESS(status)) {
-                    Frontend->State = FRONTEND_CLOSED;
-                } else {
-                    Frontend->State = FRONTEND_STATE_INVALID;
-                    Failed = TRUE;
-                }
+            case FRONTEND_UNKNOWN:
+                FrontendClose(Frontend);
+                Frontend->State = FRONTEND_CLOSED;
 
                 FrontendDisconnect(Frontend);
-
                 break;
 
             default:
@@ -1790,6 +1766,7 @@ FrontendSetState(
             case FRONTEND_CONNECTED:
             case FRONTEND_PREPARED:
             case FRONTEND_CLOSED:
+            case FRONTEND_UNKNOWN:
                 FrontendDisable(Frontend);
                 Frontend->State = FRONTEND_CONNECTED;
                 break;
@@ -1800,10 +1777,6 @@ FrontendSetState(
             }
             break;
 
-        case FRONTEND_STATE_INVALID:
-            Failed = TRUE;
-            break;
-
         default:
             ASSERT(FALSE);
             break;
@@ -1821,34 +1794,15 @@ FrontendSetState(
     return (!Failed) ? STATUS_SUCCESS : STATUS_UNSUCCESSFUL;
 }
 
-static FORCEINLINE NTSTATUS
+static FORCEINLINE VOID
 __FrontendResume(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
-    NTSTATUS                status;
-
     ASSERT3U(KeGetCurrentIrql(), ==, DISPATCH_LEVEL);
 
-    status = FrontendSetState(Frontend, FRONTEND_PREPARED);
-    if (!NT_SUCCESS(status))
-        goto fail1;
-
-    status = FrontendSetState(Frontend, FRONTEND_CLOSED);
-    if (!NT_SUCCESS(status))
-        goto fail2;
-
-    return STATUS_SUCCESS;
-
-fail2:
-    Error("fail2\n");
-
-    Frontend->State = FRONTEND_CLOSED;
-
-fail1:
-    Error("fail1 (%08x)\n", status);
-
-    return status;
+    ASSERT3U(Frontend->State, ==, FRONTEND_UNKNOWN);
+    (VOID) FrontendSetState(Frontend, FRONTEND_CLOSED);
 }
 
 static FORCEINLINE VOID
@@ -1856,9 +1810,9 @@ __FrontendSuspend(
     IN  PXENVIF_FRONTEND    Frontend
     )
 {
-    UNREFERENCED_PARAMETER(Frontend);
-
     ASSERT3U(KeGetCurrentIrql(), ==, DISPATCH_LEVEL);
+
+    (VOID) FrontendSetState(Frontend, FRONTEND_UNKNOWN);
 }
 
 static DECLSPEC_NOINLINE VOID
@@ -1867,12 +1821,9 @@ FrontendSuspendCallbackLate(
     )
 {
     PXENVIF_FRONTEND    Frontend = Argument;
-    NTSTATUS            status;
 
     __FrontendSuspend(Frontend);
-
-    status = __FrontendResume(Frontend);
-    ASSERT(NT_SUCCESS(status));
+    __FrontendResume(Frontend);
 }
 
 NTSTATUS
@@ -1891,9 +1842,7 @@ FrontendResume(
     if (!NT_SUCCESS(status))
         goto fail1;
 
-    status = __FrontendResume(Frontend);
-    if (!NT_SUCCESS(status))
-        goto fail2;
+    __FrontendResume(Frontend);
 
     status = XENBUS_SUSPEND(Register,
                             &Frontend->SuspendInterface,
@@ -1902,22 +1851,30 @@ FrontendResume(
                             Frontend,
                             &Frontend->SuspendCallbackLate);
     if (!NT_SUCCESS(status))
-        goto fail3;
+        goto fail2;
 
     KeLowerIrql(Irql);
 
+    KeClearEvent(&Frontend->EjectEvent);
+    ThreadWake(Frontend->EjectThread);
+
+    Trace("waiting for eject thread\n");
+
+    (VOID) KeWaitForSingleObject(&Frontend->EjectEvent,
+                                 Executive,
+                                 KernelMode,
+                                 FALSE,
+                                 NULL);
+
     Trace("<====\n");
 
     return STATUS_SUCCESS;
     
-fail3:
-    Error("fail3\n");
-
-    __FrontendSuspend(Frontend);
-
 fail2:
     Error("fail2\n");
 
+    __FrontendSuspend(Frontend);
+
     XENBUS_SUSPEND(Release, &Frontend->SuspendInterface);
 
 fail1:
@@ -1950,6 +1907,17 @@ FrontendSuspend(
 
     KeLowerIrql(Irql);
 
+    KeClearEvent(&Frontend->EjectEvent);
+    ThreadWake(Frontend->EjectThread);
+
+    Trace("waiting for eject thread\n");
+
+    (VOID) KeWaitForSingleObject(&Frontend->EjectEvent,
+                                 Executive,
+                                 KernelMode,
+                                 FALSE,
+                                 NULL);
+
     Trace("<====\n");
 }
 
@@ -2012,7 +1980,7 @@ FrontendInitialize(
 
     KeInitializeSpinLock(&(*Frontend)->Lock);
 
-    (*Frontend)->State = FRONTEND_CLOSED;
+    (*Frontend)->Online = TRUE;
 
     FdoGetDebugInterface(PdoGetFdo(Pdo), &(*Frontend)->DebugInterface);
     FdoGetSuspendInterface(PdoGetFdo(Pdo), &(*Frontend)->SuspendInterface);
@@ -2032,6 +2000,8 @@ FrontendInitialize(
     if (!NT_SUCCESS(status))
         goto fail8;
 
+    KeInitializeEvent(&(*Frontend)->EjectEvent, NotificationEvent, FALSE);
+
     status = ThreadCreate(FrontendEject, *Frontend, &(*Frontend)->EjectThread);
     if (!NT_SUCCESS(status))
         goto fail9;
@@ -2054,6 +2024,8 @@ fail10:
 fail9:
     Error("fail9\n");
 
+    RtlZeroMemory(&(*Frontend)->EjectEvent, sizeof (KEVENT));
+
     TransmitterTeardown(__FrontendGetTransmitter(*Frontend));
     (*Frontend)->Transmitter = NULL;
 
@@ -2083,7 +2055,7 @@ fail6:
     RtlZeroMemory(&(*Frontend)->DebugInterface,
                   sizeof (XENBUS_DEBUG_INTERFACE));
 
-    (*Frontend)->State = FRONTEND_STATE_INVALID;
+    (*Frontend)->Online = FALSE;
 
     RtlZeroMemory(&(*Frontend)->Lock, sizeof (KSPIN_LOCK));
 
@@ -2128,16 +2100,7 @@ FrontendTeardown(
 
     ASSERT3U(KeGetCurrentIrql(), ==, PASSIVE_LEVEL);
 
-    ASSERT(Frontend->State != FRONTEND_ENABLED);
-    ASSERT(Frontend->State != FRONTEND_CONNECTED);
-
-    if (Frontend->State == FRONTEND_PREPARED) {
-        (VOID) FrontendClose(Frontend, TRUE);
-        Frontend->State = FRONTEND_CLOSED;
-    }
-
-    ASSERT(Frontend->State == FRONTEND_CLOSED ||
-           Frontend->State == FRONTEND_STATE_INVALID);
+    ASSERT(Frontend->State == FRONTEND_UNKNOWN);
 
     ThreadAlert(Frontend->MibThread);
     ThreadJoin(Frontend->MibThread);
@@ -2147,6 +2110,8 @@ FrontendTeardown(
     ThreadJoin(Frontend->EjectThread);
     Frontend->EjectThread = NULL;
 
+    RtlZeroMemory(&Frontend->EjectEvent, sizeof (KEVENT));
+
     TransmitterTeardown(__FrontendGetTransmitter(Frontend));
     Frontend->Transmitter = NULL;
 
@@ -2167,7 +2132,7 @@ FrontendTeardown(
     RtlZeroMemory(&Frontend->DebugInterface,
                   sizeof (XENBUS_DEBUG_INTERFACE));
 
-    Frontend->State = FRONTEND_STATE_INVALID;
+    Frontend->Online = FALSE;
 
     RtlZeroMemory(&Frontend->Lock, sizeof (KSPIN_LOCK));
 
diff --git a/src/xenvif/frontend.h b/src/xenvif/frontend.h
index 1673fac..374e9b4 100644
--- a/src/xenvif/frontend.h
+++ b/src/xenvif/frontend.h
@@ -48,7 +48,7 @@
 typedef struct _XENVIF_FRONTEND XENVIF_FRONTEND, *PXENVIF_FRONTEND;
 
 typedef enum _XENVIF_FRONTEND_STATE {
-    FRONTEND_STATE_INVALID,
+    FRONTEND_UNKNOWN,
     FRONTEND_CLOSED,
     FRONTEND_PREPARED,
     FRONTEND_CONNECTED,
diff --git a/src/xenvif/pdo.c b/src/xenvif/pdo.c
index dc7eacd..5b6e085 100644
--- a/src/xenvif/pdo.c
+++ b/src/xenvif/pdo.c
@@ -70,8 +70,7 @@ struct _XENVIF_PDO {
     PXENVIF_FDO                 Fdo;
     BOOLEAN                     Missing;
     const CHAR                  *Reason;
-    BOOLEAN                     EjectRequested;
-    KSPIN_LOCK                  EjectLock;
+    LONG                        Eject;
 
     UNICODE_STRING              ContainerID;
 
@@ -241,55 +240,20 @@ PdoIsMissing(
     return __PdoIsMissing(Pdo);
 }
 
-static FORCEINLINE VOID
-__PdoSetEjectRequested(
-    IN  PXENVIF_PDO Pdo
-    )
-{
-    KIRQL           Irql;
-
-    KeAcquireSpinLock(&Pdo->EjectLock, &Irql);
-    Pdo->EjectRequested = TRUE;
-    KeReleaseSpinLock(&Pdo->EjectLock, Irql);
-}
-
-static FORCEINLINE BOOLEAN
-__PdoClearEjectRequested(
-    IN  PXENVIF_PDO Pdo
-    )
-{
-    KIRQL           Irql;
-    BOOLEAN         EjectRequested;
-
-    KeAcquireSpinLock(&Pdo->EjectLock, &Irql);
-    EjectRequested = Pdo->EjectRequested;
-    Pdo->EjectRequested = FALSE;
-    KeReleaseSpinLock(&Pdo->EjectLock, Irql);
-
-    return EjectRequested;
-}
-
-static FORCEINLINE BOOLEAN
-__PdoIsEjectRequested(
+static FORCEINLINE PXENVIF_FDO
+__PdoGetFdo(
     IN  PXENVIF_PDO Pdo
     )
 {
-    KIRQL           Irql;
-    BOOLEAN         EjectRequested;
-
-    KeAcquireSpinLock(&Pdo->EjectLock, &Irql);
-    EjectRequested = Pdo->EjectRequested;
-    KeReleaseSpinLock(&Pdo->EjectLock, Irql);
-
-    return EjectRequested;
+    return Pdo->Fdo;
 }
 
-BOOLEAN
-PdoIsEjectRequested(
+PXENVIF_FDO
+PdoGetFdo(
     IN  PXENVIF_PDO Pdo
     )
 {
-    return __PdoIsEjectRequested(Pdo);
+    return __PdoGetFdo(Pdo);
 }
 
 static FORCEINLINE VOID
@@ -326,6 +290,59 @@ PdoGetName(
     return __PdoGetName(Pdo);
 }
 
+static FORCEINLINE BOOLEAN
+__PdoSetEjectRequested(
+    IN  PXENVIF_PDO Pdo
+    )
+{
+    return (InterlockedBitTestAndSet(&Pdo->Eject, 0) == 0) ? TRUE : FALSE;
+}
+
+VOID
+PdoRequestEject(
+    IN  PXENVIF_PDO Pdo
+    )
+{
+    PXENVIF_DX      Dx = Pdo->Dx;
+    PDEVICE_OBJECT  PhysicalDeviceObject = Dx->DeviceObject;
+    PXENVIF_FDO     Fdo = __PdoGetFdo(Pdo);
+
+    if (!__PdoSetEjectRequested(Pdo))
+        return;
+
+    Info("%p (%s)\n",
+         PhysicalDeviceObject,
+         __PdoGetName(Pdo));
+
+    IoInvalidateDeviceRelations(FdoGetPhysicalDeviceObject(Fdo),
+                                BusRelations);
+}
+
+static FORCEINLINE BOOLEAN
+__PdoClearEjectRequested(
+    IN  PXENVIF_PDO Pdo
+    )
+{
+    return (InterlockedBitTestAndReset(&Pdo->Eject, 0) != 0) ? TRUE : FALSE;
+}
+
+static FORCEINLINE BOOLEAN
+__PdoIsEjectRequested(
+    IN  PXENVIF_PDO Pdo
+    )
+{
+    KeMemoryBarrier();
+    return (Pdo->Eject & 1) ? TRUE : FALSE;
+}
+
+BOOLEAN
+PdoIsEjectRequested(
+    IN  PXENVIF_PDO Pdo
+    )
+{
+    return __PdoIsEjectRequested(Pdo);
+}
+
 // {2A597D5E-8864-4428-A110-F568F316D4E4}
 DEFINE_GUID(GUID_CONTAINER_ID_NAME_SPACE,
 0x2a597d5e, 0x8864, 0x4428, 0xa1, 0x10, 0xf5, 0x68, 0xf3, 0x16, 0xd4, 0xe4);
@@ -511,22 +528,6 @@ fail1:
 
 #define MAXTEXTLEN  1024
 
-static FORCEINLINE PXENVIF_FDO
-__PdoGetFdo(
-    IN  PXENVIF_PDO Pdo
-    )
-{
-    return Pdo->Fdo;
-}
-
-PXENVIF_FDO
-PdoGetFdo(
-    IN  PXENVIF_PDO Pdo
-    )
-{
-    return __PdoGetFdo(Pdo);
-}
-
 static NTSTATUS
 PdoAddRevision(
     IN  PXENVIF_PDO Pdo,
@@ -1018,15 +1019,6 @@ PdoGetBusData(
                          Length);
 }
 
-VOID
-PdoRequestEject(
-    IN  PXENVIF_PDO Pdo
-    )
-{
-    __PdoSetEjectRequested(Pdo);
-    IoRequestDeviceEject(__PdoGetDeviceObject(Pdo));
-}
-
 static FORCEINLINE NTSTATUS
 __PdoD3ToD0(
     IN  PXENVIF_PDO             Pdo
@@ -1474,17 +1466,17 @@ done:
 
     FdoAcquireMutex(Fdo);
 
-    if (__PdoIsMissing(Pdo) ||
-        __PdoGetDevicePnpState(Pdo) == SurpriseRemovePending)
+    if (__PdoIsMissing(Pdo)) {
+        DEVICE_PNP_STATE    State = __PdoGetDevicePnpState(Pdo);
+
         __PdoSetDevicePnpState(Pdo, Deleted);
-    else
-        __PdoSetDevicePnpState(Pdo, Enumerated);
 
-    if (__PdoIsMissing(Pdo)) {
-        if (__PdoGetDevicePnpState(Pdo) == Deleted)
+        if (State == SurpriseRemovePending)
             PdoDestroy(Pdo);
         else
             NeedInvalidate = TRUE;
+    } else {
+        __PdoSetDevicePnpState(Pdo, Enumerated);
     }
 
     FdoReleaseMutex(Fdo);
@@ -2088,17 +2080,16 @@ PdoEject(
 
     Trace("%s\n", __PdoGetName(Pdo));
 
-    __PdoClearEjectRequested(Pdo);
-
     FdoAcquireMutex(Fdo);
 
     __PdoSetDevicePnpState(Pdo, Deleted);
     __PdoSetMissing(Pdo, "device ejected");
 
-    PdoDestroy(Pdo);
-
     FdoReleaseMutex(Fdo);
 
+    IoInvalidateDeviceRelations(FdoGetPhysicalDeviceObject(Fdo),
+                                BusRelations);
+
     status = STATUS_SUCCESS;
 
     Irp->IoStatus.Status = status;
@@ -2648,12 +2639,14 @@ PdoCreate(
 
     Dx->Pdo = Pdo;
 
-    KeInitializeSpinLock(&Pdo->EjectLock);
-
     status = FdoAddPhysicalDeviceObject(Fdo, Pdo);
     if (!NT_SUCCESS(status))
         goto fail11;
 
+    status = STATUS_UNSUCCESSFUL;
+    if (__PdoIsEjectRequested(Pdo))
+        goto fail12;
+
     for (Index = 0; Index < Pdo->Count; Index++) {
         Info("%p (%s %08X)\n",
              PhysicalDeviceObject,
@@ -2664,11 +2657,15 @@ PdoCreate(
     PhysicalDeviceObject->Flags &= ~DO_DEVICE_INITIALIZING;
     return STATUS_SUCCESS;
 
+fail12:
+    Error("fail12\n");
+
+    FdoRemovePhysicalDeviceObject(Fdo, Pdo);
+
 fail11:
     Error("fail11\n");
 
     (VOID) __PdoClearEjectRequested(Pdo);
-    RtlZeroMemory(&Pdo->EjectLock, sizeof (KSPIN_LOCK));
 
     Dx->Pdo = NULL;
 
@@ -2771,7 +2768,6 @@ PdoDestroy(
     FdoRemovePhysicalDeviceObject(Fdo, Pdo);
 
     (VOID) __PdoClearEjectRequested(Pdo);
-    RtlZeroMemory(&Pdo->EjectLock, sizeof (KSPIN_LOCK));
 
     Dx->Pdo = NULL;
 
diff --git a/src/xenvif/pdo.h b/src/xenvif/pdo.h
index 13dbe81..be05125 100644
--- a/src/xenvif/pdo.h
+++ b/src/xenvif/pdo.h
@@ -61,6 +61,11 @@ PdoIsMissing(
     IN  PXENVIF_PDO Pdo
     );
 
+extern VOID
+PdoRequestEject(
+    IN  PXENVIF_PDO Pdo
+    );
+
 extern BOOLEAN
 PdoIsEjectRequested(
     IN  PXENVIF_PDO Pdo
@@ -203,11 +208,6 @@ PdoGetVifInterface(
     IN  PXENVIF_PDO Pdo
     );
 
-extern VOID
-PdoRequestEject(
-    IN  PXENVIF_PDO Pdo
-    );
-
 extern NTSTATUS
 PdoDispatch(
     IN  PXENVIF_PDO Pdo,
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Tue Apr 21 12:33:06 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 21 Apr 2015 12:33:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YkXMP-0003K3-5M; Tue, 21 Apr 2015 12:33:05 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YkXMN-0003Jp-Ra
	for win-pv-devel@lists.xenproject.org; Tue, 21 Apr 2015 12:33:04 +0000
Received: from [85.158.137.68] by server-4.bemta-3.messagelabs.com id
	BA/5B-18531-E7346355; Tue, 21 Apr 2015 12:33:02 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-6.tower-31.messagelabs.com!1429619581!14052967!1
X-Originating-IP: [74.125.82.47]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 15280 invoked from network); 21 Apr 2015 12:33:02 -0000
Received: from mail-wg0-f47.google.com (HELO mail-wg0-f47.google.com)
	(74.125.82.47)
	by server-6.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	21 Apr 2015 12:33:02 -0000
Received: by wgin8 with SMTP id n8so211421877wgi.0
	for <win-pv-devel@lists.xenproject.org>;
	Tue, 21 Apr 2015 05:33:01 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id;
	bh=DTC24fRLCfQdC4wsTYMs6sUjWTPmSfKDJ2p8Q1ugr4A=;
	b=JeeKZId32ASN/8FoA3zl3/TljehteutAwuT9iNzsVgUxLG51M6790rMmUuxxnkdZ9H
	r8U82VrGOQ1c3Ur+3F2ER64rao1FimSlhROzqg1ckgllXyX+S4Akk4q/iD9gGHx5vNfW
	Zy5QRD36KbKivPm6fgWp10k7/i82X2qIx5nZ8uwBLpy/8mfQQnV29B1Nh86uI330N2RH
	N+hzOaPZAMNH/FczeHdOLIhbNow/BBrT6rkIW7PIAJpBTrBpwix6863qLWsDMcc1Pzei
	JnlEFM5stAxc04bNO1OthyqHaItoczyoGY8tG2xI+kmIw8UJXi6KPvY95tmHrJDr7IUY
	wOcw==
X-Received: by 10.194.222.135 with SMTP id qm7mr41682541wjc.14.1429619581614; 
	Tue, 21 Apr 2015 05:33:01 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id gy8sm2872780wib.13.2015.04.21.05.33.00
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Tue, 21 Apr 2015 05:33:01 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Tue, 21 Apr 2015 13:33:14 +0100
Message-Id: <1429619594-7964-1-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH] Fix Trace statement
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

This can cause a crash in checked builds

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/xenvif/frontend.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/xenvif/frontend.c b/src/xenvif/frontend.c
index ce04bbf..90c7459 100644
--- a/src/xenvif/frontend.c
+++ b/src/xenvif/frontend.c
@@ -1067,7 +1067,7 @@ FrontendClose(
 {
     XenbusState             State;
 
-    Trace("====> %s\n");
+    Trace("====>\n");
 
     ASSERT(Frontend->Watch != NULL);
     (VOID) XENBUS_STORE(WatchRemove,
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Tue Apr 21 12:33:06 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 21 Apr 2015 12:33:06 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YkXMP-0003K3-5M; Tue, 21 Apr 2015 12:33:05 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <pdurrant@gmail.com>) id 1YkXMN-0003Jp-Ra
	for win-pv-devel@lists.xenproject.org; Tue, 21 Apr 2015 12:33:04 +0000
Received: from [85.158.137.68] by server-4.bemta-3.messagelabs.com id
	BA/5B-18531-E7346355; Tue, 21 Apr 2015 12:33:02 +0000
X-Env-Sender: pdurrant@gmail.com
X-Msg-Ref: server-6.tower-31.messagelabs.com!1429619581!14052967!1
X-Originating-IP: [74.125.82.47]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 15280 invoked from network); 21 Apr 2015 12:33:02 -0000
Received: from mail-wg0-f47.google.com (HELO mail-wg0-f47.google.com)
	(74.125.82.47)
	by server-6.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	21 Apr 2015 12:33:02 -0000
Received: by wgin8 with SMTP id n8so211421877wgi.0
	for <win-pv-devel@lists.xenproject.org>;
	Tue, 21 Apr 2015 05:33:01 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=from:to:cc:subject:date:message-id;
	bh=DTC24fRLCfQdC4wsTYMs6sUjWTPmSfKDJ2p8Q1ugr4A=;
	b=JeeKZId32ASN/8FoA3zl3/TljehteutAwuT9iNzsVgUxLG51M6790rMmUuxxnkdZ9H
	r8U82VrGOQ1c3Ur+3F2ER64rao1FimSlhROzqg1ckgllXyX+S4Akk4q/iD9gGHx5vNfW
	Zy5QRD36KbKivPm6fgWp10k7/i82X2qIx5nZ8uwBLpy/8mfQQnV29B1Nh86uI330N2RH
	N+hzOaPZAMNH/FczeHdOLIhbNow/BBrT6rkIW7PIAJpBTrBpwix6863qLWsDMcc1Pzei
	JnlEFM5stAxc04bNO1OthyqHaItoczyoGY8tG2xI+kmIw8UJXi6KPvY95tmHrJDr7IUY
	wOcw==
X-Received: by 10.194.222.135 with SMTP id qm7mr41682541wjc.14.1429619581614; 
	Tue, 21 Apr 2015 05:33:01 -0700 (PDT)
Received: from localhost.localdomain ([185.25.64.249])
	by mx.google.com with ESMTPSA id gy8sm2872780wib.13.2015.04.21.05.33.00
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Tue, 21 Apr 2015 05:33:01 -0700 (PDT)
From: Paul Durrant <pdurrant@gmail.com>
X-Google-Original-From: Paul Durrant <paul.durrant@citrix.com>
To: win-pv-devel@lists.xenproject.org
Date: Tue, 21 Apr 2015 13:33:14 +0100
Message-Id: <1429619594-7964-1-git-send-email-paul.durrant@citrix.com>
X-Mailer: git-send-email 2.1.1
Cc: Paul Durrant <paul.durrant@citrix.com>
Subject: [win-pv-devel] [PATCH] Fix Trace statement
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

This can cause a crash in checked builds

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
---
 src/xenvif/frontend.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/xenvif/frontend.c b/src/xenvif/frontend.c
index ce04bbf..90c7459 100644
--- a/src/xenvif/frontend.c
+++ b/src/xenvif/frontend.c
@@ -1067,7 +1067,7 @@ FrontendClose(
 {
     XenbusState             State;
 
-    Trace("====> %s\n");
+    Trace("====>\n");
 
     ASSERT(Frontend->Watch != NULL);
     (VOID) XENBUS_STORE(WatchRemove,
-- 
2.1.1


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Fri Apr 24 14:45:32 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 24 Apr 2015 14:45:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YlerE-00060I-5q; Fri, 24 Apr 2015 14:45:32 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <fabio.fantoni@m2r.biz>) id 1YlerC-00060D-Vb
	for win-pv-devel@lists.xenproject.org; Fri, 24 Apr 2015 14:45:31 +0000
Received: from [85.158.137.68] by server-9.bemta-3.messagelabs.com id
	E3/B2-26324-A075A355; Fri, 24 Apr 2015 14:45:30 +0000
X-Env-Sender: fabio.fantoni@m2r.biz
X-Msg-Ref: server-3.tower-31.messagelabs.com!1429886728!19679733!1
X-Originating-IP: [74.125.82.45]
X-SpamReason: No, hits=2.2 required=7.0 tests=BIZ_TLD,BODY_RANDOM_LONG
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 9438 invoked from network); 24 Apr 2015 14:45:29 -0000
Received: from mail-wg0-f45.google.com (HELO mail-wg0-f45.google.com)
	(74.125.82.45)
	by server-3.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	24 Apr 2015 14:45:29 -0000
Received: by wgyo15 with SMTP id o15so53161804wgy.2
	for <win-pv-devel@lists.xenproject.org>;
	Fri, 24 Apr 2015 07:45:28 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20130820;
	h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to
	:subject:references:in-reply-to:content-type
	:content-transfer-encoding;
	bh=gOR8USvXq/oeL1Ga1dF6JaXzosrTLS6syiFVMunBaXw=;
	b=d9IvIGLblPXhmCs09fBdXNK9C7/xPXoDCIj5OO7Epb1BwBdGqHMur5tkOZu4GSwmw6
	eYHphUMLvbGurbJNcmwy4vKepLhA3yJuik4rz20tukbI9foJEN/TerpwtvYkmWPmNKG9
	Zshh09wiyYPzLf+NG/Ov5JohfOxnnREYGwdEmuw3Zp/MwBQy1x0+Hn/pdQHfidZtt2yu
	T/RG/o74BMaugR69b9AZoRjvmtIPebYuWkF/Njikjc8EdlclGiBLQmCx4ua7eRrgZR05
	UHa990eDHglFBgHm9oJHPRWiiP2hl2q0fVnLPk5sT/zMgwU5CJ7z6Y+MbdAlREFquYbt
	gYNg==
X-Gm-Message-State: ALoCoQkhokJ1+SmUgsI29Rd78zrwYbkjub+Do+CJ3VvrE3VDBFVH0pOk1kmP3z7I/ci4q1LKfv8Y
X-Received: by 10.194.187.16 with SMTP id fo16mr16946457wjc.86.1429886728585; 
	Fri, 24 Apr 2015 07:45:28 -0700 (PDT)
Received: from [192.168.1.15] (ip-73-126.sn2.eutelia.it. [83.211.73.126])
	by mx.google.com with ESMTPSA id s4sm3893007wix.14.2015.04.24.07.45.26
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Fri, 24 Apr 2015 07:45:27 -0700 (PDT)
Message-ID: <553A5711.6020405@m2r.biz>
Date: Fri, 24 Apr 2015 16:45:37 +0200
From: Fabio Fantoni <fabio.fantoni@m2r.biz>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
	rv:31.0) Gecko/20100101 Thunderbird/31.6.0
MIME-Version: 1.0
To: Paul Durrant <Paul.Durrant@citrix.com>, 
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
References: <55192CB4.7030802@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585EFDA@AMSPEX01CL01.citrite.net>
	<551C0400.7090908@m2r.biz> <551D4B03.80105@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD0258611B1@AMSPEX01CL01.citrite.net>
In-Reply-To: <9AAE0902D5BC7E449B7C8E4E778ABCD0258611B1@AMSPEX01CL01.citrite.net>
Subject: Re: [win-pv-devel] Multiple save/restore failing with windows 8.1
	64 bit domU
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Il 02/04/2015 16:41, Paul Durrant ha scritto:
>> -----Original Message-----
>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
>> Sent: 02 April 2015 14:58
>> To: Paul Durrant; win-pv-devel@lists.xenproject.org
>> Subject: Re: Multiple save/restore failing with windows 8.1 64 bit domU
>>
>> Il 01/04/2015 16:43, Fabio Fantoni ha scritto:
>>> Il 01/04/2015 15:21, Paul Durrant ha scritto:
>>>>> -----Original Message-----
>>>>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
>>>>> Sent: 30 March 2015 12:00
>>>>> To: win-pv-devel@lists.xenproject.org
>>>>> Cc: Paul Durrant
>>>>> Subject: Multiple save/restore failing with windows 8.1 64 bit domU
>>>>>
>>>>> I tried 2 times multiple save/restore (start domU, use it for some
>>>>> minutes, do a save restore, use it, do another save/restore) and in
>>>>> both
>>>>> case second save failed:
>>>>>
>>>> The patch I posted this morning should fix this one for you.
>>>>
>>>>     Paul
>>> Thanks.
>>>
>>> Today I tried windows 10 pro 64 bit technical preview, clean install,
>>> pv drivers (today's build) install ok but after restore display
>>> (connecting with spice) seems freezed, waited 4-5 minutes without
>>> changes and after I tried also xl shudown but do nothing.
>>> DomU have pv disk and network working, xl shutdown (before try
>>> save/restore) is working.
>> I updated pv drivers to today build and first save/restore now seems was
>> working also in Windows 10 but still not the multiple (seem only partial
>> solved), xl shutdown this time worked but it tooks some minutes.
>> In attachments domU's qemu logs with trace enabled.
>>
> It looks like your 2nd save restore worked... certainly log.1 shows the VM coming back from suspend and then going into suspend. The drivers basically seem to be behaving as expected.
>
>    Paul

Thanks for fix the first problem, the second remained seems related to 
save/restore with qxl.
With windows 7 freeze for some seconds instead and make me crazy trying 
to found the cause for 1-2 years without result :(
With windows 7 temp. freeze after latest xenvif changes something is 
changed... after restore freeze of some seconds in qemu log show pv 
drivers lines from:
> xen_platform_log xen platform: XENVIF|PdoRequestEject: 
> FFFFFA8003067540 (0)
And windows popup appair showing that Xen PV Network Device #0 was 
removed (even if finished the second freeze network return working).
Is it normal?

I have setted fixed mac address in domU's xl cfg, so should not saw 
different netcard after save/restore FWIK


qemu log (with various trace and debug active) in attachment, first 
freeze of some seconds was before this line:
> xen_platform_log xen platform: XENVIF|PdoRequestEject: 
> FFFFFA8003067540 (0)
And second freeze near was before this line:
> xen_platform_log xen platform: XENNET|DriverEntry: XENNET 8.0.0 (18) 
> (24.03.2015)
And third freeze after xl shutdown and before this line:
> xen_platform_log xen platform: XEN|SystemPowerStateCallback: <- S0

Is there a way to know if there are unexpected case in pv drivers on 
restore that can cause the freeze or not?

Thanks for any reply and sorry for my bad english.

>
>> If you more informations/tests tell me and I'll post them.
>>
>> Thanks for any reply and sorry for my bad english.
>>
>>> About save/restore on W8 I tried now with new pv build and with first
>>> save/restore is all ok but with on second now xl save/restore
>>> completes correctly but after restore freeze same as the W10 one
>>> (since first save/restore).
>>>
>>> If you more informations/tests tell me and I'll post them.
>>>
>>> Thanks for any reply and sorry for my bad english.
>>>
>>>
>>>
>>>>>> xl -vvv save W8 /mnt/vm/save/W8
>>>>>> libxl: debug: libxl.c:6705:libxl_retrieve_domain_configuration: no
>>>>>> vtpm from xenstore for domain 40
>>>>>> libxl: debug: libxl.c:6707:libxl_retrieve_domain_configuration: no pci
>>>>>> from xenstore for domain 40
>>>>>> Saving to /mnt/vm/save/W8 new xl format (info 0x1/0x0/1941)
>>>>>> libxl: debug: libxl.c:953:libxl_domain_suspend: ao 0x68d910: create:
>>>>>> how=(nil) callback=(nil) poller=0x68d970
>>>>>> libxl: debug: libxl_dom.c:1573:libxl__toolstack_save: domain=40
>>>>>> toolstack data size=49
>>>>>> libxl: debug: libxl.c:975:libxl_domain_suspend: ao 0x68d910:
>>>>>> inprogress: poller=0x68d970, flags=i
>>>>>> libxl-save-helper: debug: starting save: Success
>>>>>> xc: detail: xc_domain_save: starting save of domid 40
>>>>>> libxl: debug: libxl_dom.c:1278:domain_suspend_callback_common:
>> issuing
>>>>>> PVHVM suspend request via XenBus control node
>>>>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
>>>>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
>>>>> register
>>>>>> slotnum=3
>>>>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68dae0
>>>>>> wpath=/local/domain/40/control/shutdown token=3/0: event
>>>>>> epath=/local/domain/40/control/shutdown
>>>>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
>>>>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
>>>>>> deregister slotnum=3
>>>>>> libxl: debug:
>>>>>> libxl_dom.c:1360:domain_suspend_common_pvcontrol_suspending:
>> guest
>>>>>> acknowledged suspend request
>>>>>> libxl: debug: libxl_dom.c:1379:domain_suspend_common_wait_guest:
>>>>> wait
>>>>>> for the guest to suspend
>>>>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
>>>>>> w=0x68daf8 wpath=@releaseDomain token=3/1: register slotnum=3
>>>>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68daf8
>>>>>> wpath=@releaseDomain token=3/1: event epath=@releaseDomain
>>>>>> libxl: error: libxl_dom.c:1451:suspend_common_wait_guest_timeout:
>>>>>> guest did not suspend, timed out
>>>>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
>>>>>> w=0x68daf8 wpath=@releaseDomain token=3/1: deregister slotnum=3
>>>>>> xc: error: Suspend request failed: Internal error
>>>>>> xc: error: Domain appears not to have suspended: Internal error
>>>>>> libxl-save-helper: xc_domain_save.c:2077: xc_domain_save: Assertion
>>>>>> `rc' failed.
>>>>>> libxl: error: libxl_utils.c:430:libxl_read_exactly: file/stream
>>>>>> truncated reading ipc msg header from domain 40 save/restore helper
>>>>>> stdout pipe
>>>>>> libxl: error: libxl_exec.c:129:libxl_report_child_exitstatus: domain
>>>>>> 40 save/restore helper [-1] died due to fatal signal Aborted
>>>>>> libxl: error: libxl_dom.c:2035:remus_teardown_done: Remus: failed to
>>>>>> teardown device for guest with domid 40, rc -3
>>>>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
>>>>>> complete, rc=-3
>>>>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910:
>>>>>> destroy
>>>>>> Failed to save domain, resuming domain
>>>>>> libxl: debug: libxl.c:542:libxl_domain_resume: ao 0x68d910: create:
>>>>>> how=(nil) callback=(nil) poller=0x68d970
>>>>>> xc: error: Dom 40 not suspended: (shutdown 0, reason 255): Internal
>>>>>> error
>>>>>> libxl: error: libxl.c:511:libxl__domain_resume: xc_domain_resume
>>>>>> failed for domain 40: Invalid argument
>>>>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
>>>>>> complete, rc=-3
>>>>>> libxl: debug: libxl.c:545:libxl_domain_resume: ao 0x68d910:
>>>>>> inprogress: poller=0x68d970, flags=ic
>>>>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910:
>>>>>> destroy
>>>>>> xc: debug: hypercall buffer: total allocations:29 total releases:29
>>>>>> xc: debug: hypercall buffer: current allocations:0 maximum
>>>>>> allocations:2
>>>>>> xc: debug: hypercall buffer: cache current size:2
>>>>>> xc: debug: hypercall buffer: cache hits:20 misses:2 toobig:7
>>>>> If you need more informations/tests tell me and I'll post them.
>>>>>
>>>>> Thanks for any reply and sorry for my bad english.


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Fri Apr 24 14:45:32 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 24 Apr 2015 14:45:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YlerE-00060I-5q; Fri, 24 Apr 2015 14:45:32 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <fabio.fantoni@m2r.biz>) id 1YlerC-00060D-Vb
	for win-pv-devel@lists.xenproject.org; Fri, 24 Apr 2015 14:45:31 +0000
Received: from [85.158.137.68] by server-9.bemta-3.messagelabs.com id
	E3/B2-26324-A075A355; Fri, 24 Apr 2015 14:45:30 +0000
X-Env-Sender: fabio.fantoni@m2r.biz
X-Msg-Ref: server-3.tower-31.messagelabs.com!1429886728!19679733!1
X-Originating-IP: [74.125.82.45]
X-SpamReason: No, hits=2.2 required=7.0 tests=BIZ_TLD,BODY_RANDOM_LONG
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 9438 invoked from network); 24 Apr 2015 14:45:29 -0000
Received: from mail-wg0-f45.google.com (HELO mail-wg0-f45.google.com)
	(74.125.82.45)
	by server-3.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	24 Apr 2015 14:45:29 -0000
Received: by wgyo15 with SMTP id o15so53161804wgy.2
	for <win-pv-devel@lists.xenproject.org>;
	Fri, 24 Apr 2015 07:45:28 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20130820;
	h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to
	:subject:references:in-reply-to:content-type
	:content-transfer-encoding;
	bh=gOR8USvXq/oeL1Ga1dF6JaXzosrTLS6syiFVMunBaXw=;
	b=d9IvIGLblPXhmCs09fBdXNK9C7/xPXoDCIj5OO7Epb1BwBdGqHMur5tkOZu4GSwmw6
	eYHphUMLvbGurbJNcmwy4vKepLhA3yJuik4rz20tukbI9foJEN/TerpwtvYkmWPmNKG9
	Zshh09wiyYPzLf+NG/Ov5JohfOxnnREYGwdEmuw3Zp/MwBQy1x0+Hn/pdQHfidZtt2yu
	T/RG/o74BMaugR69b9AZoRjvmtIPebYuWkF/Njikjc8EdlclGiBLQmCx4ua7eRrgZR05
	UHa990eDHglFBgHm9oJHPRWiiP2hl2q0fVnLPk5sT/zMgwU5CJ7z6Y+MbdAlREFquYbt
	gYNg==
X-Gm-Message-State: ALoCoQkhokJ1+SmUgsI29Rd78zrwYbkjub+Do+CJ3VvrE3VDBFVH0pOk1kmP3z7I/ci4q1LKfv8Y
X-Received: by 10.194.187.16 with SMTP id fo16mr16946457wjc.86.1429886728585; 
	Fri, 24 Apr 2015 07:45:28 -0700 (PDT)
Received: from [192.168.1.15] (ip-73-126.sn2.eutelia.it. [83.211.73.126])
	by mx.google.com with ESMTPSA id s4sm3893007wix.14.2015.04.24.07.45.26
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Fri, 24 Apr 2015 07:45:27 -0700 (PDT)
Message-ID: <553A5711.6020405@m2r.biz>
Date: Fri, 24 Apr 2015 16:45:37 +0200
From: Fabio Fantoni <fabio.fantoni@m2r.biz>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
	rv:31.0) Gecko/20100101 Thunderbird/31.6.0
MIME-Version: 1.0
To: Paul Durrant <Paul.Durrant@citrix.com>, 
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
References: <55192CB4.7030802@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585EFDA@AMSPEX01CL01.citrite.net>
	<551C0400.7090908@m2r.biz> <551D4B03.80105@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD0258611B1@AMSPEX01CL01.citrite.net>
In-Reply-To: <9AAE0902D5BC7E449B7C8E4E778ABCD0258611B1@AMSPEX01CL01.citrite.net>
Subject: Re: [win-pv-devel] Multiple save/restore failing with windows 8.1
	64 bit domU
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Il 02/04/2015 16:41, Paul Durrant ha scritto:
>> -----Original Message-----
>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
>> Sent: 02 April 2015 14:58
>> To: Paul Durrant; win-pv-devel@lists.xenproject.org
>> Subject: Re: Multiple save/restore failing with windows 8.1 64 bit domU
>>
>> Il 01/04/2015 16:43, Fabio Fantoni ha scritto:
>>> Il 01/04/2015 15:21, Paul Durrant ha scritto:
>>>>> -----Original Message-----
>>>>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
>>>>> Sent: 30 March 2015 12:00
>>>>> To: win-pv-devel@lists.xenproject.org
>>>>> Cc: Paul Durrant
>>>>> Subject: Multiple save/restore failing with windows 8.1 64 bit domU
>>>>>
>>>>> I tried 2 times multiple save/restore (start domU, use it for some
>>>>> minutes, do a save restore, use it, do another save/restore) and in
>>>>> both
>>>>> case second save failed:
>>>>>
>>>> The patch I posted this morning should fix this one for you.
>>>>
>>>>     Paul
>>> Thanks.
>>>
>>> Today I tried windows 10 pro 64 bit technical preview, clean install,
>>> pv drivers (today's build) install ok but after restore display
>>> (connecting with spice) seems freezed, waited 4-5 minutes without
>>> changes and after I tried also xl shudown but do nothing.
>>> DomU have pv disk and network working, xl shutdown (before try
>>> save/restore) is working.
>> I updated pv drivers to today build and first save/restore now seems was
>> working also in Windows 10 but still not the multiple (seem only partial
>> solved), xl shutdown this time worked but it tooks some minutes.
>> In attachments domU's qemu logs with trace enabled.
>>
> It looks like your 2nd save restore worked... certainly log.1 shows the VM coming back from suspend and then going into suspend. The drivers basically seem to be behaving as expected.
>
>    Paul

Thanks for fix the first problem, the second remained seems related to 
save/restore with qxl.
With windows 7 freeze for some seconds instead and make me crazy trying 
to found the cause for 1-2 years without result :(
With windows 7 temp. freeze after latest xenvif changes something is 
changed... after restore freeze of some seconds in qemu log show pv 
drivers lines from:
> xen_platform_log xen platform: XENVIF|PdoRequestEject: 
> FFFFFA8003067540 (0)
And windows popup appair showing that Xen PV Network Device #0 was 
removed (even if finished the second freeze network return working).
Is it normal?

I have setted fixed mac address in domU's xl cfg, so should not saw 
different netcard after save/restore FWIK


qemu log (with various trace and debug active) in attachment, first 
freeze of some seconds was before this line:
> xen_platform_log xen platform: XENVIF|PdoRequestEject: 
> FFFFFA8003067540 (0)
And second freeze near was before this line:
> xen_platform_log xen platform: XENNET|DriverEntry: XENNET 8.0.0 (18) 
> (24.03.2015)
And third freeze after xl shutdown and before this line:
> xen_platform_log xen platform: XEN|SystemPowerStateCallback: <- S0

Is there a way to know if there are unexpected case in pv drivers on 
restore that can cause the freeze or not?

Thanks for any reply and sorry for my bad english.

>
>> If you more informations/tests tell me and I'll post them.
>>
>> Thanks for any reply and sorry for my bad english.
>>
>>> About save/restore on W8 I tried now with new pv build and with first
>>> save/restore is all ok but with on second now xl save/restore
>>> completes correctly but after restore freeze same as the W10 one
>>> (since first save/restore).
>>>
>>> If you more informations/tests tell me and I'll post them.
>>>
>>> Thanks for any reply and sorry for my bad english.
>>>
>>>
>>>
>>>>>> xl -vvv save W8 /mnt/vm/save/W8
>>>>>> libxl: debug: libxl.c:6705:libxl_retrieve_domain_configuration: no
>>>>>> vtpm from xenstore for domain 40
>>>>>> libxl: debug: libxl.c:6707:libxl_retrieve_domain_configuration: no pci
>>>>>> from xenstore for domain 40
>>>>>> Saving to /mnt/vm/save/W8 new xl format (info 0x1/0x0/1941)
>>>>>> libxl: debug: libxl.c:953:libxl_domain_suspend: ao 0x68d910: create:
>>>>>> how=(nil) callback=(nil) poller=0x68d970
>>>>>> libxl: debug: libxl_dom.c:1573:libxl__toolstack_save: domain=40
>>>>>> toolstack data size=49
>>>>>> libxl: debug: libxl.c:975:libxl_domain_suspend: ao 0x68d910:
>>>>>> inprogress: poller=0x68d970, flags=i
>>>>>> libxl-save-helper: debug: starting save: Success
>>>>>> xc: detail: xc_domain_save: starting save of domid 40
>>>>>> libxl: debug: libxl_dom.c:1278:domain_suspend_callback_common:
>> issuing
>>>>>> PVHVM suspend request via XenBus control node
>>>>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
>>>>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
>>>>> register
>>>>>> slotnum=3
>>>>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68dae0
>>>>>> wpath=/local/domain/40/control/shutdown token=3/0: event
>>>>>> epath=/local/domain/40/control/shutdown
>>>>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
>>>>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown token=3/0:
>>>>>> deregister slotnum=3
>>>>>> libxl: debug:
>>>>>> libxl_dom.c:1360:domain_suspend_common_pvcontrol_suspending:
>> guest
>>>>>> acknowledged suspend request
>>>>>> libxl: debug: libxl_dom.c:1379:domain_suspend_common_wait_guest:
>>>>> wait
>>>>>> for the guest to suspend
>>>>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
>>>>>> w=0x68daf8 wpath=@releaseDomain token=3/1: register slotnum=3
>>>>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68daf8
>>>>>> wpath=@releaseDomain token=3/1: event epath=@releaseDomain
>>>>>> libxl: error: libxl_dom.c:1451:suspend_common_wait_guest_timeout:
>>>>>> guest did not suspend, timed out
>>>>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
>>>>>> w=0x68daf8 wpath=@releaseDomain token=3/1: deregister slotnum=3
>>>>>> xc: error: Suspend request failed: Internal error
>>>>>> xc: error: Domain appears not to have suspended: Internal error
>>>>>> libxl-save-helper: xc_domain_save.c:2077: xc_domain_save: Assertion
>>>>>> `rc' failed.
>>>>>> libxl: error: libxl_utils.c:430:libxl_read_exactly: file/stream
>>>>>> truncated reading ipc msg header from domain 40 save/restore helper
>>>>>> stdout pipe
>>>>>> libxl: error: libxl_exec.c:129:libxl_report_child_exitstatus: domain
>>>>>> 40 save/restore helper [-1] died due to fatal signal Aborted
>>>>>> libxl: error: libxl_dom.c:2035:remus_teardown_done: Remus: failed to
>>>>>> teardown device for guest with domid 40, rc -3
>>>>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
>>>>>> complete, rc=-3
>>>>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910:
>>>>>> destroy
>>>>>> Failed to save domain, resuming domain
>>>>>> libxl: debug: libxl.c:542:libxl_domain_resume: ao 0x68d910: create:
>>>>>> how=(nil) callback=(nil) poller=0x68d970
>>>>>> xc: error: Dom 40 not suspended: (shutdown 0, reason 255): Internal
>>>>>> error
>>>>>> libxl: error: libxl.c:511:libxl__domain_resume: xc_domain_resume
>>>>>> failed for domain 40: Invalid argument
>>>>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
>>>>>> complete, rc=-3
>>>>>> libxl: debug: libxl.c:545:libxl_domain_resume: ao 0x68d910:
>>>>>> inprogress: poller=0x68d970, flags=ic
>>>>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910:
>>>>>> destroy
>>>>>> xc: debug: hypercall buffer: total allocations:29 total releases:29
>>>>>> xc: debug: hypercall buffer: current allocations:0 maximum
>>>>>> allocations:2
>>>>>> xc: debug: hypercall buffer: cache current size:2
>>>>>> xc: debug: hypercall buffer: cache hits:20 misses:2 toobig:7
>>>>> If you need more informations/tests tell me and I'll post them.
>>>>>
>>>>> Thanks for any reply and sorry for my bad english.


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Fri Apr 24 15:01:43 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 24 Apr 2015 15:01:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Ylf6s-00070b-T7; Fri, 24 Apr 2015 15:01:42 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <Paul.Durrant@citrix.com>) id 1Ylf6q-00070O-Mg
	for win-pv-devel@lists.xenproject.org; Fri, 24 Apr 2015 15:01:40 +0000
Received: from [85.158.139.211] by server-5.bemta-5.messagelabs.com id
	CF/D9-02119-3DA5A355; Fri, 24 Apr 2015 15:01:39 +0000
X-Env-Sender: Paul.Durrant@citrix.com
X-Msg-Ref: server-3.tower-206.messagelabs.com!1429887694!10853646!1
X-Originating-IP: [103.14.252.240]
X-SpamReason: No, hits=2.2 required=7.0 tests=BIZ_TLD,BODY_RANDOM_LONG,
	received_headers: No Received headers
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 9857 invoked from network); 24 Apr 2015 15:01:37 -0000
Received: from smtp.citrix.com.au (HELO SMTP.CITRIX.COM.AU) (103.14.252.240)
	by server-3.tower-206.messagelabs.com with RC4-SHA encrypted SMTP;
	24 Apr 2015 15:01:37 -0000
X-IronPort-AV: E=Sophos;i="5.11,640,1422921600"; d="scan'208";a="18123580"
From: Paul Durrant <Paul.Durrant@citrix.com>
To: Fabio Fantoni <fabio.fantoni@m2r.biz>, "win-pv-devel@lists.xenproject.org"
	<win-pv-devel@lists.xenproject.org>
Thread-Topic: Multiple save/restore failing with windows 8.1 64 bit domU
Thread-Index: AQHQati05+G/VEyHyUKbEtI7jazazZ04J7aQ///1bACAAYXUgIAALBnggCJ0X4CAACSUIA==
Date: Fri, 24 Apr 2015 15:01:04 +0000
Message-ID: <9AAE0902D5BC7E449B7C8E4E778ABCD0258A52BC@AMSPEX01CL01.citrite.net>
References: <55192CB4.7030802@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585EFDA@AMSPEX01CL01.citrite.net>
	<551C0400.7090908@m2r.biz> <551D4B03.80105@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD0258611B1@AMSPEX01CL01.citrite.net>
	<553A5711.6020405@m2r.biz>
In-Reply-To: <553A5711.6020405@m2r.biz>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
MIME-Version: 1.0
X-DLP: SIN1
Subject: Re: [win-pv-devel] Multiple save/restore failing with windows 8.1
	64 bit domU
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

> -----Original Message-----
> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
> Sent: 24 April 2015 15:46
> To: Paul Durrant; win-pv-devel@lists.xenproject.org
> Subject: Re: Multiple save/restore failing with windows 8.1 64 bit domU
> 
> Il 02/04/2015 16:41, Paul Durrant ha scritto:
> >> -----Original Message-----
> >> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
> >> Sent: 02 April 2015 14:58
> >> To: Paul Durrant; win-pv-devel@lists.xenproject.org
> >> Subject: Re: Multiple save/restore failing with windows 8.1 64 bit domU
> >>
> >> Il 01/04/2015 16:43, Fabio Fantoni ha scritto:
> >>> Il 01/04/2015 15:21, Paul Durrant ha scritto:
> >>>>> -----Original Message-----
> >>>>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
> >>>>> Sent: 30 March 2015 12:00
> >>>>> To: win-pv-devel@lists.xenproject.org
> >>>>> Cc: Paul Durrant
> >>>>> Subject: Multiple save/restore failing with windows 8.1 64 bit domU
> >>>>>
> >>>>> I tried 2 times multiple save/restore (start domU, use it for some
> >>>>> minutes, do a save restore, use it, do another save/restore) and in
> >>>>> both
> >>>>> case second save failed:
> >>>>>
> >>>> The patch I posted this morning should fix this one for you.
> >>>>
> >>>>     Paul
> >>> Thanks.
> >>>
> >>> Today I tried windows 10 pro 64 bit technical preview, clean install,
> >>> pv drivers (today's build) install ok but after restore display
> >>> (connecting with spice) seems freezed, waited 4-5 minutes without
> >>> changes and after I tried also xl shudown but do nothing.
> >>> DomU have pv disk and network working, xl shutdown (before try
> >>> save/restore) is working.
> >> I updated pv drivers to today build and first save/restore now seems was
> >> working also in Windows 10 but still not the multiple (seem only partial
> >> solved), xl shutdown this time worked but it tooks some minutes.
> >> In attachments domU's qemu logs with trace enabled.
> >>
> > It looks like your 2nd save restore worked... certainly log.1 shows the VM
> coming back from suspend and then going into suspend. The drivers basically
> seem to be behaving as expected.
> >
> >    Paul
> 
> Thanks for fix the first problem, the second remained seems related to
> save/restore with qxl.
> With windows 7 freeze for some seconds instead and make me crazy trying
> to found the cause for 1-2 years without result :(
> With windows 7 temp. freeze after latest xenvif changes something is
> changed... after restore freeze of some seconds in qemu log show pv
> drivers lines from:
> > xen_platform_log xen platform: XENVIF|PdoRequestEject:
> > FFFFFA8003067540 (0)

Hmm. That suggests that, when XENVIF is resuming, for some reason it has decided the backend has gone offline. Not sure why that would happen unless there's some sort of race with net attach.

> And windows popup appair showing that Xen PV Network Device #0 was
> removed (even if finished the second freeze network return working).
> Is it normal?
> 
> I have setted fixed mac address in domU's xl cfg, so should not saw
> different netcard after save/restore FWIK
> 
> 
> qemu log (with various trace and debug active) in attachment, first
> freeze of some seconds was before this line:
> > xen_platform_log xen platform: XENVIF|PdoRequestEject:
> > FFFFFA8003067540 (0)
> And second freeze near was before this line:
> > xen_platform_log xen platform: XENNET|DriverEntry: XENNET 8.0.0 (18)
> > (24.03.2015)
> And third freeze after xl shutdown and before this line:
> > xen_platform_log xen platform: XEN|SystemPowerStateCallback: <- S0
> 
> Is there a way to know if there are unexpected case in pv drivers on
> restore that can cause the freeze or not?
> 

>From that, not really. Do you know if the guest vcpus are busy during the freeze? Do you have any xentrace analysis suggesting what the guest is doing?

  Paul

> Thanks for any reply and sorry for my bad english.
> 
> >
> >> If you more informations/tests tell me and I'll post them.
> >>
> >> Thanks for any reply and sorry for my bad english.
> >>
> >>> About save/restore on W8 I tried now with new pv build and with first
> >>> save/restore is all ok but with on second now xl save/restore
> >>> completes correctly but after restore freeze same as the W10 one
> >>> (since first save/restore).
> >>>
> >>> If you more informations/tests tell me and I'll post them.
> >>>
> >>> Thanks for any reply and sorry for my bad english.
> >>>
> >>>
> >>>
> >>>>>> xl -vvv save W8 /mnt/vm/save/W8
> >>>>>> libxl: debug: libxl.c:6705:libxl_retrieve_domain_configuration: no
> >>>>>> vtpm from xenstore for domain 40
> >>>>>> libxl: debug: libxl.c:6707:libxl_retrieve_domain_configuration: no pci
> >>>>>> from xenstore for domain 40
> >>>>>> Saving to /mnt/vm/save/W8 new xl format (info 0x1/0x0/1941)
> >>>>>> libxl: debug: libxl.c:953:libxl_domain_suspend: ao 0x68d910: create:
> >>>>>> how=(nil) callback=(nil) poller=0x68d970
> >>>>>> libxl: debug: libxl_dom.c:1573:libxl__toolstack_save: domain=40
> >>>>>> toolstack data size=49
> >>>>>> libxl: debug: libxl.c:975:libxl_domain_suspend: ao 0x68d910:
> >>>>>> inprogress: poller=0x68d970, flags=i
> >>>>>> libxl-save-helper: debug: starting save: Success
> >>>>>> xc: detail: xc_domain_save: starting save of domid 40
> >>>>>> libxl: debug: libxl_dom.c:1278:domain_suspend_callback_common:
> >> issuing
> >>>>>> PVHVM suspend request via XenBus control node
> >>>>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
> >>>>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown
> token=3/0:
> >>>>> register
> >>>>>> slotnum=3
> >>>>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68dae0
> >>>>>> wpath=/local/domain/40/control/shutdown token=3/0: event
> >>>>>> epath=/local/domain/40/control/shutdown
> >>>>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
> >>>>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown
> token=3/0:
> >>>>>> deregister slotnum=3
> >>>>>> libxl: debug:
> >>>>>>
> libxl_dom.c:1360:domain_suspend_common_pvcontrol_suspending:
> >> guest
> >>>>>> acknowledged suspend request
> >>>>>> libxl: debug:
> libxl_dom.c:1379:domain_suspend_common_wait_guest:
> >>>>> wait
> >>>>>> for the guest to suspend
> >>>>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
> >>>>>> w=0x68daf8 wpath=@releaseDomain token=3/1: register slotnum=3
> >>>>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68daf8
> >>>>>> wpath=@releaseDomain token=3/1: event epath=@releaseDomain
> >>>>>> libxl: error:
> libxl_dom.c:1451:suspend_common_wait_guest_timeout:
> >>>>>> guest did not suspend, timed out
> >>>>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
> >>>>>> w=0x68daf8 wpath=@releaseDomain token=3/1: deregister
> slotnum=3
> >>>>>> xc: error: Suspend request failed: Internal error
> >>>>>> xc: error: Domain appears not to have suspended: Internal error
> >>>>>> libxl-save-helper: xc_domain_save.c:2077: xc_domain_save:
> Assertion
> >>>>>> `rc' failed.
> >>>>>> libxl: error: libxl_utils.c:430:libxl_read_exactly: file/stream
> >>>>>> truncated reading ipc msg header from domain 40 save/restore
> helper
> >>>>>> stdout pipe
> >>>>>> libxl: error: libxl_exec.c:129:libxl_report_child_exitstatus: domain
> >>>>>> 40 save/restore helper [-1] died due to fatal signal Aborted
> >>>>>> libxl: error: libxl_dom.c:2035:remus_teardown_done: Remus: failed
> to
> >>>>>> teardown device for guest with domid 40, rc -3
> >>>>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
> >>>>>> complete, rc=-3
> >>>>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910:
> >>>>>> destroy
> >>>>>> Failed to save domain, resuming domain
> >>>>>> libxl: debug: libxl.c:542:libxl_domain_resume: ao 0x68d910: create:
> >>>>>> how=(nil) callback=(nil) poller=0x68d970
> >>>>>> xc: error: Dom 40 not suspended: (shutdown 0, reason 255): Internal
> >>>>>> error
> >>>>>> libxl: error: libxl.c:511:libxl__domain_resume: xc_domain_resume
> >>>>>> failed for domain 40: Invalid argument
> >>>>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
> >>>>>> complete, rc=-3
> >>>>>> libxl: debug: libxl.c:545:libxl_domain_resume: ao 0x68d910:
> >>>>>> inprogress: poller=0x68d970, flags=ic
> >>>>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910:
> >>>>>> destroy
> >>>>>> xc: debug: hypercall buffer: total allocations:29 total releases:29
> >>>>>> xc: debug: hypercall buffer: current allocations:0 maximum
> >>>>>> allocations:2
> >>>>>> xc: debug: hypercall buffer: cache current size:2
> >>>>>> xc: debug: hypercall buffer: cache hits:20 misses:2 toobig:7
> >>>>> If you need more informations/tests tell me and I'll post them.
> >>>>>
> >>>>> Thanks for any reply and sorry for my bad english.


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Fri Apr 24 15:01:43 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 24 Apr 2015 15:01:43 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Ylf6s-00070b-T7; Fri, 24 Apr 2015 15:01:42 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <Paul.Durrant@citrix.com>) id 1Ylf6q-00070O-Mg
	for win-pv-devel@lists.xenproject.org; Fri, 24 Apr 2015 15:01:40 +0000
Received: from [85.158.139.211] by server-5.bemta-5.messagelabs.com id
	CF/D9-02119-3DA5A355; Fri, 24 Apr 2015 15:01:39 +0000
X-Env-Sender: Paul.Durrant@citrix.com
X-Msg-Ref: server-3.tower-206.messagelabs.com!1429887694!10853646!1
X-Originating-IP: [103.14.252.240]
X-SpamReason: No, hits=2.2 required=7.0 tests=BIZ_TLD,BODY_RANDOM_LONG,
	received_headers: No Received headers
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 9857 invoked from network); 24 Apr 2015 15:01:37 -0000
Received: from smtp.citrix.com.au (HELO SMTP.CITRIX.COM.AU) (103.14.252.240)
	by server-3.tower-206.messagelabs.com with RC4-SHA encrypted SMTP;
	24 Apr 2015 15:01:37 -0000
X-IronPort-AV: E=Sophos;i="5.11,640,1422921600"; d="scan'208";a="18123580"
From: Paul Durrant <Paul.Durrant@citrix.com>
To: Fabio Fantoni <fabio.fantoni@m2r.biz>, "win-pv-devel@lists.xenproject.org"
	<win-pv-devel@lists.xenproject.org>
Thread-Topic: Multiple save/restore failing with windows 8.1 64 bit domU
Thread-Index: AQHQati05+G/VEyHyUKbEtI7jazazZ04J7aQ///1bACAAYXUgIAALBnggCJ0X4CAACSUIA==
Date: Fri, 24 Apr 2015 15:01:04 +0000
Message-ID: <9AAE0902D5BC7E449B7C8E4E778ABCD0258A52BC@AMSPEX01CL01.citrite.net>
References: <55192CB4.7030802@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585EFDA@AMSPEX01CL01.citrite.net>
	<551C0400.7090908@m2r.biz> <551D4B03.80105@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD0258611B1@AMSPEX01CL01.citrite.net>
	<553A5711.6020405@m2r.biz>
In-Reply-To: <553A5711.6020405@m2r.biz>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
MIME-Version: 1.0
X-DLP: SIN1
Subject: Re: [win-pv-devel] Multiple save/restore failing with windows 8.1
	64 bit domU
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

> -----Original Message-----
> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
> Sent: 24 April 2015 15:46
> To: Paul Durrant; win-pv-devel@lists.xenproject.org
> Subject: Re: Multiple save/restore failing with windows 8.1 64 bit domU
> 
> Il 02/04/2015 16:41, Paul Durrant ha scritto:
> >> -----Original Message-----
> >> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
> >> Sent: 02 April 2015 14:58
> >> To: Paul Durrant; win-pv-devel@lists.xenproject.org
> >> Subject: Re: Multiple save/restore failing with windows 8.1 64 bit domU
> >>
> >> Il 01/04/2015 16:43, Fabio Fantoni ha scritto:
> >>> Il 01/04/2015 15:21, Paul Durrant ha scritto:
> >>>>> -----Original Message-----
> >>>>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
> >>>>> Sent: 30 March 2015 12:00
> >>>>> To: win-pv-devel@lists.xenproject.org
> >>>>> Cc: Paul Durrant
> >>>>> Subject: Multiple save/restore failing with windows 8.1 64 bit domU
> >>>>>
> >>>>> I tried 2 times multiple save/restore (start domU, use it for some
> >>>>> minutes, do a save restore, use it, do another save/restore) and in
> >>>>> both
> >>>>> case second save failed:
> >>>>>
> >>>> The patch I posted this morning should fix this one for you.
> >>>>
> >>>>     Paul
> >>> Thanks.
> >>>
> >>> Today I tried windows 10 pro 64 bit technical preview, clean install,
> >>> pv drivers (today's build) install ok but after restore display
> >>> (connecting with spice) seems freezed, waited 4-5 minutes without
> >>> changes and after I tried also xl shudown but do nothing.
> >>> DomU have pv disk and network working, xl shutdown (before try
> >>> save/restore) is working.
> >> I updated pv drivers to today build and first save/restore now seems was
> >> working also in Windows 10 but still not the multiple (seem only partial
> >> solved), xl shutdown this time worked but it tooks some minutes.
> >> In attachments domU's qemu logs with trace enabled.
> >>
> > It looks like your 2nd save restore worked... certainly log.1 shows the VM
> coming back from suspend and then going into suspend. The drivers basically
> seem to be behaving as expected.
> >
> >    Paul
> 
> Thanks for fix the first problem, the second remained seems related to
> save/restore with qxl.
> With windows 7 freeze for some seconds instead and make me crazy trying
> to found the cause for 1-2 years without result :(
> With windows 7 temp. freeze after latest xenvif changes something is
> changed... after restore freeze of some seconds in qemu log show pv
> drivers lines from:
> > xen_platform_log xen platform: XENVIF|PdoRequestEject:
> > FFFFFA8003067540 (0)

Hmm. That suggests that, when XENVIF is resuming, for some reason it has decided the backend has gone offline. Not sure why that would happen unless there's some sort of race with net attach.

> And windows popup appair showing that Xen PV Network Device #0 was
> removed (even if finished the second freeze network return working).
> Is it normal?
> 
> I have setted fixed mac address in domU's xl cfg, so should not saw
> different netcard after save/restore FWIK
> 
> 
> qemu log (with various trace and debug active) in attachment, first
> freeze of some seconds was before this line:
> > xen_platform_log xen platform: XENVIF|PdoRequestEject:
> > FFFFFA8003067540 (0)
> And second freeze near was before this line:
> > xen_platform_log xen platform: XENNET|DriverEntry: XENNET 8.0.0 (18)
> > (24.03.2015)
> And third freeze after xl shutdown and before this line:
> > xen_platform_log xen platform: XEN|SystemPowerStateCallback: <- S0
> 
> Is there a way to know if there are unexpected case in pv drivers on
> restore that can cause the freeze or not?
> 

>From that, not really. Do you know if the guest vcpus are busy during the freeze? Do you have any xentrace analysis suggesting what the guest is doing?

  Paul

> Thanks for any reply and sorry for my bad english.
> 
> >
> >> If you more informations/tests tell me and I'll post them.
> >>
> >> Thanks for any reply and sorry for my bad english.
> >>
> >>> About save/restore on W8 I tried now with new pv build and with first
> >>> save/restore is all ok but with on second now xl save/restore
> >>> completes correctly but after restore freeze same as the W10 one
> >>> (since first save/restore).
> >>>
> >>> If you more informations/tests tell me and I'll post them.
> >>>
> >>> Thanks for any reply and sorry for my bad english.
> >>>
> >>>
> >>>
> >>>>>> xl -vvv save W8 /mnt/vm/save/W8
> >>>>>> libxl: debug: libxl.c:6705:libxl_retrieve_domain_configuration: no
> >>>>>> vtpm from xenstore for domain 40
> >>>>>> libxl: debug: libxl.c:6707:libxl_retrieve_domain_configuration: no pci
> >>>>>> from xenstore for domain 40
> >>>>>> Saving to /mnt/vm/save/W8 new xl format (info 0x1/0x0/1941)
> >>>>>> libxl: debug: libxl.c:953:libxl_domain_suspend: ao 0x68d910: create:
> >>>>>> how=(nil) callback=(nil) poller=0x68d970
> >>>>>> libxl: debug: libxl_dom.c:1573:libxl__toolstack_save: domain=40
> >>>>>> toolstack data size=49
> >>>>>> libxl: debug: libxl.c:975:libxl_domain_suspend: ao 0x68d910:
> >>>>>> inprogress: poller=0x68d970, flags=i
> >>>>>> libxl-save-helper: debug: starting save: Success
> >>>>>> xc: detail: xc_domain_save: starting save of domid 40
> >>>>>> libxl: debug: libxl_dom.c:1278:domain_suspend_callback_common:
> >> issuing
> >>>>>> PVHVM suspend request via XenBus control node
> >>>>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
> >>>>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown
> token=3/0:
> >>>>> register
> >>>>>> slotnum=3
> >>>>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68dae0
> >>>>>> wpath=/local/domain/40/control/shutdown token=3/0: event
> >>>>>> epath=/local/domain/40/control/shutdown
> >>>>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
> >>>>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown
> token=3/0:
> >>>>>> deregister slotnum=3
> >>>>>> libxl: debug:
> >>>>>>
> libxl_dom.c:1360:domain_suspend_common_pvcontrol_suspending:
> >> guest
> >>>>>> acknowledged suspend request
> >>>>>> libxl: debug:
> libxl_dom.c:1379:domain_suspend_common_wait_guest:
> >>>>> wait
> >>>>>> for the guest to suspend
> >>>>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
> >>>>>> w=0x68daf8 wpath=@releaseDomain token=3/1: register slotnum=3
> >>>>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68daf8
> >>>>>> wpath=@releaseDomain token=3/1: event epath=@releaseDomain
> >>>>>> libxl: error:
> libxl_dom.c:1451:suspend_common_wait_guest_timeout:
> >>>>>> guest did not suspend, timed out
> >>>>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
> >>>>>> w=0x68daf8 wpath=@releaseDomain token=3/1: deregister
> slotnum=3
> >>>>>> xc: error: Suspend request failed: Internal error
> >>>>>> xc: error: Domain appears not to have suspended: Internal error
> >>>>>> libxl-save-helper: xc_domain_save.c:2077: xc_domain_save:
> Assertion
> >>>>>> `rc' failed.
> >>>>>> libxl: error: libxl_utils.c:430:libxl_read_exactly: file/stream
> >>>>>> truncated reading ipc msg header from domain 40 save/restore
> helper
> >>>>>> stdout pipe
> >>>>>> libxl: error: libxl_exec.c:129:libxl_report_child_exitstatus: domain
> >>>>>> 40 save/restore helper [-1] died due to fatal signal Aborted
> >>>>>> libxl: error: libxl_dom.c:2035:remus_teardown_done: Remus: failed
> to
> >>>>>> teardown device for guest with domid 40, rc -3
> >>>>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
> >>>>>> complete, rc=-3
> >>>>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910:
> >>>>>> destroy
> >>>>>> Failed to save domain, resuming domain
> >>>>>> libxl: debug: libxl.c:542:libxl_domain_resume: ao 0x68d910: create:
> >>>>>> how=(nil) callback=(nil) poller=0x68d970
> >>>>>> xc: error: Dom 40 not suspended: (shutdown 0, reason 255): Internal
> >>>>>> error
> >>>>>> libxl: error: libxl.c:511:libxl__domain_resume: xc_domain_resume
> >>>>>> failed for domain 40: Invalid argument
> >>>>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
> >>>>>> complete, rc=-3
> >>>>>> libxl: debug: libxl.c:545:libxl_domain_resume: ao 0x68d910:
> >>>>>> inprogress: poller=0x68d970, flags=ic
> >>>>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910:
> >>>>>> destroy
> >>>>>> xc: debug: hypercall buffer: total allocations:29 total releases:29
> >>>>>> xc: debug: hypercall buffer: current allocations:0 maximum
> >>>>>> allocations:2
> >>>>>> xc: debug: hypercall buffer: cache current size:2
> >>>>>> xc: debug: hypercall buffer: cache hits:20 misses:2 toobig:7
> >>>>> If you need more informations/tests tell me and I'll post them.
> >>>>>
> >>>>> Thanks for any reply and sorry for my bad english.


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Sun Apr 26 13:17:07 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sun, 26 Apr 2015 13:17:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YmMQk-0002ro-6E; Sun, 26 Apr 2015 13:17:06 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <venkatsanaka@gmail.com>) id 1YmLK0-0001nJ-LL
	for win-pv-devel@lists.xenproject.org; Sun, 26 Apr 2015 12:06:04 +0000
Received: from [85.158.137.68] by server-3.bemta-3.messagelabs.com id
	BE/23-11187-BA4DC355; Sun, 26 Apr 2015 12:06:03 +0000
X-Env-Sender: venkatsanaka@gmail.com
X-Msg-Ref: server-5.tower-31.messagelabs.com!1430049962!19993850!1
X-Originating-IP: [209.85.213.175]
X-SpamReason: No, hits=1.2 required=7.0 tests=HTML_20_30,HTML_MESSAGE,
	RCVD_BY_IP
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 25517 invoked from network); 26 Apr 2015 12:06:03 -0000
Received: from mail-ig0-f175.google.com (HELO mail-ig0-f175.google.com)
	(209.85.213.175)
	by server-5.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	26 Apr 2015 12:06:03 -0000
Received: by igbhj9 with SMTP id hj9so43942471igb.1
	for <win-pv-devel@lists.xenproject.org>;
	Sun, 26 Apr 2015 05:06:02 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=mime-version:sender:from:date:message-id:subject:to:content-type;
	bh=W6sGdrD73Xu+VOqmR1+RPaJ+uICepu6UAhson72IrWs=;
	b=Eqmj7G+nG99ofqTVDV9h5y3yQyyyUJd5xB4xWV4PcU56m4xKx/Wqmm/zM8UeC3ete8
	7PwzpFm2CIrVWVybqfK4KEbvhWk3FYN2C4d5funIlEsBcM7BGFbVifLXRT3BQEEsYLt/
	Y7YQNKTqJqjMHTxcs7aco9+RNZJrpnDdQjuMwBHZQsk/BXg4iJELNrDGYQl0fcLawKU2
	5+oLxXKUAiAUzL8J1fER+HI0CoH31fFWN4VcyHN6Q6x3QixJzZC2yJPcwr5p5udV33eP
	0ojGg97jQpUptm+Bw05O2aMVdrS3lJq7fqfafl7Pgo/xNWG3gxqsctHo/ebe0jB+xtr1
	nYDA==
X-Received: by 10.107.170.135 with SMTP id g7mr8422974ioj.2.1430049962009;
	Sun, 26 Apr 2015 05:06:02 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.79.67.2 with HTTP; Sun, 26 Apr 2015 05:05:21 -0700 (PDT)
From: venkat sanaka <sanaka.venkat@gmail.com>
Date: Sun, 26 Apr 2015 20:05:21 +0800
X-Google-Sender-Auth: 0ipuryyxOULaOx3S1mzmapdoeXc
Message-ID: <CAFSZitKUOiRTkxybc4nQUjdVkSbg0j30758Oehg_QRTK1V8Xgg@mail.gmail.com>
To: win-pv-devel@lists.xenproject.org
X-Mailman-Approved-At: Sun, 26 Apr 2015 13:17:05 +0000
Subject: [win-pv-devel] Replacing existing Xen Windows GplPv
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============8808591584585464712=="
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

--===============8808591584585464712==
Content-Type: multipart/alternative; boundary=001a11427064ff2b3105149f73a1

--001a11427064ff2b3105149f73a1
Content-Type: text/plain; charset=ISO-8859-1

Hello,

I have an existing guest VM of windows 2008 server running on Xen windows
GplPv drivers. I am looking for any guidance document on how to replace
these drivers with the new PV drivers.

Basically, I need to use xeniface driver to communicate with xenstore.

On a different note, is xeniface driver compatible with the Xen GplPv
drivers?

Thanks
Venkat

--001a11427064ff2b3105149f73a1
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div><div><div><div>Hello,<br><br></div>I have an existing=
 guest VM of windows 2008 server running on Xen windows GplPv drivers. I am=
 looking for any guidance document on how to replace these drivers with the=
 new PV drivers.<br><br></div>Basically, I need to use xeniface driver to c=
ommunicate with xenstore.<br><br></div><div>On a different note, is xenifac=
e driver compatible with the Xen GplPv drivers?<br></div><div><br></div>Tha=
nks<br></div>Venkat<br></div>

--001a11427064ff2b3105149f73a1--


--===============8808591584585464712==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
--===============8808591584585464712==--


From win-pv-devel-bounces@lists.xenproject.org Sun Apr 26 13:17:07 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Sun, 26 Apr 2015 13:17:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1YmMQk-0002ro-6E; Sun, 26 Apr 2015 13:17:06 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <venkatsanaka@gmail.com>) id 1YmLK0-0001nJ-LL
	for win-pv-devel@lists.xenproject.org; Sun, 26 Apr 2015 12:06:04 +0000
Received: from [85.158.137.68] by server-3.bemta-3.messagelabs.com id
	BE/23-11187-BA4DC355; Sun, 26 Apr 2015 12:06:03 +0000
X-Env-Sender: venkatsanaka@gmail.com
X-Msg-Ref: server-5.tower-31.messagelabs.com!1430049962!19993850!1
X-Originating-IP: [209.85.213.175]
X-SpamReason: No, hits=1.2 required=7.0 tests=HTML_20_30,HTML_MESSAGE,
	RCVD_BY_IP
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 25517 invoked from network); 26 Apr 2015 12:06:03 -0000
Received: from mail-ig0-f175.google.com (HELO mail-ig0-f175.google.com)
	(209.85.213.175)
	by server-5.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	26 Apr 2015 12:06:03 -0000
Received: by igbhj9 with SMTP id hj9so43942471igb.1
	for <win-pv-devel@lists.xenproject.org>;
	Sun, 26 Apr 2015 05:06:02 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
	h=mime-version:sender:from:date:message-id:subject:to:content-type;
	bh=W6sGdrD73Xu+VOqmR1+RPaJ+uICepu6UAhson72IrWs=;
	b=Eqmj7G+nG99ofqTVDV9h5y3yQyyyUJd5xB4xWV4PcU56m4xKx/Wqmm/zM8UeC3ete8
	7PwzpFm2CIrVWVybqfK4KEbvhWk3FYN2C4d5funIlEsBcM7BGFbVifLXRT3BQEEsYLt/
	Y7YQNKTqJqjMHTxcs7aco9+RNZJrpnDdQjuMwBHZQsk/BXg4iJELNrDGYQl0fcLawKU2
	5+oLxXKUAiAUzL8J1fER+HI0CoH31fFWN4VcyHN6Q6x3QixJzZC2yJPcwr5p5udV33eP
	0ojGg97jQpUptm+Bw05O2aMVdrS3lJq7fqfafl7Pgo/xNWG3gxqsctHo/ebe0jB+xtr1
	nYDA==
X-Received: by 10.107.170.135 with SMTP id g7mr8422974ioj.2.1430049962009;
	Sun, 26 Apr 2015 05:06:02 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.79.67.2 with HTTP; Sun, 26 Apr 2015 05:05:21 -0700 (PDT)
From: venkat sanaka <sanaka.venkat@gmail.com>
Date: Sun, 26 Apr 2015 20:05:21 +0800
X-Google-Sender-Auth: 0ipuryyxOULaOx3S1mzmapdoeXc
Message-ID: <CAFSZitKUOiRTkxybc4nQUjdVkSbg0j30758Oehg_QRTK1V8Xgg@mail.gmail.com>
To: win-pv-devel@lists.xenproject.org
X-Mailman-Approved-At: Sun, 26 Apr 2015 13:17:05 +0000
Subject: [win-pv-devel] Replacing existing Xen Windows GplPv
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============8808591584585464712=="
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

--===============8808591584585464712==
Content-Type: multipart/alternative; boundary=001a11427064ff2b3105149f73a1

--001a11427064ff2b3105149f73a1
Content-Type: text/plain; charset=ISO-8859-1

Hello,

I have an existing guest VM of windows 2008 server running on Xen windows
GplPv drivers. I am looking for any guidance document on how to replace
these drivers with the new PV drivers.

Basically, I need to use xeniface driver to communicate with xenstore.

On a different note, is xeniface driver compatible with the Xen GplPv
drivers?

Thanks
Venkat

--001a11427064ff2b3105149f73a1
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div><div><div><div>Hello,<br><br></div>I have an existing=
 guest VM of windows 2008 server running on Xen windows GplPv drivers. I am=
 looking for any guidance document on how to replace these drivers with the=
 new PV drivers.<br><br></div>Basically, I need to use xeniface driver to c=
ommunicate with xenstore.<br><br></div><div>On a different note, is xenifac=
e driver compatible with the Xen GplPv drivers?<br></div><div><br></div>Tha=
nks<br></div>Venkat<br></div>

--001a11427064ff2b3105149f73a1--


--===============8808591584585464712==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
--===============8808591584585464712==--


From win-pv-devel-bounces@lists.xenproject.org Mon Apr 27 08:05:05 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 27 Apr 2015 08:05:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Yme2J-0002mL-Bg; Mon, 27 Apr 2015 08:05:03 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <fabio.fantoni@m2r.biz>) id 1Yme2I-0002mG-8y
	for win-pv-devel@lists.xenproject.org; Mon, 27 Apr 2015 08:05:02 +0000
Received: from [85.158.139.211] by server-1.bemta-5.messagelabs.com id
	F4/5B-20070-DADED355; Mon, 27 Apr 2015 08:05:01 +0000
X-Env-Sender: fabio.fantoni@m2r.biz
X-Msg-Ref: server-6.tower-206.messagelabs.com!1430121900!10806001!1
X-Originating-IP: [209.85.212.179]
X-SpamReason: No, hits=0.3 required=7.0 tests=HTML_60_70,HTML_MESSAGE
X-StarScan-Received: 
X-StarScan-Version: 6.13.14; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 16580 invoked from network); 27 Apr 2015 08:05:00 -0000
Received: from mail-wi0-f179.google.com (HELO mail-wi0-f179.google.com)
	(209.85.212.179)
	by server-6.tower-206.messagelabs.com with RC4-SHA encrypted SMTP;
	27 Apr 2015 08:05:00 -0000
Received: by widdi4 with SMTP id di4so89032619wid.0
	for <win-pv-devel@lists.xenproject.org>;
	Mon, 27 Apr 2015 01:05:00 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20130820;
	h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to
	:subject:references:in-reply-to:content-type;
	bh=wQK7MTku8lW8X7oH9bmpuIm34pUiTr/s3fzg9Ms+xEU=;
	b=F7Y+iQ7xLEOrxx2Occk2XRFYh9vXSTabF1eRXZCiyDgNoDEZqAZNiRhqvHGJKbyJMS
	+O43PFCDpLyvpyREgEY+9pIIZ6oqd4eF1NRxBJYwtu3ToEhtkEzsLu6A/q0I8ESBiaIO
	HWjpbd2/Ja7cdacIlozRjeeH9/R9OfkbzfV/e+0hnGpBcMPcGlXI5r5tZlLI4iVPORmC
	YEUpo2YKGH05rVfsh8bmW/lihvK+w/A5zR1COVNCCPF647YHrUoqHaoU3nO0Bra19b5e
	u9Ke6CY0u4/yZ3fsmErvZCjSXZJM5O4DQ+o3isenY5wJKXGXjNhe0aR85eqj/CWSOyue
	GpfQ==
X-Gm-Message-State: ALoCoQm8AA1o1OVGxCe4/mmSm45WjvDBDS28s4m7Rr5Z+nHpe87eVG6AkcXXYjDx6HaJXfXz230C
X-Received: by 10.180.231.40 with SMTP id td8mr18739422wic.9.1430121900289;
	Mon, 27 Apr 2015 01:05:00 -0700 (PDT)
Received: from [192.168.1.11] (ip-73-126.sn2.eutelia.it. [83.211.73.126])
	by mx.google.com with ESMTPSA id
	em18sm4550183wjd.19.2015.04.27.01.04.58
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Mon, 27 Apr 2015 01:04:59 -0700 (PDT)
Message-ID: <553DEDBE.4020709@m2r.biz>
Date: Mon, 27 Apr 2015 10:05:18 +0200
From: Fabio Fantoni <fabio.fantoni@m2r.biz>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
	rv:31.0) Gecko/20100101 Thunderbird/31.6.0
MIME-Version: 1.0
To: venkat sanaka <sanaka.venkat@gmail.com>, win-pv-devel@lists.xenproject.org
References: <CAFSZitKUOiRTkxybc4nQUjdVkSbg0j30758Oehg_QRTK1V8Xgg@mail.gmail.com>
In-Reply-To: <CAFSZitKUOiRTkxybc4nQUjdVkSbg0j30758Oehg_QRTK1V8Xgg@mail.gmail.com>
Subject: Re: [win-pv-devel] Replacing existing Xen Windows GplPv
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============3201080265426554781=="
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

This is a multi-part message in MIME format.
--===============3201080265426554781==
Content-Type: multipart/alternative;
 boundary="------------010200020809050602010709"

This is a multi-part message in MIME format.
--------------010200020809050602010709
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit

Il 26/04/2015 14:05, venkat sanaka ha scritto:
> Hello,
>
> I have an existing guest VM of windows 2008 server running on Xen 
> windows GplPv drivers. I am looking for any guidance document on how 
> to replace these drivers with the new PV drivers.
>
> Basically, I need to use xeniface driver to communicate with xenstore.
>
> On a different note, is xeniface driver compatible with the Xen GplPv 
> drivers?

You must remove the old gplpv with its uninstall from control panel and 
uninstall_0.10.x.bat (from old gplpv site, needed for don't have blue 
screen after reboot), reboot windows and after install new winpv.

>
> Thanks
> Venkat
>
> ____________________________________________
> win-pv-devel mailing list
> win-pv-devel@lists.xenproject.org
> http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel


--------------010200020809050602010709
Content-Type: text/html; charset=windows-1252
Content-Transfer-Encoding: 7bit

<html>
  <head>
    <meta content="text/html; charset=windows-1252"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">Il 26/04/2015 14:05, venkat sanaka ha
      scritto:<br>
    </div>
    <blockquote
cite="mid:CAFSZitKUOiRTkxybc4nQUjdVkSbg0j30758Oehg_QRTK1V8Xgg@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div>
          <div>
            <div>
              <div>Hello,<br>
                <br>
              </div>
              I have an existing guest VM of windows 2008 server running
              on Xen windows GplPv drivers. I am looking for any
              guidance document on how to replace these drivers with the
              new PV drivers.<br>
              <br>
            </div>
            Basically, I need to use xeniface driver to communicate with
            xenstore.<br>
            <br>
          </div>
          <div>On a different note, is xeniface driver compatible with
            the Xen GplPv drivers?<br>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
    You must remove the old gplpv with its uninstall from control panel
    and uninstall_0.10.x.bat (from old gplpv site, needed for don't have
    blue screen after reboot), reboot windows and after install new
    winpv.<br>
    <br>
    <blockquote
cite="mid:CAFSZitKUOiRTkxybc4nQUjdVkSbg0j30758Oehg_QRTK1V8Xgg@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div>
          <div><br>
          </div>
          Thanks<br>
        </div>
        Venkat</div>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre wrap="">____________________________________________
win-pv-devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:win-pv-devel@lists.xenproject.org">win-pv-devel@lists.xenproject.org</a>
<a class="moz-txt-link-freetext" href="http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel">http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel</a></pre>
    </blockquote>
    <br>
  </body>
</html>

--------------010200020809050602010709--


--===============3201080265426554781==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
--===============3201080265426554781==--


From win-pv-devel-bounces@lists.xenproject.org Mon Apr 27 08:05:05 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 27 Apr 2015 08:05:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Yme2J-0002mL-Bg; Mon, 27 Apr 2015 08:05:03 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <fabio.fantoni@m2r.biz>) id 1Yme2I-0002mG-8y
	for win-pv-devel@lists.xenproject.org; Mon, 27 Apr 2015 08:05:02 +0000
Received: from [85.158.139.211] by server-1.bemta-5.messagelabs.com id
	F4/5B-20070-DADED355; Mon, 27 Apr 2015 08:05:01 +0000
X-Env-Sender: fabio.fantoni@m2r.biz
X-Msg-Ref: server-6.tower-206.messagelabs.com!1430121900!10806001!1
X-Originating-IP: [209.85.212.179]
X-SpamReason: No, hits=0.3 required=7.0 tests=HTML_60_70,HTML_MESSAGE
X-StarScan-Received: 
X-StarScan-Version: 6.13.14; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 16580 invoked from network); 27 Apr 2015 08:05:00 -0000
Received: from mail-wi0-f179.google.com (HELO mail-wi0-f179.google.com)
	(209.85.212.179)
	by server-6.tower-206.messagelabs.com with RC4-SHA encrypted SMTP;
	27 Apr 2015 08:05:00 -0000
Received: by widdi4 with SMTP id di4so89032619wid.0
	for <win-pv-devel@lists.xenproject.org>;
	Mon, 27 Apr 2015 01:05:00 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20130820;
	h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to
	:subject:references:in-reply-to:content-type;
	bh=wQK7MTku8lW8X7oH9bmpuIm34pUiTr/s3fzg9Ms+xEU=;
	b=F7Y+iQ7xLEOrxx2Occk2XRFYh9vXSTabF1eRXZCiyDgNoDEZqAZNiRhqvHGJKbyJMS
	+O43PFCDpLyvpyREgEY+9pIIZ6oqd4eF1NRxBJYwtu3ToEhtkEzsLu6A/q0I8ESBiaIO
	HWjpbd2/Ja7cdacIlozRjeeH9/R9OfkbzfV/e+0hnGpBcMPcGlXI5r5tZlLI4iVPORmC
	YEUpo2YKGH05rVfsh8bmW/lihvK+w/A5zR1COVNCCPF647YHrUoqHaoU3nO0Bra19b5e
	u9Ke6CY0u4/yZ3fsmErvZCjSXZJM5O4DQ+o3isenY5wJKXGXjNhe0aR85eqj/CWSOyue
	GpfQ==
X-Gm-Message-State: ALoCoQm8AA1o1OVGxCe4/mmSm45WjvDBDS28s4m7Rr5Z+nHpe87eVG6AkcXXYjDx6HaJXfXz230C
X-Received: by 10.180.231.40 with SMTP id td8mr18739422wic.9.1430121900289;
	Mon, 27 Apr 2015 01:05:00 -0700 (PDT)
Received: from [192.168.1.11] (ip-73-126.sn2.eutelia.it. [83.211.73.126])
	by mx.google.com with ESMTPSA id
	em18sm4550183wjd.19.2015.04.27.01.04.58
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Mon, 27 Apr 2015 01:04:59 -0700 (PDT)
Message-ID: <553DEDBE.4020709@m2r.biz>
Date: Mon, 27 Apr 2015 10:05:18 +0200
From: Fabio Fantoni <fabio.fantoni@m2r.biz>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
	rv:31.0) Gecko/20100101 Thunderbird/31.6.0
MIME-Version: 1.0
To: venkat sanaka <sanaka.venkat@gmail.com>, win-pv-devel@lists.xenproject.org
References: <CAFSZitKUOiRTkxybc4nQUjdVkSbg0j30758Oehg_QRTK1V8Xgg@mail.gmail.com>
In-Reply-To: <CAFSZitKUOiRTkxybc4nQUjdVkSbg0j30758Oehg_QRTK1V8Xgg@mail.gmail.com>
Subject: Re: [win-pv-devel] Replacing existing Xen Windows GplPv
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============3201080265426554781=="
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

This is a multi-part message in MIME format.
--===============3201080265426554781==
Content-Type: multipart/alternative;
 boundary="------------010200020809050602010709"

This is a multi-part message in MIME format.
--------------010200020809050602010709
Content-Type: text/plain; charset=windows-1252; format=flowed
Content-Transfer-Encoding: 7bit

Il 26/04/2015 14:05, venkat sanaka ha scritto:
> Hello,
>
> I have an existing guest VM of windows 2008 server running on Xen 
> windows GplPv drivers. I am looking for any guidance document on how 
> to replace these drivers with the new PV drivers.
>
> Basically, I need to use xeniface driver to communicate with xenstore.
>
> On a different note, is xeniface driver compatible with the Xen GplPv 
> drivers?

You must remove the old gplpv with its uninstall from control panel and 
uninstall_0.10.x.bat (from old gplpv site, needed for don't have blue 
screen after reboot), reboot windows and after install new winpv.

>
> Thanks
> Venkat
>
> ____________________________________________
> win-pv-devel mailing list
> win-pv-devel@lists.xenproject.org
> http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel


--------------010200020809050602010709
Content-Type: text/html; charset=windows-1252
Content-Transfer-Encoding: 7bit

<html>
  <head>
    <meta content="text/html; charset=windows-1252"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">Il 26/04/2015 14:05, venkat sanaka ha
      scritto:<br>
    </div>
    <blockquote
cite="mid:CAFSZitKUOiRTkxybc4nQUjdVkSbg0j30758Oehg_QRTK1V8Xgg@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div>
          <div>
            <div>
              <div>Hello,<br>
                <br>
              </div>
              I have an existing guest VM of windows 2008 server running
              on Xen windows GplPv drivers. I am looking for any
              guidance document on how to replace these drivers with the
              new PV drivers.<br>
              <br>
            </div>
            Basically, I need to use xeniface driver to communicate with
            xenstore.<br>
            <br>
          </div>
          <div>On a different note, is xeniface driver compatible with
            the Xen GplPv drivers?<br>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
    You must remove the old gplpv with its uninstall from control panel
    and uninstall_0.10.x.bat (from old gplpv site, needed for don't have
    blue screen after reboot), reboot windows and after install new
    winpv.<br>
    <br>
    <blockquote
cite="mid:CAFSZitKUOiRTkxybc4nQUjdVkSbg0j30758Oehg_QRTK1V8Xgg@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div>
          <div><br>
          </div>
          Thanks<br>
        </div>
        Venkat</div>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre wrap="">____________________________________________
win-pv-devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:win-pv-devel@lists.xenproject.org">win-pv-devel@lists.xenproject.org</a>
<a class="moz-txt-link-freetext" href="http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel">http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel</a></pre>
    </blockquote>
    <br>
  </body>
</html>

--------------010200020809050602010709--


--===============3201080265426554781==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel
--===============3201080265426554781==--


From win-pv-devel-bounces@lists.xenproject.org Mon Apr 27 10:19:23 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 27 Apr 2015 10:19:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Ymg8J-0005VD-25; Mon, 27 Apr 2015 10:19:23 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <fabio.fantoni@m2r.biz>) id 1Ymg8I-0005V4-3u
	for win-pv-devel@lists.xenproject.org; Mon, 27 Apr 2015 10:19:22 +0000
Received: from [85.158.137.68] by server-4.bemta-3.messagelabs.com id
	AA/1D-18531-92D0E355; Mon, 27 Apr 2015 10:19:21 +0000
X-Env-Sender: fabio.fantoni@m2r.biz
X-Msg-Ref: server-12.tower-31.messagelabs.com!1430129960!20117630!1
X-Originating-IP: [74.125.82.53]
X-SpamReason: No, hits=2.2 required=7.0 tests=BIZ_TLD,BODY_RANDOM_LONG
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 9240 invoked from network); 27 Apr 2015 10:19:20 -0000
Received: from mail-wg0-f53.google.com (HELO mail-wg0-f53.google.com)
	(74.125.82.53)
	by server-12.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	27 Apr 2015 10:19:20 -0000
Received: by wgin8 with SMTP id n8so110469948wgi.0
	for <win-pv-devel@lists.xenproject.org>;
	Mon, 27 Apr 2015 03:19:19 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20130820;
	h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to
	:subject:references:in-reply-to:content-type
	:content-transfer-encoding;
	bh=+wbYieQQjZeV98lP2HJL2aehJeeb1EmUah8re3cJaFc=;
	b=Pf48btRziToVwbcP0TJznoW/o/rUXjkq8585UwlgfA6j+TBDbDB6euU8Rk5hARq/Sf
	x8Y/u4OKq9YBkRvBD9k/4xcJuMsuWwb4e7V5fdqmDQi5ucZLW9tf2U/HQlBSK8f2rdGl
	ByVCe3n6lCymcuCNQECSbjI0/9pYJquPPyc3NfUOeFRjzpUJ5u6ltRWQV1i+kK8SZ3ZD
	JdSB9FWrOXKeQ6WJbWoiawGiy09/bs4vY/3mYgSWilbosfUDW3gqMU33y9axhv1olnAV
	08QqkcYWcacTLE+HjgxCU65DC0PaaTC740D2AZ0uvyAR9RWEpgH8phhVz9rPD0Wu1m6I
	0T7w==
X-Gm-Message-State: ALoCoQlPtFQqn32LiSJ3EnCNSwq7fsuExVqY8dmYqtA32N0Aoh8kPTNdXUk+7Z0SLybcTKErlFZu
X-Received: by 10.194.61.171 with SMTP id q11mr20402651wjr.110.1430129959751; 
	Mon, 27 Apr 2015 03:19:19 -0700 (PDT)
Received: from [192.168.1.11] (ip-73-126.sn2.eutelia.it. [83.211.73.126])
	by mx.google.com with ESMTPSA id
	v20sm20475154wjr.49.2015.04.27.03.19.17
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Mon, 27 Apr 2015 03:19:18 -0700 (PDT)
Message-ID: <553E0D3A.1010509@m2r.biz>
Date: Mon, 27 Apr 2015 12:19:38 +0200
From: Fabio Fantoni <fabio.fantoni@m2r.biz>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
	rv:31.0) Gecko/20100101 Thunderbird/31.6.0
MIME-Version: 1.0
To: Paul Durrant <Paul.Durrant@citrix.com>, 
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
References: <55192CB4.7030802@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585EFDA@AMSPEX01CL01.citrite.net>
	<551C0400.7090908@m2r.biz> <551D4B03.80105@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD0258611B1@AMSPEX01CL01.citrite.net>
	<553A5711.6020405@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD0258A52BC@AMSPEX01CL01.citrite.net>
In-Reply-To: <9AAE0902D5BC7E449B7C8E4E778ABCD0258A52BC@AMSPEX01CL01.citrite.net>
Subject: Re: [win-pv-devel] Multiple save/restore failing with windows 8.1
	64 bit domU
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Il 24/04/2015 17:01, Paul Durrant ha scritto:
>> -----Original Message-----
>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
>> Sent: 24 April 2015 15:46
>> To: Paul Durrant; win-pv-devel@lists.xenproject.org
>> Subject: Re: Multiple save/restore failing with windows 8.1 64 bit domU
>>
>> Il 02/04/2015 16:41, Paul Durrant ha scritto:
>>>> -----Original Message-----
>>>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
>>>> Sent: 02 April 2015 14:58
>>>> To: Paul Durrant; win-pv-devel@lists.xenproject.org
>>>> Subject: Re: Multiple save/restore failing with windows 8.1 64 bit domU
>>>>
>>>> Il 01/04/2015 16:43, Fabio Fantoni ha scritto:
>>>>> Il 01/04/2015 15:21, Paul Durrant ha scritto:
>>>>>>> -----Original Message-----
>>>>>>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
>>>>>>> Sent: 30 March 2015 12:00
>>>>>>> To: win-pv-devel@lists.xenproject.org
>>>>>>> Cc: Paul Durrant
>>>>>>> Subject: Multiple save/restore failing with windows 8.1 64 bit domU
>>>>>>>
>>>>>>> I tried 2 times multiple save/restore (start domU, use it for some
>>>>>>> minutes, do a save restore, use it, do another save/restore) and in
>>>>>>> both
>>>>>>> case second save failed:
>>>>>>>
>>>>>> The patch I posted this morning should fix this one for you.
>>>>>>
>>>>>>      Paul
>>>>> Thanks.
>>>>>
>>>>> Today I tried windows 10 pro 64 bit technical preview, clean install,
>>>>> pv drivers (today's build) install ok but after restore display
>>>>> (connecting with spice) seems freezed, waited 4-5 minutes without
>>>>> changes and after I tried also xl shudown but do nothing.
>>>>> DomU have pv disk and network working, xl shutdown (before try
>>>>> save/restore) is working.
>>>> I updated pv drivers to today build and first save/restore now seems was
>>>> working also in Windows 10 but still not the multiple (seem only partial
>>>> solved), xl shutdown this time worked but it tooks some minutes.
>>>> In attachments domU's qemu logs with trace enabled.
>>>>
>>> It looks like your 2nd save restore worked... certainly log.1 shows the VM
>> coming back from suspend and then going into suspend. The drivers basically
>> seem to be behaving as expected.
>>>     Paul
>> Thanks for fix the first problem, the second remained seems related to
>> save/restore with qxl.
>> With windows 7 freeze for some seconds instead and make me crazy trying
>> to found the cause for 1-2 years without result :(
>> With windows 7 temp. freeze after latest xenvif changes something is
>> changed... after restore freeze of some seconds in qemu log show pv
>> drivers lines from:
>>> xen_platform_log xen platform: XENVIF|PdoRequestEject:
>>> FFFFFA8003067540 (0)
> Hmm. That suggests that, when XENVIF is resuming, for some reason it has decided the backend has gone offline. Not sure why that would happen unless there's some sort of race with net attach.
>
>> And windows popup appair showing that Xen PV Network Device #0 was
>> removed (even if finished the second freeze network return working).
>> Is it normal?
>>
>> I have setted fixed mac address in domU's xl cfg, so should not saw
>> different netcard after save/restore FWIK
>>
>>
>> qemu log (with various trace and debug active) in attachment, first
>> freeze of some seconds was before this line:
>>> xen_platform_log xen platform: XENVIF|PdoRequestEject:
>>> FFFFFA8003067540 (0)
>> And second freeze near was before this line:
>>> xen_platform_log xen platform: XENNET|DriverEntry: XENNET 8.0.0 (18)
>>> (24.03.2015)
>> And third freeze after xl shutdown and before this line:
>>> xen_platform_log xen platform: XEN|SystemPowerStateCallback: <- S0
>> Is there a way to know if there are unexpected case in pv drivers on
>> restore that can cause the freeze or not?
>>
>  From that, not really. Do you know if the guest vcpus are busy during the freeze? Do you have any xentrace analysis suggesting what the guest is doing?
>
>    Paul

I already debugged a crash with gdb but I'm unable to do useful debug 
with temporary freeze :(
During domUs freeze I saw with xentop that domU's cpu sec increasing and 
cpu(%) at 200 (probably for both vcpus at 100%)
I don't have knowledge for good xen debug to find on what instructions 
freeze and/or what is the unexpected case that cause the problem.
Where I can find an howto for do more useful debugging for this case? 
(if exists)

Thanks for any reply and sorry for my bad english.

>>>> If you more informations/tests tell me and I'll post them.
>>>>
>>>> Thanks for any reply and sorry for my bad english.
>>>>
>>>>> About save/restore on W8 I tried now with new pv build and with first
>>>>> save/restore is all ok but with on second now xl save/restore
>>>>> completes correctly but after restore freeze same as the W10 one
>>>>> (since first save/restore).
>>>>>
>>>>> If you more informations/tests tell me and I'll post them.
>>>>>
>>>>> Thanks for any reply and sorry for my bad english.
>>>>>
>>>>>
>>>>>
>>>>>>>> xl -vvv save W8 /mnt/vm/save/W8
>>>>>>>> libxl: debug: libxl.c:6705:libxl_retrieve_domain_configuration: no
>>>>>>>> vtpm from xenstore for domain 40
>>>>>>>> libxl: debug: libxl.c:6707:libxl_retrieve_domain_configuration: no pci
>>>>>>>> from xenstore for domain 40
>>>>>>>> Saving to /mnt/vm/save/W8 new xl format (info 0x1/0x0/1941)
>>>>>>>> libxl: debug: libxl.c:953:libxl_domain_suspend: ao 0x68d910: create:
>>>>>>>> how=(nil) callback=(nil) poller=0x68d970
>>>>>>>> libxl: debug: libxl_dom.c:1573:libxl__toolstack_save: domain=40
>>>>>>>> toolstack data size=49
>>>>>>>> libxl: debug: libxl.c:975:libxl_domain_suspend: ao 0x68d910:
>>>>>>>> inprogress: poller=0x68d970, flags=i
>>>>>>>> libxl-save-helper: debug: starting save: Success
>>>>>>>> xc: detail: xc_domain_save: starting save of domid 40
>>>>>>>> libxl: debug: libxl_dom.c:1278:domain_suspend_callback_common:
>>>> issuing
>>>>>>>> PVHVM suspend request via XenBus control node
>>>>>>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
>>>>>>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown
>> token=3/0:
>>>>>>> register
>>>>>>>> slotnum=3
>>>>>>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68dae0
>>>>>>>> wpath=/local/domain/40/control/shutdown token=3/0: event
>>>>>>>> epath=/local/domain/40/control/shutdown
>>>>>>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
>>>>>>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown
>> token=3/0:
>>>>>>>> deregister slotnum=3
>>>>>>>> libxl: debug:
>>>>>>>>
>> libxl_dom.c:1360:domain_suspend_common_pvcontrol_suspending:
>>>> guest
>>>>>>>> acknowledged suspend request
>>>>>>>> libxl: debug:
>> libxl_dom.c:1379:domain_suspend_common_wait_guest:
>>>>>>> wait
>>>>>>>> for the guest to suspend
>>>>>>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
>>>>>>>> w=0x68daf8 wpath=@releaseDomain token=3/1: register slotnum=3
>>>>>>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68daf8
>>>>>>>> wpath=@releaseDomain token=3/1: event epath=@releaseDomain
>>>>>>>> libxl: error:
>> libxl_dom.c:1451:suspend_common_wait_guest_timeout:
>>>>>>>> guest did not suspend, timed out
>>>>>>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
>>>>>>>> w=0x68daf8 wpath=@releaseDomain token=3/1: deregister
>> slotnum=3
>>>>>>>> xc: error: Suspend request failed: Internal error
>>>>>>>> xc: error: Domain appears not to have suspended: Internal error
>>>>>>>> libxl-save-helper: xc_domain_save.c:2077: xc_domain_save:
>> Assertion
>>>>>>>> `rc' failed.
>>>>>>>> libxl: error: libxl_utils.c:430:libxl_read_exactly: file/stream
>>>>>>>> truncated reading ipc msg header from domain 40 save/restore
>> helper
>>>>>>>> stdout pipe
>>>>>>>> libxl: error: libxl_exec.c:129:libxl_report_child_exitstatus: domain
>>>>>>>> 40 save/restore helper [-1] died due to fatal signal Aborted
>>>>>>>> libxl: error: libxl_dom.c:2035:remus_teardown_done: Remus: failed
>> to
>>>>>>>> teardown device for guest with domid 40, rc -3
>>>>>>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
>>>>>>>> complete, rc=-3
>>>>>>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910:
>>>>>>>> destroy
>>>>>>>> Failed to save domain, resuming domain
>>>>>>>> libxl: debug: libxl.c:542:libxl_domain_resume: ao 0x68d910: create:
>>>>>>>> how=(nil) callback=(nil) poller=0x68d970
>>>>>>>> xc: error: Dom 40 not suspended: (shutdown 0, reason 255): Internal
>>>>>>>> error
>>>>>>>> libxl: error: libxl.c:511:libxl__domain_resume: xc_domain_resume
>>>>>>>> failed for domain 40: Invalid argument
>>>>>>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
>>>>>>>> complete, rc=-3
>>>>>>>> libxl: debug: libxl.c:545:libxl_domain_resume: ao 0x68d910:
>>>>>>>> inprogress: poller=0x68d970, flags=ic
>>>>>>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910:
>>>>>>>> destroy
>>>>>>>> xc: debug: hypercall buffer: total allocations:29 total releases:29
>>>>>>>> xc: debug: hypercall buffer: current allocations:0 maximum
>>>>>>>> allocations:2
>>>>>>>> xc: debug: hypercall buffer: cache current size:2
>>>>>>>> xc: debug: hypercall buffer: cache hits:20 misses:2 toobig:7
>>>>>>> If you need more informations/tests tell me and I'll post them.
>>>>>>>
>>>>>>> Thanks for any reply and sorry for my bad english.


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

From win-pv-devel-bounces@lists.xenproject.org Mon Apr 27 10:19:23 2015
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 27 Apr 2015 10:19:23 +0000
Received: from localhost ([127.0.0.1] helo=lists.xen.org)
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1Ymg8J-0005VD-25; Mon, 27 Apr 2015 10:19:23 +0000
Received: from mail6.bemta3.messagelabs.com ([195.245.230.39])
	by lists.xen.org with esmtp (Exim 4.72)
	(envelope-from <fabio.fantoni@m2r.biz>) id 1Ymg8I-0005V4-3u
	for win-pv-devel@lists.xenproject.org; Mon, 27 Apr 2015 10:19:22 +0000
Received: from [85.158.137.68] by server-4.bemta-3.messagelabs.com id
	AA/1D-18531-92D0E355; Mon, 27 Apr 2015 10:19:21 +0000
X-Env-Sender: fabio.fantoni@m2r.biz
X-Msg-Ref: server-12.tower-31.messagelabs.com!1430129960!20117630!1
X-Originating-IP: [74.125.82.53]
X-SpamReason: No, hits=2.2 required=7.0 tests=BIZ_TLD,BODY_RANDOM_LONG
X-StarScan-Received: 
X-StarScan-Version: 6.13.6; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 9240 invoked from network); 27 Apr 2015 10:19:20 -0000
Received: from mail-wg0-f53.google.com (HELO mail-wg0-f53.google.com)
	(74.125.82.53)
	by server-12.tower-31.messagelabs.com with RC4-SHA encrypted SMTP;
	27 Apr 2015 10:19:20 -0000
Received: by wgin8 with SMTP id n8so110469948wgi.0
	for <win-pv-devel@lists.xenproject.org>;
	Mon, 27 Apr 2015 03:19:19 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=1e100.net; s=20130820;
	h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to
	:subject:references:in-reply-to:content-type
	:content-transfer-encoding;
	bh=+wbYieQQjZeV98lP2HJL2aehJeeb1EmUah8re3cJaFc=;
	b=Pf48btRziToVwbcP0TJznoW/o/rUXjkq8585UwlgfA6j+TBDbDB6euU8Rk5hARq/Sf
	x8Y/u4OKq9YBkRvBD9k/4xcJuMsuWwb4e7V5fdqmDQi5ucZLW9tf2U/HQlBSK8f2rdGl
	ByVCe3n6lCymcuCNQECSbjI0/9pYJquPPyc3NfUOeFRjzpUJ5u6ltRWQV1i+kK8SZ3ZD
	JdSB9FWrOXKeQ6WJbWoiawGiy09/bs4vY/3mYgSWilbosfUDW3gqMU33y9axhv1olnAV
	08QqkcYWcacTLE+HjgxCU65DC0PaaTC740D2AZ0uvyAR9RWEpgH8phhVz9rPD0Wu1m6I
	0T7w==
X-Gm-Message-State: ALoCoQlPtFQqn32LiSJ3EnCNSwq7fsuExVqY8dmYqtA32N0Aoh8kPTNdXUk+7Z0SLybcTKErlFZu
X-Received: by 10.194.61.171 with SMTP id q11mr20402651wjr.110.1430129959751; 
	Mon, 27 Apr 2015 03:19:19 -0700 (PDT)
Received: from [192.168.1.11] (ip-73-126.sn2.eutelia.it. [83.211.73.126])
	by mx.google.com with ESMTPSA id
	v20sm20475154wjr.49.2015.04.27.03.19.17
	(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
	Mon, 27 Apr 2015 03:19:18 -0700 (PDT)
Message-ID: <553E0D3A.1010509@m2r.biz>
Date: Mon, 27 Apr 2015 12:19:38 +0200
From: Fabio Fantoni <fabio.fantoni@m2r.biz>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64;
	rv:31.0) Gecko/20100101 Thunderbird/31.6.0
MIME-Version: 1.0
To: Paul Durrant <Paul.Durrant@citrix.com>, 
	"win-pv-devel@lists.xenproject.org" <win-pv-devel@lists.xenproject.org>
References: <55192CB4.7030802@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD02585EFDA@AMSPEX01CL01.citrite.net>
	<551C0400.7090908@m2r.biz> <551D4B03.80105@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD0258611B1@AMSPEX01CL01.citrite.net>
	<553A5711.6020405@m2r.biz>
	<9AAE0902D5BC7E449B7C8E4E778ABCD0258A52BC@AMSPEX01CL01.citrite.net>
In-Reply-To: <9AAE0902D5BC7E449B7C8E4E778ABCD0258A52BC@AMSPEX01CL01.citrite.net>
Subject: Re: [win-pv-devel] Multiple save/restore failing with windows 8.1
	64 bit domU
X-BeenThere: win-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.13
Precedence: list
List-Id: Developer list for the Windows PV Drivers subproject
	<win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <http://lists.xenproject.org/cgi-bin/mailman/options/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:win-pv-devel@lists.xenproject.org>
List-Help: <mailto:win-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel>,
	<mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Sender: win-pv-devel-bounces@lists.xenproject.org
Errors-To: win-pv-devel-bounces@lists.xenproject.org

Il 24/04/2015 17:01, Paul Durrant ha scritto:
>> -----Original Message-----
>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
>> Sent: 24 April 2015 15:46
>> To: Paul Durrant; win-pv-devel@lists.xenproject.org
>> Subject: Re: Multiple save/restore failing with windows 8.1 64 bit domU
>>
>> Il 02/04/2015 16:41, Paul Durrant ha scritto:
>>>> -----Original Message-----
>>>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
>>>> Sent: 02 April 2015 14:58
>>>> To: Paul Durrant; win-pv-devel@lists.xenproject.org
>>>> Subject: Re: Multiple save/restore failing with windows 8.1 64 bit domU
>>>>
>>>> Il 01/04/2015 16:43, Fabio Fantoni ha scritto:
>>>>> Il 01/04/2015 15:21, Paul Durrant ha scritto:
>>>>>>> -----Original Message-----
>>>>>>> From: Fabio Fantoni [mailto:fabio.fantoni@m2r.biz]
>>>>>>> Sent: 30 March 2015 12:00
>>>>>>> To: win-pv-devel@lists.xenproject.org
>>>>>>> Cc: Paul Durrant
>>>>>>> Subject: Multiple save/restore failing with windows 8.1 64 bit domU
>>>>>>>
>>>>>>> I tried 2 times multiple save/restore (start domU, use it for some
>>>>>>> minutes, do a save restore, use it, do another save/restore) and in
>>>>>>> both
>>>>>>> case second save failed:
>>>>>>>
>>>>>> The patch I posted this morning should fix this one for you.
>>>>>>
>>>>>>      Paul
>>>>> Thanks.
>>>>>
>>>>> Today I tried windows 10 pro 64 bit technical preview, clean install,
>>>>> pv drivers (today's build) install ok but after restore display
>>>>> (connecting with spice) seems freezed, waited 4-5 minutes without
>>>>> changes and after I tried also xl shudown but do nothing.
>>>>> DomU have pv disk and network working, xl shutdown (before try
>>>>> save/restore) is working.
>>>> I updated pv drivers to today build and first save/restore now seems was
>>>> working also in Windows 10 but still not the multiple (seem only partial
>>>> solved), xl shutdown this time worked but it tooks some minutes.
>>>> In attachments domU's qemu logs with trace enabled.
>>>>
>>> It looks like your 2nd save restore worked... certainly log.1 shows the VM
>> coming back from suspend and then going into suspend. The drivers basically
>> seem to be behaving as expected.
>>>     Paul
>> Thanks for fix the first problem, the second remained seems related to
>> save/restore with qxl.
>> With windows 7 freeze for some seconds instead and make me crazy trying
>> to found the cause for 1-2 years without result :(
>> With windows 7 temp. freeze after latest xenvif changes something is
>> changed... after restore freeze of some seconds in qemu log show pv
>> drivers lines from:
>>> xen_platform_log xen platform: XENVIF|PdoRequestEject:
>>> FFFFFA8003067540 (0)
> Hmm. That suggests that, when XENVIF is resuming, for some reason it has decided the backend has gone offline. Not sure why that would happen unless there's some sort of race with net attach.
>
>> And windows popup appair showing that Xen PV Network Device #0 was
>> removed (even if finished the second freeze network return working).
>> Is it normal?
>>
>> I have setted fixed mac address in domU's xl cfg, so should not saw
>> different netcard after save/restore FWIK
>>
>>
>> qemu log (with various trace and debug active) in attachment, first
>> freeze of some seconds was before this line:
>>> xen_platform_log xen platform: XENVIF|PdoRequestEject:
>>> FFFFFA8003067540 (0)
>> And second freeze near was before this line:
>>> xen_platform_log xen platform: XENNET|DriverEntry: XENNET 8.0.0 (18)
>>> (24.03.2015)
>> And third freeze after xl shutdown and before this line:
>>> xen_platform_log xen platform: XEN|SystemPowerStateCallback: <- S0
>> Is there a way to know if there are unexpected case in pv drivers on
>> restore that can cause the freeze or not?
>>
>  From that, not really. Do you know if the guest vcpus are busy during the freeze? Do you have any xentrace analysis suggesting what the guest is doing?
>
>    Paul

I already debugged a crash with gdb but I'm unable to do useful debug 
with temporary freeze :(
During domUs freeze I saw with xentop that domU's cpu sec increasing and 
cpu(%) at 200 (probably for both vcpus at 100%)
I don't have knowledge for good xen debug to find on what instructions 
freeze and/or what is the unexpected case that cause the problem.
Where I can find an howto for do more useful debugging for this case? 
(if exists)

Thanks for any reply and sorry for my bad english.

>>>> If you more informations/tests tell me and I'll post them.
>>>>
>>>> Thanks for any reply and sorry for my bad english.
>>>>
>>>>> About save/restore on W8 I tried now with new pv build and with first
>>>>> save/restore is all ok but with on second now xl save/restore
>>>>> completes correctly but after restore freeze same as the W10 one
>>>>> (since first save/restore).
>>>>>
>>>>> If you more informations/tests tell me and I'll post them.
>>>>>
>>>>> Thanks for any reply and sorry for my bad english.
>>>>>
>>>>>
>>>>>
>>>>>>>> xl -vvv save W8 /mnt/vm/save/W8
>>>>>>>> libxl: debug: libxl.c:6705:libxl_retrieve_domain_configuration: no
>>>>>>>> vtpm from xenstore for domain 40
>>>>>>>> libxl: debug: libxl.c:6707:libxl_retrieve_domain_configuration: no pci
>>>>>>>> from xenstore for domain 40
>>>>>>>> Saving to /mnt/vm/save/W8 new xl format (info 0x1/0x0/1941)
>>>>>>>> libxl: debug: libxl.c:953:libxl_domain_suspend: ao 0x68d910: create:
>>>>>>>> how=(nil) callback=(nil) poller=0x68d970
>>>>>>>> libxl: debug: libxl_dom.c:1573:libxl__toolstack_save: domain=40
>>>>>>>> toolstack data size=49
>>>>>>>> libxl: debug: libxl.c:975:libxl_domain_suspend: ao 0x68d910:
>>>>>>>> inprogress: poller=0x68d970, flags=i
>>>>>>>> libxl-save-helper: debug: starting save: Success
>>>>>>>> xc: detail: xc_domain_save: starting save of domid 40
>>>>>>>> libxl: debug: libxl_dom.c:1278:domain_suspend_callback_common:
>>>> issuing
>>>>>>>> PVHVM suspend request via XenBus control node
>>>>>>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
>>>>>>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown
>> token=3/0:
>>>>>>> register
>>>>>>>> slotnum=3
>>>>>>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68dae0
>>>>>>>> wpath=/local/domain/40/control/shutdown token=3/0: event
>>>>>>>> epath=/local/domain/40/control/shutdown
>>>>>>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
>>>>>>>> w=0x68dae0 wpath=/local/domain/40/control/shutdown
>> token=3/0:
>>>>>>>> deregister slotnum=3
>>>>>>>> libxl: debug:
>>>>>>>>
>> libxl_dom.c:1360:domain_suspend_common_pvcontrol_suspending:
>>>> guest
>>>>>>>> acknowledged suspend request
>>>>>>>> libxl: debug:
>> libxl_dom.c:1379:domain_suspend_common_wait_guest:
>>>>>>> wait
>>>>>>>> for the guest to suspend
>>>>>>>> libxl: debug: libxl_event.c:577:libxl__ev_xswatch_register: watch
>>>>>>>> w=0x68daf8 wpath=@releaseDomain token=3/1: register slotnum=3
>>>>>>>> libxl: debug: libxl_event.c:514:watchfd_callback: watch w=0x68daf8
>>>>>>>> wpath=@releaseDomain token=3/1: event epath=@releaseDomain
>>>>>>>> libxl: error:
>> libxl_dom.c:1451:suspend_common_wait_guest_timeout:
>>>>>>>> guest did not suspend, timed out
>>>>>>>> libxl: debug: libxl_event.c:615:libxl__ev_xswatch_deregister: watch
>>>>>>>> w=0x68daf8 wpath=@releaseDomain token=3/1: deregister
>> slotnum=3
>>>>>>>> xc: error: Suspend request failed: Internal error
>>>>>>>> xc: error: Domain appears not to have suspended: Internal error
>>>>>>>> libxl-save-helper: xc_domain_save.c:2077: xc_domain_save:
>> Assertion
>>>>>>>> `rc' failed.
>>>>>>>> libxl: error: libxl_utils.c:430:libxl_read_exactly: file/stream
>>>>>>>> truncated reading ipc msg header from domain 40 save/restore
>> helper
>>>>>>>> stdout pipe
>>>>>>>> libxl: error: libxl_exec.c:129:libxl_report_child_exitstatus: domain
>>>>>>>> 40 save/restore helper [-1] died due to fatal signal Aborted
>>>>>>>> libxl: error: libxl_dom.c:2035:remus_teardown_done: Remus: failed
>> to
>>>>>>>> teardown device for guest with domid 40, rc -3
>>>>>>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
>>>>>>>> complete, rc=-3
>>>>>>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910:
>>>>>>>> destroy
>>>>>>>> Failed to save domain, resuming domain
>>>>>>>> libxl: debug: libxl.c:542:libxl_domain_resume: ao 0x68d910: create:
>>>>>>>> how=(nil) callback=(nil) poller=0x68d970
>>>>>>>> xc: error: Dom 40 not suspended: (shutdown 0, reason 255): Internal
>>>>>>>> error
>>>>>>>> libxl: error: libxl.c:511:libxl__domain_resume: xc_domain_resume
>>>>>>>> failed for domain 40: Invalid argument
>>>>>>>> libxl: debug: libxl_event.c:1766:libxl__ao_complete: ao 0x68d910:
>>>>>>>> complete, rc=-3
>>>>>>>> libxl: debug: libxl.c:545:libxl_domain_resume: ao 0x68d910:
>>>>>>>> inprogress: poller=0x68d970, flags=ic
>>>>>>>> libxl: debug: libxl_event.c:1738:libxl__ao__destroy: ao 0x68d910:
>>>>>>>> destroy
>>>>>>>> xc: debug: hypercall buffer: total allocations:29 total releases:29
>>>>>>>> xc: debug: hypercall buffer: current allocations:0 maximum
>>>>>>>> allocations:2
>>>>>>>> xc: debug: hypercall buffer: cache current size:2
>>>>>>>> xc: debug: hypercall buffer: cache hits:20 misses:2 toobig:7
>>>>>>> If you need more informations/tests tell me and I'll post them.
>>>>>>>
>>>>>>> Thanks for any reply and sorry for my bad english.


_______________________________________________
win-pv-devel mailing list
win-pv-devel@lists.xenproject.org
http://lists.xenproject.org/cgi-bin/mailman/listinfo/win-pv-devel

