From win-pv-devel-bounces@lists.xenproject.org Tue Aug 03 14:38:59 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 03 Aug 2021 14:38:59 +0000
Received: from list by lists.xenproject.org with outflank-mailman.163545.299572 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mAvZK-0006BJ-1o; Tue, 03 Aug 2021 14:38:58 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 163545.299572; Tue, 03 Aug 2021 14:38:58 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mAvZJ-0006BB-UY; Tue, 03 Aug 2021 14:38:57 +0000
Received: by outflank-mailman (input) for mailman id 163545;
 Tue, 03 Aug 2021 14:38:56 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=bqjG=M2=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mAvZI-0006As-Ac
 for win-pv-devel@lists.xenproject.org; Tue, 03 Aug 2021 14:38:56 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 87368aae-f468-11eb-9ad4-12813bfff9fa;
 Tue, 03 Aug 2021 14:38:55 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 87368aae-f468-11eb-9ad4-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628001535;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=Mpc7vynLitQrWhXwv2YPlHUhqj0REGzdDwRPBf05oWg=;
  b=Sji+GohwNKs7c0lvQvzOaTVg0Y9RM1J+o1b6+NjxeBaeKIprkU43lv6R
   8TnUKbxTAZlTcSyX7sy08QI1n/2ZKSaj25IcquUruWhOAV9BHuOuYusfc
   7UHpeTPdw786Dzjn1TqXDuJA09HTO9GmHi0z7r5lv4xpaSwychXNGcjpE
   M=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: bsj+AWuMcSd/HNXdiJAyyyDc0DKoidnYuMXuGWXtAqtg2mQTsmWvVV9m0bdYmMU5LF9TzDO+Fg
 DRV3HwOZ320a80DJvG6RKlt2dWNwkeX8Byfrz3f9A+p8HOzeCfhg1aR3mUfRp2uq+3skAOGuzo
 jsa476XEvH889p0+H8YAOx0+f2zFhOe8tjHFWJfNF4XIoL5DPnRnTixAwhedSx2q1O6SF1ZSDG
 aAGYSnwCWO5yWc6FLRFX6j6IeeCtwV6zsT+AV1IGFpPlF3BepmEzCaHWrYc2GLffxzq8Hz2hzy
 sjiO6bQdDakK3YnJzI8GhjLk
X-SBRS: 5.1
X-MesageID: 51361746
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:oJUB1a2CIsIL2ezD2tsfLAqjBL4kLtp133Aq2lEZdPRUGvb3qy
 nIpoV+6faUskd2ZJhOo7C90cW7LU80lqQFhLX5X43SPzUO0VHAROoJgLcKqweQfBEWndQ96U
 4PScdD4aXLfDpHsfo=
X-IronPort-AV: E=Sophos;i="5.84,291,1620705600"; 
   d="scan'208";a="51361746"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH] Fix compile on EWDK 22000
Date: Tue, 3 Aug 2021 15:38:48 +0100
Message-ID: <20210803143848.1157-1-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- Adds warnings 4061 and 4062 to ignore list
- Defines signtool file digest as SHA256
- Adds alias for GetProjectInfoForReference target
  It appears that VS2019/EWDK22000 changed a target name, and without the alias
  the build will fail.

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 vs2019/package/package.vcxproj             | 5 +++++
 vs2019/version/version.vcxproj             | 6 ++++++
 vs2019/xennet/xennet.vcxproj               | 7 ++++++-
 vs2019/xennet_coinst/xennet_coinst.vcxproj | 5 +++++
 4 files changed, 22 insertions(+), 1 deletion(-)

diff --git a/vs2019/package/package.vcxproj b/vs2019/package/package.vcxproj
index dd794b5..e4c6f0f 100644
--- a/vs2019/package/package.vcxproj
+++ b/vs2019/package/package.vcxproj
@@ -56,6 +56,11 @@
   <ItemGroup>
     <PackageFiles Include="$(OutDir)\$(ProjectName)\*" />
   </ItemGroup>
+  <ItemDefinitionGroup>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
+  </ItemDefinitionGroup>
   <Target Name="Archive" AfterTargets="TestSign">
     <Copy
        SourceFiles="@(PackageFiles)"
diff --git a/vs2019/version/version.vcxproj b/vs2019/version/version.vcxproj
index 9d149d0..b6ec6f3 100644
--- a/vs2019/version/version.vcxproj
+++ b/vs2019/version/version.vcxproj
@@ -13,4 +13,10 @@
   <Target Name="Build">
     <Exec Command="powershell.exe -ExecutionPolicy Bypass -NoProfile -NonInteractive -File $(Script) $(Platform) $(SolutionDir) $(IncludeDir) $(SourceDir)" />
   </Target>
+  <Target Name="GetProjectInfoForReference"
+          Returns="@(ProjectInfoForReference)">
+    <ItemGroup>
+      <ProjectInfoForReference Include="@(LibFullPath)" />
+    </ItemGroup>
+  </Target>
 </Project>
diff --git a/vs2019/xennet/xennet.vcxproj b/vs2019/xennet/xennet.vcxproj
index 027dc4a..beb5bb3 100644
--- a/vs2019/xennet/xennet.vcxproj
+++ b/vs2019/xennet/xennet.vcxproj
@@ -26,7 +26,7 @@
       <IntrinsicFunctions>true</IntrinsicFunctions>
       <AdditionalIncludeDirectories>$(WindowsSdkDir)\include\km;..\..\include;..\..\include\xen;</AdditionalIncludeDirectories>
       <WarningLevel>EnableAllWarnings</WarningLevel>
-      <DisableSpecificWarnings>4464;4711;4770;4548;4820;4668;4255;5045;6001;6054;26451;28160;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <DisableSpecificWarnings>4061;4062;4464;4711;4770;4548;4820;4668;4255;5045;6001;6054;26451;28160;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
       <EnablePREfast>true</EnablePREfast>
     </ClCompile>
@@ -71,5 +71,10 @@
   <ItemGroup>
     <ResourceCompile Include="..\..\src\xennet\xennet.rc" />
   </ItemGroup>
+  <ItemDefinitionGroup>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
+  </ItemDefinitionGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
 </Project>
diff --git a/vs2019/xennet_coinst/xennet_coinst.vcxproj b/vs2019/xennet_coinst/xennet_coinst.vcxproj
index a159abd..45ca05a 100644
--- a/vs2019/xennet_coinst/xennet_coinst.vcxproj
+++ b/vs2019/xennet_coinst/xennet_coinst.vcxproj
@@ -53,5 +53,10 @@
   <ItemGroup>
     <None Include="..\..\src\coinst\xennet_coinst.def" />
   </ItemGroup>
+  <ItemDefinitionGroup>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
+  </ItemDefinitionGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
 </Project>
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Wed Aug 04 15:16:34 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Wed, 04 Aug 2021 15:16:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.163758.299883 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBIdF-00087n-2z; Wed, 04 Aug 2021 15:16:33 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 163758.299883; Wed, 04 Aug 2021 15:16:33 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBIdE-00087e-Vr; Wed, 04 Aug 2021 15:16:32 +0000
Received: by outflank-mailman (input) for mailman id 163758;
 Wed, 04 Aug 2021 15:16:31 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=09pZ=M3=thinkhuge.net=brandon@srs-us1.protection.inumbo.net>)
 id 1mBIdD-00087U-35
 for win-pv-devel@lists.xenproject.org; Wed, 04 Aug 2021 15:16:31 +0000
Received: from mail-pj1-x102d.google.com (unknown [2607:f8b0:4864:20::102d])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a75f36dd-b83d-4e40-83a8-0ebaa92fca35;
 Wed, 04 Aug 2021 15:16:30 +0000 (UTC)
Received: by mail-pj1-x102d.google.com with SMTP id
 q17-20020a17090a2e11b02901757deaf2c8so4107029pjd.0
 for <win-pv-devel@lists.xenproject.org>; Wed, 04 Aug 2021 08:16:30 -0700 (PDT)
Received: from mercury (ip68-104-20-248.lv.lv.cox.net. [68.104.20.248])
 by smtp.gmail.com with ESMTPSA id u16sm3964276pgh.53.2021.08.04.08.16.28
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Wed, 04 Aug 2021 08:16:28 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a75f36dd-b83d-4e40-83a8-0ebaa92fca35
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=thinkhuge.net; s=google;
        h=from:to:subject:date:message-id:mime-version
         :content-transfer-encoding:thread-index:content-language;
        bh=/4+1GL7gDx1oud72x7e76lfvCVi+FfYRBaxQPe/aBOY=;
        b=JMYyW2NMA1VpuGCoIL3fNdK/7ngwICzCTrcZaaFE+kUnaV4PAcSvaMAoYuIBeyHyFg
         gL9xqy5X1KI2+Z5X6G42WjPw7dCXwQ5nDixGt/IjvYMkBrAsXHpprF6JXojRGBAzOAkz
         v0n4rlTobbsdooJWiehw4ITx+lHE6ehuUGU9Y=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:to:subject:date:message-id:mime-version
         :content-transfer-encoding:thread-index:content-language;
        bh=/4+1GL7gDx1oud72x7e76lfvCVi+FfYRBaxQPe/aBOY=;
        b=R9SXBkHrqb7baSSuFZw3lb4QzC9RAy36t9pffQs+N0kxY0UB3kv6Ejcy0eDZE+l1zs
         wqNZ0IRaC4AreV7XP2/YTLgZh22YdFnhz+Qb1Zm/jrmHxHs4ZDq1/NCFqInBsfzFXisz
         3t3DZHnbSN2oIQwdPrcBPrSULUzlLq7Nak5pwVvgtF6XZASYZBLOkd1/sbZ/UFs40Fh0
         x2pkHnwyUJ1QxErjZ4/LGdvt7Q/QT+z3NzaF6QjMu18VDP116RcgR58gIF6n08Qqf1GQ
         kssNqsAiq1VJdLVusfS1lnhZJEx58z5n5t7FgcOo2LL2mXbztVLCmcIYaSkFevDBi4CC
         D3Rw==
X-Gm-Message-State: AOAM530vy9PcnZ1zPasQgtaLfgjVAUl8pLeO5SLhxkJvjLylLg0IX2Rn
	5GM+5RZVk6RZis1X8lUL9woP2xF46/QRcEeb
X-Google-Smtp-Source: ABdhPJw6PuoZFFyNyO7v+/TbuGPbV7jodpF53rMP5hLNlCy8cZo1IWLGIpEBsb0C2PKoB6b5JcFgVw==
X-Received: by 2002:a17:90a:bd98:: with SMTP id z24mr10263130pjr.99.1628090188976;
        Wed, 04 Aug 2021 08:16:28 -0700 (PDT)
From: <brandon@thinkhuge.net>
To: <win-pv-devel@lists.xenproject.org>
Subject: unsusbscribe
Date: Wed, 4 Aug 2021 08:16:26 -0700
Message-ID: <119c9601d78943$b29b1100$17d13300$@thinkhuge.net>
MIME-Version: 1.0
Content-Type: text/plain;
	charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AdeJQ6yGXJCH+7qoTySQaXkfkXDMZQ==
Content-Language: en-us

unsusbscribe



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 05 18:09:31 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Aug 2021 18:09:31 +0000
Received: from list by lists.xenproject.org with outflank-mailman.164514.300829 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBho8-0005US-La; Thu, 05 Aug 2021 18:09:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 164514.300829; Thu, 05 Aug 2021 18:09:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBho8-0005UL-Ib; Thu, 05 Aug 2021 18:09:28 +0000
Received: by outflank-mailman (input) for mailman id 164514;
 Thu, 05 Aug 2021 18:09:27 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V4ax=M4=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1mBho7-0005Tz-Gn
 for win-pv-devel@lists.xenproject.org; Thu, 05 Aug 2021 18:09:27 +0000
Received: from mail-wm1-x330.google.com (unknown [2a00:1450:4864:20::330])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c343bb12-831b-49cc-82fb-ba68711469a0;
 Thu, 05 Aug 2021 18:09:26 +0000 (UTC)
Received: by mail-wm1-x330.google.com with SMTP id b128so3914113wmb.4
 for <win-pv-devel@lists.xenproject.org>; Thu, 05 Aug 2021 11:09:26 -0700 (PDT)
Received: from ?IPv6:2a00:23c5:5785:9a01:7ced:6976:651c:7ffe?
 ([2a00:23c5:5785:9a01:7ced:6976:651c:7ffe])
 by smtp.gmail.com with ESMTPSA id c2sm6825009wrs.60.2021.08.05.11.09.24
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 05 Aug 2021 11:09:25 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c343bb12-831b-49cc-82fb-ba68711469a0
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=Njftpge31gE3KBO75DJ0IoUSCyZSnU1a/ihdslNlGe4=;
        b=vcWaEZlUDiIkoV4aD1nfAklNxX5F9Z0l0hNNmAuDjcyNAGjcoiGC0KHnfGpoWmjZRm
         L619mJA9H9N4s53QlvtWkFUEFTFKfe0Y6KQmWG1QjJOgADfyFI8Rk1hfgVrQCq9DyxaX
         HJGpw4a3k4CbdPcOHfN4VGyXL1r9gx9Kmdwb0I3ykjwp/2QpjDNPmYLhLM0QZUJFljWF
         n1dKjCFB6wXhHbNKllt/NgqAqFao2KwfwkJm0AJp7PrTfpffm4XSYdNESxnrSrhLzknq
         Nkgy1Cks6ucWMKuE5MlD9Uj+NOO072y5L+4JgjccWa1AkqMqYberS+iFxXhWmYjrP9Sj
         QuGA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:references:message-id
         :date:user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=Njftpge31gE3KBO75DJ0IoUSCyZSnU1a/ihdslNlGe4=;
        b=BOPO1VjjGNiQ5gNM6LgTZJYYSS92CbsmrzhGkq1PQgQzKLyt6xOk5pQFRgEvra+497
         xWjL3c1AX9p8Kl39PfOCf7iANY4icLlivS3rCKHF9O3b5pXhhdPAdItC5PTYGrrQbqZu
         QEN+XnmVqoVInPhLe7zSHykS3dTyHnUkhvj/XMaKYJ0a5LKLTXmDrGEhh9MuC/RsQMIB
         gdx41qG6EH3yuxXySfyjxWK2f+C308sR7ybUrHru0R/DMo1OV1GoilnhGTUali8gxWhA
         qGs8QJwI4gKHdIqkvb6geMGMxfS4DYbj18O5FtLO5EN5yA8UwcmJRulDYSIEmz0ylBl+
         CTjw==
X-Gm-Message-State: AOAM530kzOpBuivZ2m1pIsIasU6HJQZMnpgfBvCP6ZHkNYkfwxGLwNoc
	aKB0v0Cnayc9h0ycpQ7klxJeAs9HqU8=
X-Google-Smtp-Source: ABdhPJxE6Ixrpa5NtXCay6t+SAtYBGCCLDiu7gcL6RZD6PujMkjzocEDClxkXgLbz1k7JMUYKJSIZg==
X-Received: by 2002:a05:600c:41d6:: with SMTP id t22mr16491704wmh.66.1628186965502;
        Thu, 05 Aug 2021 11:09:25 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [PATCH] Fix compile on EWDK 22000
To: win-pv-devel@lists.xenproject.org
References: <20210803143848.1157-1-owen.smith@citrix.com>
Message-ID: <1548b55b-5e0e-d693-d3c3-6cc971cc69ca@xen.org>
Date: Thu, 5 Aug 2021 19:09:24 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.12.0
MIME-Version: 1.0
In-Reply-To: <20210803143848.1157-1-owen.smith@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 03/08/2021 15:38, Owen Smith wrote:
> - Adds warnings 4061 and 4062 to ignore list
> - Defines signtool file digest as SHA256
> - Adds alias for GetProjectInfoForReference target
>    It appears that VS2019/EWDK22000 changed a target name, and without the alias
>    the build will fail.
> 
> Signed-off-by: Owen Smith <owen.smith@citrix.com>

Do the other drivers also suffer from this problem?

   Paul

> ---
>   vs2019/package/package.vcxproj             | 5 +++++
>   vs2019/version/version.vcxproj             | 6 ++++++
>   vs2019/xennet/xennet.vcxproj               | 7 ++++++-
>   vs2019/xennet_coinst/xennet_coinst.vcxproj | 5 +++++
>   4 files changed, 22 insertions(+), 1 deletion(-)
> 
> diff --git a/vs2019/package/package.vcxproj b/vs2019/package/package.vcxproj
> index dd794b5..e4c6f0f 100644
> --- a/vs2019/package/package.vcxproj
> +++ b/vs2019/package/package.vcxproj
> @@ -56,6 +56,11 @@
>     <ItemGroup>
>       <PackageFiles Include="$(OutDir)\$(ProjectName)\*" />
>     </ItemGroup>
> +  <ItemDefinitionGroup>
> +    <DriverSign>
> +      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
> +    </DriverSign>
> +  </ItemDefinitionGroup>
>     <Target Name="Archive" AfterTargets="TestSign">
>       <Copy
>          SourceFiles="@(PackageFiles)"
> diff --git a/vs2019/version/version.vcxproj b/vs2019/version/version.vcxproj
> index 9d149d0..b6ec6f3 100644
> --- a/vs2019/version/version.vcxproj
> +++ b/vs2019/version/version.vcxproj
> @@ -13,4 +13,10 @@
>     <Target Name="Build">
>       <Exec Command="powershell.exe -ExecutionPolicy Bypass -NoProfile -NonInteractive -File $(Script) $(Platform) $(SolutionDir) $(IncludeDir) $(SourceDir)" />
>     </Target>
> +  <Target Name="GetProjectInfoForReference"
> +          Returns="@(ProjectInfoForReference)">
> +    <ItemGroup>
> +      <ProjectInfoForReference Include="@(LibFullPath)" />
> +    </ItemGroup>
> +  </Target>
>   </Project>
> diff --git a/vs2019/xennet/xennet.vcxproj b/vs2019/xennet/xennet.vcxproj
> index 027dc4a..beb5bb3 100644
> --- a/vs2019/xennet/xennet.vcxproj
> +++ b/vs2019/xennet/xennet.vcxproj
> @@ -26,7 +26,7 @@
>         <IntrinsicFunctions>true</IntrinsicFunctions>
>         <AdditionalIncludeDirectories>$(WindowsSdkDir)\include\km;..\..\include;..\..\include\xen;</AdditionalIncludeDirectories>
>         <WarningLevel>EnableAllWarnings</WarningLevel>
> -      <DisableSpecificWarnings>4464;4711;4770;4548;4820;4668;4255;5045;6001;6054;26451;28160;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
> +      <DisableSpecificWarnings>4061;4062;4464;4711;4770;4548;4820;4668;4255;5045;6001;6054;26451;28160;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
>         <MultiProcessorCompilation>true</MultiProcessorCompilation>
>         <EnablePREfast>true</EnablePREfast>
>       </ClCompile>
> @@ -71,5 +71,10 @@
>     <ItemGroup>
>       <ResourceCompile Include="..\..\src\xennet\xennet.rc" />
>     </ItemGroup>
> +  <ItemDefinitionGroup>
> +    <DriverSign>
> +      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
> +    </DriverSign>
> +  </ItemDefinitionGroup>
>     <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
>   </Project>
> diff --git a/vs2019/xennet_coinst/xennet_coinst.vcxproj b/vs2019/xennet_coinst/xennet_coinst.vcxproj
> index a159abd..45ca05a 100644
> --- a/vs2019/xennet_coinst/xennet_coinst.vcxproj
> +++ b/vs2019/xennet_coinst/xennet_coinst.vcxproj
> @@ -53,5 +53,10 @@
>     <ItemGroup>
>       <None Include="..\..\src\coinst\xennet_coinst.def" />
>     </ItemGroup>
> +  <ItemDefinitionGroup>
> +    <DriverSign>
> +      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
> +    </DriverSign>
> +  </ItemDefinitionGroup>
>     <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
>   </Project>
> 



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 05 18:10:21 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Aug 2021 18:10:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.164519.300832 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBhoz-0006GA-P0; Thu, 05 Aug 2021 18:10:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 164519.300832; Thu, 05 Aug 2021 18:10:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBhoz-0006G3-MI; Thu, 05 Aug 2021 18:10:21 +0000
Received: by outflank-mailman (input) for mailman id 164519;
 Thu, 05 Aug 2021 18:10:21 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V4ax=M4=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1mBhoy-0006Fx-Vj
 for win-pv-devel@lists.xenproject.org; Thu, 05 Aug 2021 18:10:21 +0000
Received: from mail-wr1-x432.google.com (unknown [2a00:1450:4864:20::432])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 08d7a1a1-f3e1-4744-962c-181b6373fb38;
 Thu, 05 Aug 2021 18:10:20 +0000 (UTC)
Received: by mail-wr1-x432.google.com with SMTP id d8so7716278wrm.4
 for <win-pv-devel@lists.xenproject.org>; Thu, 05 Aug 2021 11:10:20 -0700 (PDT)
Received: from ?IPv6:2a00:23c5:5785:9a01:7ced:6976:651c:7ffe?
 ([2a00:23c5:5785:9a01:7ced:6976:651c:7ffe])
 by smtp.gmail.com with ESMTPSA id k18sm9409997wms.1.2021.08.05.11.10.18
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 05 Aug 2021 11:10:18 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 08d7a1a1-f3e1-4744-962c-181b6373fb38
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=Yz+4/zH3rJ6I0y59AFOIHFiDAKK5DMCGH2JvSUSBwQ4=;
        b=tI3dZmwDBPAUCwGAsnYQzk5AkP4R59WMewFheZ/H/BOLxCoRdsk59R1yuFeFhmC754
         hQwJmqD2rFj89XKDCUe7H6dU7haBl+KcApaXbZTVyLQJWdOxdVei8DljM57ox058BB1N
         urA7GCS89IXUAe20Q74i53TzjUmfqH/ADvAD5njhCqjErzON/qtZPG9SB5PXRxQ1bmll
         Rr63/1dYay/ZB0N9jUejTIhHUvfy8g3kda31MlVWm3msHuQPrdiYNoBWohylvOtSJ/eC
         OMZ+dX6JBWC7uuwIQQgHQTEkCxgzLzQ/PQMcrhqOuM7XHVEQfbYOdLv09sDoYwIGw/9r
         q8aQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:references:message-id
         :date:user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=Yz+4/zH3rJ6I0y59AFOIHFiDAKK5DMCGH2JvSUSBwQ4=;
        b=rjydWOjohe9gEVz8y+7y25FnWoBxGnIfdSRYqz8o84MrUVjrTKCPXB54MyxLZvdskZ
         7oagi1mWrPdCci/KJjdREMKjWcD1BkKJH2SbqqlrLOg7Ngr8rtszx7mQlwV1lSrTM+qB
         wTwbiDmYk2CXT6M58si81FtA2EBchooYbV2RQhOA2E9sB9ywRpCTg15cFFe+sJRJDwat
         MWN4dhVSvV6JUieFPN+HgBZxaviOTDktkOkdPFFabfNF/15XSWwN84ehLqSplf4NfDKe
         nzwO+QyoPvyGGlfsAQPoJDH0f0uKUMabJ2ouIBes14zHo1PFWaOqtlDL8HAAE7h8n83v
         RVpA==
X-Gm-Message-State: AOAM533/tmry3/mdV+3KyKFqRiRl9YDNeUpDFfdUwHJueo4jSDtTQIDF
	5i7XTHzhgrL32bC7oCzuks2YxGSWjRw=
X-Google-Smtp-Source: ABdhPJwjKEZeu/bnapbxjaQIdztrOogRySnecgA8B/ucEBZD6HmEC3ozAtp4wKdP1oKsnuFVD+K6mw==
X-Received: by 2002:adf:ed45:: with SMTP id u5mr6689512wro.203.1628187019281;
        Thu, 05 Aug 2021 11:10:19 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [PATCH] Prevent NULL MDL's from being queued for transmission.
To: win-pv-devel@lists.xenproject.org
References: <20210728140204.1228-1-Martin.Harvey@citrix.com>
Message-ID: <a0bb48a2-685a-ffbd-3768-78935809ae50@xen.org>
Date: Thu, 5 Aug 2021 19:10:18 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.12.0
MIME-Version: 1.0
In-Reply-To: <20210728140204.1228-1-Martin.Harvey@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 28/07/2021 15:02, Martin Harvey wrote:
> Under conditions of high load and low resources, it was
> possible for NDIS (in combination with overlying drivers) to send
> NET_BUFFER_LIST structures containing NULL MDL's for transmission.
> This resulted in an immediate bugcheck.
> 
> This patch prevents NULL MDL's from being sent to XenVif.
> 
> Signed-off-by: Martin Harvey <martin.harvey@citrix.com>

Acked-by: Paul Durrant <paul@xen.org>

> ---
>   src/xennet/transmitter.c | 26 +++++++++++++++-----------
>   1 file changed, 15 insertions(+), 11 deletions(-)
> 
> diff --git a/src/xennet/transmitter.c b/src/xennet/transmitter.c
> index 0e184fd..334bbb9 100644
> --- a/src/xennet/transmitter.c
> +++ b/src/xennet/transmitter.c
> @@ -323,17 +323,21 @@ __TransmitterSendNetBufferList(
>   
>           __TransmitterGetNetBufferList(Transmitter, NetBufferList);
>   
> -        status = XENVIF_VIF(TransmitterQueuePacket,
> -                            AdapterGetVifInterface(Transmitter->Adapter),
> -                            NET_BUFFER_CURRENT_MDL(NetBuffer),
> -                            NET_BUFFER_CURRENT_MDL_OFFSET(NetBuffer),
> -                            NET_BUFFER_DATA_LENGTH(NetBuffer),
> -                            OffloadOptions,
> -                            MaximumSegmentSize,
> -                            TagControlInformation,
> -                            &Hash,
> -                            (NetBufferListNext != NULL) ? TRUE : FALSE,
> -                            Cookie);
> +        if (NET_BUFFER_CURRENT_MDL(NetBuffer) != NULL) {
> +            status = XENVIF_VIF(TransmitterQueuePacket,
> +                                AdapterGetVifInterface(Transmitter->Adapter),
> +                                NET_BUFFER_CURRENT_MDL(NetBuffer),
> +                                NET_BUFFER_CURRENT_MDL_OFFSET(NetBuffer),
> +                                NET_BUFFER_DATA_LENGTH(NetBuffer),
> +                                OffloadOptions,
> +                                MaximumSegmentSize,
> +                                TagControlInformation,
> +                                &Hash,
> +                                (NetBufferListNext != NULL) ? TRUE : FALSE,
> +                                Cookie);
> +        }
> +        else
> +            status = STATUS_INVALID_PARAMETER;
>           if (!NT_SUCCESS(status)) {
>               __TransmitterReturnPacket(Transmitter, Cookie,
>                                         NDIS_STATUS_NOT_ACCEPTED);
> 



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 05 18:16:30 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Aug 2021 18:16:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.164528.300836 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBhuv-0006Oy-3t; Thu, 05 Aug 2021 18:16:29 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 164528.300836; Thu, 05 Aug 2021 18:16:29 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBhuv-0006Oq-0y; Thu, 05 Aug 2021 18:16:29 +0000
Received: by outflank-mailman (input) for mailman id 164528;
 Thu, 05 Aug 2021 18:16:27 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V4ax=M4=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1mBhut-0006OR-L4
 for win-pv-devel@lists.xenproject.org; Thu, 05 Aug 2021 18:16:27 +0000
Received: from mail-wr1-x435.google.com (unknown [2a00:1450:4864:20::435])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id eca931d4-b42b-4e5f-a6ab-6f7ee50cdf15;
 Thu, 05 Aug 2021 18:16:26 +0000 (UTC)
Received: by mail-wr1-x435.google.com with SMTP id c9so7706885wri.8
 for <win-pv-devel@lists.xenproject.org>; Thu, 05 Aug 2021 11:16:26 -0700 (PDT)
Received: from ?IPv6:2a00:23c5:5785:9a01:7ced:6976:651c:7ffe?
 ([2a00:23c5:5785:9a01:7ced:6976:651c:7ffe])
 by smtp.gmail.com with ESMTPSA id y21sm9309768wma.38.2021.08.05.11.16.25
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 05 Aug 2021 11:16:25 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: eca931d4-b42b-4e5f-a6ab-6f7ee50cdf15
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=9pYUjjXPTcc9KiqTr9AoAjDqLLl0xT8jg6CytmAwJpo=;
        b=dlbB4mhwAQfdamDcDBKJwR2I3NdhNQowY4edYpZbiAjluxQqwhp2Z6hHhg2uzyDOCG
         KnEYtMKp1NZ/tsJeshDIOn8stq2wiKuho85Td2WkBSBS/6i1xfaOpGab48l38OZA1tZz
         dkAvnZ6/ntGOsNJM3yFjWA0TJBER5pfetscNabumUJsqO9Y0l7Y0jQ9hVZPPFwXSvsq0
         cGjoCimAXRol2DpGRMEiOZ3c8oCf8ypDTwQ+3SGvPbiTDUhU+cXH8XaUDLOSoCnVry7T
         tb/wELKeVunwS3hRg+8+EgC9WaPVla5oyVZ9VvfhvckPAK+jDcc2bXyMz+Y+YaWAyXLU
         /PLw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:references:message-id
         :date:user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=9pYUjjXPTcc9KiqTr9AoAjDqLLl0xT8jg6CytmAwJpo=;
        b=Cd8HMtmePnnOIngj7ouz1o3Ehsvv79L+px5z15NhJrQUkAesLahpswVe2SYkKnSt1X
         j/0L8hucaghLZNoZU8i0TAg7ERGUch8uYDRtFcslKYDPArLz6+4HXot+/jxcWZc3fHMz
         Ld2AakR2qdgZYUdx4juoijtmFg3F03O+Xe0CotFIvetaeHzCTvV5FjrmhfDMKbyLq8SD
         /IAIlVzSbkrOx2JTSokA4rlXjyU8gKV8zVLZQmM5d8xtRQ8ItH1HNlQkh0h2iIc5U0tX
         UtPU6Ve3Aw98RKHt4Jp3vexqUTplj7HnJaCN54BQlLQSMM75ep80tW4M+3uK8L2+WShR
         8HFQ==
X-Gm-Message-State: AOAM533pvMoomRjKpq6eTbXy8yhtPRvhoAsM4ppE5INe4oxBfOcFKtcH
	xVvAue5tR2/ziOtibS+Qqx9U38KHaIg=
X-Google-Smtp-Source: ABdhPJylM3t1HQYsICaAoNDtY2JZgQZ5NpnUuHI4KJAcIuTzogHGB29NLi8V2IYOO3z2IH3GwN3D8A==
X-Received: by 2002:adf:e60c:: with SMTP id p12mr6722494wrm.285.1628187385884;
        Thu, 05 Aug 2021 11:16:25 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [PATCH 1/5] Improve transmitter disable.
To: win-pv-devel@lists.xenproject.org
References: <20210728140247.1912-1-Martin.Harvey@citrix.com>
Message-ID: <0ee063ff-5eee-de1b-40a4-1018b42c9b21@xen.org>
Date: Thu, 5 Aug 2021 19:16:25 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.12.0
MIME-Version: 1.0
In-Reply-To: <20210728140247.1912-1-Martin.Harvey@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 28/07/2021 15:02, Martin Harvey wrote:
> In some cases, the backend may stop processing Tx ring
> requests in a timely manner. If this happens at the same time as ring
> disable, then the Tx code could spin forever at dispatch IRQL.
> 
> This patch introduces a hard limit on how long the code will spin,
> allowing a device disable or power transition to complete, albeit
> at the cost of Tx requests being dropped or the ring being in
> an indeterminate state. This has normally been seen at guest shutdown
> where final ring state is of little consequence.
> 
> Signed-off-by: Martin Harvey <martin.harvey@citrix.com>

Acked-by: Paul Durrant <paul@xen.org>

> ---
>   src/xenvif/transmitter.c | 14 +++++++++-----
>   1 file changed, 9 insertions(+), 5 deletions(-)
> 
> diff --git a/src/xenvif/transmitter.c b/src/xenvif/transmitter.c
> index f6935a6..fddeb0c 100644
> --- a/src/xenvif/transmitter.c
> +++ b/src/xenvif/transmitter.c
> @@ -3988,21 +3988,25 @@ __TransmitterRingDisable(
>       ASSERT3U(Ring->RequestsPushed, ==, Ring->RequestsPosted);
>       while (Ring->ResponsesProcessed != Ring->RequestsPushed) {
>           Attempt++;
> -        ASSERT(Attempt < 100);
> +
> +        KeStallExecutionProcessor(1000);    // 1ms
>   
>           // Try to move things along
>           __TransmitterRingSend(Ring);
>           (VOID) TransmitterRingPoll(Ring);
>   
> -        if (State != XenbusStateConnected)
> -            __TransmitterRingFakeResponses(Ring);
> +        if ((Attempt >= 100) || (State != XenbusStateConnected))
> +            break;
>   
>           // We are waiting for a watch event at DISPATCH_LEVEL so
>           // it is our responsibility to poll the store ring.
>           XENBUS_STORE(Poll,
>                        &Transmitter->StoreInterface);
> -
> -        KeStallExecutionProcessor(1000);    // 1ms
> +    }
> +    if (Ring->ResponsesProcessed != Ring->RequestsPushed)
> +    {
> +        __TransmitterRingFakeResponses(Ring);
> +        (VOID) TransmitterRingPoll(Ring);
>       }
>   
>       Ring->Enabled = FALSE;
> 



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 05 18:19:27 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Aug 2021 18:19:27 +0000
Received: from list by lists.xenproject.org with outflank-mailman.164535.300840 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBhxn-0006V6-Bx; Thu, 05 Aug 2021 18:19:27 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 164535.300840; Thu, 05 Aug 2021 18:19:27 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBhxn-0006Uy-97; Thu, 05 Aug 2021 18:19:27 +0000
Received: by outflank-mailman (input) for mailman id 164535;
 Thu, 05 Aug 2021 18:19:25 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V4ax=M4=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1mBhxl-0006Us-Cc
 for win-pv-devel@lists.xenproject.org; Thu, 05 Aug 2021 18:19:25 +0000
Received: from mail-wr1-x431.google.com (unknown [2a00:1450:4864:20::431])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7c315799-6ffe-4b63-8ebe-2f4c9aecee55;
 Thu, 05 Aug 2021 18:19:24 +0000 (UTC)
Received: by mail-wr1-x431.google.com with SMTP id b11so7761826wrx.6
 for <win-pv-devel@lists.xenproject.org>; Thu, 05 Aug 2021 11:19:24 -0700 (PDT)
Received: from ?IPv6:2a00:23c5:5785:9a01:7ced:6976:651c:7ffe?
 ([2a00:23c5:5785:9a01:7ced:6976:651c:7ffe])
 by smtp.gmail.com with ESMTPSA id h11sm9169860wmq.34.2021.08.05.11.19.23
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 05 Aug 2021 11:19:23 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7c315799-6ffe-4b63-8ebe-2f4c9aecee55
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=VVgvnlnUib5s2DB6/i4nAedfXw9ITZJ/4rVWvbYVMsg=;
        b=dQQIaUs1ZbS5OI3l9maXFQo/WDsGOBgFA9lq7y9pEN3DxC2Q9yEB2WaIjOj4RU5GpA
         LigVsHHTz+GGzSI4b8DBWZzzVdhuaezMCCUtkH5wSWBLiSRp3NpQVvei7AdQYYZt/wP5
         TXUoVZPc4UgVPhSAkfic5PceC4hvg7NAshvTlaJUnFhFAven6PwS0IHcRj3JVWBGAbij
         168W5gg7kiS6Jzg4IhORKTDUDOvipHVlnv4Z0vvaFXtnd9JUP3Vv/qPpoX/9xX4QdlSW
         RkcYQhEsWd8JYR08eyOYZw9MYDDD3QY9Wus0J1KQtvy41pOGNFQcSVWe3R9Rr4gi5Oto
         s0yA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:references:message-id
         :date:user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=VVgvnlnUib5s2DB6/i4nAedfXw9ITZJ/4rVWvbYVMsg=;
        b=KEPKyEnLQZYtdUJaRXpC6/MbO+iIK9WwLRWsgqK8jP47FgbAgjxcq2vWICJ6L2jYxS
         Mio9nIfFf1HtSNGCWTGt6yiGAdH+cqyjmygHmcQ9gBU/kggvDGo0KVzLPZ7azBOkwP38
         66WC1ObwXYek7U9eTAJCERiGmJNMCFW7Mg15j6DlwFTrPc/rakaHY74vMGQ0D0E1wZoy
         ZSW82jfubgYzjq8y7N1ZqEoiIRZUZmlTnObB0YvqB+FQOIhznlFjJ6ubE8/kfaBFFNbF
         djYGnYbOePnaX1/Qmg6J56HkxqT677cGW2WxEKzkSipEhNHT5dtBSUfVd+YEwGK6EWSj
         9nEQ==
X-Gm-Message-State: AOAM532aPl5kgflSt/s6KudEazQNC7aJrz9G55OWZmEjcIuCa+PGNZj/
	N0kaITdSWhon04xYEbz0cEpIVnWZYlM=
X-Google-Smtp-Source: ABdhPJxj1TrxRzVVGUQZIE9dZ/zUhe7lAMWAMafPVaDZhk2fDiCQkRJPUpC+ZaGbjQxIddyoEBPzXg==
X-Received: by 2002:a5d:4ac5:: with SMTP id y5mr6842661wrs.125.1628187563847;
        Thu, 05 Aug 2021 11:19:23 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [PATCH 2/5] Log ring disable.
To: win-pv-devel@lists.xenproject.org
References: <20210728140247.1912-1-Martin.Harvey@citrix.com>
 <20210728140247.1912-2-Martin.Harvey@citrix.com>
Message-ID: <ed28beeb-c329-935d-5f1a-e50d9356b069@xen.org>
Date: Thu, 5 Aug 2021 19:19:22 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.12.0
MIME-Version: 1.0
In-Reply-To: <20210728140247.1912-2-Martin.Harvey@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 28/07/2021 15:02, Martin Harvey wrote:
> Since Rx/Tx ring disconnects now no longer wait forever, we add
> some logging to catch those cases where the disconnect has timed out,
> indicating how many requests are still in the ring.
> 
> This aids greatly with customer debugging.
> 
> Signed-off-by: Martin Harvey <martin.harvey@citrix.com>

I asked for use of

XENBUS_DEBUG(Trigger,
              &Transmitter->DebugInterface,
              Ring->DebugCallback);

rather than more ad-hoc logging. Is there a reason that won't work?

   Paul

> ---
>   src/xenvif/receiver.c    | 16 ++++++++++++++++
>   src/xenvif/transmitter.c |  6 ++++++
>   2 files changed, 22 insertions(+)
> 
> diff --git a/src/xenvif/receiver.c b/src/xenvif/receiver.c
> index c70d938..7295646 100644
> --- a/src/xenvif/receiver.c
> +++ b/src/xenvif/receiver.c
> @@ -2887,6 +2887,22 @@ __ReceiverRingDisconnect(
>       ASSERT3U(Ring->ResponsesProcessed, ==, Ring->RequestsPushed);
>       ASSERT3U(Ring->RequestsPushed, ==, Ring->RequestsPosted);
>   
> +    //Debug logs as well as assertion, else customer debugging difficult.
> +    if ((Ring->ResponsesProcessed != Ring->RequestsPushed) ||
> +        (Ring->RequestsPushed != Ring->RequestsPosted))
> +    {
> +        Info("%s[%u]: Ring disconnect, counts do not match.\n",
> +            FrontendGetPath(Frontend),
> +            Ring->Index);
> +
> +        Info("%s[%u]: Processed: %u Pushed: %u Posted: %u\n",
> +            FrontendGetPath(Frontend),
> +            Ring->Index,
> +            Ring->ResponsesProcessed,
> +            Ring->RequestsPushed,
> +            Ring->RequestsPosted);
> +    }
> +
>       Ring->ResponsesProcessed = 0;
>       Ring->RequestsPushed = 0;
>       Ring->RequestsPosted = 0;
> diff --git a/src/xenvif/transmitter.c b/src/xenvif/transmitter.c
> index fddeb0c..47f2fc2 100644
> --- a/src/xenvif/transmitter.c
> +++ b/src/xenvif/transmitter.c
> @@ -4005,6 +4005,12 @@ __TransmitterRingDisable(
>       }
>       if (Ring->ResponsesProcessed != Ring->RequestsPushed)
>       {
> +        Info("%s[%u]: Timed out disable: Requests pushed: %u, Responses processed: %u.\n",
> +            FrontendGetPath(Frontend),
> +            Ring->Index,
> +            Ring->RequestsPushed,
> +            Ring->ResponsesProcessed);
> +
>           __TransmitterRingFakeResponses(Ring);
>           (VOID) TransmitterRingPoll(Ring);
>       }
> 



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 05 18:20:45 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Aug 2021 18:20:45 +0000
Received: from list by lists.xenproject.org with outflank-mailman.164542.300845 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBhz3-0007I8-Gv; Thu, 05 Aug 2021 18:20:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 164542.300845; Thu, 05 Aug 2021 18:20:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBhz3-0007I1-DV; Thu, 05 Aug 2021 18:20:45 +0000
Received: by outflank-mailman (input) for mailman id 164542;
 Thu, 05 Aug 2021 18:20:45 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V4ax=M4=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1mBhz3-0007Hv-28
 for win-pv-devel@lists.xenproject.org; Thu, 05 Aug 2021 18:20:45 +0000
Received: from mail-wr1-x42c.google.com (unknown [2a00:1450:4864:20::42c])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a07b3e71-c9c2-458d-9af0-8f9c4aaf6751;
 Thu, 05 Aug 2021 18:20:44 +0000 (UTC)
Received: by mail-wr1-x42c.google.com with SMTP id c9so7721463wri.8
 for <win-pv-devel@lists.xenproject.org>; Thu, 05 Aug 2021 11:20:44 -0700 (PDT)
Received: from ?IPv6:2a00:23c5:5785:9a01:7ced:6976:651c:7ffe?
 ([2a00:23c5:5785:9a01:7ced:6976:651c:7ffe])
 by smtp.gmail.com with ESMTPSA id y4sm6279248wmi.22.2021.08.05.11.20.42
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 05 Aug 2021 11:20:43 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a07b3e71-c9c2-458d-9af0-8f9c4aaf6751
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=PD+4baBO5JgcXGxM17jmIMfkqQPGq5Qsb44bsqFaw2Y=;
        b=mQO6nV8R3GoZO/wxpSE/d/YMIaVd1nU2UoxBewar+/CFABOO34tVWNJ1zK+ZmsllLs
         bYrwOS4a7djl5KBiHK12kB/nGvV4XIzLnVVl4tGlvZsyPDWVOzrZIpuffoIfb5rQ+WM1
         mpYQ8hSyCzz3CB4fyEpBRgEL5B8dpHHRBt/tsi9UqxRN4hJXV1139Yt6BevZ6ZJbYdfk
         gbzuaQq7zb6fA+FIaCHni2rk3qGKnosPTBbygWuVrzBd0lfCnVIKZzFao49W1+Uj6PRF
         QC7WTg8ln7YycX9+ZAE8T9e+OdVSm1+KCtPNnOh7+KXmn3LgpqpCfRm9ILYOQkg2HxQ3
         /OEg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:references:message-id
         :date:user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=PD+4baBO5JgcXGxM17jmIMfkqQPGq5Qsb44bsqFaw2Y=;
        b=DB0xzRyQ3KERiLK+QccCF3kUUhhR5XUJcu9ZZSSBmwH/HDKvS6JR8QWEiNSz1l9KrP
         k8TuHQcndOKPFr2gqbsej/QNmJ4JN2QMxy8HA6uwB/jdK1rJH21AfDFJuI1mtM7naUo0
         iZd0Pj3dI6jJwc3QO2mBIqTqV4N+SH5U6BUguYLjFUdgRfl25RO8Zjl8Kumb0zYUow63
         TiBsV1xi9SUhuxci09lGblFSuLoUdxRslBxwKouGNGYXTEXR922cPwL4I0U8bq0tkxVz
         ocbwFM0lMcjvjBgqeFZbP6oKjcfR34DbY+az7oGvsPFAWAUYofLgmtxQvX0Mn+X69O6h
         +Djg==
X-Gm-Message-State: AOAM530W72C/sBZbHDib0f966QNdPdwfQKM54kJ6zLg6DTdWUZaD1rkG
	XJXmrTLbaUNhMSN400qTlKwQz49AKNU=
X-Google-Smtp-Source: ABdhPJypYgrkXRpRzLwqGQRqrs1WMxOwYNS0MfTT3WtgJKsHLi5qILzu0fUdeI7zSxMgJM8HUHEIPA==
X-Received: by 2002:a5d:6d03:: with SMTP id e3mr6662441wrq.153.1628187643527;
        Thu, 05 Aug 2021 11:20:43 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [PATCH 3/5] Log waits for backend state changes.
To: win-pv-devel@lists.xenproject.org
References: <20210728140247.1912-1-Martin.Harvey@citrix.com>
 <20210728140247.1912-3-Martin.Harvey@citrix.com>
Message-ID: <e94c0dc1-a3f7-a9bb-7ba6-d94e1196bb6b@xen.org>
Date: Thu, 5 Aug 2021 19:20:42 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.12.0
MIME-Version: 1.0
In-Reply-To: <20210728140247.1912-3-Martin.Harvey@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 28/07/2021 15:02, Martin Harvey wrote:
> In addition to preceding changes to ring disconnects, and
> associated logging, we also add some logging to check
> whether state change notifications are being sent in a timely
> manner between frontend and backend. Also a great assistance
> to customer debugging.
> 
> Signed-off-by: Martin Harvey <martin.harvey@citrix.com>

Acked-by: Paul Durrant <paul@xen.org>

> ---
>   src/xenvif/frontend.c | 6 +++++-
>   1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/src/xenvif/frontend.c b/src/xenvif/frontend.c
> index 5940e16..72f448d 100644
> --- a/src/xenvif/frontend.c
> +++ b/src/xenvif/frontend.c
> @@ -1346,6 +1346,7 @@ FrontendWaitForBackendXenbusStateChange(
>       LARGE_INTEGER               Timeout;
>       XenbusState                 Old = *State;
>       NTSTATUS                    status;
> +    const ULONGLONG             TotalTimeout = 120000;
>   
>       Trace("%s: ====> %s\n",
>             __FrontendGetBackendPath(Frontend),
> @@ -1369,7 +1370,7 @@ FrontendWaitForBackendXenbusStateChange(
>   
>       Timeout.QuadPart = 0;
>   
> -    while (*State == Old && TimeDelta < 120000) {
> +    while (*State == Old && TimeDelta < TotalTimeout) {
>           PCHAR           Buffer;
>           LARGE_INTEGER   Now;
>   
> @@ -1417,6 +1418,9 @@ FrontendWaitForBackendXenbusStateChange(
>           TimeDelta = (Now.QuadPart - Start.QuadPart) / 10000ull;
>       }
>   
> +    if (TimeDelta >= TotalTimeout)
> +        Error("%s timed out waiting for backend state change\n", __FrontendGetBackendPath(Frontend));
> +
>       if (Watch != NULL)
>           (VOID) XENBUS_STORE(WatchRemove,
>                               &Frontend->StoreInterface,
> 



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 05 18:21:46 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Aug 2021 18:21:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.164549.300849 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBi01-0007N5-LL; Thu, 05 Aug 2021 18:21:45 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 164549.300849; Thu, 05 Aug 2021 18:21:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBi01-0007Mx-Hv; Thu, 05 Aug 2021 18:21:45 +0000
Received: by outflank-mailman (input) for mailman id 164549;
 Thu, 05 Aug 2021 18:21:45 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V4ax=M4=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1mBi01-0007Mr-0P
 for win-pv-devel@lists.xenproject.org; Thu, 05 Aug 2021 18:21:45 +0000
Received: from mail-wr1-x42b.google.com (unknown [2a00:1450:4864:20::42b])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 05f448b3-b6ad-4ed3-9dee-614644410b47;
 Thu, 05 Aug 2021 18:21:44 +0000 (UTC)
Received: by mail-wr1-x42b.google.com with SMTP id l18so7763180wrv.5
 for <win-pv-devel@lists.xenproject.org>; Thu, 05 Aug 2021 11:21:44 -0700 (PDT)
Received: from ?IPv6:2a00:23c5:5785:9a01:7ced:6976:651c:7ffe?
 ([2a00:23c5:5785:9a01:7ced:6976:651c:7ffe])
 by smtp.gmail.com with ESMTPSA id j97sm3382548wrj.80.2021.08.05.11.21.42
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 05 Aug 2021 11:21:43 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 05f448b3-b6ad-4ed3-9dee-614644410b47
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=DGJCEQ0SHwp+CHIbSxrMU3GUEauZaYM77vrOH6a417A=;
        b=o/hZhgQWR862kySt7wf4YSHnCyGFhrvGcZufJMq3AsSzr5QPj3XGo+EGGdsSLr+rxg
         bgNPjjvwsE7VgIQz+yIS5X+9cBp38PXeHRdwV4zueLNzwvkTTnVTHWTLOkHD7M+kDfHU
         48mJ14oqplK0a56vmTVLAuBoe8DQcgjkb3kIFQaPWz/16yX3bmtkh5329SiCLtEJB4hD
         Hbo62NccR2aORRqdNezAAyfdaCFAWhUPoDFkL0NryVIe6lraO+4y0YX9KcBqJfOwRcRW
         /qNlkbaUN8qLzirTmuD45Uzz0Xh+29eMdzNPkVFItPXaN5zRfCmIB64tEfBaTkz+dXUk
         9GLQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:references:message-id
         :date:user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=DGJCEQ0SHwp+CHIbSxrMU3GUEauZaYM77vrOH6a417A=;
        b=S4EmiY1Vv5k2oqJrwoiUUwmIF0RWfCJPgJhixvI1Y82SBncwTZRwJA6ATkxFU9RmKi
         sKBGQ1AdfWstxTGH0hO0cOvnDu1Po9dEYt6wcGhmYQq5YvMxqAGMYhQaNts3WaDRuLNa
         oI3qy8q1Lr5HyRBeSom8/srX9J9yg1HTC3iVFVZXYMqgJ4v3ctbAFl5u6TJcCtbnmSiw
         /D4qjfdGindNuv/nyoKT2/UVCHDcnzvzvTE2LMYj5H6Qi5v5YSKpbKMB5wmXB7uN4ZAk
         H2RYP4/hWrRmn/8SnZGK+amIi6kVjMKYg6cd/G0NSTmKtts/iPYkg4Zrx8fEZQmcGeBw
         srfA==
X-Gm-Message-State: AOAM533P0WT5kaDh30n5jcq8C+WUeTOdrtq8iRXsPUEjQ+MtRXCMl93n
	ucTWQ2cv1HlQj3Tw19nsokeXp+zalZY=
X-Google-Smtp-Source: ABdhPJyTw40UPchmLroAbzbp9yNnm8pjriF4XQzUOdV8jtt3cFFxegkLN/qWbhNEP4DdCqUTGg5mMA==
X-Received: by 2002:a5d:4585:: with SMTP id p5mr6706963wrq.265.1628187703570;
        Thu, 05 Aug 2021 11:21:43 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [PATCH 4/5] Assert that transmitter not being sent NULL MDL's
To: win-pv-devel@lists.xenproject.org
References: <20210728140247.1912-1-Martin.Harvey@citrix.com>
 <20210728140247.1912-4-Martin.Harvey@citrix.com>
Message-ID: <f086fb5c-49ef-915a-82a0-478019f657bf@xen.org>
Date: Thu, 5 Aug 2021 19:21:42 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.12.0
MIME-Version: 1.0
In-Reply-To: <20210728140247.1912-4-Martin.Harvey@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 28/07/2021 15:02, Martin Harvey wrote:
> An assertion to check that a corresponding fix in XenNet is preventing
> NULL MDL's from being queued for transmission.
> 
> Signed-off-by: Martin Harvey <martin.harvey@citrix.com>

Acked-by: Paul Durrant <paul@xen.org>

> ---
>   src/xenvif/transmitter.c | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/src/xenvif/transmitter.c b/src/xenvif/transmitter.c
> index 47f2fc2..b5fb9a8 100644
> --- a/src/xenvif/transmitter.c
> +++ b/src/xenvif/transmitter.c
> @@ -5143,6 +5143,8 @@ TransmitterQueuePacket(
>       PXENVIF_TRANSMITTER_RING        Ring;
>       NTSTATUS                        status;
>   
> +    ASSERT(Mdl != NULL);
> +
>       Frontend = Transmitter->Frontend;
>   
>       Packet = __TransmitterGetPacket(Transmitter);
> 



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 05 18:22:39 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Aug 2021 18:22:39 +0000
Received: from list by lists.xenproject.org with outflank-mailman.164556.300853 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBi0t-0007S2-Ol; Thu, 05 Aug 2021 18:22:39 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 164556.300853; Thu, 05 Aug 2021 18:22:39 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBi0t-0007Rs-LI; Thu, 05 Aug 2021 18:22:39 +0000
Received: by outflank-mailman (input) for mailman id 164556;
 Thu, 05 Aug 2021 18:22:38 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V4ax=M4=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1mBi0s-0007Rg-H8
 for win-pv-devel@lists.xenproject.org; Thu, 05 Aug 2021 18:22:38 +0000
Received: from mail-wm1-x32b.google.com (unknown [2a00:1450:4864:20::32b])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 844eea3d-477f-4643-a02f-75cdecbcb059;
 Thu, 05 Aug 2021 18:22:37 +0000 (UTC)
Received: by mail-wm1-x32b.google.com with SMTP id
 l11-20020a7bcf0b0000b0290253545c2997so4353040wmg.4
 for <win-pv-devel@lists.xenproject.org>; Thu, 05 Aug 2021 11:22:37 -0700 (PDT)
Received: from ?IPv6:2a00:23c5:5785:9a01:7ced:6976:651c:7ffe?
 ([2a00:23c5:5785:9a01:7ced:6976:651c:7ffe])
 by smtp.gmail.com with ESMTPSA id x9sm10177293wmj.41.2021.08.05.11.22.36
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Thu, 05 Aug 2021 11:22:36 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 844eea3d-477f-4643-a02f-75cdecbcb059
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=9QYAEIjKOWIzoi3HHCaulVdUGUcoLn6utjc+fxHvpIo=;
        b=fU5B95+P58lWUU3MOGZ0I6+hPpZEZ+cqodBbrsse4dG4PUad/CGa7ccTh0UONAeJs5
         l6HEZtceqMG+JW/nmaVgo53pNo/au6fNQJ3su7u2hXcRweNmde5WLP/QNjXG4OHRurZ/
         Fz6TExyZdVlJj0F2p7xmUTLP8hOxfCCqNtOJRMHowEfH/oD8OnZQ2OfC37oohkh4Q3sy
         bFc6ZYVrbDwhFnBMvDETXNuHo2NPDY5pOPiG7JIMXzIxox8t1EY2E0S11JaJcaa9kWjF
         IF6UCI18fYHmNLx+YoQY5DXzSu83PAk69aoEcBuoT97TKIUtH68LzgDJCf77ZUWJGZ/T
         JHVg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:references:message-id
         :date:user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=9QYAEIjKOWIzoi3HHCaulVdUGUcoLn6utjc+fxHvpIo=;
        b=Eskt/FCmBJy5KfBB1xcQYQDqrItpYw1Me7u17pYuBpzS7VlXFRkta3Xo+ULsX5oLrC
         S43kBXuJdxz1Y23pVrQkV/dvwov7sQbd4Y8va/zUZCuRaay7CvUbnaYfP+hBwjH8e0Go
         OAPYdMlGt/Mi+00P1NMwksUW0LkX/ffjxA2jKDINqldU9TDesJxHscbnXlc5lcvF3t0k
         v93aWaoAzAT++tig2QaDf/E83YqH/UqeeXG3dzQg6imz9clQ45k4uMgY3QsWNhxpLeg9
         Hv9OmFXYnP1S14gLW4ymfLH6Au6zcMaquSih4oP/C2C+2kq0Al94dAai7gjbi3uFfV5L
         z95w==
X-Gm-Message-State: AOAM533cVeW6iJoOmEiNsk1CkHnRtXM6JWYXYlzr6ETcW5OvZt/cJnBM
	JF3qn8RrrYPYyEYClLXNoG0mhcy5Tdk=
X-Google-Smtp-Source: ABdhPJz0X9jhF0lgUXwgwjxP4TkVy+Ro0L02MEfg/TB3o6zqWqsjLds5YDvV9XHS1WQuO3qm5HUnRg==
X-Received: by 2002:a1c:19c6:: with SMTP id 189mr16286593wmz.174.1628187757073;
        Thu, 05 Aug 2021 11:22:37 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [PATCH 5/5] Reduce logging of Fdo->NotDisableable
To: win-pv-devel@lists.xenproject.org
References: <20210728140247.1912-1-Martin.Harvey@citrix.com>
 <20210728140247.1912-5-Martin.Harvey@citrix.com>
Message-ID: <e5942496-a09c-98fc-71b2-5d8a49e26eb7@xen.org>
Date: Thu, 5 Aug 2021 19:22:36 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.12.0
MIME-Version: 1.0
In-Reply-To: <20210728140247.1912-5-Martin.Harvey@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 28/07/2021 15:02, Martin Harvey wrote:
> Signed-off-by: Martin Harvey <martin.harvey@citrix.com>

Acked-by: Paul Durrant <paul@xen.org>

> ---
>   src/xenvif/fdo.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/src/xenvif/fdo.c b/src/xenvif/fdo.c
> index 896107c..745f948 100644
> --- a/src/xenvif/fdo.c
> +++ b/src/xenvif/fdo.c
> @@ -2075,7 +2075,7 @@ FdoQueryPnpDeviceState(
>           goto done;
>   
>       if (Fdo->NotDisableable) {
> -        Info("%s: not disableable\n", __FdoGetName(Fdo));
> +        Trace("%s: not disableable\n", __FdoGetName(Fdo));
>           State |= PNP_DEVICE_NOT_DISABLEABLE;
>       }
>   
> 



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 05 19:21:05 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 05 Aug 2021 19:21:05 +0000
Received: from list by lists.xenproject.org with outflank-mailman.164569.300857 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBivO-0003zF-30; Thu, 05 Aug 2021 19:21:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 164569.300857; Thu, 05 Aug 2021 19:21:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBivN-0003z7-W3; Thu, 05 Aug 2021 19:21:01 +0000
Received: by outflank-mailman (input) for mailman id 164569;
 Thu, 05 Aug 2021 19:21:01 +0000
Received: from winpvdrvbuild.xenproject.org ([162.242.160.44])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <paul.durrant@xenproject.org>) id 1mBivN-0003z1-F7
 for win-pv-devel@lists.xenproject.org; Thu, 05 Aug 2021 19:21:01 +0000
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
Date: Thu, 5 Aug 2021 19:21:03 +0000 (UTC)
From: paul.durrant@xenproject.org
To: win-pv-devel@lists.xenproject.org
Message-ID: <9882015.7.1628191265069.JavaMail.WINPVDRVBUILD$@winpvdrvbuild>
Subject: XENNET-master - Build #115 - Successful
MIME-Version: 1.0
Content-Type: multipart/mixed; 
	boundary="----=_Part_6_32603406.1628191263334"
X-Jenkins-Job: XENNET-master
X-Jenkins-Result: SUCCESS


------=_Part_6_32603406.1628191263334
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

The build system has completed build #115.

Check console output at https://winpvdrvbuild.xenproject.org:8080/job/XENNET-master/115/console to view the results.
------=_Part_6_32603406.1628191263334--


From win-pv-devel-bounces@lists.xenproject.org Fri Aug 06 04:24:03 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 06 Aug 2021 04:24:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.164656.300985 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBrOr-0002qt-HW; Fri, 06 Aug 2021 04:24:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 164656.300985; Fri, 06 Aug 2021 04:24:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBrOr-0002ql-EL; Fri, 06 Aug 2021 04:24:01 +0000
Received: by outflank-mailman (input) for mailman id 164656;
 Fri, 06 Aug 2021 04:24:01 +0000
Received: from winpvdrvbuild.xenproject.org ([162.242.160.44])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <paul.durrant@xenproject.org>) id 1mBrOr-0002qf-1k
 for win-pv-devel@lists.xenproject.org; Fri, 06 Aug 2021 04:24:01 +0000
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
Date: Fri, 6 Aug 2021 04:24:04 +0000 (UTC)
From: paul.durrant@xenproject.org
To: win-pv-devel@lists.xenproject.org
Message-ID: <9655649.9.1628223844961.JavaMail.WINPVDRVBUILD$@winpvdrvbuild>
Subject: XENVIF-master - Build #188 - Successful
MIME-Version: 1.0
Content-Type: multipart/mixed; 
	boundary="----=_Part_8_16078008.1628223844695"
X-Jenkins-Job: XENVIF-master
X-Jenkins-Result: SUCCESS


------=_Part_8_16078008.1628223844695
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

The build system has completed build #188.

Check console output at https://winpvdrvbuild.xenproject.org:8080/job/XENVIF-master/188/console to view the results.
------=_Part_8_16078008.1628223844695--


From win-pv-devel-bounces@lists.xenproject.org Fri Aug 06 08:16:43 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 06 Aug 2021 08:16:43 +0000
Received: from list by lists.xenproject.org with outflank-mailman.164685.301012 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBv21-0007J7-G8; Fri, 06 Aug 2021 08:16:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 164685.301012; Fri, 06 Aug 2021 08:16:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mBv21-0007J0-D7; Fri, 06 Aug 2021 08:16:41 +0000
Received: by outflank-mailman (input) for mailman id 164685;
 Fri, 06 Aug 2021 08:16:40 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=DGlG=M5=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mBv1z-0007Iu-SK
 for win-pv-devel@lists.xenproject.org; Fri, 06 Aug 2021 08:16:40 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 465945b9-d1de-4437-a0f0-19ce5e0a98ba;
 Fri, 06 Aug 2021 08:16:37 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 465945b9-d1de-4437-a0f0-19ce5e0a98ba
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628237797;
  h=from:to:subject:date:message-id:references:in-reply-to:
   content-transfer-encoding:mime-version;
  bh=JRE95ehyHLQk8y7sIUE51gKY2bQTP9Owi7aqUrhVcSM=;
  b=fLqBMkDte38wEWV57vKzBRiIcPNTVDSBaZAPYTnJwSrSFt2c270qJDkh
   Q3F+poYCpXUdMP8eLqh7SpujPAuRqGzU6QBbrZZomZAKnIGPIYnjIN7Wd
   zrdL/ClWnaTBu7LhOFZ2rr5phiRaE9DYgxFdF+CBm0Kary4UCQaz/EZWj
   g=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: D0QguzowzSlBtL88rlfqLovXmSm/F9ww0PTym3plIYQVbSmv9bhMC3hJE3VcHDv8WRcCZwkNUW
 YZKpDytYjLkDoxZUxgPm7FDU4HVt36q+Lv58m8A/MlvfawujoTk1QXVwLV+gHGb71FlnUz8AR+
 h80pRNtyfB0cJV4Zp2iKvQUZxTDuI/7CSYWMcbM7mQBIYQPcS56IxE/8joRd8wEK8OSG93LEwK
 S1qlotZ2EXrhEj4iubtFekNnzJBpvm3UY5sU9+JOHXNPSfoYHGQ3qQnQ1cyXItF7oNR4tCDbO+
 TlumW6zUDfP/J3pjo9JaOCKL
X-SBRS: 5.1
X-MesageID: 49887945
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:BQzXvqwt3EcVkUCxVJ9+KrPw1r1zdoMgy1knxilNoHxuH/BwWf
 rPoB17726RtN91YhsdcL+7V5VoLUmzyXcX2/h1AV7BZniEhILAFugLgbcKqweKJ8SUzJ8+6U
 4PSclD4N2bNykGsS75ijPIb+rJFrO8gd+VbeS19QYScelzAZsQiDuQkmygYzZLrA8tP+teKL
 OsovBpihCHYnotYsGyFhA+LpL+T42iruOeXfYebSRXkDWzsQ==
X-IronPort-AV: E=Sophos;i="5.84,300,1620705600"; 
   d="scan'208";a="49887945"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=K6ZZhMqPmyv+eHj8cckh9VhC6M2BkmGQKjFGmcLN4hhWEkaT4AB5Um5DGy1fIBzWDqNiSIxTnbry3hZpXWTvj9KKNLn2LMkw/PSAy2NfEmBK4jjlw/OZGbKBxzx9pTAUxti357jTP31CHIKXjE2jyHmXNSZ8Rdd2ennmxBC2oN7fNnu3b0Nl7ZtmsrViqu+nhJ3FOgd0RFiWmFBwepqPoMMH3u/MPZB+eow1xctCu1iz3gFl8L+yVpTPLU8FSFO00GmKN3aeIbaCk5I/hD+amA+/KCRyWxolEOpEy5BtWsIg4R7STpqJ/DlfLsdqENLa7Dfdn1iIwi5BooP91j3iQA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JRE95ehyHLQk8y7sIUE51gKY2bQTP9Owi7aqUrhVcSM=;
 b=CmmR91QyVxkS8l2PdMtkZJPmvc8N9f4ZhWwMe2dvNql9YMFqg6YUkNkLQ6KBOd2LcHx/aRbWP9HU3mYasNyP9lI7Sm/tYzo++buMIV9mNODSssxIDmhOxvFXZ3OKXqp1Dqd/beXs/56QlJ56LjmTbH59BqwVkZDXKK1uA9Q8M6g7asNwwissA/0pskg7R/vRDU7FX5jee1tnKimX7CB5y01Gv2wAoBBq0PiQaMbrjnPhgRx2Z1OiiZeyisJx934Yzwp1NuXcY0aqpbHHP6su7rWhJOw12lqLfCSf1gmD820EAdmbO2kuSoK2ii420wZ06MHxqQlEmaIZggCkiCplsA==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=JRE95ehyHLQk8y7sIUE51gKY2bQTP9Owi7aqUrhVcSM=;
 b=eVZU5P4SWstLvhfWGp7FP9Crbh3pn/At8QZSezfGWOIjDrD8hkm3aiuPX71NFIo4RVNr6Ou8oXZNufifdUCHF4ra/xKJFFNNIuXP1znZz8gw2O0V4FbNGOjFuK4UhRxeULTGSqmzXBi4Cw39K8A5xFZizARpkm5BenWAnRF17DQ=
From: Owen Smith <owen.smith@citrix.com>
To: "paul@xen.org" <paul@xen.org>, "win-pv-devel@lists.xenproject.org"
	<win-pv-devel@lists.xenproject.org>
Subject: RE: [PATCH] Fix compile on EWDK 22000
Thread-Topic: [PATCH] Fix compile on EWDK 22000
Thread-Index: AQHXiHVJcxi3OnJWtEapR2lSY4u7W6tlOSAAgADrLfA=
Date: Fri, 6 Aug 2021 08:16:33 +0000
Message-ID: <DS7PR03MB54775AD474D4F976C69A9666FEF39@DS7PR03MB5477.namprd03.prod.outlook.com>
References: <20210803143848.1157-1-owen.smith@citrix.com>
 <1548b55b-5e0e-d693-d3c3-6cc971cc69ca@xen.org>
In-Reply-To: <1548b55b-5e0e-d693-d3c3-6cc971cc69ca@xen.org>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: cdab3472-538a-4be5-5abb-08d958b280c8
x-ms-traffictypediagnostic: DM6PR03MB5353:
x-microsoft-antispam-prvs: <DM6PR03MB5353269475661FDCB6FEA52CFEF39@DM6PR03MB5353.namprd03.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:8882;
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: DBZXC0KzGzKmPhBO6lJJW3gdFW/G6IuiPlZUzaQ75Be7CYDq5jXAQhD6OpXwbvylTDXtpb5YKKDhYk9OMq5Q/cfNr263bf2Z8D6fgnSbr3al0e4YIUdVlwEJzCAkkIrF8y2w3MrLJVDq6WQk+xJyYJkzqjukhXMhoYZYhx6vX9HTX5dOVHXmxGyaspe+iDoURPxVZoYm05IEKomqXVwW9A8O7Pb4AJmzMc4SmVBHEO7or49TVCDVVitJZdIhcyvDKtAI5A0zTAG5RFZbI9UlwLmg+J4dRAqIciRWF4fg2BqJcRObZDPTGSxryGT2SsFmJBx0CSSrXDmVwtxyRIleeNoU8umqGi1mEUlsynXuijtWb++pOTBlZRLBZZzlMPzsVWU4c0ioN7Cv9gBm6Db8GfMi3Lqf4N2EMXzgO7T/UPh2W8NjNMlMjARl8SzInHtYJlApdrFQ7LvSQPzeKFWn8L/XwuTUmTX0wCnu8wb1clrWq6OGh2clbwhR8iNIBv9sYRq+e70t4GC2zsngo3A0fY60GTlX6RdLWnlJzBqBGk+prF4ZmN5zrxqZKR9BhpJN1AHXJKxq2k8lz+EcY0sgNs3Jl+5phk1W28+iRXXfRLIpL2uvveqdHGdVxReHvnJM+cR4ARHbgsKZjaY9/8h4DeHK9Q1Hm0CH9kl6S06qLrn5dOkKUi6xZVzatyUt8PjVuIOYrYmFztSaOylfbFebhVzKRqGGHWbDYGzzl9AklWw=
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5477.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(366004)(346002)(396003)(39860400002)(376002)(8676002)(9686003)(66946007)(83380400001)(66476007)(76116006)(44832011)(71200400001)(55016002)(66446008)(64756008)(66556008)(478600001)(8936002)(5660300002)(38100700002)(2906002)(110136005)(186003)(26005)(53546011)(33656002)(38070700005)(316002)(52536014)(7696005)(122000001)(6506007)(86362001)(460985005);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Tm9TMjBHZnFBb1Q3WVVZSmp2UHNKMk8wemdwdkVvbVh1enBBaTVtZzlCOWF2?=
 =?utf-8?B?ZElvWmlyaVE4cDdQRldKVlJVMHBIbkRSRVhuVitYbHBrcjdrNEt1MmdyaU5U?=
 =?utf-8?B?ZElteXZqWDJFWTNXazJqdmZJbzVOcE5mOVdTUzltZ1JQUEZDMjU4RkhzNlM3?=
 =?utf-8?B?alhmcXI0cm9DblZ6WU9vMmtqS1hHbkZ2TUlqdWxpTDQyOVpldUFFRmZIL2k0?=
 =?utf-8?B?OUZMMlNSSkVTT29hVDhDNmkxeTNXekFzV3hSQ3NsNzZRaWhZNisvdXU5K2px?=
 =?utf-8?B?Y2lkY2pQUWQvbkw4ZjM5cW8xMEh0Y0ZWVElYTGUwSDJ4Nm5ESVVQdXlxSy9R?=
 =?utf-8?B?UE84cUl6Rm1QdVh6MmNHUndwYmYxSnJ3K3ZkMnZTbHNJUUEySmZVRDVhb01B?=
 =?utf-8?B?ODdNRFdJbGN1WHF6R1BPM2JFZk03b3orK3dmRHpBR0ZSVThBTi9xUmxWS1B1?=
 =?utf-8?B?RnkyMjRDNmsxRXNIRVlkYjVIcWVIKzdyS0daVGFTbjNXYmtZWEtHNzU5b1VV?=
 =?utf-8?B?ZWdxWDBDQXR5RnNYYURuQjRjYXo1bjZvMDZqT3M3OFFNcUhuOHpWa0lycVZl?=
 =?utf-8?B?OGNsL0VBcGk5bzFVcnNOU1AvZzdlREQ0MHlQbk44UkZEU29ERExPejRCM1Rs?=
 =?utf-8?B?ei9kRHBuWXhBREQxcmk3ZkNVNDM3cUFYUE9xMktObmlrK2t4bU4wY2tRK2hm?=
 =?utf-8?B?UEVwdEFybUp2OU1GdHVHVzJXOU13bU9wZmtYckhWcUJWQlBPbnkvQWxSNkZZ?=
 =?utf-8?B?aHRNcmM0MFRMdTdDM0daazJPQTFMRXFRTGFvMEc4UFY4TDkvV1ZDeW9Pc0Jr?=
 =?utf-8?B?RkRjcnJKbUQ1cjJWYm82aHU2WkpWQTF0ZGlaYzhiaDh4bTBuWVJycGFzM2xa?=
 =?utf-8?B?TURUODFuVEJ4N1lOcDdnVWxsQmxSeWVIaDc1UDc2WmxkdFBDdHRaOGFnM1VQ?=
 =?utf-8?B?dlhmeGRHTzUzUGFMaGJvdWZUbE8ycTJzRlVxMjBqaWRnQ01mQXpEZUk4QWtr?=
 =?utf-8?B?R3QxbDF1UG9ra2xlcm1rcTV1dTUrMXBjSWxCekVlck93cUk1cEtYTTd1OThu?=
 =?utf-8?B?amJkVGNCcUkyQWdJZ0w2V09MYjliUWVEcHUwOUk5RFd3R3YxQmRQencrNWEv?=
 =?utf-8?B?QTBUdEtIWGxvUGFmcTZEK2tIWXRvMCtTaVZNR0FoeDlsMlBNL01XZkJKVlUw?=
 =?utf-8?B?cExIM3NicENQZm9TV0xtWkE3cVJ5bmFoUTJ3NGg2RWQxNUFXQ1J2OTE1eEJO?=
 =?utf-8?B?bXZhU2luN1FaUExBTjczMXJhRlJkOUZKdlQ1c2NHQ3VQMXUzWmxBb2UzaGo3?=
 =?utf-8?B?ek1sM3FvZXlYeExxTzBpRi95RlFiSEt3SjdQZitaczBpNFNJemJoc1dsM3ls?=
 =?utf-8?B?UVA1S05OZlVFVytxL2x1QXluSVBndjV0MUlMakJLRmV2VTZBdU1BWXZpSDAw?=
 =?utf-8?B?MFJoazQrUHNVQUV4aFFFZit0NVRVK1dEMEFjM2wyLys2ZjlxTlQyN2ExNUJP?=
 =?utf-8?B?Z2FhOU9aczhYQnNKNVRvclZVeDlHUFhwTWQ5dWtKMHVtNVB3cEJMSFM5UTAv?=
 =?utf-8?B?UEZyOXJPVllzUFRlVk9SRnVPc3B6MVhXbXQwYjJqYTQyaEdOWUR0bVRIUmN2?=
 =?utf-8?B?YjM3Nlh2SHBrZnRibnRWYk80aVRNanYyVTVENGVjYXVZdGRacDVOUERIUnNV?=
 =?utf-8?B?b3FodHEzOXhrOWg1NllKOFEwckVEUjRMMGEyaTVobEViTWNpY1ljNVJhcnhk?=
 =?utf-8?Q?dTHieqTGhon0tN36Jg=3D?=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5477.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: cdab3472-538a-4be5-5abb-08d958b280c8
X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Aug 2021 08:16:33.6398
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: jb1wqoh/wNzouJY7W7mm758qSJyjRK67NpbXqFzVNlB4n+MAuskO0o3U9Do53O8tI5cCJ24K7zJsMY4a8wYM9A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR03MB5353
X-OriginatorOrg: citrix.com

DQotLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KRnJvbTogd2luLXB2LWRldmVsIDx3aW4tcHYt
ZGV2ZWwtYm91bmNlc0BsaXN0cy54ZW5wcm9qZWN0Lm9yZz4gT24gQmVoYWxmIE9mIFBhdWwgRHVy
cmFudA0KU2VudDogVGh1cnNkYXksIEF1Z3VzdCA1LCAyMDIxIDc6MDkgUE0NClRvOiB3aW4tcHYt
ZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcNClN1YmplY3Q6IFJlOiBbUEFUQ0hdIEZpeCBjb21w
aWxlIG9uIEVXREsgMjIwMDANCg0KW0NBVVRJT04gLSBFWFRFUk5BTCBFTUFJTF0gRE8gTk9UIHJl
cGx5LCBjbGljayBsaW5rcywgb3Igb3BlbiBhdHRhY2htZW50cyB1bmxlc3MgeW91IGhhdmUgdmVy
aWZpZWQgdGhlIHNlbmRlciBhbmQga25vdyB0aGUgY29udGVudCBpcyBzYWZlLg0KDQpPbiAwMy8w
OC8yMDIxIDE1OjM4LCBPd2VuIFNtaXRoIHdyb3RlOg0KPiAtIEFkZHMgd2FybmluZ3MgNDA2MSBh
bmQgNDA2MiB0byBpZ25vcmUgbGlzdA0KPiAtIERlZmluZXMgc2lnbnRvb2wgZmlsZSBkaWdlc3Qg
YXMgU0hBMjU2DQo+IC0gQWRkcyBhbGlhcyBmb3IgR2V0UHJvamVjdEluZm9Gb3JSZWZlcmVuY2Ug
dGFyZ2V0DQo+ICAgIEl0IGFwcGVhcnMgdGhhdCBWUzIwMTkvRVdESzIyMDAwIGNoYW5nZWQgYSB0
YXJnZXQgbmFtZSwgYW5kIHdpdGhvdXQgdGhlIGFsaWFzDQo+ICAgIHRoZSBidWlsZCB3aWxsIGZh
aWwuDQo+IA0KPiBTaWduZWQtb2ZmLWJ5OiBPd2VuIFNtaXRoIDxvd2VuLnNtaXRoQGNpdHJpeC5j
b20+DQoNCkRvIHRoZSBvdGhlciBkcml2ZXJzIGFsc28gc3VmZmVyIGZyb20gdGhpcyBwcm9ibGVt
Pw0KDQogICBQYXVsDQoNCg0KQWxsIHRoZSBkcml2ZXJzIHN1ZmZlciB0aGUgc2FtZSBwcm9ibGVt
LCBhbmQgSSdtIG5vdyBsb29raW5nIGF0IGdldHRpbmcgU0RWL0NvZGVRTC9Db2RlQW5hbHlzaXMg
bG9ncyBjb3JyZWN0IGZvciB0aGUgU3RhdGljIFRvb2xzIExvZ28gdGVzdCBpbiB0aGUgU2VydmVy
IDIwMjIgSExLLCB3aGljaCBsb29rcyBsaWtlIG1vcmUgd29yayBpcyBuZWVkZWQuIEZyb20gd2hh
dCBJIGNhbiB0ZWxsLCB0aGUgRFZMLlhNTCBsb2dzIHNob3VsZCBoYXZlIGFuIGVudHJ5IGZvciBD
b2RlQW5hbHlzaXMgYW5kIFNlbW1sZSAoQ29kZVFMKSBpbmRpY2F0aW5nIHRoZXNlIHRvb2xzIGhh
dmUgYmVlbiBydW4gKEknbSBub3Qgc3VyZSB5ZXQgaWYgdGhlIGxvZ3MgbmVlZCB0byBiZSBjbGVh
bikuIFNvIGZhciwgaXQgbG9va3MgbGlrZSBTRFYgd2l0aCAyMDM0NCBhbmQgMjIwMDAgY2Fubm90
IGNvcGUgd2l0aCBSdW5Db2RlQW5hbHlzaXM9dHJ1ZSBhbmQgRW5hYmxlUFJFRmFzdD10cnVlIGF0
IGxlYXN0IGR1cmluZyB0aGUgInNkdiAvY2hlY2siIHN0ZXAuIChEb3duc2lkZSBpcyB0ZXN0aW5n
IHRoaXMgaXMgdmVyeSBzbG93LCBhcyBJIG11c3QgY29tcGxldGUgYSBTRFYgYW5hbHlzaXMgY3lj
bGUgd2hpY2ggY2FuIHRha2Ugc2V2ZXJhbCBob3VycyB0byBjb21wbGV0ZSkNCg0KT3dlbg0KDQo+
IC0tLQ0KPiAgIHZzMjAxOS9wYWNrYWdlL3BhY2thZ2UudmN4cHJvaiAgICAgICAgICAgICB8IDUg
KysrKysNCj4gICB2czIwMTkvdmVyc2lvbi92ZXJzaW9uLnZjeHByb2ogICAgICAgICAgICAgfCA2
ICsrKysrKw0KPiAgIHZzMjAxOS94ZW5uZXQveGVubmV0LnZjeHByb2ogICAgICAgICAgICAgICB8
IDcgKysrKysrLQ0KPiAgIHZzMjAxOS94ZW5uZXRfY29pbnN0L3hlbm5ldF9jb2luc3QudmN4cHJv
aiB8IDUgKysrKysNCj4gICA0IGZpbGVzIGNoYW5nZWQsIDIyIGluc2VydGlvbnMoKyksIDEgZGVs
ZXRpb24oLSkNCj4gDQo+IGRpZmYgLS1naXQgYS92czIwMTkvcGFja2FnZS9wYWNrYWdlLnZjeHBy
b2ogDQo+IGIvdnMyMDE5L3BhY2thZ2UvcGFja2FnZS52Y3hwcm9qIGluZGV4IGRkNzk0YjUuLmU0
YzZmMGYgMTAwNjQ0DQo+IC0tLSBhL3ZzMjAxOS9wYWNrYWdlL3BhY2thZ2UudmN4cHJvag0KPiAr
KysgYi92czIwMTkvcGFja2FnZS9wYWNrYWdlLnZjeHByb2oNCj4gQEAgLTU2LDYgKzU2LDExIEBA
DQo+ICAgICA8SXRlbUdyb3VwPg0KPiAgICAgICA8UGFja2FnZUZpbGVzIEluY2x1ZGU9IiQoT3V0
RGlyKVwkKFByb2plY3ROYW1lKVwqIiAvPg0KPiAgICAgPC9JdGVtR3JvdXA+DQo+ICsgIDxJdGVt
RGVmaW5pdGlvbkdyb3VwPg0KPiArICAgIDxEcml2ZXJTaWduPg0KPiArICAgICAgPEZpbGVEaWdl
c3RBbGdvcml0aG0+c2hhMjU2PC9GaWxlRGlnZXN0QWxnb3JpdGhtPg0KPiArICAgIDwvRHJpdmVy
U2lnbj4NCj4gKyAgPC9JdGVtRGVmaW5pdGlvbkdyb3VwPg0KPiAgICAgPFRhcmdldCBOYW1lPSJB
cmNoaXZlIiBBZnRlclRhcmdldHM9IlRlc3RTaWduIj4NCj4gICAgICAgPENvcHkNCj4gICAgICAg
ICAgU291cmNlRmlsZXM9IkAoUGFja2FnZUZpbGVzKSINCj4gZGlmZiAtLWdpdCBhL3ZzMjAxOS92
ZXJzaW9uL3ZlcnNpb24udmN4cHJvaiANCj4gYi92czIwMTkvdmVyc2lvbi92ZXJzaW9uLnZjeHBy
b2ogaW5kZXggOWQxNDlkMC4uYjZlYzZmMyAxMDA2NDQNCj4gLS0tIGEvdnMyMDE5L3ZlcnNpb24v
dmVyc2lvbi52Y3hwcm9qDQo+ICsrKyBiL3ZzMjAxOS92ZXJzaW9uL3ZlcnNpb24udmN4cHJvag0K
PiBAQCAtMTMsNCArMTMsMTAgQEANCj4gICAgIDxUYXJnZXQgTmFtZT0iQnVpbGQiPg0KPiAgICAg
ICA8RXhlYyBDb21tYW5kPSJwb3dlcnNoZWxsLmV4ZSAtRXhlY3V0aW9uUG9saWN5IEJ5cGFzcyAt
Tm9Qcm9maWxlIC1Ob25JbnRlcmFjdGl2ZSAtRmlsZSAkKFNjcmlwdCkgJChQbGF0Zm9ybSkgJChT
b2x1dGlvbkRpcikgJChJbmNsdWRlRGlyKSAkKFNvdXJjZURpcikiIC8+DQo+ICAgICA8L1Rhcmdl
dD4NCj4gKyAgPFRhcmdldCBOYW1lPSJHZXRQcm9qZWN0SW5mb0ZvclJlZmVyZW5jZSINCj4gKyAg
ICAgICAgICBSZXR1cm5zPSJAKFByb2plY3RJbmZvRm9yUmVmZXJlbmNlKSI+DQo+ICsgICAgPEl0
ZW1Hcm91cD4NCj4gKyAgICAgIDxQcm9qZWN0SW5mb0ZvclJlZmVyZW5jZSBJbmNsdWRlPSJAKExp
YkZ1bGxQYXRoKSIgLz4NCj4gKyAgICA8L0l0ZW1Hcm91cD4NCj4gKyAgPC9UYXJnZXQ+DQo+ICAg
PC9Qcm9qZWN0Pg0KPiBkaWZmIC0tZ2l0IGEvdnMyMDE5L3hlbm5ldC94ZW5uZXQudmN4cHJvaiAN
Cj4gYi92czIwMTkveGVubmV0L3hlbm5ldC52Y3hwcm9qIGluZGV4IDAyN2RjNGEuLmJlYjViYjMg
MTAwNjQ0DQo+IC0tLSBhL3ZzMjAxOS94ZW5uZXQveGVubmV0LnZjeHByb2oNCj4gKysrIGIvdnMy
MDE5L3hlbm5ldC94ZW5uZXQudmN4cHJvag0KPiBAQCAtMjYsNyArMjYsNyBAQA0KPiAgICAgICAg
IDxJbnRyaW5zaWNGdW5jdGlvbnM+dHJ1ZTwvSW50cmluc2ljRnVuY3Rpb25zPg0KPiAgICAgICAg
IDxBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzPiQoV2luZG93c1Nka0RpcilcaW5jbHVkZVxr
bTsuLlwuLlxpbmNsdWRlOy4uXC4uXGluY2x1ZGVceGVuOzwvQWRkaXRpb25hbEluY2x1ZGVEaXJl
Y3Rvcmllcz4NCj4gICAgICAgICA8V2FybmluZ0xldmVsPkVuYWJsZUFsbFdhcm5pbmdzPC9XYXJu
aW5nTGV2ZWw+DQo+IC0gICAgICA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3M+NDQ2NDs0NzExOzQ3
NzA7NDU0ODs0ODIwOzQ2Njg7NDI1NTs1MDQ1OzYwMDE7NjA1NDsyNjQ1MTsyODE2MDsyODE5Njsz
MDAzMDszMDAyOTslKERpc2FibGVTcGVjaWZpY1dhcm5pbmdzKTwvRGlzYWJsZVNwZWNpZmljV2Fy
bmluZ3M+DQo+ICsgICAgICANCj4gKyA8RGlzYWJsZVNwZWNpZmljV2FybmluZ3M+NDA2MTs0MDYy
OzQ0NjQ7NDcxMTs0NzcwOzQ1NDg7NDgyMDs0NjY4OzQyNQ0KPiArIDU7NTA0NTs2MDAxOzYwNTQ7
MjY0NTE7MjgxNjA7MjgxOTY7MzAwMzA7MzAwMjk7JShEaXNhYmxlU3BlY2lmaWNXYXJuDQo+ICsg
aW5ncyk8L0Rpc2FibGVTcGVjaWZpY1dhcm5pbmdzPg0KPiAgICAgICAgIDxNdWx0aVByb2Nlc3Nv
ckNvbXBpbGF0aW9uPnRydWU8L011bHRpUHJvY2Vzc29yQ29tcGlsYXRpb24+DQo+ICAgICAgICAg
PEVuYWJsZVBSRWZhc3Q+dHJ1ZTwvRW5hYmxlUFJFZmFzdD4NCj4gICAgICAgPC9DbENvbXBpbGU+
DQo+IEBAIC03MSw1ICs3MSwxMCBAQA0KPiAgICAgPEl0ZW1Hcm91cD4NCj4gICAgICAgPFJlc291
cmNlQ29tcGlsZSBJbmNsdWRlPSIuLlwuLlxzcmNceGVubmV0XHhlbm5ldC5yYyIgLz4NCj4gICAg
IDwvSXRlbUdyb3VwPg0KPiArICA8SXRlbURlZmluaXRpb25Hcm91cD4NCj4gKyAgICA8RHJpdmVy
U2lnbj4NCj4gKyAgICAgIDxGaWxlRGlnZXN0QWxnb3JpdGhtPnNoYTI1NjwvRmlsZURpZ2VzdEFs
Z29yaXRobT4NCj4gKyAgICA8L0RyaXZlclNpZ24+DQo+ICsgIDwvSXRlbURlZmluaXRpb25Hcm91
cD4NCj4gICAgIDxJbXBvcnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxNaWNyb3NvZnQuQ3Bw
LnRhcmdldHMiIC8+DQo+ICAgPC9Qcm9qZWN0Pg0KPiBkaWZmIC0tZ2l0IGEvdnMyMDE5L3hlbm5l
dF9jb2luc3QveGVubmV0X2NvaW5zdC52Y3hwcm9qIA0KPiBiL3ZzMjAxOS94ZW5uZXRfY29pbnN0
L3hlbm5ldF9jb2luc3QudmN4cHJvag0KPiBpbmRleCBhMTU5YWJkLi40NWNhMDVhIDEwMDY0NA0K
PiAtLS0gYS92czIwMTkveGVubmV0X2NvaW5zdC94ZW5uZXRfY29pbnN0LnZjeHByb2oNCj4gKysr
IGIvdnMyMDE5L3hlbm5ldF9jb2luc3QveGVubmV0X2NvaW5zdC52Y3hwcm9qDQo+IEBAIC01Myw1
ICs1MywxMCBAQA0KPiAgICAgPEl0ZW1Hcm91cD4NCj4gICAgICAgPE5vbmUgSW5jbHVkZT0iLi5c
Li5cc3JjXGNvaW5zdFx4ZW5uZXRfY29pbnN0LmRlZiIgLz4NCj4gICAgIDwvSXRlbUdyb3VwPg0K
PiArICA8SXRlbURlZmluaXRpb25Hcm91cD4NCj4gKyAgICA8RHJpdmVyU2lnbj4NCj4gKyAgICAg
IDxGaWxlRGlnZXN0QWxnb3JpdGhtPnNoYTI1NjwvRmlsZURpZ2VzdEFsZ29yaXRobT4NCj4gKyAg
ICA8L0RyaXZlclNpZ24+DQo+ICsgIDwvSXRlbURlZmluaXRpb25Hcm91cD4NCj4gICAgIDxJbXBv
cnQgUHJvamVjdD0iJChWQ1RhcmdldHNQYXRoKVxNaWNyb3NvZnQuQ3BwLnRhcmdldHMiIC8+DQo+
ICAgPC9Qcm9qZWN0Pg0KPiANCg0KDQo=


From win-pv-devel-bounces@lists.xenproject.org Tue Aug 10 15:41:03 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 10 Aug 2021 15:41:03 +0000
Received: from list by lists.xenproject.org with outflank-mailman.165397.302274 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mDTsD-0005B5-Tw; Tue, 10 Aug 2021 15:41:01 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 165397.302274; Tue, 10 Aug 2021 15:41:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mDTsD-0005Ay-Qd; Tue, 10 Aug 2021 15:41:01 +0000
Received: by outflank-mailman (input) for mailman id 165397;
 Tue, 10 Aug 2021 15:40:59 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TXnd=NB=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mDTsB-0005AO-NK
 for win-pv-devel@lists.xenproject.org; Tue, 10 Aug 2021 15:40:59 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5b4ccb7c-f9f1-11eb-9fc0-12813bfff9fa;
 Tue, 10 Aug 2021 15:40:58 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5b4ccb7c-f9f1-11eb-9fc0-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628610058;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=h6/OsXfU8NRlDsfiCl1LO/DNErhmChGllADOnJFb1Qs=;
  b=S75xXXVFo3MHy7vukljGdt9VYNQ4AZ+bjLNbOW8KxAgr3sCWWpvBjvcg
   vAS00wC9X1OdH6YbRRr9+zid1dj27Sv1/ijh220czwHXohwpAUYORmfDn
   hL40bP76Tx/+zpVvXj+YFfAYp04dyCJeO+b2lVWwSYuS0+b6cvcTHPwwb
   c=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: wVYaF4HYvKZGPJdxYiXfFuklHNGYnbkqSonKepvokiDRR0ifAbNAgmo7ef80Dt5weL2oto0VA1
 thVSBo6KmM7yXivQm6bikFPpWVkgOOKT6jrQ52MIrCJHkYpxbVZS/xvO2XlniSyZ9D7FE6D5IF
 l1KUq3qszHdsl8Z7RiAiImQFq5sc9GoOSFHGnmVMSXbWPYfVIFoT5LR0iQ7wmzvuxTIyfJD8h2
 VOL5tUsT8sFlZLzPvzzAdZJrTBZ9WP/IbNFkxnkWjjxKzD4NkfvuAaJNZSglYTPW75p/R35eh1
 QY4cMBUYHtl6WQnyxLE3ajyQ
X-SBRS: 5.1
X-MesageID: 49782993
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:/cHH2KN545ZeyMBcTjejsMiBIKoaSvp037BK7S1MoNJuEvBw9v
 re+sjzsCWftN9/Yh4dcLy7VpVoBEmsl6KdgrNhWotKPjOW21dARbsKheffKn/bakjDH4Zmvp
 uIGJIObOEYY2IasS77ijPIbOrJwrO8gd6VbTG19QYdceloAZsQnzuQEmygYzRLrJEtP+tFKH
 KbjPA33waISDAsQemQIGIKZOTHr82jruObXfZXbyRXkzVnlFmTmcTHLyQ=
X-IronPort-AV: E=Sophos;i="5.84,310,1620705600"; 
   d="scan'208";a="49782993"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 2/3] Fix SDV/CodeQL log generation
Date: Tue, 10 Aug 2021 16:40:47 +0100
Message-ID: <20210810154048.1006-2-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
In-Reply-To: <20210810154048.1006-1-owen.smith@citrix.com>
References: <20210810154048.1006-1-owen.smith@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- sarif files need to be stored with SDV logs when generating the DVL file
- Disable PREFast and CodeAnalysis by default
- Run a seperate CodeAnalysis build after SDV, but before generating DVL file
    DVL file should contain multiple summary lines for SDV, at least 1 line
    for CodeAnalysis and at least 1 line for Semmle (CodeQL)

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 msbuild.ps1                    | 25 ++++++++++++++++++-------
 vs2019/xen/xen.vcxproj         |  2 --
 vs2019/xenbus/xenbus.vcxproj   |  2 --
 vs2019/xenfilt/xenfilt.vcxproj |  2 --
 4 files changed, 18 insertions(+), 13 deletions(-)

diff --git a/msbuild.ps1 b/msbuild.ps1
index de7ad52..846abd2 100644
--- a/msbuild.ps1
+++ b/msbuild.ps1
@@ -17,7 +17,8 @@ Function Run-MSBuild {
 		[string]$Configuration,
 		[string]$Platform,
 		[string]$Target = "Build",
-		[string]$Inputs = ""
+		[string]$Inputs = "",
+		[switch]$CodeAnalysis
 	)
 
 	$c = "msbuild.exe"
@@ -28,6 +29,11 @@ Function Run-MSBuild {
 	if ($Inputs) {
 		$c += [string]::Format(" /p:Inputs=""{0}"" ", $Inputs)
 	}
+	if ($CodeAnalysis) {
+		$c += "/p:RunCodeAnalysis=true "
+		$c += "/p:EnablePREFast=true "
+	}
+
 	$c += Join-Path -Path $SolutionPath -ChildPath $Name
 
 	Invoke-Expression $c
@@ -55,6 +61,7 @@ Function Run-MSBuildSDV {
 	Run-MSBuild $projpath $project $Configuration $Platform "Build"
 	Run-MSBuild $projpath $project $Configuration $Platform "sdv" "/clean"
 	Run-MSBuild $projpath $project $Configuration $Platform "sdv" "/check:default.sdv /debug"
+	Run-MSBuild $projpath $project $Configuration $Platform "Build" -CodeAnalysis
 	Run-MSBuild $projpath $project $Configuration $Platform "dvl"
 
 	$refine = Join-Path -Path $projpath -ChildPath "refine.sdv"
@@ -73,14 +80,14 @@ Function Run-CodeQL {
 		[string]$Name,
 		[string]$Configuration,
 		[string]$Platform,
-		[string]$SearchPath,
-		[string]$OutputPath
+		[string]$SearchPath
 	)
 
 	$projpath = Resolve-Path (Join-Path $SolutionPath $Name)
 	$project = [string]::Format("{0}.vcxproj", $Name)
 	$output = [string]::Format("{0}.sarif", $Name)
 	$database = Join-Path "database" $Name
+	$sarif = Join-Path $projpath $output
 
 	# write a bat file to wrap msbuild parameters
 	$bat = [string]::Format("{0}.bat", $Name)
@@ -120,7 +127,7 @@ Function Run-CodeQL {
 	$c += " windows_driver_recommended.qls"
 	$c += " --format=sarifv2.1.0"
 	$c += " --output="
-	$c += (Join-Path $OutputPath $output)
+	$c += $sarif
 	$c += " --search-path="
 	$c += $SearchPath
 
@@ -129,6 +136,8 @@ Function Run-CodeQL {
 		Write-Host -ForegroundColor Red "ERROR: CodeQL failed, code:" $LASTEXITCODE
 		Exit $LASTEXITCODE
 	}
+
+	Copy-Item $sarif -Destination $SolutionPath
 }
 
 #
@@ -165,9 +174,11 @@ elseif ($Type -eq "codeql") {
 	}
 	New-Item -ItemType Directory "database"
 
-	Run-CodeQL $solutionpath "xen" $configuration["codeql"] $platform[$Arch] $searchpath $archivepath
-	Run-CodeQL $solutionpath "xenfilt" $configuration["codeql"] $platform[$Arch] $searchpath $archivepath
-	Run-CodeQL $solutionpath "xenbus" $configuration["codeql"] $platform[$Arch] $searchpath $archivepath
+	Run-CodeQL $solutionpath "xen" $configuration["codeql"] $platform[$Arch] $searchpath
+	Run-CodeQL $solutionpath "xenfilt" $configuration["codeql"] $platform[$Arch] $searchpath
+	Run-CodeQL $solutionpath "xenbus" $configuration["codeql"] $platform[$Arch] $searchpath
+
+	Copy-Item -Path (Join-Path -Path $SolutionPath -ChildPath "*.sarif") -Destination $archivepath
 }
 elseif ($Type -eq "sdv") {
 	$archivepath = "xenbus"
diff --git a/vs2019/xen/xen.vcxproj b/vs2019/xen/xen.vcxproj
index 237c348..4e20444 100644
--- a/vs2019/xen/xen.vcxproj
+++ b/vs2019/xen/xen.vcxproj
@@ -13,7 +13,6 @@
   <Import Project="..\targets.props" />
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <PropertyGroup>
-    <RunCodeAnalysis>true</RunCodeAnalysis>
     <EnableInf2cat>false</EnableInf2cat>
     <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
     <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
@@ -26,7 +25,6 @@
       <WarningLevel>EnableAllWarnings</WarningLevel>
       <DisableSpecificWarnings>4146;4464;4711;4770;4548;4820;4668;4255;5045;6001;6054;26451;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
-      <EnablePREfast>true</EnablePREfast>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
diff --git a/vs2019/xenbus/xenbus.vcxproj b/vs2019/xenbus/xenbus.vcxproj
index c61141c..7a415b8 100644
--- a/vs2019/xenbus/xenbus.vcxproj
+++ b/vs2019/xenbus/xenbus.vcxproj
@@ -13,7 +13,6 @@
   <Import Project="..\targets.props" />
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <PropertyGroup>
-    <RunCodeAnalysis>true</RunCodeAnalysis>
     <EnableInf2cat>false</EnableInf2cat>
     <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
     <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
@@ -26,7 +25,6 @@
       <WarningLevel>EnableAllWarnings</WarningLevel>
       <DisableSpecificWarnings>4146;4464;4711;4770;4548;4820;4668;4255;5045;6001;6054;26451;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
-      <EnablePREfast>true</EnablePREfast>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
diff --git a/vs2019/xenfilt/xenfilt.vcxproj b/vs2019/xenfilt/xenfilt.vcxproj
index cc0de85..a5c61da 100644
--- a/vs2019/xenfilt/xenfilt.vcxproj
+++ b/vs2019/xenfilt/xenfilt.vcxproj
@@ -13,7 +13,6 @@
   <Import Project="..\targets.props" />
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <PropertyGroup>
-    <RunCodeAnalysis>true</RunCodeAnalysis>
     <EnableInf2cat>false</EnableInf2cat>
     <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
     <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
@@ -26,7 +25,6 @@
       <WarningLevel>EnableAllWarnings</WarningLevel>
       <DisableSpecificWarnings>4464;4711;4770;4548;4820;4668;4255;5045;6001;6054;26451;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
-      <EnablePREfast>true</EnablePREfast>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Tue Aug 10 15:41:06 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 10 Aug 2021 15:41:06 +0000
Received: from list by lists.xenproject.org with outflank-mailman.165398.302278 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mDTsH-0005DK-Vf; Tue, 10 Aug 2021 15:41:05 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 165398.302278; Tue, 10 Aug 2021 15:41:05 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mDTsH-0005DC-SR; Tue, 10 Aug 2021 15:41:05 +0000
Received: by outflank-mailman (input) for mailman id 165398;
 Tue, 10 Aug 2021 15:41:05 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TXnd=NB=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mDTsH-0005D2-Ac
 for win-pv-devel@lists.xenproject.org; Tue, 10 Aug 2021 15:41:05 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5edea512-f9f1-11eb-9fc0-12813bfff9fa;
 Tue, 10 Aug 2021 15:41:04 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5edea512-f9f1-11eb-9fc0-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628610064;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=Afyr3l7ojLwt3Qv4uUcLngTL9KFulPNiW+rl/AWCki8=;
  b=ORCPNtTwVXZYm17NAg+GoAd8GMsK+L4HKpvV5ebccxIdAkjmLR9cf6Jf
   0r6glY3vujYbsoAT5wgDFwRl8D2oI3vbE39LBvOowgsLEx7cTwtRuFmsj
   b9G/pki70wseEgsTZO5z1WgDRae9KNgudvgH/OKcvmYMBYLyexixWlfTH
   o=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: aAtYlWvynfjZ4KINds68/gQU/a0jyYqdJMSMPv585USNN3OiNNOTlafF2TBiQkG+t4NKsu2jhW
 ghhql7Gz8YP985uBVg5VljJwIVaq0H0J3F8xoXp/m3luXuD/c43pHeXALfbmZ8vpwY7Djh4nMB
 D6XHH8gMdTL3GJrNy9d7emu5jgrtDsmLYKUj591Baod1WYuJ6gg5MWCC6OAReMFoS2DrqnlJJX
 i2tGqcogopA9swFBJSg6SAAJbJlRXLXLqsKu90Od+l2UJWVON/rI72XazK3GsjalVNjoS/2NbO
 FqJHf/zLe+InWCvHUDQwWBVg
X-SBRS: 5.1
X-MesageID: 50134296
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:fSOSXaGskYuo+PSwpLqEEseALOsnbusQ8zAXPiBKJCC9vPb5qy
 nOpoV+6faQslwssR4b9uxoVJPvfZq+z+8R3WByB8bAYOCOggLBQL2KhbGI/9SKIVydygcy78
 Zdm6gVMqyMMbB55/yKnDVRxbwbsaa6GKPDv5ah8590JzsaDJ2Jd21Ce32m+ksdfnghObMJUK
 Cyy+BgvDSadXEefq2AdwM4t7iqnayzqHr+CyR2fyIa1A==
X-IronPort-AV: E=Sophos;i="5.84,310,1620705600"; 
   d="scan'208";a="50134296"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 3/3] Fix issues raised by CodeQL
Date: Tue, 10 Aug 2021 16:40:48 +0100
Message-ID: <20210810154048.1006-3-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
In-Reply-To: <20210810154048.1006-1-owen.smith@citrix.com>
References: <20210810154048.1006-1-owen.smith@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- ExAllocatePoolWithTag is deprecated in Windows 10 2004 and replaced with
    ExAllocatePool2. Use ExAllocatePoolUninitialized to maintain support for
    earlier versions of Windows.
- strtol can fail, check for LONG_MIN or LONG_MAX as indicators of an error

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 src/common/util.h      |  4 ++++
 src/xenfilt/emulated.c | 34 ++++++++++++++++++++++++++--------
 2 files changed, 30 insertions(+), 8 deletions(-)

diff --git a/src/common/util.h b/src/common/util.h
index eddad4a..36a36dd 100644
--- a/src/common/util.h
+++ b/src/common/util.h
@@ -151,8 +151,12 @@ __AllocatePoolWithTag(
     __analysis_assume(PoolType == NonPagedPool ||
                       PoolType == PagedPool);
 
+#if (_MSC_VER >= 1928) // VS 16.9 (EWDK 20344 or later)
+    Buffer = ExAllocatePoolUninitialized(PoolType, NumberOfBytes, Tag);
+#else
 #pragma warning(suppress:28160) // annotation error
     Buffer = ExAllocatePoolWithTag(PoolType, NumberOfBytes, Tag);
+#endif
     if (Buffer == NULL)
         return NULL;
 
diff --git a/src/xenfilt/emulated.c b/src/xenfilt/emulated.c
index b7ae510..c0b666e 100644
--- a/src/xenfilt/emulated.c
+++ b/src/xenfilt/emulated.c
@@ -159,9 +159,9 @@ EmulatedSetObjectDiskData(
     )
 {
     PCHAR                               End;
-    ULONG                               Controller;
-    ULONG                               Target;
-    ULONG                               Lun;
+    LONG                                Controller;
+    LONG                                Target;
+    LONG                                Lun;
     NTSTATUS                            status;
 
     UNREFERENCED_PARAMETER(DeviceID);
@@ -171,36 +171,54 @@ EmulatedSetObjectDiskData(
     if (Type != XENFILT_EMULATED_OBJECT_TYPE_IDE)
         goto fail1;
 
+    status = STATUS_INVALID_PARAMETER;
     Controller = strtol(InstanceID, &End, 10);
+    if (Controller == LONG_MIN || Controller == LONG_MAX)
+        goto fail2;
 
     status = STATUS_INVALID_PARAMETER;
     if (*End != '.' || Controller > 1)
-        goto fail2;
+        goto fail3;
 
     End++;
 
+    status = STATUS_INVALID_PARAMETER;
     Target = strtol(End, &End, 10);
+    if (Target == LONG_MIN || Target == LONG_MAX)
+        goto fail4;
 
     status = STATUS_INVALID_PARAMETER;
     if (*End != '.' || Target > 1)
-        goto fail3;
+        goto fail5;
 
     End++;
 
+    status = STATUS_INVALID_PARAMETER;
     Lun = strtol(End, &End, 10);
+    if (Lun == LONG_MIN || Lun == LONG_MAX)
+        goto fail6;
 
     status = STATUS_INVALID_PARAMETER;
     if (*End != '\0')
-        goto fail4;
+        goto fail7;
 
     status = STATUS_NOT_SUPPORTED;
     if (Lun != 0)
-        goto fail5;
+        goto fail8;
 
-    EmulatedObject->Data.Disk.Index = Controller << 1 | Target;
+    EmulatedObject->Data.Disk.Index = (ULONG)Controller << 1 | (ULONG)Target;
 
     return STATUS_SUCCESS;
 
+fail8:
+    Error("fail8\n");
+
+fail7:
+    Error("fail7\n");
+
+fail6:
+    Error("fail6\n");
+
 fail5:
     Error("fail5\n");
 
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Tue Aug 10 15:41:11 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 10 Aug 2021 15:41:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.165399.302282 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mDTsN-0005G7-0g; Tue, 10 Aug 2021 15:41:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 165399.302282; Tue, 10 Aug 2021 15:41:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mDTsM-0005Fz-Tt; Tue, 10 Aug 2021 15:41:10 +0000
Received: by outflank-mailman (input) for mailman id 165399;
 Tue, 10 Aug 2021 15:41:09 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=TXnd=NB=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mDTsL-0005D2-M3
 for win-pv-devel@lists.xenproject.org; Tue, 10 Aug 2021 15:41:09 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 5fe73942-f9f1-11eb-9fc0-12813bfff9fa;
 Tue, 10 Aug 2021 15:41:06 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5fe73942-f9f1-11eb-9fc0-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628610066;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=F277VKbtJ81nnKJfb3oRxktNCnDi/bqC05ld0EcBnFU=;
  b=Ta61iSBLDHSOOlRWUUahf7vhNuzoWfHHkfRVnMOu3+KG+1HXUv/7LO0M
   dc5S4bsLPZr86NvU+EMfZ6MR7tvPogqxOHwevpcrcPs9a5c//hpLc7/pJ
   o7t7Y7WMZfEYQs/diOWbH+myp5jZrImsXclS0p8sSX52mUPZ49+LZ1l8Q
   Q=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: 5hdipdPx23kpKKwTHB0+LMXJVsGp6c1T13vu0hZzyUN+iWtHNoTIZuKLqlczBnL62oYJ3eBJ3E
 kaoAdifo7vVOANaF4IH6y/dyhe9O8MkKHtmP1kRzzjrodKpvVRfMIzEC5wR4XYxv2eea0DsjLT
 p2nq8LaKZ27qNv4V0n/VPlAyV8VT09LmJAYUonAOYnxwUptPC8ZIxmQPQhOyO5hIEIbD0OTWvn
 FXrNM4Zx/Oq9aAYAYGX3Dgi9oXMTCdkNg6nprZhgoDvgDzYMdNGmZZlc4y+Nzg26EtUai8Cj90
 dGB4bgXylw+WQlZ8WPUBzmD8
X-SBRS: 5.1
X-MesageID: 50116083
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:SZqywq+dwoBE1o/ZCohuk+AcI+orL9Y04lQ7vn2ZKSY5TiX4rb
 HKoB1/73XJYVkqN03I9ervBEDiewK/yXcW2+ks1N6ZNWGLhILBFupfBODZsl7d8kPFl9K01c
 1bAtJD4N+bNykGsS4tijPIb+rJw7O8gd+Vbf+19QYIcenzAZsQlzuQDGygYypLbTgDP7UVPr
 yG6PFKojKxEE5nFfhSVhE+Lo7+T8SgruOeXSI7
X-IronPort-AV: E=Sophos;i="5.84,310,1620705600"; 
   d="scan'208";a="50116083"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 1/3] Fix build with later WDKs
Date: Tue, 10 Aug 2021 16:40:46 +0100
Message-ID: <20210810154048.1006-1-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- Adds alias for GetProjectInfoForReference target to version.vcxproj
    Later kits seemed to have renamed the build target, and will fail without
    this alias target.
- Adds "/fd sha256" to signtool command line
    WDK 20344 and later require binaries signed with a SHA256 file digest, or
    the build outputs are deleted
- Fixes warning 4061 - switch statement on enum types need to have a case for
    all values of the enumeration
- Adds XENBUS_STORE_PERM_READ_WRITE - warning is thrown when using
    XENBUS_STORE_PERM_READ | XENBUS_STORE_PERM_WRITE as a case label

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 include/store_interface.h                    |  1 +
 src/common/names.h                           |  7 +++++++
 src/xen/unplug.c                             |  4 ++++
 src/xenbus/evtchn.c                          |  2 ++
 src/xenbus/pdo.c                             |  8 ++++++++
 src/xenbus/store.c                           |  2 +-
 src/xenbus/suspend.c                         |  1 +
 src/xenbus/unplug.c                          |  1 +
 src/xenfilt/driver.c                         |  4 ++++
 src/xenfilt/emulated.c                       |  1 +
 src/xenfilt/pdo.c                            | 10 ++++++++++
 vs2019/package/package.vcxproj               |  5 +++++
 vs2019/version/version.vcxproj               |  6 ++++++
 vs2019/xen/xen.vcxproj                       |  3 +++
 vs2019/xenbus/xenbus.vcxproj                 |  3 +++
 vs2019/xenbus_coinst/xenbus_coinst.vcxproj   |  3 +++
 vs2019/xenbus_monitor/xenbus_monitor.vcxproj |  3 +++
 vs2019/xenfilt/xenfilt.vcxproj               |  3 +++
 18 files changed, 66 insertions(+), 1 deletion(-)

diff --git a/include/store_interface.h b/include/store_interface.h
index e1251dd..7742955 100644
--- a/include/store_interface.h
+++ b/include/store_interface.h
@@ -57,6 +57,7 @@ typedef enum _XENBUS_STORE_PERMISSION_MASK {
     XENBUS_STORE_PERM_NONE = 0,
     XENBUS_STORE_PERM_READ = 1,
     XENBUS_STORE_PERM_WRITE = 2,
+    XENBUS_STORE_PERM_READ_WRITE = 3,
 } XENBUS_STORE_PERMISSION_MASK;
 
 /*! \typedef XENBUS_STORE_PERMISSION
diff --git a/src/common/names.h b/src/common/names.h
index 84267d1..f80b020 100644
--- a/src/common/names.h
+++ b/src/common/names.h
@@ -123,6 +123,7 @@ PowerActionName(
     _POWER_ACTION_NAME(ShutdownReset);
     _POWER_ACTION_NAME(ShutdownOff);
     _POWER_ACTION_NAME(WarmEject);
+    _POWER_ACTION_NAME(DisplayOff);
     default:
         break;
     }
@@ -330,6 +331,10 @@ DeviceUsageNotificationTypeName(
     _DEVICE_USAGE_TYPE_NAME(Paging);
     _DEVICE_USAGE_TYPE_NAME(Hibernation);
     _DEVICE_USAGE_TYPE_NAME(DumpFile);
+    _DEVICE_USAGE_TYPE_NAME(Undefined);
+    _DEVICE_USAGE_TYPE_NAME(Boot);
+    _DEVICE_USAGE_TYPE_NAME(PostDisplay);
+    _DEVICE_USAGE_TYPE_NAME(GuestAssigned);
     default:
         break;
     }
@@ -368,6 +373,7 @@ InterfaceTypeName(
     _INTERFACE_TYPE_NAME(PNPBus);
     _INTERFACE_TYPE_NAME(Vmcs);
     _INTERFACE_TYPE_NAME(ACPIBus);
+    case MaximumInterfaceType:
     default:
         break;
     }
@@ -392,6 +398,7 @@ DmaWidthName(
     _DMA_WIDTH_NAME(32Bits);
     _DMA_WIDTH_NAME(64Bits);
     _DMA_WIDTH_NAME(NoWrap);
+    case MaximumDmaWidth:
     default:
         break;
     }
diff --git a/src/xen/unplug.c b/src/xen/unplug.c
index c9a29a6..68608ac 100644
--- a/src/xen/unplug.c
+++ b/src/xen/unplug.c
@@ -126,6 +126,7 @@ UnplugDeviceType(
 
         LogPrintf(LOG_LEVEL_WARNING, "UNPLUG: NICS\n");
         break;
+    case UNPLUG_TYPE_COUNT:
     default:
         ASSERT(FALSE);
     }
@@ -210,6 +211,7 @@ UnplugSetRequest(
     case UNPLUG_NICS:
         ValueName = "NICS";
         break;
+    case UNPLUG_TYPE_COUNT:
     default:
         ValueName = NULL;
         ASSERT(FALSE);
@@ -255,6 +257,7 @@ UnplugIncrementValue(
     case UNPLUG_NICS:
         ValueName = "NICS";
         break;
+    case UNPLUG_TYPE_COUNT:
     default:
         ValueName = NULL;
         ASSERT(FALSE);
@@ -306,6 +309,7 @@ UnplugDecrementValue(
     case UNPLUG_NICS:
         ValueName = "NICS";
         break;
+    case UNPLUG_TYPE_COUNT:
     default:
         ValueName = NULL;
         ASSERT(FALSE);
diff --git a/src/xenbus/evtchn.c b/src/xenbus/evtchn.c
index 8942cdf..3450bdd 100644
--- a/src/xenbus/evtchn.c
+++ b/src/xenbus/evtchn.c
@@ -366,6 +366,7 @@ EvtchnOpen(
                                 Arguments);
         break;
 
+    case XENBUS_EVTCHN_TYPE_INVALID:
     default:
         status = STATUS_INVALID_PARAMETER;
         break;
@@ -1494,6 +1495,7 @@ EvtchnDebugCallback(
                              Channel->Parameters.Virq.Index);
                 break;
 
+            case XENBUS_EVTCHN_TYPE_INVALID:
             default:
                 break;
             }
diff --git a/src/xenbus/pdo.c b/src/xenbus/pdo.c
index efd29dc..bbda42d 100644
--- a/src/xenbus/pdo.c
+++ b/src/xenbus/pdo.c
@@ -1144,6 +1144,10 @@ PdoQueryCapabilities(
             Capabilities->DeviceState[SystemPowerState] = PowerDeviceD0;
             break;
 
+        case PowerSystemSleeping3:
+        case PowerSystemHibernate:
+        case PowerSystemShutdown:
+        case PowerSystemMaximum:
         default:
             Capabilities->DeviceState[SystemPowerState] = PowerDeviceD3;
             break;
@@ -1388,6 +1392,8 @@ PdoQueryId(
         Id.MaximumLength = (USHORT)(MAX_DEVICE_ID_LEN * ARRAYSIZE(PdoRevision)) * sizeof (WCHAR);
         break;
 
+    case BusQueryDeviceSerialNumber:
+    case BusQueryContainerID:
     default:
         Irp->IoStatus.Information = 0;
         status = STATUS_NOT_SUPPORTED;
@@ -1476,6 +1482,8 @@ PdoQueryId(
                  REGSTR_VAL_MAX_HCID_LEN);
         break;
     }
+    case BusQueryDeviceSerialNumber:
+    case BusQueryContainerID:
     default:
         Type = REG_NONE;
 
diff --git a/src/xenbus/store.c b/src/xenbus/store.c
index ce4c755..2fd2e19 100644
--- a/src/xenbus/store.c
+++ b/src/xenbus/store.c
@@ -1958,7 +1958,7 @@ StorePermissionToString(
         *Buffer = 'w';
         break;
 
-    case XENBUS_STORE_PERM_READ | XENBUS_STORE_PERM_WRITE:
+    case XENBUS_STORE_PERM_READ_WRITE:
         *Buffer = 'b';
         break;
 
diff --git a/src/xenbus/suspend.c b/src/xenbus/suspend.c
index f058a4f..30a6910 100644
--- a/src/xenbus/suspend.c
+++ b/src/xenbus/suspend.c
@@ -110,6 +110,7 @@ SuspendRegister(
         InsertTailList(&Context->LateList, &(*Callback)->ListEntry);
         break;
 
+    case SUSPEND_CALLBACK_TYPE_INVALID:
     default:
         ASSERT(FALSE);
         break;
diff --git a/src/xenbus/unplug.c b/src/xenbus/unplug.c
index 1ad737d..ba1cad1 100644
--- a/src/xenbus/unplug.c
+++ b/src/xenbus/unplug.c
@@ -101,6 +101,7 @@ UnplugRequest(
 
         break;
 
+    case XENBUS_UNPLUG_DEVICE_TYPE_INVALID:
     default:
         ASSERT(FALSE);
         break;
diff --git a/src/xenfilt/driver.c b/src/xenfilt/driver.c
index f131282..91e925e 100644
--- a/src/xenfilt/driver.c
+++ b/src/xenfilt/driver.c
@@ -492,6 +492,8 @@ DriverQueryId(
         status = STATUS_SUCCESS;
         break;
 
+    case BusQueryDeviceSerialNumber:
+    case BusQueryContainerID:
     default:
         status = STATUS_NOT_SUPPORTED;
         break;
@@ -604,6 +606,8 @@ DriverQueryId(
 
         break;
     }
+    case BusQueryDeviceSerialNumber:
+    case BusQueryContainerID:
     default:
         ASSERT(FALSE);
         *Id = NULL;
diff --git a/src/xenfilt/emulated.c b/src/xenfilt/emulated.c
index 0c2c087..b7ae510 100644
--- a/src/xenfilt/emulated.c
+++ b/src/xenfilt/emulated.c
@@ -257,6 +257,7 @@ EmulatedAddObject(
                                            CompatibleIDs);
         break;
 
+    case XENFILT_EMULATED_OBJECT_TYPE_UNKNOWN:
     default:
         status = STATUS_INVALID_PARAMETER;
         break;
diff --git a/src/xenfilt/pdo.c b/src/xenfilt/pdo.c
index b3569a3..22618b7 100644
--- a/src/xenfilt/pdo.c
+++ b/src/xenfilt/pdo.c
@@ -1093,6 +1093,7 @@ PdoQueryDeviceText(
         Trace("DeviceTextLocationInformation\n");
         break;
 
+    case DeviceTextDescription:
     default:
         goto done;
     }
@@ -1120,6 +1121,7 @@ PdoQueryDeviceText(
 
         break;
 
+    case DeviceTextDescription:
     default:
         ASSERT(FALSE);
         break;
@@ -1191,6 +1193,10 @@ PdoQueryId(
         Trace("BusQueryDeviceID\n");
         break;
 
+    case BusQueryHardwareIDs:
+    case BusQueryCompatibleIDs:
+    case BusQueryDeviceSerialNumber:
+    case BusQueryContainerID:
     default:
         goto done;
     }
@@ -1225,6 +1231,10 @@ PdoQueryId(
 
         break;
 
+    case BusQueryHardwareIDs:
+    case BusQueryCompatibleIDs:
+    case BusQueryDeviceSerialNumber:
+    case BusQueryContainerID:
     default:
         ASSERT(FALSE);
         break;
diff --git a/vs2019/package/package.vcxproj b/vs2019/package/package.vcxproj
index 2a83c90..e10717a 100644
--- a/vs2019/package/package.vcxproj
+++ b/vs2019/package/package.vcxproj
@@ -32,6 +32,11 @@
     <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
     <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
   </PropertyGroup>
+  <ItemDefinitionGroup>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
+  </ItemDefinitionGroup>
   <PropertyGroup Condition="'$(Platform)'=='Win32'">
     <ArchiveDir>..\..\$(SolutionName)\x86</ArchiveDir>
   </PropertyGroup>
diff --git a/vs2019/version/version.vcxproj b/vs2019/version/version.vcxproj
index 9d149d0..b6ec6f3 100644
--- a/vs2019/version/version.vcxproj
+++ b/vs2019/version/version.vcxproj
@@ -13,4 +13,10 @@
   <Target Name="Build">
     <Exec Command="powershell.exe -ExecutionPolicy Bypass -NoProfile -NonInteractive -File $(Script) $(Platform) $(SolutionDir) $(IncludeDir) $(SourceDir)" />
   </Target>
+  <Target Name="GetProjectInfoForReference"
+          Returns="@(ProjectInfoForReference)">
+    <ItemGroup>
+      <ProjectInfoForReference Include="@(LibFullPath)" />
+    </ItemGroup>
+  </Target>
 </Project>
diff --git a/vs2019/xen/xen.vcxproj b/vs2019/xen/xen.vcxproj
index 39b5bda..237c348 100644
--- a/vs2019/xen/xen.vcxproj
+++ b/vs2019/xen/xen.vcxproj
@@ -37,6 +37,9 @@
       <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
       <ModuleDefinitionFile>../../src/xen/xen.def</ModuleDefinitionFile>
     </Link>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
diff --git a/vs2019/xenbus/xenbus.vcxproj b/vs2019/xenbus/xenbus.vcxproj
index ff40c43..c61141c 100644
--- a/vs2019/xenbus/xenbus.vcxproj
+++ b/vs2019/xenbus/xenbus.vcxproj
@@ -36,6 +36,9 @@
       <AdditionalDependencies>$(ProjectDir)..\$(ConfigurationName)\$(Platform)\xen.lib;$(DDK_LIB_PATH)/libcntpr.lib;$(DDK_LIB_PATH)/procgrp.lib;$(DDK_LIB_PATH)/rtlver.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
     </Link>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
diff --git a/vs2019/xenbus_coinst/xenbus_coinst.vcxproj b/vs2019/xenbus_coinst/xenbus_coinst.vcxproj
index df3cc04..5a8bcf6 100644
--- a/vs2019/xenbus_coinst/xenbus_coinst.vcxproj
+++ b/vs2019/xenbus_coinst/xenbus_coinst.vcxproj
@@ -35,6 +35,9 @@
     <ResourceCompile>
       <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
     </ResourceCompile>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
diff --git a/vs2019/xenbus_monitor/xenbus_monitor.vcxproj b/vs2019/xenbus_monitor/xenbus_monitor.vcxproj
index 8703bb5..7352a07 100644
--- a/vs2019/xenbus_monitor/xenbus_monitor.vcxproj
+++ b/vs2019/xenbus_monitor/xenbus_monitor.vcxproj
@@ -37,6 +37,9 @@
     <ResourceCompile>
       <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
     </ResourceCompile>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
diff --git a/vs2019/xenfilt/xenfilt.vcxproj b/vs2019/xenfilt/xenfilt.vcxproj
index b3ce00f..cc0de85 100644
--- a/vs2019/xenfilt/xenfilt.vcxproj
+++ b/vs2019/xenfilt/xenfilt.vcxproj
@@ -36,6 +36,9 @@
       <AdditionalDependencies>$(ProjectDir)..\$(ConfigurationName)\$(Platform)\xen.lib;$(DDK_LIB_PATH)/libcntpr.lib;$(DDK_LIB_PATH)/procgrp.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
     </Link>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 12 12:34:10 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Aug 2021 12:34:10 +0000
Received: from list by lists.xenproject.org with outflank-mailman.166315.303688 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9uR-0006ph-VA; Thu, 12 Aug 2021 12:34:07 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 166315.303688; Thu, 12 Aug 2021 12:34:07 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9uR-0006pa-SN; Thu, 12 Aug 2021 12:34:07 +0000
Received: by outflank-mailman (input) for mailman id 166315;
 Thu, 12 Aug 2021 12:34:06 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6F1S=ND=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mE9uQ-0006pU-Au
 for win-pv-devel@lists.xenproject.org; Thu, 12 Aug 2021 12:34:06 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 9457473e-fb69-11eb-a17e-12813bfff9fa;
 Thu, 12 Aug 2021 12:34:05 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 9457473e-fb69-11eb-a17e-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628771644;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=plMVGh915YL7EKyglEQzlXecc62SCIqUwIRRc0inl3I=;
  b=bG3YtaamxAwoYugjYAsQ7gTNPOFLbwyZvyaa5H99T4s2qe44Zk5QYui/
   1pk/V3WPZspttg40OiEEhRUi4sYlxZiyceSMfs3gXRWvXez1IjVulMftx
   IK1NHXfJCpAhUgTwGP7uSEb2tZq68sIdo8ERN0v1SUtocAkLLHrYmYBVO
   s=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: EnNfas8FGrftG73Yz01FG6TiIPXYZMH//0VqIImETS6hZqtfs6KxNYchD9gUzfM4YmW5VERrKi
 sAkJeWTnEdZDFyXWQL1nrdNVu6lzLOffDHshyAdTqlQSWe0VA1W26e4X+y2lv8huFg/vmirnkV
 oZwc2HmPG4V1bsfrirnYw3OoIhlozEVfkjXN/MROfwgc1l/N4gXKLQL/uCoTMsPh4rXkMh7bqY
 Z4cJ+ThjTmhuMz8qA0yQhW6NTeeXtH/yGGIX/83kAb4lEN07EzjX22cS/Ml2JUCGGdHbPYI6SQ
 A4uZESr/ByDQo791KMyU7FrK
X-SBRS: 5.1
X-MesageID: 49948798
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:CwuCJK0UdCCnO3AfVK4yWwqjBEQkLtp133Aq2lEZdPU0SKGlfg
 6V/MjztCWE7gr5PUtLpTnuAsa9qB/nm6KdpLNhX4tKPzOW31dATrsSjrcKqgeIc0HDH6xmpM
 JdmsBFY+EYZmIK6foSjjPYLz4hquP3j5xBh43lvglQpdcBUdAQ0+97YDzrYnGfXGN9dOME/A
 L33Ls7m9KnE05nFviTNz0+cMXogcbEr57iaQ5uPW9a1OHf5QnYk4ITCnKjr20jbw8=
X-IronPort-AV: E=Sophos;i="5.84,315,1620705600"; 
   d="scan'208";a="49948798"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 1/3] Fix build with later WDKs
Date: Thu, 12 Aug 2021 13:33:46 +0100
Message-ID: <20210812123349.1698-1-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- Adds alias for GetProjectInfoForReference target to version.vcxproj
    Later kits seemed to have renamed the build target, and will fail without
    this alias target.
- Adds "/fd sha256" to signtool command line
    WDK 20344 and later require binaries signed with a SHA256 file digest, or
    the build outputs are deleted
- Fixes warning 4061 - switch statement on enum types need to have a case for
    all values of the enumeration

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 src/xencons/frontend.c                        | 36 ++++++-------------
 src/xencons/names.h                           |  5 +++
 src/xencons/pdo.c                             |  8 +++++
 vs2019/package/package.vcxproj                |  5 +++
 vs2019/version/version.vcxproj                |  6 ++++
 vs2019/xencons/xencons.vcxproj                |  3 ++
 vs2019/xencons_coinst/xencons_coinst.vcxproj  |  3 ++
 .../xencons_monitor/xencons_monitor.vcxproj   |  3 ++
 vs2019/xencons_tty/xencons_tty.vcxproj        |  3 ++
 9 files changed, 47 insertions(+), 25 deletions(-)

diff --git a/src/xencons/frontend.c b/src/xencons/frontend.c
index 6965092..6f9d34b 100644
--- a/src/xencons/frontend.c
+++ b/src/xencons/frontend.c
@@ -598,17 +598,12 @@ FrontendClose(
         FrontendWaitForBackendXenbusStateChange(Frontend,
                                                 &State);
 
-        switch (State) {
-        case XenbusStateClosing:
+        if (State == XenbusStateClosing) {
             FrontendSetXenbusState(Frontend,
                                     XenbusStateClosed);
-            break;
-        case XenbusStateClosed:
-            break;
-        default:
+        } else if (State != XenbusStateClosed) {
             FrontendSetXenbusState(Frontend,
                                    XenbusStateClosing);
-            break;
         }
     }
 
@@ -646,10 +641,7 @@ FrontendPrepare(
 
         FrontendWaitForBackendXenbusStateChange(Frontend,
                                                 &State);
-        switch (State) {
-        case XenbusStateInitWait:
-            break;
-        case XenbusStateClosed:
+        if (State == XenbusStateClosed) {
             FrontendSetXenbusState(Frontend,
                                    XenbusStateClosed);
             // There is currently a bug in the backend.
@@ -658,11 +650,9 @@ FrontendPrepare(
             // Avoid the bug by forcing the frontend offline and
             // failing FrontendPrepare
             FrontendSetOffline(Frontend);
-            break;
-        default:
+        } else if (State != XenbusStateInitWait) {
             FrontendSetXenbusState(Frontend,
                                     XenbusStateInitialising);
-            break;
         }
     }
 
@@ -800,20 +790,11 @@ FrontendConnect(
         FrontendWaitForBackendXenbusStateChange(Frontend,
                                                 &State);
 
-        switch (State) {
-        case XenbusStateInitWait:
+        if (State == XenbusStateInitWait) {
             FrontendSetXenbusState(Frontend,
                                    XenbusStateConnected);
-            break;
-        case XenbusStateConnected:
-            break;
-        case XenbusStateUnknown:
-        case XenbusStateClosing:
-        case XenbusStateClosed:
+        } else if (State != XenbusStateConnected) {
             FrontendSetOffline(Frontend);
-            break;
-        default:
-            break;
         }
     }
 
@@ -982,6 +963,7 @@ FrontendSetState(
                 }
                 break;
 
+            case FRONTEND_UNKNOWN:
             default:
                 ASSERT(FALSE);
                 break;
@@ -1005,6 +987,7 @@ FrontendSetState(
                 Frontend->State = FRONTEND_UNKNOWN;
                 break;
 
+            case FRONTEND_CLOSED:
             default:
                 ASSERT(FALSE);
                 break;
@@ -1032,6 +1015,7 @@ FrontendSetState(
                 Frontend->State = FRONTEND_CLOSED;
                 break;
 
+            case FRONTEND_PREPARED:
             default:
                 ASSERT(FALSE);
                 break;
@@ -1062,6 +1046,7 @@ FrontendSetState(
                 FrontendDisconnect(Frontend);
                 break;
 
+            case FRONTEND_CONNECTED:
             default:
                 ASSERT(FALSE);
                 break;
@@ -1078,6 +1063,7 @@ FrontendSetState(
                 Frontend->State = FRONTEND_CONNECTED;
                 break;
 
+            case FRONTEND_ENABLED:
             default:
                 ASSERT(FALSE);
                 break;
diff --git a/src/xencons/names.h b/src/xencons/names.h
index 1c06563..f06263c 100644
--- a/src/xencons/names.h
+++ b/src/xencons/names.h
@@ -122,6 +122,7 @@ PowerActionName(
     _POWER_ACTION_NAME(ShutdownReset);
     _POWER_ACTION_NAME(ShutdownOff);
     _POWER_ACTION_NAME(WarmEject);
+    _POWER_ACTION_NAME(DisplayOff);
     default:
         break;
     }
@@ -238,6 +239,10 @@ DeviceUsageTypeName(
     _DEVICE_USAGE_TYPE_NAME(Paging);
     _DEVICE_USAGE_TYPE_NAME(Hibernation);
     _DEVICE_USAGE_TYPE_NAME(DumpFile);
+    _DEVICE_USAGE_TYPE_NAME(Undefined);
+    _DEVICE_USAGE_TYPE_NAME(Boot);
+    _DEVICE_USAGE_TYPE_NAME(PostDisplay);
+    _DEVICE_USAGE_TYPE_NAME(GuestAssigned);
     default:
         break;
     }
diff --git a/src/xencons/pdo.c b/src/xencons/pdo.c
index b7177a9..e8dcebd 100644
--- a/src/xencons/pdo.c
+++ b/src/xencons/pdo.c
@@ -878,6 +878,10 @@ PdoQueryCapabilities(
             Capabilities->DeviceState[SystemPowerState] = PowerDeviceD0;
             break;
 
+        case PowerSystemSleeping3:
+        case PowerSystemHibernate:
+        case PowerSystemShutdown:
+        case PowerSystemMaximum:
         default:
             Capabilities->DeviceState[SystemPowerState] = PowerDeviceD3;
             break;
@@ -1049,6 +1053,8 @@ PdoQueryId(
         Id.MaximumLength = (USHORT)(MAX_DEVICE_ID_LEN * sizeof(WCHAR));
         break;
 
+    case BusQueryDeviceSerialNumber:
+    case BusQueryContainerID:
     default:
         Irp->IoStatus.Information = 0;
         status = STATUS_NOT_SUPPORTED;
@@ -1126,6 +1132,8 @@ PdoQueryId(
                  REGSTR_VAL_MAX_HCID_LEN);
         break;
     }
+    case BusQueryDeviceSerialNumber:
+    case BusQueryContainerID:
     default:
         Type = REG_NONE;
 
diff --git a/vs2019/package/package.vcxproj b/vs2019/package/package.vcxproj
index 2248fe0..0e86126 100644
--- a/vs2019/package/package.vcxproj
+++ b/vs2019/package/package.vcxproj
@@ -32,6 +32,11 @@
     <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
     <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
   </PropertyGroup>
+  <ItemDefinitionGroup>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
+  </ItemDefinitionGroup>
   <PropertyGroup Condition="'$(Platform)'=='Win32'">
     <ArchiveDir>..\..\$(SolutionName)\x86</ArchiveDir>
   </PropertyGroup>
diff --git a/vs2019/version/version.vcxproj b/vs2019/version/version.vcxproj
index 9d149d0..b6ec6f3 100644
--- a/vs2019/version/version.vcxproj
+++ b/vs2019/version/version.vcxproj
@@ -13,4 +13,10 @@
   <Target Name="Build">
     <Exec Command="powershell.exe -ExecutionPolicy Bypass -NoProfile -NonInteractive -File $(Script) $(Platform) $(SolutionDir) $(IncludeDir) $(SourceDir)" />
   </Target>
+  <Target Name="GetProjectInfoForReference"
+          Returns="@(ProjectInfoForReference)">
+    <ItemGroup>
+      <ProjectInfoForReference Include="@(LibFullPath)" />
+    </ItemGroup>
+  </Target>
 </Project>
diff --git a/vs2019/xencons/xencons.vcxproj b/vs2019/xencons/xencons.vcxproj
index 6cabdcf..09d25bc 100644
--- a/vs2019/xencons/xencons.vcxproj
+++ b/vs2019/xencons/xencons.vcxproj
@@ -36,6 +36,9 @@
       <AdditionalDependencies>$(DDK_LIB_PATH)/Rtlver.lib;$(DDK_LIB_PATH)/libcntpr.lib;$(DDK_LIB_PATH)/aux_klib.lib;$(DDK_LIB_PATH)/ksecdd.lib;$(DDK_LIB_PATH)/procgrp.lib;$(DDK_LIB_PATH)/wdmsec.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
     </Link>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
diff --git a/vs2019/xencons_coinst/xencons_coinst.vcxproj b/vs2019/xencons_coinst/xencons_coinst.vcxproj
index 27f54c5..b10a8ca 100644
--- a/vs2019/xencons_coinst/xencons_coinst.vcxproj
+++ b/vs2019/xencons_coinst/xencons_coinst.vcxproj
@@ -34,6 +34,9 @@
       <ModuleDefinitionFile>../../src/coinst/xencons_coinst.def</ModuleDefinitionFile>
       <AdditionalDependencies>setupapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
     </Link>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
diff --git a/vs2019/xencons_monitor/xencons_monitor.vcxproj b/vs2019/xencons_monitor/xencons_monitor.vcxproj
index c867fa8..b016a6f 100644
--- a/vs2019/xencons_monitor/xencons_monitor.vcxproj
+++ b/vs2019/xencons_monitor/xencons_monitor.vcxproj
@@ -37,6 +37,9 @@
     <ResourceCompile>
       <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
     </ResourceCompile>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
diff --git a/vs2019/xencons_tty/xencons_tty.vcxproj b/vs2019/xencons_tty/xencons_tty.vcxproj
index 16a04ff..303f158 100644
--- a/vs2019/xencons_tty/xencons_tty.vcxproj
+++ b/vs2019/xencons_tty/xencons_tty.vcxproj
@@ -34,6 +34,9 @@
     <ResourceCompile>
       <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
     </ResourceCompile>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 12 12:34:13 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Aug 2021 12:34:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.166316.303693 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9uX-0006rm-18; Thu, 12 Aug 2021 12:34:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 166316.303693; Thu, 12 Aug 2021 12:34:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9uW-0006re-Tx; Thu, 12 Aug 2021 12:34:12 +0000
Received: by outflank-mailman (input) for mailman id 166316;
 Thu, 12 Aug 2021 12:34:11 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6F1S=ND=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mE9uV-0006pU-7B
 for win-pv-devel@lists.xenproject.org; Thu, 12 Aug 2021 12:34:11 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 94f00456-fb69-11eb-a17e-12813bfff9fa;
 Thu, 12 Aug 2021 12:34:06 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 94f00456-fb69-11eb-a17e-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628771645;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=Yp2m5CPm5OOIaO9+oGFrMrWy6WM3iXyNDbEXyuM23+Y=;
  b=BAFFFu3UZk+e7NR8luB2PHUZg/Uc0go42LTm/u0u+7qP9lHB2+/dAPd3
   9RzRRsg3ZFpTqV077BNC6y0QZNx3jEgzqdgGH34dVcpDVRm9cpIa79agm
   u7TsfhXhkljsRKlUooVTHxroeTdCQs5QZB020iNqGd5gNX6GewiRz3G2m
   s=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: MgUXXIyJxnR666wRqfsunnptgr19Ex/Su9gw7U+5rG8hlm4rLrtbfkellsSTgiCmyl8vjG7EnK
 bWjk+M3jMSydAMCM4m07mUIBx+MxB6pR1hqIaOh2Q+rI1H0bMQViy8eXxm+CBT1zIS41FK6ldI
 0I3aruvsAEnxnKaiNHbIgeyGtPYwq5aS7FWtRZ0rX6xWwClie3QVlfwp/n+toDHpkfCKNqGCXa
 d+xOX0188WqZ46JQLAtbI/vQkRxBI2Rd5YHOFymL8SqRTLynCTpbGLfbkIB8eYikEX+d8/FDB+
 4QlOUFkvD698V0aebkyj4ELZ
X-SBRS: 5.1
X-MesageID: 49948799
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:KZ3EqqitQV/waV9r/yxnjmeln3BQX3F13DAbv31ZSRFFG/FwyP
 rBoB1L73DJYWgqNE3IwerwQJVoMkmsjqKdgLNhcItKMzOW3ldAQLsSjrcKoAeQVxEWlNQtrJ
 uIGpIWYLecbDhHZK7BkU+F+r0bsby6GdWT9IDjJgBWPGVXgs9bnmVE4wCgeXFedU1jP94UBZ
 Cc7s1Iq36LYnIMdPm2AXEDQqzqu8DLvIiOW29IOzcXrC21yR+44r/zFBaVmj0EVSlU/Lsk+W
 /Z1yTk+6SYte2hwBO07R6c030Woqqh9jJwPr3OtiEnEESvtu9uXvUlZ1S2hkF0nAho0idvrD
 CDmWZmAy050QKqQoj8m2qR5+Cn6kd215aq8y7lvVLz5cT9Xz4zBtpZnoRSfgHC50dIhqAO7I
 tbm22erJZZFhXGgWD04MXJTQhjkg6urWMlivN7tQ0XbWIyUs4nkWUkxjIiLH7AJlOL1Kk3VO
 11SM3M7vdfdl2XK3jfo2l02dSpGnA+BA2PTEQOstGcl2E+pgEz82IIgMgE2nsQ/pM0TJdJo+
 zCL6RzjblLCssbd7h0CusNSda+TmbNXRXPOmSPJkmPLtBOB1vd75rspLkl7uCjf5IFiJM0hZ
 TaSVtd8XU/fkr/YPf+qKGjMiq9NVlVeA6dgP22y6IJxIEUdYCbQxFrEmpe7PdIi89vc/HmZw
 ==
X-IronPort-AV: E=Sophos;i="5.84,315,1620705600"; 
   d="scan'208";a="49948799"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 2/3] Fix SDV/CodeQL log generation
Date: Thu, 12 Aug 2021 13:33:47 +0100
Message-ID: <20210812123349.1698-2-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
In-Reply-To: <20210812123349.1698-1-owen.smith@citrix.com>
References: <20210812123349.1698-1-owen.smith@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- sarif files need to be stored with SDV logs when generating the DVL file
- Disable PREFast and CodeAnalysis by default
- Run a seperate CodeAnalysis build after SDV, but before generating DVL file
    DVL file should contain multiple summary lines for SDV, at least 1 line
    for CodeAnalysis and at least 1 line for Semmle (CodeQL)

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 msbuild.ps1                    | 21 ++++++++++++++++-----
 vs2019/xencons/xencons.vcxproj |  2 --
 2 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/msbuild.ps1 b/msbuild.ps1
index ecf3d10..0088f56 100644
--- a/msbuild.ps1
+++ b/msbuild.ps1
@@ -17,7 +17,8 @@ Function Run-MSBuild {
 		[string]$Configuration,
 		[string]$Platform,
 		[string]$Target = "Build",
-		[string]$Inputs = ""
+		[string]$Inputs = "",
+		[switch]$CodeAnalysis
 	)
 
 	$c = "msbuild.exe"
@@ -28,6 +29,11 @@ Function Run-MSBuild {
 	if ($Inputs) {
 		$c += [string]::Format(" /p:Inputs=""{0}"" ", $Inputs)
 	}
+	if ($CodeAnalysis) {
+		$c += "/p:RunCodeAnalysis=true "
+		$c += "/p:EnablePREFast=true "
+	}
+
 	$c += Join-Path -Path $SolutionPath -ChildPath $Name
 
 	Invoke-Expression $c
@@ -55,6 +61,7 @@ Function Run-MSBuildSDV {
 	Run-MSBuild $projpath $project $Configuration $Platform "Build"
 	Run-MSBuild $projpath $project $Configuration $Platform "sdv" "/clean"
 	Run-MSBuild $projpath $project $Configuration $Platform "sdv" "/check:default.sdv /debug"
+	Run-MSBuild $projpath $project $Configuration $Platform "Build" -CodeAnalysis
 	Run-MSBuild $projpath $project $Configuration $Platform "dvl"
 
 	$refine = Join-Path -Path $projpath -ChildPath "refine.sdv"
@@ -73,14 +80,14 @@ Function Run-CodeQL {
 		[string]$Name,
 		[string]$Configuration,
 		[string]$Platform,
-		[string]$SearchPath,
-		[string]$OutputPath
+		[string]$SearchPath
 	)
 
 	$projpath = Resolve-Path (Join-Path $SolutionPath $Name)
 	$project = [string]::Format("{0}.vcxproj", $Name)
 	$output = [string]::Format("{0}.sarif", $Name)
 	$database = Join-Path "database" $Name
+	$sarif = Join-Path $projpath $output
 
 	# write a bat file to wrap msbuild parameters
 	$bat = [string]::Format("{0}.bat", $Name)
@@ -120,7 +127,7 @@ Function Run-CodeQL {
 	$c += " windows_driver_recommended.qls"
 	$c += " --format=sarifv2.1.0"
 	$c += " --output="
-	$c += (Join-Path $OutputPath $output)
+	$c += $sarif
 	$c += " --search-path="
 	$c += $SearchPath
 
@@ -129,6 +136,8 @@ Function Run-CodeQL {
 		Write-Host -ForegroundColor Red "ERROR: CodeQL failed, code:" $LASTEXITCODE
 		Exit $LASTEXITCODE
 	}
+
+	Copy-Item $sarif -Destination $SolutionPath
 }
 
 #
@@ -167,8 +176,10 @@ elseif ($Type -eq "codeql") {
 	New-Item -ItemType Directory "database" | Out-Null
 
 	$projectlist | ForEach {
-		Run-CodeQL $solutionpath $_ $configuration["codeql"] $platform[$Arch] $searchpath $archivepath
+		Run-CodeQL $solutionpath $_ $configuration["codeql"] $platform[$Arch] $searchpath
 	}
+
+	Copy-Item -Path (Join-Path -Path $SolutionPath -ChildPath "*.sarif") -Destination $archivepath
 }
 elseif ($Type -eq "sdv") {
 	if (-Not (Test-Path -Path $archivepath)) {
diff --git a/vs2019/xencons/xencons.vcxproj b/vs2019/xencons/xencons.vcxproj
index 09d25bc..4850a7e 100644
--- a/vs2019/xencons/xencons.vcxproj
+++ b/vs2019/xencons/xencons.vcxproj
@@ -13,7 +13,6 @@
   <Import Project="..\targets.props" />
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <PropertyGroup>
-    <RunCodeAnalysis>true</RunCodeAnalysis>
     <EnableInf2cat>false</EnableInf2cat>
     <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
     <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
@@ -26,7 +25,6 @@
       <WarningLevel>EnableAllWarnings</WarningLevel>
       <DisableSpecificWarnings>4464;4711;4770;4548;4820;4668;4255;5045;6001;6054;26451;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
-      <EnablePREfast>true</EnablePREfast>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 12 12:34:18 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Aug 2021 12:34:18 +0000
Received: from list by lists.xenproject.org with outflank-mailman.166317.303697 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9uc-0006uT-2Q; Thu, 12 Aug 2021 12:34:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 166317.303697; Thu, 12 Aug 2021 12:34:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9ub-0006uL-Vp; Thu, 12 Aug 2021 12:34:17 +0000
Received: by outflank-mailman (input) for mailman id 166317;
 Thu, 12 Aug 2021 12:34:16 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6F1S=ND=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mE9ua-0006pU-7R
 for win-pv-devel@lists.xenproject.org; Thu, 12 Aug 2021 12:34:16 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 956d0154-fb69-11eb-a17e-12813bfff9fa;
 Thu, 12 Aug 2021 12:34:06 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 956d0154-fb69-11eb-a17e-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628771646;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=Jc04u0rGK9Xg4wzfx2vST5dltAcIwBQXDz/HGBSgQbA=;
  b=L6hZe10ymXNvYJaiP4r0d0gPMYJKz1IajnY7eC55kRAC3CFU6V0KaeiY
   8m860WFJ5AmOiBh8GMbGW9UQmPlIlvfuPMjPKWcgl9VXXmoKbR/f4IocX
   FmzuuQsD6rsrP+6EUE72qPcbrejEA+m6TaU//+/BUwIZF01JigvawqWfd
   o=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: lh8plFkd1uNYD62DnOMbxz8ZeY676rC6uoB3AgM7tYEOcTQa3qcA5UYDFnPLxlBX42VBx4NH7v
 pFxN1hES9Z8zI1xjY8RnV9sQlxHhsqqUuechqMcocft2RnsJc87+ifi/IwjtIIrYUerf5rn1jo
 dFYy1ahj1Rt+NKiMDuPpl/d2oJ2C6SAWgiD//xLvCtApvjqTCywwN/XYYoEiLuxVGcXelz9poL
 4Lgu2FOcj6g4X2HJtd8xuko8gB94rTR9sPLLp/28c7HjPoCbkJwX+L0nqoLD5u4yxpjx14/6j7
 CXvy5YtgAcP7e09ApPVW8oMZ
X-SBRS: 5.1
X-MesageID: 49948801
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:adQjBa51m1WOtmDlAAPXwWOBI+orL9Y04lQ7vn2ZFiY6TiXIra
 +TdaoguSMc0AxhIE3I6urwQ5VoIEmsuKKdjrNhW4tKMDOW21dAT7sSobcKoQeQYhEWn9Q1vc
 0MEshD4bXLfB5HZK3BkWyF+qMbsb66GdeT9IPjJhlWPGNXgqdbhDtRO0K+KAlbVQNGDZ02GN
 63/cxcvQetfnwRc4CSGmQFd/KrnayFqLvWJTo9QzI34giHij2lrJTgFQKD4xsYWzRThZ8/7G
 n+lRDj7KnLiYD09vac7R6T031loqqj9jJxPr3PtiHTEESotu+cXvUgZ1RFhkFwnAjg0idsrD
 CGmWZbAy060QKtQojym2q15+Co6kdT11byjVecmnfqrNzhXzQxB9BaiY8xSGqr12Mw+N57y6
 5FxGSfqt5eCg7Bhj3045zSWwhtjVfcmwtqrQc/tQ0pbWIlUs4mkWXfxjIkLL4QWCbhrIw3Gu
 hnC8/RoP5QbFOBdnjc+m1i2salUHg/FgqPBhFqgL3f7xFG2HRii0cIzs0WmXkNsJo7Vplf/u
 zBdqBljqtHQMMaZb90QO0BXcy0AGrQRg+kChPbHX33UKUcf37doZ/+57s4oOmsZZwT1ZM33I
 /MVVtJ3FRCD34Gyff+qaGj1yq9CllVcQ6dtP221qIJyIEUHoCbThFrYGpe4vednw==
X-IronPort-AV: E=Sophos;i="5.84,315,1620705600"; 
   d="scan'208";a="49948801"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 3/3] Fix CodeQL warnings
Date: Thu, 12 Aug 2021 13:33:48 +0100
Message-ID: <20210812123349.1698-3-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
In-Reply-To: <20210812123349.1698-1-owen.smith@citrix.com>
References: <20210812123349.1698-1-owen.smith@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- ExAllocatePoolWithTag is deprecated in Win10 2004, use
    ExAllocatePoolUninitialized instead

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 src/xencons/fdo.c  | 2 +-
 src/xencons/pdo.c  | 8 ++++----
 src/xencons/util.h | 4 ++++
 3 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/src/xencons/fdo.c b/src/xencons/fdo.c
index 438f502..9904249 100644
--- a/src/xencons/fdo.c
+++ b/src/xencons/fdo.c
@@ -1794,7 +1794,7 @@ FdoQueryDeviceRelations(
 
     Size = FIELD_OFFSET(DEVICE_RELATIONS, Objects) + (sizeof(PDEVICE_OBJECT) * __max(Count, 1));
 
-    Relations = ExAllocatePoolWithTag(PagedPool, Size, FDO_POOL);
+    Relations = __AllocatePoolWithTag(PagedPool, Size, FDO_POOL);
 
     status = STATUS_NO_MEMORY;
     if (Relations == NULL)
diff --git a/src/xencons/pdo.c b/src/xencons/pdo.c
index e8dcebd..827c7cb 100644
--- a/src/xencons/pdo.c
+++ b/src/xencons/pdo.c
@@ -809,7 +809,7 @@ PdoQueryDeviceRelations(
     if (StackLocation->Parameters.QueryDeviceRelations.Type != TargetDeviceRelation)
         goto done;
 
-    Relations = ExAllocatePoolWithTag(PagedPool, sizeof(DEVICE_RELATIONS), PDO_POOL);
+    Relations = __AllocatePoolWithTag(PagedPool, sizeof(DEVICE_RELATIONS), PDO_POOL);
 
     status = STATUS_NO_MEMORY;
     if (Relations == NULL)
@@ -931,7 +931,7 @@ PdoQueryDeviceText(
         goto done;
     }
 
-    Buffer = ExAllocatePoolWithTag(PagedPool, MAXTEXTLEN, PDO_POOL);
+    Buffer = __AllocatePoolWithTag(PagedPool, MAXTEXTLEN, PDO_POOL);
 
     status = STATUS_NO_MEMORY;
     if (Buffer == NULL)
@@ -1061,7 +1061,7 @@ PdoQueryId(
         goto done;
     }
 
-    Buffer = ExAllocatePoolWithTag(PagedPool, Id.MaximumLength, PDO_POOL);
+    Buffer = __AllocatePoolWithTag(PagedPool, Id.MaximumLength, PDO_POOL);
 
     status = STATUS_NO_MEMORY;
     if (Buffer == NULL)
@@ -1185,7 +1185,7 @@ PdoQueryBusInformation(
 
     UNREFERENCED_PARAMETER(Pdo);
 
-    Info = ExAllocatePoolWithTag(PagedPool, sizeof(PNP_BUS_INFORMATION), PDO_POOL);
+    Info = __AllocatePoolWithTag(PagedPool, sizeof(PNP_BUS_INFORMATION), PDO_POOL);
 
     status = STATUS_NO_MEMORY;
     if (Info == NULL)
diff --git a/src/xencons/util.h b/src/xencons/util.h
index 9d88b8a..9403891 100644
--- a/src/xencons/util.h
+++ b/src/xencons/util.h
@@ -151,8 +151,12 @@ __AllocatePoolWithTag(
     __analysis_assume(PoolType == NonPagedPool ||
                       PoolType == PagedPool);
 
+#if (_MSC_VER >= 1928) // VS 16.9 (EWDK 20344 or later)
+    Buffer = ExAllocatePoolUninitialized(PoolType, NumberOfBytes, Tag);
+#else
 #pragma warning(suppress:28160) // annotation error
     Buffer = ExAllocatePoolWithTag(PoolType, NumberOfBytes, Tag);
+#endif
     if (Buffer == NULL)
         return NULL;
 
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 12 12:36:32 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Aug 2021 12:36:32 +0000
Received: from list by lists.xenproject.org with outflank-mailman.166334.303701 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9wm-00073L-9X; Thu, 12 Aug 2021 12:36:32 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 166334.303701; Thu, 12 Aug 2021 12:36:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9wm-00073E-67; Thu, 12 Aug 2021 12:36:32 +0000
Received: by outflank-mailman (input) for mailman id 166334;
 Thu, 12 Aug 2021 12:36:30 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6F1S=ND=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mE9wk-000738-Lh
 for win-pv-devel@lists.xenproject.org; Thu, 12 Aug 2021 12:36:30 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id bbc173e2-1e54-4b73-bec0-a7ce19730701;
 Thu, 12 Aug 2021 12:36:29 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: bbc173e2-1e54-4b73-bec0-a7ce19730701
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628771789;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=bX32gly5Rq0HVXclDpBcNrJGS/Kg+HaBKC7bLo1tym4=;
  b=SMUDEN0r6Dbx4sbDm2LIAEX0/9JfA6uA4CfrACBpyrU9+pqKUwVP7Eiv
   +1OxjV+O5875mFhhY8SXbnWayslp4a4Xmap7hzWzBbhrEgEJpb0coSNq5
   U9cKxTbjyJrvodws63NmgUjvbM3dqbDMsZt1mfKrfRPy6neQNd7RgL76F
   0=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: cjCtBCjghKxIwSkec9U+oVut7Pfg5tFph/AD8wuXmiVVG83NiqeFvcaEDBDTuGk+hWOC4EvanR
 n4Sv9G57uLi9h9MEHXR7Q+4YTLEvBEmBHexsuLLi9BDgUbQuFOofrOZ/P/4A0/FpG0W+yFGHEU
 WhB8Y8WWL3n5ubnFh27wJzKb10EN+1XssxiVZaKY9VEuYCdi+GPpF6n4bCpsmEqtrlpKAmaPQq
 8N6srMn8RCmW7gdATBRDgvzCpguTh/vFc9vmSlG3t1+7tzcmklj/BVC1Vis28mtQdQvrHws2sN
 ebXuV/xXF1rIOraWY+qSIYhc
X-SBRS: 5.1
X-MesageID: 49948935
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:HApwMKGs9mxnX1uupLqE7seALOsnbusQ8zAXP0AYc3Nom6uj5q
 eTdZUgpGbJYVkqOU3I9ersBEDEewK/yXcX2/h0AV7BZmnbUQKTRekIh7cKgQeQfhEWntQts5
 uIGJIRNDSfNzRHZL7BkWqFL+o=
X-IronPort-AV: E=Sophos;i="5.84,315,1620705600"; 
   d="scan'208";a="49948935"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 2/3] Fix SDV/CodeQL log generation
Date: Thu, 12 Aug 2021 13:36:11 +0100
Message-ID: <20210812123612.1826-2-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
In-Reply-To: <20210812123612.1826-1-owen.smith@citrix.com>
References: <20210812123612.1826-1-owen.smith@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- sarif files need to be stored with SDV logs when generating the DVL file
- Disable PREFast and CodeAnalysis by default
- Run a seperate CodeAnalysis build after SDV, but before generating DVL file
    DVL file should contain multiple summary lines for SDV, at least 1 line
    for CodeAnalysis and at least 1 line for Semmle (CodeQL)

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 msbuild.ps1                      | 21 ++++++++++++++++-----
 vs2019/xeniface/xeniface.vcxproj |  2 --
 2 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/msbuild.ps1 b/msbuild.ps1
index 7644a0e..3d48dc8 100644
--- a/msbuild.ps1
+++ b/msbuild.ps1
@@ -17,7 +17,8 @@ Function Run-MSBuild {
 		[string]$Configuration,
 		[string]$Platform,
 		[string]$Target = "Build",
-		[string]$Inputs = ""
+		[string]$Inputs = "",
+		[switch]$CodeAnalysis
 	)
 
 	$c = "msbuild.exe"
@@ -28,6 +29,11 @@ Function Run-MSBuild {
 	if ($Inputs) {
 		$c += [string]::Format(" /p:Inputs=""{0}"" ", $Inputs)
 	}
+	if ($CodeAnalysis) {
+		$c += "/p:RunCodeAnalysis=true "
+		$c += "/p:EnablePREFast=true "
+	}
+
 	$c += Join-Path -Path $SolutionPath -ChildPath $Name
 
 	Invoke-Expression $c
@@ -55,6 +61,7 @@ Function Run-MSBuildSDV {
 	Run-MSBuild $projpath $project $Configuration $Platform "Build"
 	Run-MSBuild $projpath $project $Configuration $Platform "sdv" "/clean"
 	Run-MSBuild $projpath $project $Configuration $Platform "sdv" "/check:default.sdv /debug"
+	Run-MSBuild $projpath $project $Configuration $Platform "Build" -CodeAnalysis
 	Run-MSBuild $projpath $project $Configuration $Platform "dvl"
 
 	$refine = Join-Path -Path $projpath -ChildPath "refine.sdv"
@@ -73,14 +80,14 @@ Function Run-CodeQL {
 		[string]$Name,
 		[string]$Configuration,
 		[string]$Platform,
-		[string]$SearchPath,
-		[string]$OutputPath
+		[string]$SearchPath
 	)
 
 	$projpath = Resolve-Path (Join-Path $SolutionPath $Name)
 	$project = [string]::Format("{0}.vcxproj", $Name)
 	$output = [string]::Format("{0}.sarif", $Name)
 	$database = Join-Path "database" $Name
+	$sarif = Join-Path $projpath $output
 
 	# write a bat file to wrap msbuild parameters
 	$bat = [string]::Format("{0}.bat", $Name)
@@ -120,7 +127,7 @@ Function Run-CodeQL {
 	$c += " windows_driver_recommended.qls"
 	$c += " --format=sarifv2.1.0"
 	$c += " --output="
-	$c += (Join-Path $OutputPath $output)
+	$c += $sarif
 	$c += " --search-path="
 	$c += $SearchPath
 
@@ -129,6 +136,8 @@ Function Run-CodeQL {
 		Write-Host -ForegroundColor Red "ERROR: CodeQL failed, code:" $LASTEXITCODE
 		Exit $LASTEXITCODE
 	}
+
+	Copy-Item $sarif -Destination $SolutionPath
 }
 
 #
@@ -167,8 +176,10 @@ elseif ($Type -eq "codeql") {
 	New-Item -ItemType Directory "database" | Out-Null
 
 	$projectlist | ForEach {
-		Run-CodeQL $solutionpath $_ $configuration["codeql"] $platform[$Arch] $searchpath $archivepath
+		Run-CodeQL $solutionpath $_ $configuration["codeql"] $platform[$Arch] $searchpath
 	}
+
+	Copy-Item -Path (Join-Path -Path $SolutionPath -ChildPath "*.sarif") -Destination $archivepath
 }
 elseif ($Type -eq "sdv") {
 	if (-Not (Test-Path -Path $archivepath)) {
diff --git a/vs2019/xeniface/xeniface.vcxproj b/vs2019/xeniface/xeniface.vcxproj
index 1df86f5..bb1f088 100644
--- a/vs2019/xeniface/xeniface.vcxproj
+++ b/vs2019/xeniface/xeniface.vcxproj
@@ -13,7 +13,6 @@
   <Import Project="..\targets.props" />
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <PropertyGroup>
-    <RunCodeAnalysis>true</RunCodeAnalysis>
     <EnableInf2cat>false</EnableInf2cat>
     <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
     <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
@@ -26,7 +25,6 @@
       <WarningLevel>EnableAllWarnings</WarningLevel>
       <DisableSpecificWarnings>4464;4711;4548;4770;4820;4668;4255;5045;6001;6054;26451;28160;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
-      <EnablePREfast>true</EnablePREfast>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 12 12:36:34 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Aug 2021 12:36:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.166335.303705 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9wo-00075U-C9; Thu, 12 Aug 2021 12:36:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 166335.303705; Thu, 12 Aug 2021 12:36:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9wo-00075N-8m; Thu, 12 Aug 2021 12:36:34 +0000
Received: by outflank-mailman (input) for mailman id 166335;
 Thu, 12 Aug 2021 12:36:33 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6F1S=ND=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mE9wn-000759-Ob
 for win-pv-devel@lists.xenproject.org; Thu, 12 Aug 2021 12:36:33 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id ebb59404-fb69-11eb-a183-12813bfff9fa;
 Thu, 12 Aug 2021 12:36:31 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: ebb59404-fb69-11eb-a183-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628771791;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=hGZmAVdbK5gJ3DlD0JzQanxAg1/w8TEOt2arVYSv4R0=;
  b=fmWsHl8hsGWqhhzO1yPqX0J+vUJBi2BhtIiU0HjEh+OSojIbDpEnMnVo
   91D8aMJzflSFX/VI6clNsU7b6I9dyN+WR4Uld1GghxkcalH/EIT+MNs6n
   /CIOgs6w4EiciFy6/SG97KmRLYgkkbEVKxssutmuWSYE4o9nIWrprlPKN
   s=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: zLAFkQ6zDCL6SOhc+NdL209RuWBBTGAMAsCaNvA8nEVndFWq2P2ZUiFcYFl0o5zOnIfMJ6m8y+
 igkcGVZxt8+NDerawYuN8NDMHhz3dkGgYlnKVsVyKMCzqfZVDnYFfF8MYbeI4rTPnSf/88+nrv
 Y630vuD6QwYfK8lgIfExfySidgShcu4d75bFJNjwjom2DEZJiqhHCHnYD88ikPhcsEkePZxxSV
 sJ6nlQdZEW6nriABgVdCq8Hr1Hd7E4j3MEKZDEk2c9QNrtFAN9+1kbqd+oA9QFZMbVO9mSO6NV
 ej2bPp+W/5LFfcyy17HioAqg
X-SBRS: 5.1
X-MesageID: 49948938
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:4t5DzKr3BpGRlU+h5IUFtR4aV5oTeYIsimQD101hICG8cqSj+f
 xG+85rsyMc6QxhIE3I9urhBEDtex/hHNtOkOws1NSZLW7bUQmTXeJfBOLZqlWKcUDDH6xmpM
 NdmsBFeaTN5DNB7PoSjjPWLz9Z+qjkzJyV
X-IronPort-AV: E=Sophos;i="5.84,315,1620705600"; 
   d="scan'208";a="49948938"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 3/3] Fix CodeQL warnings
Date: Thu, 12 Aug 2021 13:36:12 +0100
Message-ID: <20210812123612.1826-3-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
In-Reply-To: <20210812123612.1826-1-owen.smith@citrix.com>
References: <20210812123612.1826-1-owen.smith@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- ExAllocatePoolWithTag is deprecated for Win10 2004, use
    ExAllocatePoolUninitialized instead
- Add "(VOID)" before AccessWmiBuffer, where the return value is not needed

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 src/xeniface/driver.c       |   6 +-
 src/xeniface/ioctl_evtchn.c |  15 ++--
 src/xeniface/ioctls.c       |   7 +-
 src/xeniface/util.h         |   4 +
 src/xeniface/wmi.c          | 145 ++++++++++++++++++++----------------
 5 files changed, 99 insertions(+), 78 deletions(-)

diff --git a/src/xeniface/driver.c b/src/xeniface/driver.c
index 5ba4469..dff6e5f 100644
--- a/src/xeniface/driver.c
+++ b/src/xeniface/driver.c
@@ -38,6 +38,7 @@
 
 #include "assert.h"
 #include "wmi.h"
+#include "util.h"
 
 PDRIVER_OBJECT      DriverObject;
 
@@ -55,7 +56,8 @@ DriverUnload(
     Trace("====>\n");
 
     if (DriverParameters.RegistryPath.Buffer != NULL) {
-        ExFreePool(DriverParameters.RegistryPath.Buffer);
+        __FreePoolWithTag(DriverParameters.RegistryPath.Buffer,
+                          XENIFACE_POOL_TAG);
     }
 
     DriverObject = NULL;
@@ -155,7 +157,7 @@ DriverEntry(
 
     DriverParameters.RegistryPath.MaximumLength = RegistryPath->Length + sizeof(UNICODE_NULL);
     DriverParameters.RegistryPath.Length = RegistryPath->Length;
-    DriverParameters.RegistryPath.Buffer = ExAllocatePoolWithTag (PagedPool,
+    DriverParameters.RegistryPath.Buffer = __AllocatePoolWithTag(PagedPool,
                                                 DriverParameters.RegistryPath.MaximumLength,
                                                 XENIFACE_POOL_TAG);
     if (NULL == DriverParameters.RegistryPath.Buffer) {
diff --git a/src/xeniface/ioctl_evtchn.c b/src/xeniface/ioctl_evtchn.c
index 85b66af..f528485 100644
--- a/src/xeniface/ioctl_evtchn.c
+++ b/src/xeniface/ioctl_evtchn.c
@@ -35,6 +35,7 @@
 #include "ioctls.h"
 #include "xeniface_ioctls.h"
 #include "log.h"
+#include "util.h"
 
 _Function_class_(KDEFERRED_ROUTINE)
 _IRQL_requires_(DISPATCH_LEVEL)
@@ -82,7 +83,7 @@ EvtchnInterruptHandler(
 
     ASSERT(Context != NULL);
 
-    KeGetCurrentProcessorNumberEx(&ProcNumber);
+    (VOID) KeGetCurrentProcessorNumberEx(&ProcNumber);
     ProcIndex = KeGetProcessorIndexFromNumber(&ProcNumber);
 
     (VOID) KeInsertQueueDpc(&Context->Dpc, NULL, NULL);
@@ -112,7 +113,7 @@ EvtchnFree(
 
     ObDereferenceObject(Context->Event);
     RtlZeroMemory(Context, sizeof(XENIFACE_EVTCHN_CONTEXT));
-    ExFreePoolWithTag(Context, XENIFACE_POOL_TAG);
+    __FreePoolWithTag(Context, XENIFACE_POOL_TAG);
 }
 
 _Requires_exclusive_lock_held_(Fdo->EvtchnLock)
@@ -170,11 +171,10 @@ IoctlEvtchnBindUnbound(
     }
 
     status = STATUS_NO_MEMORY;
-    Context = ExAllocatePoolWithTag(NonPagedPool, sizeof(XENIFACE_EVTCHN_CONTEXT), XENIFACE_POOL_TAG);
+    Context = __AllocatePoolWithTag(NonPagedPool, sizeof(XENIFACE_EVTCHN_CONTEXT), XENIFACE_POOL_TAG);
     if (Context == NULL)
         goto fail2;
 
-    RtlZeroMemory(Context, sizeof(XENIFACE_EVTCHN_CONTEXT));
     Context->FileObject = FileObject;
 
     Trace("> RemoteDomain %d, Mask %d, FO %p\n",
@@ -231,7 +231,7 @@ fail4:
 fail3:
     Error("Fail3\n");
     RtlZeroMemory(Context, sizeof(XENIFACE_EVTCHN_CONTEXT));
-    ExFreePoolWithTag(Context, XENIFACE_POOL_TAG);
+    __FreePoolWithTag(Context, XENIFACE_POOL_TAG);
 
 fail2:
     Error("Fail2\n");
@@ -264,11 +264,10 @@ IoctlEvtchnBindInterdomain(
     }
 
     status = STATUS_NO_MEMORY;
-    Context = ExAllocatePoolWithTag(NonPagedPool, sizeof(XENIFACE_EVTCHN_CONTEXT), XENIFACE_POOL_TAG);
+    Context = __AllocatePoolWithTag(NonPagedPool, sizeof(XENIFACE_EVTCHN_CONTEXT), XENIFACE_POOL_TAG);
     if (Context == NULL)
         goto fail2;
 
-    RtlZeroMemory(Context, sizeof(XENIFACE_EVTCHN_CONTEXT));
     Context->FileObject = FileObject;
 
     Trace("> RemoteDomain %d, RemotePort %lu, Mask %d, FO %p\n",
@@ -327,7 +326,7 @@ fail4:
 fail3:
     Error("Fail3\n");
     RtlZeroMemory(Context, sizeof(XENIFACE_EVTCHN_CONTEXT));
-    ExFreePoolWithTag(Context, XENIFACE_POOL_TAG);
+    __FreePoolWithTag(Context, XENIFACE_POOL_TAG);
 
 fail2:
     Error("Fail2\n");
diff --git a/src/xeniface/ioctls.c b/src/xeniface/ioctls.c
index bf280cb..a624bd1 100644
--- a/src/xeniface/ioctls.c
+++ b/src/xeniface/ioctls.c
@@ -36,6 +36,7 @@
 #include "ioctls.h"
 #include "xeniface_ioctls.h"
 #include "log.h"
+#include "util.h"
 
 NTSTATUS
 __CaptureUserBuffer(
@@ -53,7 +54,7 @@ __CaptureUserBuffer(
     }
 
     Status = STATUS_NO_MEMORY;
-    TempBuffer = ExAllocatePoolWithTag(NonPagedPool, Length, XENIFACE_POOL_TAG);
+    TempBuffer = __AllocatePoolWithTag(NonPagedPool, Length, XENIFACE_POOL_TAG);
     if (TempBuffer == NULL)
         return STATUS_INSUFFICIENT_RESOURCES;
 
@@ -65,7 +66,7 @@ __CaptureUserBuffer(
         RtlCopyMemory(TempBuffer, Buffer, Length);
     } except(EXCEPTION_EXECUTE_HANDLER) {
         Error("Exception while probing/reading buffer at %p, size 0x%lx\n", Buffer, Length);
-        ExFreePoolWithTag(TempBuffer, XENIFACE_POOL_TAG);
+        __FreePoolWithTag(TempBuffer, XENIFACE_POOL_TAG);
         TempBuffer = NULL;
         Status = GetExceptionCode();
     }
@@ -81,7 +82,7 @@ __FreeCapturedBuffer(
     )
 {
     if (CapturedBuffer != NULL) {
-        ExFreePoolWithTag(CapturedBuffer, XENIFACE_POOL_TAG);
+        __FreePoolWithTag(CapturedBuffer, XENIFACE_POOL_TAG);
     }
 }
 
diff --git a/src/xeniface/util.h b/src/xeniface/util.h
index f07f708..bc7518a 100644
--- a/src/xeniface/util.h
+++ b/src/xeniface/util.h
@@ -151,8 +151,12 @@ __AllocatePoolWithTag(
     __analysis_assume(PoolType == NonPagedPool ||
                       PoolType == PagedPool);
 
+#if (_MSC_VER >= 1928) // VS 16.9 (EWDK 20344 or later)
+    Buffer = ExAllocatePoolUninitialized(PoolType, NumberOfBytes, Tag);
+#else
 #pragma warning(suppress:28160) // annotation error
     Buffer = ExAllocatePoolWithTag(PoolType, NumberOfBytes, Tag);
+#endif
     if (Buffer == NULL)
         return NULL;
 
diff --git a/src/xeniface/wmi.c b/src/xeniface/wmi.c
index b09cbff..8f6095a 100644
--- a/src/xeniface/wmi.c
+++ b/src/xeniface/wmi.c
@@ -45,6 +45,26 @@
 #include "log.h"
 #include "xeniface_ioctls.h"
 #include <version.h>
+#include "util.h"
+
+#define WMI_POOL_TAG    'XenP'
+
+static FORCEINLINE PVOID
+WmiAllocate(
+    IN  ULONG   Length
+    )
+{
+    // Zeroes the allocation
+    return __AllocatePoolWithTag(NonPagedPool, Length, WMI_POOL_TAG);
+}
+
+static FORCEINLINE VOID
+WmiFree(
+    IN  PVOID   Buffer
+    )
+{
+    __FreePoolWithTag(Buffer, WMI_POOL_TAG);
+}
 
 void LockSessions(
         XENIFACE_FDO* fdoData)
@@ -266,7 +286,7 @@ NTSTATUS GetUTF8String(UTF8_STRING** utf8, USHORT bufsize, LPWSTR ustring)
         bytecount += CountUtf8FromUtf32(utf32);
     }
 
-    *utf8 = ExAllocatePoolWithTag(NonPagedPool, sizeof(UTF8_STRING)+bytecount, 'XIU8');
+    *utf8 = WmiAllocate(sizeof(UTF8_STRING) + bytecount);
     if ((*utf8) == NULL)
         return STATUS_INSUFFICIENT_RESOURCES;
 
@@ -284,7 +304,7 @@ NTSTATUS GetUTF8String(UTF8_STRING** utf8, USHORT bufsize, LPWSTR ustring)
 }
 
 void FreeUTF8String(UTF8_STRING *utf8) {
-    ExFreePoolWithTag(utf8, 'XIU8');
+    WmiFree(utf8);
 }
 
 NTSTATUS GetCountedUTF8String(UTF8_STRING **utf8, UCHAR *location)
@@ -505,11 +525,10 @@ WriteCountedUTF8String(const char * string, UCHAR *location) {
     NTSTATUS status = STATUS_SUCCESS;
     WCHAR *buffer;
     bytesize = CountBytesUtf16FromUtf8(string);
-    buffer = ExAllocatePoolWithTag(NonPagedPool, bytesize+sizeof(WCHAR), 'XSUc');
-
-    if (buffer == NULL) {
+    buffer = WmiAllocate(bytesize + sizeof(WCHAR));
+    if (buffer == NULL)
         return STATUS_INSUFFICIENT_RESOURCES;
-    }
+
     buffer[bytesize/sizeof(WCHAR)] = 0;
 
     i=0;
@@ -520,7 +539,7 @@ WriteCountedUTF8String(const char * string, UCHAR *location) {
     }
     RtlInitUnicodeString(&unicode, buffer);
     status = WriteCountedUnicodeString(&unicode, location);
-    ExFreePoolWithTag(buffer, 'XSUc');
+    WmiFree(buffer);
 
     return status;
 }
@@ -548,7 +567,7 @@ WriteCountedString(
 }
 
 void AllocUnicodeStringBuffer(UNICODE_STRING *string, USHORT buffersize) {
-    string->Buffer = ExAllocatePoolWithTag(NonPagedPool, buffersize, 'XIUC');
+    string->Buffer = WmiAllocate(buffersize);
     string->Length = 0;
     if (string->Buffer == NULL) {
         string->MaximumLength=0;
@@ -560,7 +579,7 @@ void AllocUnicodeStringBuffer(UNICODE_STRING *string, USHORT buffersize) {
 }
 void FreeUnicodeStringBuffer(UNICODE_STRING *string) {
     if (string->Buffer)
-        ExFreePoolWithTag(string->Buffer, 'XIUC');
+        WmiFree(string->Buffer);
     string->Length=0;
     string->MaximumLength=0;
     string->Buffer = NULL;
@@ -772,14 +791,14 @@ void FireWatch(XenStoreWatch* watch) {
     ULONG RequiredSize;
     UCHAR *sesbuf;
 
-    AccessWmiBuffer(0, FALSE, &RequiredSize, 0,
+    (VOID) AccessWmiBuffer(0, FALSE, &RequiredSize, 0,
             WMI_STRING, GetCountedUnicodeStringSize(&watch->path),
                 &sesbuf,
             WMI_DONE);
 
-    eventdata = ExAllocatePoolWithTag(NonPagedPool, RequiredSize,'XIEV');
+    eventdata = WmiAllocate(RequiredSize);
     if (eventdata!=NULL) {
-        AccessWmiBuffer(eventdata, FALSE, &RequiredSize, RequiredSize,
+        (VOID) AccessWmiBuffer(eventdata, FALSE, &RequiredSize, RequiredSize,
             WMI_STRING, GetCountedUnicodeStringSize(&watch->path),
                 &sesbuf,
             WMI_DONE);
@@ -809,24 +828,24 @@ StartWatch(XENIFACE_FDO *fdoData, XenStoreWatch *watch)
     if (!NT_SUCCESS(status)) {
         return STATUS_INSUFFICIENT_RESOURCES;
     }
-    tmppath = ExAllocatePoolWithTag(NonPagedPool, ansipath.Length+1, 'XenP');
+    tmppath = WmiAllocate(ansipath.Length + 1);
     if (!tmppath) {
         RtlFreeAnsiString(&ansipath);
         return STATUS_INSUFFICIENT_RESOURCES;
     }
-    RtlZeroMemory(tmppath, ansipath.Length+1);
+
     RtlCopyBytes(tmppath,ansipath.Buffer, ansipath.Length);
 
     status = XENBUS_STORE(WatchAdd, &fdoData->StoreInterface, NULL, tmppath, &watch->watchevent, &watch->watchhandle );
     if (!NT_SUCCESS(status)) {
-        ExFreePool(tmppath);
+        WmiFree(tmppath);
         RtlFreeAnsiString(&ansipath);
         return status;
     }
 
     Info("Start Watch %p\n", watch->watchhandle);
 
-    ExFreePool(tmppath);
+    WmiFree(tmppath);
     RtlFreeAnsiString(&ansipath);
 
     return STATUS_SUCCESS;
@@ -867,7 +886,7 @@ VOID WatchCallbackThread(__in PVOID StartContext) {
             if (watch->finished) {
                 FreeUnicodeStringBuffer(&watch->path);
                 RemoveEntryList((LIST_ENTRY*)watch);
-                ExFreePool(watch);
+                WmiFree(watch);
                 session->mapchanged = TRUE;
                 session->watchcount --;
             } else if (!session->suspended &&
@@ -895,7 +914,7 @@ VOID WatchCallbackThread(__in PVOID StartContext) {
                         watch=(XenStoreWatch *)session->watches.Flink) {
                             FreeUnicodeStringBuffer(&watch->path);
                             RemoveEntryList((LIST_ENTRY*)watch);
-                            ExFreePool(watch);
+                            WmiFree(watch);
                             session->mapchanged = TRUE;
                             session->watchcount --;
                     }
@@ -928,10 +947,9 @@ SessionAddWatchLocked(XenStoreSession *session,
         return STATUS_INSUFFICIENT_RESOURCES;
     }
 
-    *watch = ExAllocatePoolWithTag(NonPagedPool, sizeof(XenStoreWatch), 'XenP');
-    if (*watch == NULL) {
+    *watch = WmiAllocate(sizeof(XenStoreWatch));
+    if (*watch == NULL)
         return STATUS_INSUFFICIENT_RESOURCES;
-    }
 
     (*watch)->finished = FALSE;
     (*watch)->fdoData = fdoData;
@@ -947,7 +965,7 @@ SessionAddWatchLocked(XenStoreSession *session,
 
     status = StartWatch(fdoData, *watch);
     if ((!NT_SUCCESS(status)) || ((*watch)->watchhandle == NULL)) {
-        ExFreePool(*watch);
+        WmiFree(*watch);
         return STATUS_INSUFFICIENT_RESOURCES;
     }
 
@@ -1053,16 +1071,16 @@ PSTR Xmasprintf(const char *fmt, ...) {
     va_start(argv, fmt);
     do{
         basesize = basesize * 2;
-        out =  ExAllocatePoolWithTag(NonPagedPool, basesize, 'XenP');
+        out =  WmiAllocate((ULONG)basesize);
         if (out == NULL)
             return NULL;
 
         status = RtlStringCbVPrintfExA(out, basesize, NULL, &unused,0, fmt, argv);
 
-        ExFreePool(out);
+        WmiFree(out);
     }while (status != STATUS_SUCCESS);
 
-    out = ExAllocatePoolWithTag(NonPagedPool, basesize-unused +1, 'XenP');
+    out = WmiAllocate((ULONG)(basesize - unused + 1));
     if (out == NULL)
         return NULL;
 
@@ -1086,16 +1104,15 @@ CreateNewSession(XENIFACE_FDO *fdoData,
     if (fdoData->Sessions == MAX_SESSIONS) {
         return STATUS_INSUFFICIENT_RESOURCES;
     }
-    session = ExAllocatePoolWithTag(NonPagedPool, sizeof(XenStoreSession), 'XenP');
+    session = WmiAllocate(sizeof(XenStoreSession));
     if (session == NULL)
         return STATUS_INSUFFICIENT_RESOURCES;
-    RtlZeroMemory(session, sizeof(XenStoreSession));
 
     InitializeMutex(&session->WatchMapLock);
     session->mapchanged = TRUE;
     status = RtlUnicodeStringToAnsiString(&ansi, stringid, TRUE);
     if (!NT_SUCCESS(status)) {
-        ExFreePool(session);
+        WmiFree(session);
         return status;
     }
     LockSessions(fdoData);
@@ -1107,16 +1124,16 @@ CreateNewSession(XENIFACE_FDO *fdoData,
         if (iname == NULL) {
             UnlockSessions(fdoData);
             RtlFreeAnsiString(&ansi);
-            ExFreePool(session);
+            WmiFree(session);
             return status;
         }
 
         status = GetInstanceName(&session->instancename ,fdoData,iname);
-        ExFreePool(iname);
+        WmiFree(iname);
         if (!NT_SUCCESS(status)) {
             UnlockSessions(fdoData);
             RtlFreeAnsiString(&ansi);
-            ExFreePool(session);
+            WmiFree(session);
             return status;
         }
         count++;
@@ -1158,7 +1175,7 @@ CreateNewSession(XENIFACE_FDO *fdoData,
     status = PsCreateSystemThread(&hthread, THREAD_ALL_ACCESS, &oa, NULL, NULL, WatchCallbackThread, session);
     if (!NT_SUCCESS(status)) {
             RtlFreeAnsiString(&ansi);
-            ExFreePool(session);
+            WmiFree(session);
             return status;
     }
     ObReferenceObjectByHandle(hthread, THREAD_ALL_ACCESS, NULL, KernelMode,  &session->WatchThread, NULL);
@@ -1185,7 +1202,7 @@ RemoveSessionLocked(XENIFACE_FDO *fdoData,
     ObDereferenceObject(session->WatchThread);
     FreeUnicodeStringBuffer(&session->stringid);
     FreeUnicodeStringBuffer(&session->instancename);
-    ExFreePool(session);
+    WmiFree(session);
 }
 
 void
@@ -1473,11 +1490,11 @@ SessionExecuteRemoveValue(UCHAR *InBuffer,
         return status;
 
     status = STATUS_INSUFFICIENT_RESOURCES;
-    tmpbuffer = ExAllocatePoolWithTag(NonPagedPool, pathname->Length+1, 'XenP');
+    tmpbuffer = WmiAllocate(pathname->Length + 1);
     if (!tmpbuffer) {
         goto fail1;
     }
-    RtlZeroMemory(tmpbuffer, pathname->Length+1);
+
     RtlCopyBytes(tmpbuffer,pathname->Buffer, pathname->Length);
 
     status = STATUS_WMI_INSTANCE_NOT_FOUND;
@@ -1489,7 +1506,7 @@ SessionExecuteRemoveValue(UCHAR *InBuffer,
     UnlockSessions(fdoData);
 
 fail2:
-    ExFreePool(tmpbuffer);
+    WmiFree(tmpbuffer);
 
 fail1:
     FreeUTF8String(pathname);
@@ -1648,22 +1665,22 @@ SessionExecuteSetValue(UCHAR *InBuffer,
         return status;
 
     status = STATUS_INSUFFICIENT_RESOURCES;
-    tmppath = ExAllocatePoolWithTag(NonPagedPool, pathname->Length+1, 'XenP');
+    tmppath = WmiAllocate(pathname->Length + 1);
     if (!tmppath) {
         goto fail1;
     }
-    RtlZeroMemory(tmppath, pathname->Length+1);
+
     RtlCopyBytes(tmppath,pathname->Buffer, pathname->Length);
     status = GetCountedUTF8String(&value, uvalue);
     if (!NT_SUCCESS(status)){
         goto fail2;
     }
     status = STATUS_INSUFFICIENT_RESOURCES;
-    tmpvalue = ExAllocatePoolWithTag(NonPagedPool,value->Length+1,'XenP');
+    tmpvalue = WmiAllocate(value->Length + 1);
     if (!tmpvalue) {
         goto fail3;
     }
-    RtlZeroMemory(tmpvalue, value->Length+1);
+
     RtlCopyBytes(tmpvalue,value->Buffer, value->Length);
 
     status = STATUS_WMI_INSTANCE_NOT_FOUND;
@@ -1676,13 +1693,13 @@ SessionExecuteSetValue(UCHAR *InBuffer,
     UnlockSessions(fdoData);
 
 fail4:
-    ExFreePool(tmpvalue);
+    WmiFree(tmpvalue);
 
 fail3:
     FreeUTF8String(value);
 
 fail2:
-    ExFreePool(tmppath);
+    WmiFree(tmppath);
 
 fail1:
     FreeUTF8String(pathname);
@@ -1724,11 +1741,11 @@ SessionExecuteGetFirstChild(UCHAR *InBuffer,
     }
 
     status = STATUS_INSUFFICIENT_RESOURCES;
-    tmppath = ExAllocatePoolWithTag(NonPagedPool,path->Length+1, 'XenP');
+    tmppath = WmiAllocate(path->Length + 1);
     if (!tmppath) {
         goto fail1;
     }
-    RtlZeroMemory(tmppath, path->Length+1);
+
     RtlCopyBytes(tmppath,path->Buffer, path->Length);
 
     status = STATUS_WMI_INSTANCE_NOT_FOUND;
@@ -1782,7 +1799,7 @@ SessionExecuteGetFirstChild(UCHAR *InBuffer,
 
         WriteCountedUTF8String(fullpath, valuepos);
         valuepos+=GetCountedUtf8Size(fullpath);
-        ExFreePool(fullpath);
+        WmiFree(fullpath);
     }
     else {
         WriteCountedUTF8String("", valuepos);
@@ -1795,7 +1812,7 @@ fail3:
     *byteswritten = RequiredSize;
 
 fail2:
-    ExFreePool(tmppath);
+    WmiFree(tmppath);
 
 fail1:
     FreeUTF8String(path);
@@ -1842,17 +1859,16 @@ SessionExecuteGetNextSibling(UCHAR *InBuffer,
     }
 
     status = STATUS_INSUFFICIENT_RESOURCES;
-    tmppath = ExAllocatePoolWithTag(NonPagedPool,path->Length+1,'XenP');
+    tmppath = WmiAllocate(path->Length + 1);
 
     if (!tmppath) {
         goto fail1;
     }
-    RtlZeroMemory(tmppath, path->Length+1);
-    tmpleaf = ExAllocatePoolWithTag(NonPagedPool,path->Length+1,'XenP');
+
+    tmpleaf = WmiAllocate(path->Length + 1);
     if (!tmpleaf) {
         goto fail2;
     }
-    RtlZeroMemory(tmpleaf, path->Length+1);
 
     status = STATUS_WMI_INSTANCE_NOT_FOUND;
     if ((session = FindSessionByInstanceAndLock(fdoData, instance)) ==
@@ -1956,7 +1972,7 @@ SessionExecuteGetNextSibling(UCHAR *InBuffer,
         }
 
         WriteCountedUTF8String(fullpath, valuepos);
-        ExFreePool(fullpath);
+        WmiFree(fullpath);
     }
     else {
         WriteCountedUTF8String("", valuepos);
@@ -1969,10 +1985,10 @@ fail4:
     XENBUS_STORE(Free, &fdoData->StoreInterface, listresults);
 
 fail3:
-    ExFreePool(tmpleaf);
+    WmiFree(tmpleaf);
 
 fail2:
-    ExFreePool(tmppath);
+    WmiFree(tmppath);
 
 fail1:
     FreeUTF8String(path);
@@ -2017,11 +2033,11 @@ SessionExecuteGetChildren(UCHAR *InBuffer,
     }
 
     status = STATUS_INSUFFICIENT_RESOURCES;
-    tmppath = ExAllocatePoolWithTag(NonPagedPool,path->Length+1,'XenP');
+    tmppath = WmiAllocate(path->Length + 1);
     if (!tmppath) {
         goto fail1;
     }
-    RtlZeroMemory(tmppath, path->Length+1);
+
     RtlCopyBytes(tmppath,path->Buffer, path->Length);
 
     status = STATUS_WMI_INSTANCE_NOT_FOUND;
@@ -2079,7 +2095,7 @@ SessionExecuteGetChildren(UCHAR *InBuffer,
 
         WriteCountedUTF8String(fullpath, valuepos);
         valuepos+=GetCountedUtf8Size(fullpath);
-        ExFreePool(fullpath);
+        WmiFree(fullpath);
         for (;*nextresults!=0;nextresults++);
         nextresults++;
         i++;
@@ -2093,7 +2109,7 @@ fail3:
     XENBUS_STORE(Free, &fdoData->StoreInterface, listresults);
 
 fail2:
-    ExFreePool(tmppath);
+    WmiFree(tmppath);
 
 fail1:
     FreeUTF8String(path);
@@ -2285,13 +2301,12 @@ SessionExecuteGetValue(UCHAR *InBuffer,
         return status;;
 
     status = STATUS_INSUFFICIENT_RESOURCES;
-    tmppath = ExAllocatePoolWithTag(NonPagedPool,path->Length+1,'XenP');
+    tmppath = WmiAllocate(path->Length + 1);
     if (!tmppath) {
         goto fail1;
     }
-    RtlZeroMemory(tmppath, path->Length+1);
-    RtlCopyBytes(tmppath,path->Buffer, path->Length);
 
+    RtlCopyBytes(tmppath,path->Buffer, path->Length);
 
     status = STATUS_WMI_INSTANCE_NOT_FOUND;
     if ((session = FindSessionByInstanceAndLock(fdoData, instance)) ==
@@ -2318,7 +2333,7 @@ fail3:
     *byteswritten = RequiredSize;
 
 fail2:
-    ExFreePool(tmppath);
+    WmiFree(tmppath);
 
 fail1:
     FreeUTF8String(path);
@@ -2616,7 +2631,7 @@ GenerateSessionBlock(UCHAR *Buffer,
         UCHAR *sesbuf;
         UCHAR *inamebuf;
 
-        AccessWmiBuffer((PUCHAR)nodesizerequired, FALSE, &RequiredSize, 0,
+        (VOID) AccessWmiBuffer((PUCHAR)nodesizerequired, FALSE, &RequiredSize, 0,
                         WMI_UINT32, &id,
                         WMI_STRING,
                             GetCountedUnicodeStringSize(&session->stringid),
@@ -2624,7 +2639,7 @@ GenerateSessionBlock(UCHAR *Buffer,
                         WMI_DONE);
         nodesizerequired += RequiredSize;
 
-        AccessWmiBuffer((PUCHAR)namesizerequired, FALSE, &RequiredSize, 0,
+        (VOID) AccessWmiBuffer((PUCHAR)namesizerequired, FALSE, &RequiredSize, 0,
                         WMI_STRING,
                             GetCountedUnicodeStringSize(&session->instancename),
                             &inamebuf,
@@ -2666,7 +2681,7 @@ GenerateSessionBlock(UCHAR *Buffer,
             UCHAR *sesbuf;
             UCHAR *inamebuf;
 
-            AccessWmiBuffer(datapos, FALSE, &RequiredSize, BufferSize+Buffer-datapos,
+            (VOID) AccessWmiBuffer(datapos, FALSE, &RequiredSize, BufferSize+Buffer-datapos,
                             WMI_UINT32, &id,
                             WMI_STRING,
                                 GetCountedUnicodeStringSize(&session->stringid),
@@ -2681,7 +2696,7 @@ GenerateSessionBlock(UCHAR *Buffer,
             WriteCountedUnicodeString(&session->stringid, sesbuf);
             datapos+=RequiredSize;
 
-            AccessWmiBuffer(namepos, FALSE, &RequiredSize, BufferSize+Buffer-namepos,
+            (VOID) AccessWmiBuffer(namepos, FALSE, &RequiredSize, BufferSize+Buffer-namepos,
                             WMI_STRING,
                                 GetCountedUnicodeStringSize(&session->instancename),
                                 &inamebuf,
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 12 12:36:36 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Aug 2021 12:36:36 +0000
Received: from list by lists.xenproject.org with outflank-mailman.166336.303708 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9wq-00077l-DC; Thu, 12 Aug 2021 12:36:36 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 166336.303708; Thu, 12 Aug 2021 12:36:36 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9wq-00077e-AP; Thu, 12 Aug 2021 12:36:36 +0000
Received: by outflank-mailman (input) for mailman id 166336;
 Thu, 12 Aug 2021 12:36:35 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6F1S=ND=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mE9wp-000738-Kn
 for win-pv-devel@lists.xenproject.org; Thu, 12 Aug 2021 12:36:35 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 31aa9930-ec49-4fd2-8db2-c0e72e3f8056;
 Thu, 12 Aug 2021 12:36:31 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 31aa9930-ec49-4fd2-8db2-c0e72e3f8056
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628771790;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=ARSMpN1HiFvbqnqZqZ4tGgEDnIOtZXmXjxVChQmX9o0=;
  b=EeJboKosO6Cu+Sh1VicysXVk7Kla42K7/TZDt/nor8xsLuvQEniK5vFN
   e1iVwFkon7pC0EP4ivoluw8COOUnY52z41RRnDftLYIwjxbsm9/ZOarg4
   +ufrJ0z1GYPXAHcHpIamMlQmgYCkap5jz65YZ7OoBjcAXWuyvP7GY2OEs
   A=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: X5CbTqegv86l57gLFGtH4YZ1GyovEsmHDzVsD9VzF2U5VA2OmPgk1aXRzyYXwr3m3jGpXgCc6y
 t2pbYAeovOKKYtCTtD5sh//d/FI2SdbAISJ1WnpleiDyzfJ1HwJ2DoW3ZaSuPyPQkunXp7mYEw
 UwQsztNqVklNTMYqa1pJrtateniuBKPTuJA4f34CszS5zvEwdX0B1TWerkmt9HkeG2sR6WtA16
 bH0A2hXmvgbnVmQnoNYe0MlYceUKBYYRoUrtbfrhLLB91/9sDPMrS4AdoGkJL918VoTDbQ/Qkg
 B+PHMSZcL3HbGgPp5jnuZLA8
X-SBRS: 5.1
X-MesageID: 49948936
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:2yK9eKOs/5mAx8BcTs2jsMiBIKoaSvp037Eqv3oedfUzSL39qy
 nOpoV86faaslYssR0b9exoW5PwJE80l6QFgrX5VI3KNGKN1VdARLsSircKqAeAJ8SRzIFgPN
 9bAspDNOE=
X-IronPort-AV: E=Sophos;i="5.84,315,1620705600"; 
   d="scan'208";a="49948936"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 1/3] Fix build with later WDKs
Date: Thu, 12 Aug 2021 13:36:10 +0100
Message-ID: <20210812123612.1826-1-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- Adds alias for GetProjectInfoForReference target to version.vcxproj
    Later kits seemed to have renamed the build target, and will fail without
    this alias target.
- Adds "/fd sha256" to signtool command line
    WDK 20344 and later require binaries signed with a SHA256 file digest, or
    the build outputs are deleted
- Fixes warning 4061 - switch statement on enum types need to have a case for
    all values of the enumeration

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 src/xeniface/driver.c                          | 1 +
 src/xeniface/names.h                           | 5 +++++
 src/xeniface/wmi.c                             | 1 +
 vs2019/package/package.vcxproj                 | 5 +++++
 vs2019/version/version.vcxproj                 | 6 ++++++
 vs2019/xenagent/xenagent.vcxproj               | 3 +++
 vs2019/xencontrol/xencontrol.vcxproj           | 3 +++
 vs2019/xeniface/xeniface.vcxproj               | 3 +++
 vs2019/xeniface_coinst/xeniface_coinst.vcxproj | 3 +++
 9 files changed, 30 insertions(+)

diff --git a/src/xeniface/driver.c b/src/xeniface/driver.c
index 2087cad..5ba4469 100644
--- a/src/xeniface/driver.c
+++ b/src/xeniface/driver.c
@@ -121,6 +121,7 @@ Dispatch(
         status = FdoDispatch(Fdo, Irp);
         break;
     }
+    case PHYSICAL_DEVICE_OBJECT:
     default:
         ASSERT(FALSE);
         break;
diff --git a/src/xeniface/names.h b/src/xeniface/names.h
index 9d282f7..9237e18 100644
--- a/src/xeniface/names.h
+++ b/src/xeniface/names.h
@@ -124,6 +124,7 @@ PowerActionName(
     _POWER_ACTION_NAME(ShutdownReset);
     _POWER_ACTION_NAME(ShutdownOff);
     _POWER_ACTION_NAME(WarmEject);
+    _POWER_ACTION_NAME(DisplayOff);
     default:
         break;
     }
@@ -266,6 +267,10 @@ DeviceUsageTypeName(
     _DEVICE_USAGE_TYPE_NAME(Paging);
     _DEVICE_USAGE_TYPE_NAME(Hibernation);
     _DEVICE_USAGE_TYPE_NAME(DumpFile);
+    _DEVICE_USAGE_TYPE_NAME(Undefined);
+    _DEVICE_USAGE_TYPE_NAME(Boot);
+    _DEVICE_USAGE_TYPE_NAME(PostDisplay);
+    _DEVICE_USAGE_TYPE_NAME(GuestAssigned);
     default:
         break;
     }
diff --git a/src/xeniface/wmi.c b/src/xeniface/wmi.c
index 7cdb20d..b09cbff 100644
--- a/src/xeniface/wmi.c
+++ b/src/xeniface/wmi.c
@@ -464,6 +464,7 @@ int AccessWmiBuffer(PUCHAR Buffer, int readbuffer, ULONG * RequiredSize,
                         position += sizeof(WCHAR)*25;
                     }
                     break;
+                case WMI_DONE:
                 default:
                     return FALSE;
             }
diff --git a/vs2019/package/package.vcxproj b/vs2019/package/package.vcxproj
index 31dacd3..2fe1204 100644
--- a/vs2019/package/package.vcxproj
+++ b/vs2019/package/package.vcxproj
@@ -32,6 +32,11 @@
     <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
     <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
   </PropertyGroup>
+  <ItemDefinitionGroup>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
+  </ItemDefinitionGroup>
   <PropertyGroup Condition="'$(Platform)'=='Win32'">
     <ArchiveDir>..\..\$(SolutionName)\x86</ArchiveDir>
   </PropertyGroup>
diff --git a/vs2019/version/version.vcxproj b/vs2019/version/version.vcxproj
index 9d149d0..b6ec6f3 100644
--- a/vs2019/version/version.vcxproj
+++ b/vs2019/version/version.vcxproj
@@ -13,4 +13,10 @@
   <Target Name="Build">
     <Exec Command="powershell.exe -ExecutionPolicy Bypass -NoProfile -NonInteractive -File $(Script) $(Platform) $(SolutionDir) $(IncludeDir) $(SourceDir)" />
   </Target>
+  <Target Name="GetProjectInfoForReference"
+          Returns="@(ProjectInfoForReference)">
+    <ItemGroup>
+      <ProjectInfoForReference Include="@(LibFullPath)" />
+    </ItemGroup>
+  </Target>
 </Project>
diff --git a/vs2019/xenagent/xenagent.vcxproj b/vs2019/xenagent/xenagent.vcxproj
index eff385b..1076c81 100644
--- a/vs2019/xenagent/xenagent.vcxproj
+++ b/vs2019/xenagent/xenagent.vcxproj
@@ -37,6 +37,9 @@
     <ResourceCompile>
       <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
     </ResourceCompile>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
diff --git a/vs2019/xencontrol/xencontrol.vcxproj b/vs2019/xencontrol/xencontrol.vcxproj
index f54d6b5..36383d8 100644
--- a/vs2019/xencontrol/xencontrol.vcxproj
+++ b/vs2019/xencontrol/xencontrol.vcxproj
@@ -36,6 +36,9 @@
     <ResourceCompile>
       <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
     </ResourceCompile>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
diff --git a/vs2019/xeniface/xeniface.vcxproj b/vs2019/xeniface/xeniface.vcxproj
index b258815..1df86f5 100644
--- a/vs2019/xeniface/xeniface.vcxproj
+++ b/vs2019/xeniface/xeniface.vcxproj
@@ -36,6 +36,9 @@
       <AdditionalDependencies>$(DDK_LIB_PATH)\ntstrsafe.lib;$(DDK_LIB_PATH)\procgrp.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
     </Link>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
diff --git a/vs2019/xeniface_coinst/xeniface_coinst.vcxproj b/vs2019/xeniface_coinst/xeniface_coinst.vcxproj
index b011416..77e6836 100644
--- a/vs2019/xeniface_coinst/xeniface_coinst.vcxproj
+++ b/vs2019/xeniface_coinst/xeniface_coinst.vcxproj
@@ -34,6 +34,9 @@
     <ResourceCompile>
       <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
     </ResourceCompile>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 12 12:39:16 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Aug 2021 12:39:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.166361.303712 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9zP-0007K0-Lo; Thu, 12 Aug 2021 12:39:15 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 166361.303712; Thu, 12 Aug 2021 12:39:15 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9zP-0007Jt-Iu; Thu, 12 Aug 2021 12:39:15 +0000
Received: by outflank-mailman (input) for mailman id 166361;
 Thu, 12 Aug 2021 12:39:14 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6F1S=ND=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mE9zO-0007Jn-NS
 for win-pv-devel@lists.xenproject.org; Thu, 12 Aug 2021 12:39:14 +0000
Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id e4855156-a06e-48bf-aa47-38a31a21c80c;
 Thu, 12 Aug 2021 12:39:13 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: e4855156-a06e-48bf-aa47-38a31a21c80c
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628771953;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=djnQjBTTwTxqmxQV82ry9YGQu9tSIxPN7w5OHmWzTcY=;
  b=GghHq6wumEj611hv7qcnK4+yd0vU4nguJacSVX8AvZMHekiYsDm/kDRF
   rvcWcvALES1511dDt55pLY6PssXwKOK2l6Si7lvw+Bv5teb8p5ENgc7he
   4saOBZExIUG0J77cY9ZpiYUxi5qiasXfZAqq7kOfOhEM1eopKSdgIh2Bf
   Q=;
Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: fOaHKb6Js87eg+IRhXlpDxpUdDbLnUdZqBdczjZ43g3wFHEBNh74dI558BsE1bMfypMUw010SQ
 77LjBZrmfUdr0A3UHHX2X29br0xAqGbWUFsILr78lBfb/jOrhgOks8rc46s9ptfnanSgaixlOb
 HV5kgq2PHnB6vhTo9I3K73QTsRB6G0j4g6/9daNgI3f3kUnlu2ChYEuZ0uMjtX68bqN7tfhWMv
 deS3jYkYSsdtIPSZBQeWcRkWq8CcMkr8zqHqDWNfpnK8NWsXrBAC7RfW4/BCQcT29GjBGYHstK
 /LWifKDtIeGVW97+kmiy5MO+
X-SBRS: 5.1
X-MesageID: 50283009
X-Ironport-Server: esa2.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:EKHyq6x3cu8Ww+MRB7RaKrPxl+skLtp133Aq2lEZdPUMSL3gqy
 nPpoVY6ff14AxxZJhSo6HGBEDgewKbyXcb2/h1AV7PZmbbUS6TXedfBOjZsnTd8k/Fh4pgPM
 5bGsAUZbHN5BpB/KHHCWKDc+rIteP3kpxA8t2urEuFIzsFV0nMhD0SNi+rVmlNACVWD5swE5
 SRouBdoSC7RHgRZsOnQlEYQunqvbTw5dnbSC9DIyRixBiFjDuu5rK/OQOfxA0iXzRGxqpn2X
 TZkjb++r6ov5iAu1XhPi7ontlrcenau5R+7f+3+4Yow/LX+0eVjbFaKvG/VfYO0aGSARgR4Z
 rxSlwbTrxOAjvqDxqISZyH4Xil7N77gEWSjGNwx0GT6fDRVXY0DdFMipledQac4008vMtk2K
 YOxG6BsYFLZCmw6RgVyuK4JC2CrHDE00bKUNRj8EB3QM8bcvtcvIYf9ERaHNMJGz/78pkuFK
 1rANvH7PhbfFuGZzSB11Mft+CETzA2BFOLU0ICssua33xfm2141VIRwIgakm0b/JwwRpFY76
 DPM7hulrtJUsgKBJgNcNspUI+yECjAUBjMOGWdLRDuE7wGIWvEr9rt7LA89IiRCew1JVsJ6e
 X8uXZjxBgPkm7VeLCzNaxwg27wqT+GLE7QI+llluREhoE=
X-IronPort-AV: E=Sophos;i="5.84,315,1620705600"; 
   d="scan'208";a="50283009"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 1/3] Fix build with later WDKs
Date: Thu, 12 Aug 2021 13:39:05 +0100
Message-ID: <20210812123907.2005-1-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- Adds alias for GetProjectInfoForReference target to version.vcxproj
    Later kits seemed to have renamed the build target, and will fail without
    this alias target.
- Adds "/fd sha256" to signtool command line
    WDK 20344 and later require binaries signed with a SHA256 file digest, or
    the build outputs are deleted
- Fixes warning 4061 - switch statement on enum types need to have a case for
    all values of the enumeration

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 src/xennet/adapter.c                       |  8 ++++++++
 src/xennet/miniport.c                      | 10 ++++++++++
 src/xennet/receiver.c                      |  3 +++
 vs2019/package/package.vcxproj             |  5 +++++
 vs2019/version/version.vcxproj             |  6 ++++++
 vs2019/xennet/xennet.vcxproj               |  3 +++
 vs2019/xennet_coinst/xennet_coinst.vcxproj |  3 +++
 7 files changed, 38 insertions(+)

diff --git a/src/xennet/adapter.c b/src/xennet/adapter.c
index eaa2c1b..8b419bf 100644
--- a/src/xennet/adapter.c
+++ b/src/xennet/adapter.c
@@ -2097,6 +2097,10 @@ AdapterSetInformation(
                 Info("%ws: SET_POWER: D3\n",
                      Adapter->Location);
                 break;
+
+            case NdisDeviceStateUnspecified:
+            case NdisDeviceStateMaximum:
+                break;
             }
         }
         // do nothing
@@ -2313,6 +2317,10 @@ AdapterQueryInformation(
                 Info("%ws: QUERY_POWER: D3\n",
                      Adapter->Location);
                 break;
+
+            case NdisDeviceStateUnspecified:
+            case NdisDeviceStateMaximum:
+                break;
             }
         }
 
diff --git a/src/xennet/miniport.c b/src/xennet/miniport.c
index 5b69315..0398d80 100644
--- a/src/xennet/miniport.c
+++ b/src/xennet/miniport.c
@@ -165,6 +165,16 @@ MiniportOidRequest(
             NdisStatus = AdapterQueryInformation(Adapter, OidRequest);
             break;
 
+        case NdisRequestOpen:
+        case NdisRequestClose:
+        case NdisRequestSend:
+        case NdisRequestTransferData:
+        case NdisRequestReset:
+        case NdisRequestGeneric1:
+        case NdisRequestGeneric2:
+        case NdisRequestGeneric3:
+        case NdisRequestGeneric4:
+        case NdisRequestMethod:
         default:
             NdisStatus = NDIS_STATUS_NOT_SUPPORTED;
             break;
diff --git a/src/xennet/receiver.c b/src/xennet/receiver.c
index 2f7ea25..ff9a7c5 100644
--- a/src/xennet/receiver.c
+++ b/src/xennet/receiver.c
@@ -284,6 +284,8 @@ __ReceiverReceivePacket(
                                           NdisHashFunctionToeplitz);
         break;
 
+    case XENVIF_PACKET_HASH_ALGORITHM_NONE:
+    case XENVIF_PACKET_HASH_ALGORITHM_UNSPECIFIED:
     default:
         goto done;
     }
@@ -309,6 +311,7 @@ __ReceiverReceivePacket(
                                       NDIS_HASH_TCP_IPV6);
         break;
 
+    case XENVIF_PACKET_HASH_TYPE_NONE:
     default:
         ASSERT(FALSE);
         break;
diff --git a/vs2019/package/package.vcxproj b/vs2019/package/package.vcxproj
index dd794b5..1a439ee 100644
--- a/vs2019/package/package.vcxproj
+++ b/vs2019/package/package.vcxproj
@@ -31,6 +31,11 @@
     <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
     <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
   </PropertyGroup>
+  <ItemDefinitionGroup>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
+  </ItemDefinitionGroup>
   <PropertyGroup Condition="'$(Platform)'=='Win32'">
     <ArchiveDir>..\..\$(SolutionName)\x86</ArchiveDir>
   </PropertyGroup>
diff --git a/vs2019/version/version.vcxproj b/vs2019/version/version.vcxproj
index 9d149d0..b6ec6f3 100644
--- a/vs2019/version/version.vcxproj
+++ b/vs2019/version/version.vcxproj
@@ -13,4 +13,10 @@
   <Target Name="Build">
     <Exec Command="powershell.exe -ExecutionPolicy Bypass -NoProfile -NonInteractive -File $(Script) $(Platform) $(SolutionDir) $(IncludeDir) $(SourceDir)" />
   </Target>
+  <Target Name="GetProjectInfoForReference"
+          Returns="@(ProjectInfoForReference)">
+    <ItemGroup>
+      <ProjectInfoForReference Include="@(LibFullPath)" />
+    </ItemGroup>
+  </Target>
 </Project>
diff --git a/vs2019/xennet/xennet.vcxproj b/vs2019/xennet/xennet.vcxproj
index 027dc4a..84597b3 100644
--- a/vs2019/xennet/xennet.vcxproj
+++ b/vs2019/xennet/xennet.vcxproj
@@ -38,6 +38,9 @@
       <AdditionalDependencies>$(DDK_LIB_PATH)\ndis.lib;$(DDK_LIB_PATH)/libcntpr.lib;$(DDK_LIB_PATH)/aux_klib.lib;$(DDK_LIB_PATH)/procgrp.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
     </Link>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
diff --git a/vs2019/xennet_coinst/xennet_coinst.vcxproj b/vs2019/xennet_coinst/xennet_coinst.vcxproj
index a159abd..d2c5d07 100644
--- a/vs2019/xennet_coinst/xennet_coinst.vcxproj
+++ b/vs2019/xennet_coinst/xennet_coinst.vcxproj
@@ -32,6 +32,9 @@
       <ModuleDefinitionFile>../../src/coinst/xennet_coinst.def</ModuleDefinitionFile>
       <AdditionalDependencies>setupapi.lib;iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
     </Link>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 12 12:39:17 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Aug 2021 12:39:17 +0000
Received: from list by lists.xenproject.org with outflank-mailman.166362.303717 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9zR-0007Lr-NB; Thu, 12 Aug 2021 12:39:17 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 166362.303717; Thu, 12 Aug 2021 12:39:17 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9zR-0007Lk-KK; Thu, 12 Aug 2021 12:39:17 +0000
Received: by outflank-mailman (input) for mailman id 166362;
 Thu, 12 Aug 2021 12:39:16 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6F1S=ND=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mE9zQ-0007LR-Tb
 for win-pv-devel@lists.xenproject.org; Thu, 12 Aug 2021 12:39:16 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4d86a2fe-fb6a-11eb-a183-12813bfff9fa;
 Thu, 12 Aug 2021 12:39:15 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4d86a2fe-fb6a-11eb-a183-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628771955;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=6I8sXlSSxjQQWHY6cOiRfkBjntmpkTK55y9OK1h0pOA=;
  b=C3/FXhBPSBJI21fR+6wiLdF+NYmKxriqbYXpgSTgNUvcD9SiEmglTZvq
   oHl9UEqqqd0ZOQCQvPnt4vs8cvqLwEBqLyOGWWikSNhxpinR1fnShlf85
   kZ/3UmM8Qx22TzDhkXBZC++o6RxI8gkGXDiQ8F8YrO7hAHqDKYYsjT++Q
   0=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: bZv4kNQTMWp6enJUqY45gs+qFv9ZJ1f2LjT4rP+II+Ztlxkt+PJe+GrMikPDp4dPy69T9u+aAW
 x74n6PbOJv4s/hvEfZ4jUToVYNRdROa2iopEnGXvmzjkzd3URKuRk2YIxmI1ZGMJXvC8F0eQy8
 mhBORZkXG+f8vocEkEvibiBL21ceWJtgPtpn7YGBrLvLGKXrck5Ma+Dk1FHuv7st4aVgtC9CbG
 8NEK5zW3YLHug3xKkYP9FBqUei7zinE56TBgB60rHbmVKgo8LiSTmNyTrZjx7lsAD+3V4cSwdn
 6C2b7c5u5CtVBmdOYPvmRG8U
X-SBRS: 5.1
X-MesageID: 50301045
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:cDfRBqtgXlaYjvfi7rF8hrNU7skDcNV00zEX/kB9WHVpmszxra
 +TdZMgpHjJYVcqKQgdcL+7WZVoLUmwyXcx2/hyAV7AZniDhILLFuFfBOLZqlWKcREWtNQtsJ
 uIG5IObuEYZmIVsS+V2mWF+q4bsbq6zJw=
X-IronPort-AV: E=Sophos;i="5.84,315,1620705600"; 
   d="scan'208";a="50301045"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 3/3] Fix CodeQL warnings
Date: Thu, 12 Aug 2021 13:39:07 +0100
Message-ID: <20210812123907.2005-3-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
In-Reply-To: <20210812123907.2005-1-owen.smith@citrix.com>
References: <20210812123907.2005-1-owen.smith@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- ExAllocatePoolWithTag is deprecated in Win10 2004, use
    ExAllocatePoolUninitialized instead
- QueryCapabilities structure contains padding bytes, using
    __AllocatePoolWithTag zeros this memory

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 src/xennet/driver.c      | 3 ++-
 src/xennet/receiver.c    | 4 ++--
 src/xennet/transmitter.c | 5 +++--
 src/xennet/util.h        | 4 ++++
 4 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/src/xennet/driver.c b/src/xennet/driver.c
index 20f1d0e..8127621 100644
--- a/src/xennet/driver.c
+++ b/src/xennet/driver.c
@@ -37,6 +37,7 @@
 #include "miniport.h"
 #include "dbg_print.h"
 #include "assert.h"
+#include "util.h"
 
 typedef struct _XENNET_DRIVER {
     NDIS_HANDLE MiniportHandle;
@@ -93,7 +94,7 @@ QueryCapabilities(
 
     StackLocation = IoGetCurrentIrpStackLocation(Irp);
 
-    Context = ExAllocatePoolWithTag(NonPagedPool, sizeof (XENNET_CONTEXT), ' TEN');
+    Context = __AllocatePoolWithTag(NonPagedPool, sizeof (XENNET_CONTEXT), ' TEN');
     if (Context != NULL) {
         Context->Capabilities = StackLocation->Parameters.DeviceCapabilities.Capabilities;
         Context->CompletionRoutine = StackLocation->CompletionRoutine;
diff --git a/src/xennet/receiver.c b/src/xennet/receiver.c
index ff9a7c5..b46d250 100644
--- a/src/xennet/receiver.c
+++ b/src/xennet/receiver.c
@@ -435,7 +435,7 @@ ReceiverInitialize(
     ULONG                           Index;
     NDIS_STATUS                     status;
 
-    *Receiver = ExAllocatePoolWithTag(NonPagedPool,
+    *Receiver = __AllocatePoolWithTag(NonPagedPool,
                                       sizeof(XENNET_RECEIVER),
                                       RECEIVER_POOL_TAG);
 
@@ -519,7 +519,7 @@ ReceiverTeardown(
 
     Receiver->Adapter = NULL;
 
-    ExFreePoolWithTag(Receiver, RECEIVER_POOL_TAG);
+    __FreePoolWithTag(Receiver, RECEIVER_POOL_TAG);
 }
 
 VOID
diff --git a/src/xennet/transmitter.c b/src/xennet/transmitter.c
index 334bbb9..c962814 100644
--- a/src/xennet/transmitter.c
+++ b/src/xennet/transmitter.c
@@ -36,6 +36,7 @@
 #include <tcpip.h>
 #include "dbg_print.h"
 #include "assert.h"
+#include "util.h"
 
 struct _XENNET_TRANSMITTER {
     PXENNET_ADAPTER             Adapter;
@@ -53,7 +54,7 @@ TransmitterInitialize (
 {
     NTSTATUS                status;
 
-    *Transmitter = ExAllocatePoolWithTag(NonPagedPool,
+    *Transmitter = __AllocatePoolWithTag(NonPagedPool,
                                          sizeof(XENNET_TRANSMITTER),
                                          TRANSMITTER_POOL_TAG);
 
@@ -85,7 +86,7 @@ TransmitterTeardown(
 
     RtlZeroMemory(&Transmitter->Lock, sizeof(KSPIN_LOCK));
 
-    ExFreePoolWithTag(Transmitter, TRANSMITTER_POOL_TAG);
+    __FreePoolWithTag(Transmitter, TRANSMITTER_POOL_TAG);
 }
 
 typedef struct _NET_BUFFER_LIST_RESERVED {
diff --git a/src/xennet/util.h b/src/xennet/util.h
index 9a9a8ff..8ef6097 100644
--- a/src/xennet/util.h
+++ b/src/xennet/util.h
@@ -151,8 +151,12 @@ __AllocatePoolWithTag(
     __analysis_assume(PoolType == NonPagedPool ||
                       PoolType == PagedPool);
 
+#if (_MSC_VER >= 1928) // VS 16.9 (EWDK 20344 or later)
+    Buffer = ExAllocatePoolUninitialized(PoolType, NumberOfBytes, Tag);
+#else
 #pragma warning(suppress:28160) // annotation error
     Buffer = ExAllocatePoolWithTag(PoolType, NumberOfBytes, Tag);
+#endif
     if (Buffer == NULL)
         return NULL;
 
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 12 12:39:22 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Aug 2021 12:39:22 +0000
Received: from list by lists.xenproject.org with outflank-mailman.166363.303721 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9zW-0007Og-PI; Thu, 12 Aug 2021 12:39:22 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 166363.303721; Thu, 12 Aug 2021 12:39:22 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mE9zW-0007OY-Lx; Thu, 12 Aug 2021 12:39:22 +0000
Received: by outflank-mailman (input) for mailman id 166363;
 Thu, 12 Aug 2021 12:39:21 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6F1S=ND=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mE9zV-0007LR-PW
 for win-pv-devel@lists.xenproject.org; Thu, 12 Aug 2021 12:39:21 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4d86a2ff-fb6a-11eb-a183-12813bfff9fa;
 Thu, 12 Aug 2021 12:39:16 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4d86a2ff-fb6a-11eb-a183-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628771956;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=VMdcfxIznCpBoxn1HnH18V2MoqZyc81HR4NE7x+eI1s=;
  b=KBq2BOaGM6Eirj/NVEHknbtNhZSdyQCfLRSqNrD5JxPXQjyvulXYPXlm
   UxWgjurtqnx/8W/uNNlyiMBGJBGZ5/wKNH7NDDbOJCHE8HG/tfgffGVVM
   8ELvtM4NtmXr5U9slVOxYUnnG+j98E0z6az+9glAvXfGCicz8abczj44A
   k=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: hzOsbaWbwNIrHVZw9StBG9SmWQSo7dUqmBYkiJcF8S6jmDcYH7OBCpUFyGukU8BqN1Ji5hrqbi
 LuBVR1acmoihVwMchZfGdL7iWRCrgDaE4OA9H9iuWAlZQjhpc5VzvqxUTZDxxoh15cWSY1Unk9
 umoizLrT9qzbtju7z4lmMoMj3TtmbesuwJv3v71/chJJypdFoGN6korZv30DXhIt7a+6XdlY5Q
 L+CirP6ynnAxDCG0+dWsNJovk8Xxtwqm3k8Cx5UNTnZdd8TD4DcCpRRBZ/79w5RopyP7Q6oQhq
 L+lSabrGOAA0A8bsmeNTZUHc
X-SBRS: 5.1
X-MesageID: 50301046
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:QpeyV6NVwSovnMBcTvmjsMiBIKoaSvp037Eqv3oedfUzSL3/qy
 nOpoVi6faaslYssR0b9exofZPwJE80lqQFhrX5X43SPzUO0VHAROoJgLcKgQeQfxEWntQtrJ
 uIGJIeNDSfNzdHZL7BkWuFL+o=
X-IronPort-AV: E=Sophos;i="5.84,315,1620705600"; 
   d="scan'208";a="50301046"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 2/3] Fix SDV/CodeQL log generation
Date: Thu, 12 Aug 2021 13:39:06 +0100
Message-ID: <20210812123907.2005-2-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
In-Reply-To: <20210812123907.2005-1-owen.smith@citrix.com>
References: <20210812123907.2005-1-owen.smith@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- sarif files need to be stored with SDV logs when generating the DVL file
- Disable PREFast and CodeAnalysis by default
- Run a seperate CodeAnalysis build after SDV, but before generating DVL file
    DVL file should contain multiple summary lines for SDV, at least 1 line
    for CodeAnalysis and at least 1 line for Semmle (CodeQL)

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 msbuild.ps1                  | 21 ++++++++++++++++-----
 vs2019/xennet/xennet.vcxproj |  2 --
 2 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/msbuild.ps1 b/msbuild.ps1
index c959e4b..31379c5 100644
--- a/msbuild.ps1
+++ b/msbuild.ps1
@@ -17,7 +17,8 @@ Function Run-MSBuild {
 		[string]$Configuration,
 		[string]$Platform,
 		[string]$Target = "Build",
-		[string]$Inputs = ""
+		[string]$Inputs = "",
+		[switch]$CodeAnalysis
 	)
 
 	$c = "msbuild.exe"
@@ -28,6 +29,11 @@ Function Run-MSBuild {
 	if ($Inputs) {
 		$c += [string]::Format(" /p:Inputs=""{0}"" ", $Inputs)
 	}
+	if ($CodeAnalysis) {
+		$c += "/p:RunCodeAnalysis=true "
+		$c += "/p:EnablePREFast=true "
+	}
+
 	$c += Join-Path -Path $SolutionPath -ChildPath $Name
 
 	Invoke-Expression $c
@@ -55,6 +61,7 @@ Function Run-MSBuildSDV {
 	Run-MSBuild $projpath $project $Configuration $Platform "Build"
 	Run-MSBuild $projpath $project $Configuration $Platform "sdv" "/clean"
 	Run-MSBuild $projpath $project $Configuration $Platform "sdv" "/check:default.sdv /debug"
+	Run-MSBuild $projpath $project $Configuration $Platform "Build" -CodeAnalysis
 	Run-MSBuild $projpath $project $Configuration $Platform "dvl"
 
 	$refine = Join-Path -Path $projpath -ChildPath "refine.sdv"
@@ -73,14 +80,14 @@ Function Run-CodeQL {
 		[string]$Name,
 		[string]$Configuration,
 		[string]$Platform,
-		[string]$SearchPath,
-		[string]$OutputPath
+		[string]$SearchPath
 	)
 
 	$projpath = Resolve-Path (Join-Path $SolutionPath $Name)
 	$project = [string]::Format("{0}.vcxproj", $Name)
 	$output = [string]::Format("{0}.sarif", $Name)
 	$database = Join-Path "database" $Name
+	$sarif = Join-Path $projpath $output
 
 	# write a bat file to wrap msbuild parameters
 	$bat = [string]::Format("{0}.bat", $Name)
@@ -120,7 +127,7 @@ Function Run-CodeQL {
 	$c += " windows_driver_recommended.qls"
 	$c += " --format=sarifv2.1.0"
 	$c += " --output="
-	$c += (Join-Path $OutputPath $output)
+	$c += $sarif
 	$c += " --search-path="
 	$c += $SearchPath
 
@@ -129,6 +136,8 @@ Function Run-CodeQL {
 		Write-Host -ForegroundColor Red "ERROR: CodeQL failed, code:" $LASTEXITCODE
 		Exit $LASTEXITCODE
 	}
+
+	Copy-Item $sarif -Destination $SolutionPath
 }
 
 #
@@ -167,8 +176,10 @@ elseif ($Type -eq "codeql") {
 	New-Item -ItemType Directory "database" | Out-Null
 
 	$projectlist | ForEach {
-		Run-CodeQL $solutionpath $_ $configuration["codeql"] $platform[$Arch] $searchpath $archivepath
+		Run-CodeQL $solutionpath $_ $configuration["codeql"] $platform[$Arch] $searchpath
 	}
+
+	Copy-Item -Path (Join-Path -Path $SolutionPath -ChildPath "*.sarif") -Destination $archivepath
 }
 elseif ($Type -eq "sdv") {
 	if (-Not (Test-Path -Path $archivepath)) {
diff --git a/vs2019/xennet/xennet.vcxproj b/vs2019/xennet/xennet.vcxproj
index 84597b3..39ca6d6 100644
--- a/vs2019/xennet/xennet.vcxproj
+++ b/vs2019/xennet/xennet.vcxproj
@@ -15,7 +15,6 @@
   <Import Project="..\targets.props" />
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <PropertyGroup>
-    <RunCodeAnalysis>true</RunCodeAnalysis>
     <EnableInf2cat>false</EnableInf2cat>
     <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
     <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
@@ -28,7 +27,6 @@
       <WarningLevel>EnableAllWarnings</WarningLevel>
       <DisableSpecificWarnings>4464;4711;4770;4548;4820;4668;4255;5045;6001;6054;26451;28160;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
-      <EnablePREfast>true</EnablePREfast>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 12 12:42:11 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Aug 2021 12:42:11 +0000
Received: from list by lists.xenproject.org with outflank-mailman.166382.303725 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mEA2F-0008Ib-0h; Thu, 12 Aug 2021 12:42:11 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 166382.303725; Thu, 12 Aug 2021 12:42:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mEA2E-0008IU-Ty; Thu, 12 Aug 2021 12:42:10 +0000
Received: by outflank-mailman (input) for mailman id 166382;
 Thu, 12 Aug 2021 12:42:09 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6F1S=ND=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mEA2D-0008IA-S4
 for win-pv-devel@lists.xenproject.org; Thu, 12 Aug 2021 12:42:09 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 78c03b7f-a876-412e-962f-95cf651a8777;
 Thu, 12 Aug 2021 12:42:08 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 78c03b7f-a876-412e-962f-95cf651a8777
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628772128;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=KuN9KFB4SephjeIU6iXYcFUQMBbL3GjBYuh5HS6YUyo=;
  b=an1MFQSSty41NYFTXv1HqqYCzYCWV+KvFDAMm+1jxoR8+Cm5DdxY7x4R
   xQQ4AkSccI35x+qqg6r21jKBTp/goq5bcKU2nklfpbqkJZCFGfEU6bDnW
   gGBPJ8PUH3zOB+YirNIGJU5/0oasOFgUbCuurv4t2YYFUxCS7/Dha3QXm
   Q=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: avZ/OnSP7Fo1dg/vc/zWhlLNCjY5YXjH/89kprlNkYRyZV71Osa1zIxrAXPt/+Rv6eUSSgAPfy
 HwsiRFYOZxtwoOaR8rRlk6yBLTArRaxCH58L2n4wTSRAEAabfhYHIzfkUn7MJNXU77ujxYaa0P
 CEOP0pwEvNkqysbV27fj+J6rkTJfwSnzm/mBjT3M+0Nqk9uvsjFTbaqv2RC6rCq0hKeMfXrtwZ
 sv8S6xqhWvIfMH9WrZp/TI8r4r0tZjuNLN/ZrJlCf/GCGjp7sMgc9sT7oIWhdPh7uWSswd9yJ0
 Wmhqro2W9BkRER5mvkRe4WUj
X-SBRS: 5.1
X-MesageID: 52010455
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:HJGVfaiXlrspudocsWxvvZldP3BQXtYji2hC6mlwRA09TySZ//
 rBoB19726RtN9xYgBHpTnuAsm9qB/nmaKdgrNhWItKPjOW21dARbsKheCJrgEIcxeOkdK1vp
 0AT0ERMrLN5CBB/KTH3DU=
X-IronPort-AV: E=Sophos;i="5.84,315,1620705600"; 
   d="scan'208";a="52010455"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 1/4] Fix build with later WDKs
Date: Thu, 12 Aug 2021 13:41:35 +0100
Message-ID: <20210812124138.1533-1-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- Adds alias for GetProjectInfoForReference target to version.vcxproj
    Later kits seemed to have renamed the build target, and will fail without
    this alias target.
- Adds "/fd sha256" to signtool command line
    WDK 20344 and later require binaries signed with a SHA256 file digest, or
    the build outputs are deleted
- Disables warning 4061 - switch statement on enum types need to have a case for
    all values of the enumeration

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 vs2019/package/package.vcxproj             | 5 +++++
 vs2019/version/version.vcxproj             | 6 ++++++
 vs2019/xencrsh/xencrsh.vcxproj             | 5 ++++-
 vs2019/xendisk/xendisk.vcxproj             | 5 ++++-
 vs2019/xenvbd/xenvbd.vcxproj               | 5 ++++-
 vs2019/xenvbd_coinst/xenvbd_coinst.vcxproj | 3 +++
 6 files changed, 26 insertions(+), 3 deletions(-)

diff --git a/vs2019/package/package.vcxproj b/vs2019/package/package.vcxproj
index 51c57a1..cc39738 100644
--- a/vs2019/package/package.vcxproj
+++ b/vs2019/package/package.vcxproj
@@ -31,6 +31,11 @@
     <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
     <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
   </PropertyGroup>
+  <ItemDefinitionGroup>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
+  </ItemDefinitionGroup>
   <PropertyGroup Condition="'$(Platform)'=='Win32'">
     <ArchiveDir>..\..\$(SolutionName)\x86</ArchiveDir>
   </PropertyGroup>
diff --git a/vs2019/version/version.vcxproj b/vs2019/version/version.vcxproj
index 9d149d0..b6ec6f3 100644
--- a/vs2019/version/version.vcxproj
+++ b/vs2019/version/version.vcxproj
@@ -13,4 +13,10 @@
   <Target Name="Build">
     <Exec Command="powershell.exe -ExecutionPolicy Bypass -NoProfile -NonInteractive -File $(Script) $(Platform) $(SolutionDir) $(IncludeDir) $(SourceDir)" />
   </Target>
+  <Target Name="GetProjectInfoForReference"
+          Returns="@(ProjectInfoForReference)">
+    <ItemGroup>
+      <ProjectInfoForReference Include="@(LibFullPath)" />
+    </ItemGroup>
+  </Target>
 </Project>
diff --git a/vs2019/xencrsh/xencrsh.vcxproj b/vs2019/xencrsh/xencrsh.vcxproj
index 6db3e1f..7aae718 100644
--- a/vs2019/xencrsh/xencrsh.vcxproj
+++ b/vs2019/xencrsh/xencrsh.vcxproj
@@ -24,7 +24,7 @@
       <PreprocessorDefinitions>PROJECT=$(ProjectName);POOL_NX_OPTIN=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <IntrinsicFunctions>true</IntrinsicFunctions>
       <WarningLevel>EnableAllWarnings</WarningLevel>
-      <DisableSpecificWarnings>4464;4548;4770;4711;4820;4668;4255;5045;6001;6054;26451;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <DisableSpecificWarnings>4061;4464;4548;4770;4711;4820;4668;4255;5045;6001;6054;26451;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
       <EnablePREfast>true</EnablePREfast>
     </ClCompile>
@@ -37,6 +37,9 @@
       <AdditionalDependencies>$(DDK_LIB_PATH)/storport.lib;$(DDK_LIB_PATH)/libcntpr.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
     </Link>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
diff --git a/vs2019/xendisk/xendisk.vcxproj b/vs2019/xendisk/xendisk.vcxproj
index ce4b6d3..799b86a 100644
--- a/vs2019/xendisk/xendisk.vcxproj
+++ b/vs2019/xendisk/xendisk.vcxproj
@@ -25,7 +25,7 @@
       <PreprocessorDefinitions>PROJECT=$(ProjectName);POOL_NX_OPTIN=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <IntrinsicFunctions>true</IntrinsicFunctions>
       <WarningLevel>EnableAllWarnings</WarningLevel>
-      <DisableSpecificWarnings>4464;4548;4770;4711;4820;4668;4255;5045;6001;6054;26451;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <DisableSpecificWarnings>4061;4464;4548;4770;4711;4820;4668;4255;5045;6001;6054;26451;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
       <EnablePREfast>true</EnablePREfast>
     </ClCompile>
@@ -37,6 +37,9 @@
       <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
       <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
     </Link>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
diff --git a/vs2019/xenvbd/xenvbd.vcxproj b/vs2019/xenvbd/xenvbd.vcxproj
index 7e25d60..dcdd6d8 100644
--- a/vs2019/xenvbd/xenvbd.vcxproj
+++ b/vs2019/xenvbd/xenvbd.vcxproj
@@ -24,7 +24,7 @@
       <PreprocessorDefinitions>PROJECT=$(ProjectName);POOL_NX_OPTIN=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <IntrinsicFunctions>true</IntrinsicFunctions>
       <WarningLevel>EnableAllWarnings</WarningLevel>
-      <DisableSpecificWarnings>4464;4548;4770;4711;4820;4668;4255;5045;6001;6054;26451;28160;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <DisableSpecificWarnings>4061;4464;4548;4770;4711;4820;4668;4255;5045;6001;6054;26451;28160;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
       <EnablePREfast>true</EnablePREfast>
     </ClCompile>
@@ -36,6 +36,9 @@
       <AdditionalDependencies>$(ProjectDir)..\$(ConfigurationName)\$(Platform)\xencrsh.lib;$(DDK_LIB_PATH)/storport.lib;$(DDK_LIB_PATH)/libcntpr.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
     </Link>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
diff --git a/vs2019/xenvbd_coinst/xenvbd_coinst.vcxproj b/vs2019/xenvbd_coinst/xenvbd_coinst.vcxproj
index d822314..9a66f45 100644
--- a/vs2019/xenvbd_coinst/xenvbd_coinst.vcxproj
+++ b/vs2019/xenvbd_coinst/xenvbd_coinst.vcxproj
@@ -34,6 +34,9 @@
     <ResourceCompile>
       <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
     </ResourceCompile>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 12 12:42:16 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Aug 2021 12:42:16 +0000
Received: from list by lists.xenproject.org with outflank-mailman.166383.303729 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mEA2K-0008LM-32; Thu, 12 Aug 2021 12:42:16 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 166383.303729; Thu, 12 Aug 2021 12:42:16 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mEA2K-0008LF-05; Thu, 12 Aug 2021 12:42:16 +0000
Received: by outflank-mailman (input) for mailman id 166383;
 Thu, 12 Aug 2021 12:42:14 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6F1S=ND=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mEA2I-0008IA-Ql
 for win-pv-devel@lists.xenproject.org; Thu, 12 Aug 2021 12:42:14 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 2f50b331-1792-4897-ba40-9341e83beeeb;
 Thu, 12 Aug 2021 12:42:09 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 2f50b331-1792-4897-ba40-9341e83beeeb
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628772129;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=K8OnCZNDDX2nCVv7SoMCgZIm6MiY2GyyuTBD25Pgk8o=;
  b=frbdyiRmNOOnkNsgQtm+zrvtFKGc6dv3+0QUzFAj2dSkEslH7wTu+LF9
   4Df4bg6q7DRbyLitmyHLM1ch4hbK0i6bJMykm/ebOFoHJ1kYvrIGb9yUd
   DYilA5/LbKZKcCbT3A1AtkymY4H6zXAhZeYDyfnH4jGr9h82oB5qu8K22
   I=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: Zbo57xjTw35n4acwDrUYA3kcl40RgjxC1lXJ/2KVtmko/gaD1bR/sA+RiPLGRdPpEbpqyzskKZ
 aSoMep5OODG/mJI0fCSkBGKoF+nedMnbZj8vTyzl/L6KXtJ5l3Hz1Ml5bMOi1jaPFatVGyW1hH
 PiA0xYSZITBBgBnN5WIBA+IbLocp3pu8QDCIiVYHd/noPhcIZz1FFJ8ZWO2udkeVSM0sfR/Knj
 5SrtDG6dMviNvJiCzais6MZbiuOlc3y1+TBF3r/tcoRxrg05dDoiQNRgjubm5vGuyPg+CYUbJv
 A4bP5Gqf7n8hcp1UgguX4lf1
X-SBRS: 5.1
X-MesageID: 52010458
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:mhzSOKHZqJhGEOQMpLqE7seALOsnbusQ8zAXP0AYc3Nom6uj5q
 eTdZUgpGbJYVkqOU3I9ersBEDEewK/yXcX2/h0AV7BZmnbUQKTRekIh7cKgQeQfhEWntQts5
 uIGJIRNDSfNzRHZL7BkWqFL+o=
X-IronPort-AV: E=Sophos;i="5.84,315,1620705600"; 
   d="scan'208";a="52010458"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 3/4] Fix CodeQL warnings
Date: Thu, 12 Aug 2021 13:41:37 +0100
Message-ID: <20210812124138.1533-3-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
In-Reply-To: <20210812124138.1533-1-owen.smith@citrix.com>
References: <20210812124138.1533-1-owen.smith@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- ExAllocatePoolWithTag is deprecated in Win10 2004, use
    ExAllocatePoolUninitialized instead

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 src/common/util.h    |  4 ++++
 src/xenvbd/adapter.c | 12 ++++--------
 src/xenvbd/base64.c  | 15 ++++-----------
 3 files changed, 12 insertions(+), 19 deletions(-)

diff --git a/src/common/util.h b/src/common/util.h
index eddad4a..36a36dd 100644
--- a/src/common/util.h
+++ b/src/common/util.h
@@ -151,8 +151,12 @@ __AllocatePoolWithTag(
     __analysis_assume(PoolType == NonPagedPool ||
                       PoolType == PagedPool);
 
+#if (_MSC_VER >= 1928) // VS 16.9 (EWDK 20344 or later)
+    Buffer = ExAllocatePoolUninitialized(PoolType, NumberOfBytes, Tag);
+#else
 #pragma warning(suppress:28160) // annotation error
     Buffer = ExAllocatePoolWithTag(PoolType, NumberOfBytes, Tag);
+#endif
     if (Buffer == NULL)
         return NULL;
 
diff --git a/src/xenvbd/adapter.c b/src/xenvbd/adapter.c
index 9fd2abc..5b17a6b 100644
--- a/src/xenvbd/adapter.c
+++ b/src/xenvbd/adapter.c
@@ -102,13 +102,9 @@ __AdapterAllocate(
     IN  ULONG   Size
     )
 {
-    PVOID       Buffer;
-    Buffer = ExAllocatePoolWithTag(NonPagedPool,
-                                   Size,
-                                   ADAPTER_POOL_TAG);
-    if (Buffer)
-        RtlZeroMemory(Buffer, Size);
-    return Buffer;
+    return __AllocatePoolWithTag(NonPagedPool,
+                                 Size,
+                                 ADAPTER_POOL_TAG);
 }
 
 static FORCEINLINE VOID
@@ -116,7 +112,7 @@ __AdapterFree(
     IN  PVOID   Buffer
     )
 {
-    ExFreePoolWithTag(Buffer, ADAPTER_POOL_TAG);
+    __FreePoolWithTag(Buffer, ADAPTER_POOL_TAG);
 }
 
 static FORCEINLINE PANSI_STRING
diff --git a/src/xenvbd/base64.c b/src/xenvbd/base64.c
index 0e62784..223579a 100644
--- a/src/xenvbd/base64.c
+++ b/src/xenvbd/base64.c
@@ -44,15 +44,9 @@ Base64Allocate(
     IN  ULONG   Size
     )
 {
-    PVOID       Buffer;
-
-    Buffer = ExAllocatePoolWithTag(NonPagedPool,
-                                   Size,
-                                   BASE64_POOL_TAG);
-    if (Buffer)
-        RtlZeroMemory(Buffer, Size);
-
-    return Buffer;
+    return __AllocatePoolWithTag(NonPagedPool,
+                                 Size,
+                                 BASE64_POOL_TAG);
 }
 
 VOID
@@ -60,8 +54,7 @@ Base64Free(
     IN  PVOID   Buffer
     )
 {
-    if (Buffer)
-        ExFreePoolWithTag(Buffer, BASE64_POOL_TAG);
+    __FreePoolWithTag(Buffer, BASE64_POOL_TAG);
 }
 
 static FORCEINLINE UCHAR
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 12 12:42:21 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Aug 2021 12:42:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.166384.303733 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mEA2P-0008OW-4Z; Thu, 12 Aug 2021 12:42:21 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 166384.303733; Thu, 12 Aug 2021 12:42:21 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mEA2P-0008OP-1b; Thu, 12 Aug 2021 12:42:21 +0000
Received: by outflank-mailman (input) for mailman id 166384;
 Thu, 12 Aug 2021 12:42:19 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6F1S=ND=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mEA2N-0008IA-Qy
 for win-pv-devel@lists.xenproject.org; Thu, 12 Aug 2021 12:42:19 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id c3b34638-014f-46df-8124-10581f61b815;
 Thu, 12 Aug 2021 12:42:09 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c3b34638-014f-46df-8124-10581f61b815
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628772129;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=9+5i0Y0+5/z6FequDcsHFtcn7MOReWfzd1ieu9HRH3Y=;
  b=MnTpxtAxXAiFJkKMq5IljX/WeHkFrtNSYWTuuInb8uPK4B7ltJ0rTNRz
   GR7Y2yx+Jze38EXX/rWZllil/VxJuJhtiwR8c+fOmhSCE82Ld6icfaYi1
   WwLmUSCf5NJOUe4T+iQH9IESkfhdEWYFasVfRh1jtA7JdusugExVq+Wjq
   8=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: oG9GGQUz1DhgkH/ISwVYi6LmDdysf1OvtYa0mTaYDVzjbE8gR/CzuwfjwXn3euKJiL3gUurtbc
 Y5w/7FcesN2bR/dsQkGcdn5BXnG/Wu/RpdTbXOD8VXYaTAdjQGxOWDgebUplLJTiaHmTIxL0nR
 0F1qQQ0K3qOZAkEr2oiTYZ2abtzDFmKFhx1ZCE0EhxEfTVcDsQRmd3E2ERLR/jNTjb7Y3imyA3
 rQMGjts5D/dZRgrHrXZbP4D2cpKG5mBvA67am3JHLhb++PuFu5NmGaeu+0lmMlYVhnR0MPiSsD
 7e2sO6a2ioxUZmef8QM20yYE
X-SBRS: 5.1
X-MesageID: 52010457
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:PJMRla7NargefQLMsgPXwPDXdLJyesId70hD6qhwISY6TiX+rb
 HJoB17726NtN9/YhEdcLy7VJVoBEmskKKdgrNhWotKPjOW21dARbsKheCJrgEIWReOktK1vZ
 0QCpSWY+eQMbEVt6nHCXGDYrQd/OU=
X-IronPort-AV: E=Sophos;i="5.84,315,1620705600"; 
   d="scan'208";a="52010457"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 2/4] Fix SDV/CodeQL log generation
Date: Thu, 12 Aug 2021 13:41:36 +0100
Message-ID: <20210812124138.1533-2-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
In-Reply-To: <20210812124138.1533-1-owen.smith@citrix.com>
References: <20210812124138.1533-1-owen.smith@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- sarif files need to be stored with SDV logs when generating the DVL file
- Disable PREFast and CodeAnalysis by default
- Run a seperate CodeAnalysis build after SDV, but before generating DVL file
    DVL file should contain multiple summary lines for SDV, at least 1 line
    for CodeAnalysis and at least 1 line for Semmle (CodeQL)

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 msbuild.ps1                    | 21 ++++++++++++++++-----
 vs2019/xencrsh/xencrsh.vcxproj |  2 --
 vs2019/xendisk/xendisk.vcxproj |  2 --
 vs2019/xenvbd/xenvbd.vcxproj   |  2 --
 4 files changed, 16 insertions(+), 11 deletions(-)

diff --git a/msbuild.ps1 b/msbuild.ps1
index 4cb408a..8279d93 100644
--- a/msbuild.ps1
+++ b/msbuild.ps1
@@ -17,7 +17,8 @@ Function Run-MSBuild {
 		[string]$Configuration,
 		[string]$Platform,
 		[string]$Target = "Build",
-		[string]$Inputs = ""
+		[string]$Inputs = "",
+		[switch]$CodeAnalysis
 	)
 
 	$c = "msbuild.exe"
@@ -28,6 +29,11 @@ Function Run-MSBuild {
 	if ($Inputs) {
 		$c += [string]::Format(" /p:Inputs=""{0}"" ", $Inputs)
 	}
+	if ($CodeAnalysis) {
+		$c += "/p:RunCodeAnalysis=true "
+		$c += "/p:EnablePREFast=true "
+	}
+
 	$c += Join-Path -Path $SolutionPath -ChildPath $Name
 
 	Invoke-Expression $c
@@ -55,6 +61,7 @@ Function Run-MSBuildSDV {
 	Run-MSBuild $projpath $project $Configuration $Platform "Build"
 	Run-MSBuild $projpath $project $Configuration $Platform "sdv" "/clean"
 	Run-MSBuild $projpath $project $Configuration $Platform "sdv" "/check:default.sdv /debug"
+	Run-MSBuild $projpath $project $Configuration $Platform "Build" -CodeAnalysis
 	Run-MSBuild $projpath $project $Configuration $Platform "dvl"
 
 	$refine = Join-Path -Path $projpath -ChildPath "refine.sdv"
@@ -73,14 +80,14 @@ Function Run-CodeQL {
 		[string]$Name,
 		[string]$Configuration,
 		[string]$Platform,
-		[string]$SearchPath,
-		[string]$OutputPath
+		[string]$SearchPath
 	)
 
 	$projpath = Resolve-Path (Join-Path $SolutionPath $Name)
 	$project = [string]::Format("{0}.vcxproj", $Name)
 	$output = [string]::Format("{0}.sarif", $Name)
 	$database = Join-Path "database" $Name
+	$sarif = Join-Path $projpath $output
 
 	# write a bat file to wrap msbuild parameters
 	$bat = [string]::Format("{0}.bat", $Name)
@@ -120,7 +127,7 @@ Function Run-CodeQL {
 	$c += " windows_driver_recommended.qls"
 	$c += " --format=sarifv2.1.0"
 	$c += " --output="
-	$c += (Join-Path $OutputPath $output)
+	$c += $sarif
 	$c += " --search-path="
 	$c += $SearchPath
 
@@ -129,6 +136,8 @@ Function Run-CodeQL {
 		Write-Host -ForegroundColor Red "ERROR: CodeQL failed, code:" $LASTEXITCODE
 		Exit $LASTEXITCODE
 	}
+
+	Copy-Item $sarif -Destination $SolutionPath
 }
 
 #
@@ -167,8 +176,10 @@ elseif ($Type -eq "codeql") {
 	New-Item -ItemType Directory "database" | Out-Null
 
 	$projectlist | ForEach {
-		Run-CodeQL $solutionpath $_ $configuration["codeql"] $platform[$Arch] $searchpath $archivepath
+		Run-CodeQL $solutionpath $_ $configuration["codeql"] $platform[$Arch] $searchpath
 	}
+
+	Copy-Item -Path (Join-Path -Path $SolutionPath -ChildPath "*.sarif") -Destination $archivepath
 }
 elseif ($Type -eq "sdv") {
 	if (-Not (Test-Path -Path $archivepath)) {
diff --git a/vs2019/xencrsh/xencrsh.vcxproj b/vs2019/xencrsh/xencrsh.vcxproj
index 7aae718..04bd9bf 100644
--- a/vs2019/xencrsh/xencrsh.vcxproj
+++ b/vs2019/xencrsh/xencrsh.vcxproj
@@ -13,7 +13,6 @@
   <Import Project="..\targets.props" />
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <PropertyGroup>
-    <RunCodeAnalysis>true</RunCodeAnalysis>
     <EnableInf2cat>false</EnableInf2cat>
     <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
     <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
@@ -26,7 +25,6 @@
       <WarningLevel>EnableAllWarnings</WarningLevel>
       <DisableSpecificWarnings>4061;4464;4548;4770;4711;4820;4668;4255;5045;6001;6054;26451;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
-      <EnablePREfast>true</EnablePREfast>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\include;..\..\src\common;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
diff --git a/vs2019/xendisk/xendisk.vcxproj b/vs2019/xendisk/xendisk.vcxproj
index 799b86a..1417eef 100644
--- a/vs2019/xendisk/xendisk.vcxproj
+++ b/vs2019/xendisk/xendisk.vcxproj
@@ -13,7 +13,6 @@
   <Import Project="..\targets.props" />
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <PropertyGroup>
-    <RunCodeAnalysis>true</RunCodeAnalysis>
     <EnableInf2cat>false</EnableInf2cat>
     <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
     <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
@@ -27,7 +26,6 @@
       <WarningLevel>EnableAllWarnings</WarningLevel>
       <DisableSpecificWarnings>4061;4464;4548;4770;4711;4820;4668;4255;5045;6001;6054;26451;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
-      <EnablePREfast>true</EnablePREfast>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\include;..\..\src\common;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
diff --git a/vs2019/xenvbd/xenvbd.vcxproj b/vs2019/xenvbd/xenvbd.vcxproj
index dcdd6d8..720c7bb 100644
--- a/vs2019/xenvbd/xenvbd.vcxproj
+++ b/vs2019/xenvbd/xenvbd.vcxproj
@@ -13,7 +13,6 @@
   <Import Project="..\targets.props" />
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <PropertyGroup>
-    <RunCodeAnalysis>true</RunCodeAnalysis>
     <EnableInf2cat>false</EnableInf2cat>
     <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
     <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
@@ -26,7 +25,6 @@
       <WarningLevel>EnableAllWarnings</WarningLevel>
       <DisableSpecificWarnings>4061;4464;4548;4770;4711;4820;4668;4255;5045;6001;6054;26451;28160;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
-      <EnablePREfast>true</EnablePREfast>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\include;..\..\src\common;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 12 12:42:26 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Aug 2021 12:42:26 +0000
Received: from list by lists.xenproject.org with outflank-mailman.166387.303737 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mEA2U-0008SP-6k; Thu, 12 Aug 2021 12:42:26 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 166387.303737; Thu, 12 Aug 2021 12:42:26 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mEA2U-0008SH-3E; Thu, 12 Aug 2021 12:42:26 +0000
Received: by outflank-mailman (input) for mailman id 166387;
 Thu, 12 Aug 2021 12:42:24 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6F1S=ND=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mEA2S-0008IA-RB
 for win-pv-devel@lists.xenproject.org; Thu, 12 Aug 2021 12:42:24 +0000
Received: from esa5.hc3370-68.iphmx.com (unknown [216.71.155.168])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id fe992ac0-87f0-4c91-9162-0f9e8d8da755;
 Thu, 12 Aug 2021 12:42:11 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: fe992ac0-87f0-4c91-9162-0f9e8d8da755
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628772131;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=n7gbiZnc8paZ/ZyjrW83dXdeyj5IBstsyCJ1VH7cvzQ=;
  b=KmMUiYQogl5gP04QzMX7FPndxvPDzhMLIhmSVWx4u04YtKlbhQuQkrlG
   nbTQhm2736XcWKRsC1kx608D3wF/tE9qQLJAUUmBcBA34MQIDXuayCmFO
   ffHL4/oyL2GxbaP8x4OJva1UDskNSZbcXhUh1A4RMuYM83VtgrMU2/C6b
   A=;
Authentication-Results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: CQDtDaDlVkrVYWbSlJbJ1B1oTtoEEuoTP4h2JnZjTLt+XwJncK/QHu5G/D8vVHkolvYrYYN/w2
 gN3+IvhrzPE+Tgwx5F6H/ZoGO5LRjK4grqG9mdzsnlmSH/z5MR/gOkVKjgRqC3HfiQ0p6sCqFs
 HpZ4xBmFe7aB7PPD9BdwhYLHzGrZogz4E0N2pVElEgqDd+0IwCA2uhX0msL7FFUCKQdFz8Q2ya
 25TM042aWpT6o1sfWyLAbLsJLalkfmP2sWqXWquaCzU+MOdthRRdQTgHLzZJqopNirjYNNY3m5
 C781tr2yL5gKji3dic0Xo7nQ
X-SBRS: 5.1
X-MesageID: 49949441
X-Ironport-Server: esa5.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:QLVc7aNNrfAHe8BcTvmjsMiBIKoaSvp037Eqv3oedfUzSL3/qy
 nOpoVi6faaslYssR0b9exofZPwJE80lqQFhrX5X43SPzUO0VHAROoJgLcKgQeQfxEWntQtrJ
 uIGJIeNDSfNzdHZL7BkWuFL+o=
X-IronPort-AV: E=Sophos;i="5.84,315,1620705600"; 
   d="scan'208";a="49949441"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 4/4] Page80/83 data is optional
Date: Thu, 12 Aug 2021 13:41:38 +0100
Message-ID: <20210812124138.1533-4-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
In-Reply-To: <20210812124138.1533-1-owen.smith@citrix.com>
References: <20210812124138.1533-1-owen.smith@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

Check for non-NULL before attempting to free SCSI override data.

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 src/xenvbd/frontend.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/xenvbd/frontend.c b/src/xenvbd/frontend.c
index d7b2e66..f834cac 100644
--- a/src/xenvbd/frontend.c
+++ b/src/xenvbd/frontend.c
@@ -1368,11 +1368,13 @@ FrontendDisconnect(
 
     Frontend->NumQueues = 0;
 
-    Base64Free(Frontend->Page80.Data);
+    if (Frontend->Page80.Data)
+        Base64Free(Frontend->Page80.Data);
     Frontend->Page80.Data = NULL;
     Frontend->Page80.Size = 0;
 
-    Base64Free(Frontend->Page83.Data);
+    if (Frontend->Page83.Data)
+        Base64Free(Frontend->Page83.Data);
     Frontend->Page83.Data = NULL;
     Frontend->Page83.Size = 0;
 }
@@ -1970,11 +1972,13 @@ FrontendDestroy(
 
     Trace("Target[%d] @ (%d) =====>\n", TargetId, KeGetCurrentIrql());
 
-    Base64Free(Frontend->Page80.Data);
+    if (Frontend->Page80.Data)
+        Base64Free(Frontend->Page80.Data);
     Frontend->Page80.Data = NULL;
     Frontend->Page80.Size = 0;
 
-    Base64Free(Frontend->Page83.Data);
+    if (Frontend->Page83.Data)
+        Base64Free(Frontend->Page83.Data);
     Frontend->Page83.Data = NULL;
     Frontend->Page83.Size = 0;
 
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 12 12:44:42 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Aug 2021 12:44:42 +0000
Received: from list by lists.xenproject.org with outflank-mailman.166411.303741 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mEA4f-0000AQ-Cx; Thu, 12 Aug 2021 12:44:41 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 166411.303741; Thu, 12 Aug 2021 12:44:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mEA4f-0000AH-9t; Thu, 12 Aug 2021 12:44:41 +0000
Received: by outflank-mailman (input) for mailman id 166411;
 Thu, 12 Aug 2021 12:44:40 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6F1S=ND=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mEA4e-0000AB-2m
 for win-pv-devel@lists.xenproject.org; Thu, 12 Aug 2021 12:44:40 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 33334405-5eaf-44d2-b9be-27446c543376;
 Thu, 12 Aug 2021 12:44:39 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 33334405-5eaf-44d2-b9be-27446c543376
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628772278;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=M7tT0Bi/dGMcOFtl3wm0CaPaPIk/b6nPnxI5pbG1NIE=;
  b=G61VMMozaKaa+SwA49H8YD22xonp5N5BNEn8RqwXrhsJywsNKOF0QOsc
   dAi++RAGor/WIzY8cmHqC1Sb4J011+OtzyNaWJWmivXHQro7NMToDdQyI
   M7Dc4RcuUj9XB7SaFzs8oKDiUnB3+0YWdLSJFw0wkavhcZtY2X0p8YOmV
   I=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: L5Imn7GPq10HXW7WppV557qcRizNHGY+mpiB5O4aOILsYkmSesSihZhqy1YLp+Nkf8vN40GF+p
 Z/YSOH59JwfgFXni/tsRW73BHkoeaH7wQciQ7IC+/ExMQOclVyvBnbIXo2//vsys/AnRzpuKvn
 Bt6s0Sh6HQD/UsLND5MaKFKCOvYcZnBfXgmaCu0d2/I325HFUqTS38OvU46kCfEiW+epDqlke9
 PzRAQYF4RbweNI5jP3mhImn6wV9bcAL4zj7Fu2M0DL4TXhaTp8JdgDyIfFRKRLLvuyh0ksJB7F
 EsrI4fyNirS8kUI6lC4SQTWr
X-SBRS: 5.1
X-MesageID: 50684454
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:ZjH5KqEF6OI6rjwspLqEMseALOsnbusQ8zAXPhhKOGdomszxrb
 HMoB1p726PtN9xYgBfpTnkAsO9qBznhPlICOUqXItKGTOWwFdAT7sSnLcKoQeQfREWn9Q1vc
 wMH8cRNDSzNykCsS+Q2njbLz9U+qjizEnev5a6854Cd2FXgupbnnpE406gYzFLrSd9dOUEKK
 Y=
X-IronPort-AV: E=Sophos;i="5.84,315,1620705600"; 
   d="scan'208";a="50684454"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 1/3] Fix build with later WDKs
Date: Thu, 12 Aug 2021 13:44:25 +0100
Message-ID: <20210812124427.1736-1-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- Adds alias for GetProjectInfoForReference target to version.vcxproj
    Later kits seemed to have renamed the build target, and will fail without
    this alias target.
- Adds "/fd sha256" to signtool command line
    WDK 20344 and later require binaries signed with a SHA256 file digest, or
    the build outputs are deleted
- Disables warning 4061 - switch statement on enum types need to have a case
    for all values of the enumeration

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 vs2019/package/package.vcxproj             | 5 +++++
 vs2019/version/version.vcxproj             | 6 ++++++
 vs2019/xenvif/xenvif.vcxproj               | 5 ++++-
 vs2019/xenvif_coinst/xenvif_coinst.vcxproj | 3 +++
 4 files changed, 18 insertions(+), 1 deletion(-)

diff --git a/vs2019/package/package.vcxproj b/vs2019/package/package.vcxproj
index 3aec237..76f940c 100644
--- a/vs2019/package/package.vcxproj
+++ b/vs2019/package/package.vcxproj
@@ -31,6 +31,11 @@
     <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
     <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
   </PropertyGroup>
+  <ItemDefinitionGroup>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
+  </ItemDefinitionGroup>
   <PropertyGroup Condition="'$(Platform)'=='Win32'">
     <ArchiveDir>..\..\$(SolutionName)\x86</ArchiveDir>
   </PropertyGroup>
diff --git a/vs2019/version/version.vcxproj b/vs2019/version/version.vcxproj
index 9d149d0..b6ec6f3 100644
--- a/vs2019/version/version.vcxproj
+++ b/vs2019/version/version.vcxproj
@@ -13,4 +13,10 @@
   <Target Name="Build">
     <Exec Command="powershell.exe -ExecutionPolicy Bypass -NoProfile -NonInteractive -File $(Script) $(Platform) $(SolutionDir) $(IncludeDir) $(SourceDir)" />
   </Target>
+  <Target Name="GetProjectInfoForReference"
+          Returns="@(ProjectInfoForReference)">
+    <ItemGroup>
+      <ProjectInfoForReference Include="@(LibFullPath)" />
+    </ItemGroup>
+  </Target>
 </Project>
diff --git a/vs2019/xenvif/xenvif.vcxproj b/vs2019/xenvif/xenvif.vcxproj
index 9aa14b2..c282714 100644
--- a/vs2019/xenvif/xenvif.vcxproj
+++ b/vs2019/xenvif/xenvif.vcxproj
@@ -24,7 +24,7 @@
       <PreprocessorDefinitions>PROJECT=$(ProjectName);POOL_NX_OPTIN=1;NT_PROCESSOR_GROUPS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <IntrinsicFunctions>true</IntrinsicFunctions>
       <WarningLevel>EnableAllWarnings</WarningLevel>
-      <DisableSpecificWarnings>4464;4711;4770;4548;4820;4668;4255;5045;6001;6054;26451;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
+      <DisableSpecificWarnings>4061;4464;4711;4770;4548;4820;4668;4255;5045;6001;6054;26451;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
       <EnablePREfast>true</EnablePREfast>
     </ClCompile>
@@ -36,6 +36,9 @@
       <AdditionalDependencies>$(DDK_LIB_PATH)/Rtlver.lib;$(DDK_LIB_PATH)/libcntpr.lib;$(DDK_LIB_PATH)/aux_klib.lib;$(DDK_LIB_PATH)/ksecdd.lib;$(DDK_LIB_PATH)/procgrp.lib;%(AdditionalDependencies)</AdditionalDependencies>
       <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
     </Link>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
diff --git a/vs2019/xenvif_coinst/xenvif_coinst.vcxproj b/vs2019/xenvif_coinst/xenvif_coinst.vcxproj
index 6957ad8..69e4e12 100644
--- a/vs2019/xenvif_coinst/xenvif_coinst.vcxproj
+++ b/vs2019/xenvif_coinst/xenvif_coinst.vcxproj
@@ -34,6 +34,9 @@
       <ModuleDefinitionFile>../../src/coinst/xenvif_coinst.def</ModuleDefinitionFile>
       <AdditionalDependencies>setupapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
     </Link>
+    <DriverSign>
+      <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
+    </DriverSign>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
     <ClCompile>
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 12 12:44:46 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Aug 2021 12:44:46 +0000
Received: from list by lists.xenproject.org with outflank-mailman.166412.303744 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mEA4k-0000Cs-Eb; Thu, 12 Aug 2021 12:44:46 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 166412.303744; Thu, 12 Aug 2021 12:44:46 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mEA4k-0000Ck-BQ; Thu, 12 Aug 2021 12:44:46 +0000
Received: by outflank-mailman (input) for mailman id 166412;
 Thu, 12 Aug 2021 12:44:45 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6F1S=ND=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mEA4j-0000AB-0S
 for win-pv-devel@lists.xenproject.org; Thu, 12 Aug 2021 12:44:45 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7b0afeae-fdee-4168-89cf-94fa9b82e364;
 Thu, 12 Aug 2021 12:44:43 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7b0afeae-fdee-4168-89cf-94fa9b82e364
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628772283;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=vWKW1GFI1sh02SWlraeDVywhNanMuJSbJBqutbd+i8M=;
  b=LQje2qtf/bDl0xOJ3vQtL3llwKZ8K9vl2oAPED28chhHMl5kjVNNTdtZ
   c62YcHaGtUYu6HF7YyzWqWG470GvY+ATalTJtGBDmy2vDPuNbfpDODKYY
   my+lz8huaJHurFX6HQXzQBFaC/ZdcTEKO6wrZ6hJFLbQMMJc2kN1ZP1uG
   A=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: c7iSPfyMgBKo8Kkp0NzJBO/gABYvbr3X2fRh8MUY5qzIRaHJbf1JMRj0IN3ktmrEkt/oyR0mcg
 0XhY/wnvDwyriDI7iHjYCBg/h9GQ6lPo2BgrWHQCwTXKMufooOlMhwVf2KOXKnC1pCwJAkeEmI
 bf1DrkY46tXCH/PldEV+RuO00iv5x2F6MwkgFvtI5sKC2QUBAIy5yuwxLCedAXNLq+vI1wkQQy
 p2ZEDfGCWl1dUntaPMH8X+I9GzfRh7yAyfyORxcDdoSrPWO5qjCyri0SDtgqT99R6CWdG3l/m4
 iw9JEGduhlUvlMfUEYrzcXM5
X-SBRS: 5.1
X-MesageID: 50684464
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:goat/a70ZDcxA40+iwPXwM7XdLJyesId70hD6qhwISY7TiX+rb
 HIoB17726MtN9/YhAdcLy7VZVoBEmsl6KdgrNhWYtKPjOHhILAFugLhuHfKn/bakjDH4ZmpM
 FdmsNFZuEYY2IXsS+D2njaL+od
X-IronPort-AV: E=Sophos;i="5.84,315,1620705600"; 
   d="scan'208";a="50684464"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 2/3] Fix SDV/CodeQL log generation
Date: Thu, 12 Aug 2021 13:44:26 +0100
Message-ID: <20210812124427.1736-2-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
In-Reply-To: <20210812124427.1736-1-owen.smith@citrix.com>
References: <20210812124427.1736-1-owen.smith@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- sarif files need to be stored with SDV logs when generating the DVL file
- Disable PREFast and CodeAnalysis by default
- Run a seperate CodeAnalysis build after SDV, but before generating DVL file
    DVL file should contain multiple summary lines for SDV, at least 1 line
    for CodeAnalysis and at least 1 line for Semmle (CodeQL)

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 msbuild.ps1                  | 21 ++++++++++++++++-----
 vs2019/xenvif/xenvif.vcxproj |  2 --
 2 files changed, 16 insertions(+), 7 deletions(-)

diff --git a/msbuild.ps1 b/msbuild.ps1
index f77723c..b2ede2f 100644
--- a/msbuild.ps1
+++ b/msbuild.ps1
@@ -17,7 +17,8 @@ Function Run-MSBuild {
 		[string]$Configuration,
 		[string]$Platform,
 		[string]$Target = "Build",
-		[string]$Inputs = ""
+		[string]$Inputs = "",
+		[switch]$CodeAnalysis
 	)
 
 	$c = "msbuild.exe"
@@ -28,6 +29,11 @@ Function Run-MSBuild {
 	if ($Inputs) {
 		$c += [string]::Format(" /p:Inputs=""{0}"" ", $Inputs)
 	}
+	if ($CodeAnalysis) {
+		$c += "/p:RunCodeAnalysis=true "
+		$c += "/p:EnablePREFast=true "
+	}
+
 	$c += Join-Path -Path $SolutionPath -ChildPath $Name
 
 	Invoke-Expression $c
@@ -55,6 +61,7 @@ Function Run-MSBuildSDV {
 	Run-MSBuild $projpath $project $Configuration $Platform "Build"
 	Run-MSBuild $projpath $project $Configuration $Platform "sdv" "/clean"
 	Run-MSBuild $projpath $project $Configuration $Platform "sdv" "/check:default.sdv /debug"
+	Run-MSBuild $projpath $project $Configuration $Platform "Build" -CodeAnalysis
 	Run-MSBuild $projpath $project $Configuration $Platform "dvl"
 
 	$refine = Join-Path -Path $projpath -ChildPath "refine.sdv"
@@ -73,14 +80,14 @@ Function Run-CodeQL {
 		[string]$Name,
 		[string]$Configuration,
 		[string]$Platform,
-		[string]$SearchPath,
-		[string]$OutputPath
+		[string]$SearchPath
 	)
 
 	$projpath = Resolve-Path (Join-Path $SolutionPath $Name)
 	$project = [string]::Format("{0}.vcxproj", $Name)
 	$output = [string]::Format("{0}.sarif", $Name)
 	$database = Join-Path "database" $Name
+	$sarif = Join-Path $projpath $output
 
 	# write a bat file to wrap msbuild parameters
 	$bat = [string]::Format("{0}.bat", $Name)
@@ -120,7 +127,7 @@ Function Run-CodeQL {
 	$c += " windows_driver_recommended.qls"
 	$c += " --format=sarifv2.1.0"
 	$c += " --output="
-	$c += (Join-Path $OutputPath $output)
+	$c += $sarif
 	$c += " --search-path="
 	$c += $SearchPath
 
@@ -129,6 +136,8 @@ Function Run-CodeQL {
 		Write-Host -ForegroundColor Red "ERROR: CodeQL failed, code:" $LASTEXITCODE
 		Exit $LASTEXITCODE
 	}
+
+	Copy-Item $sarif -Destination $SolutionPath
 }
 
 #
@@ -167,8 +176,10 @@ elseif ($Type -eq "codeql") {
 	New-Item -ItemType Directory "database" | Out-Null
 
 	$projectlist | ForEach {
-		Run-CodeQL $solutionpath $_ $configuration["codeql"] $platform[$Arch] $searchpath $archivepath
+		Run-CodeQL $solutionpath $_ $configuration["codeql"] $platform[$Arch] $searchpath
 	}
+
+	Copy-Item -Path (Join-Path -Path $SolutionPath -ChildPath "*.sarif") -Destination $archivepath
 }
 elseif ($Type -eq "sdv") {
 	if (-Not (Test-Path -Path $archivepath)) {
diff --git a/vs2019/xenvif/xenvif.vcxproj b/vs2019/xenvif/xenvif.vcxproj
index c282714..48b7e10 100644
--- a/vs2019/xenvif/xenvif.vcxproj
+++ b/vs2019/xenvif/xenvif.vcxproj
@@ -13,7 +13,6 @@
   <Import Project="..\targets.props" />
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   <PropertyGroup>
-    <RunCodeAnalysis>true</RunCodeAnalysis>
     <EnableInf2cat>false</EnableInf2cat>
     <IntDir>..\$(ProjectName)\$(ConfigurationName)\$(Platform)\</IntDir>
     <OutDir>..\$(ConfigurationName)\$(Platform)\</OutDir>
@@ -26,7 +25,6 @@
       <WarningLevel>EnableAllWarnings</WarningLevel>
       <DisableSpecificWarnings>4061;4464;4711;4770;4548;4820;4668;4255;5045;6001;6054;26451;28196;30030;30029;%(DisableSpecificWarnings)</DisableSpecificWarnings>
       <MultiProcessorCompilation>true</MultiProcessorCompilation>
-      <EnablePREfast>true</EnablePREfast>
     </ClCompile>
     <ResourceCompile>
       <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Thu Aug 12 12:44:51 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 12 Aug 2021 12:44:51 +0000
Received: from list by lists.xenproject.org with outflank-mailman.166413.303749 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mEA4p-0000GN-H2; Thu, 12 Aug 2021 12:44:51 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 166413.303749; Thu, 12 Aug 2021 12:44:51 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mEA4p-0000GD-DX; Thu, 12 Aug 2021 12:44:51 +0000
Received: by outflank-mailman (input) for mailman id 166413;
 Thu, 12 Aug 2021 12:44:50 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=6F1S=ND=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mEA4o-0000AB-0f
 for win-pv-devel@lists.xenproject.org; Thu, 12 Aug 2021 12:44:50 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id a269144e-01ad-4c2b-a46b-d12a06ed8106;
 Thu, 12 Aug 2021 12:44:44 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: a269144e-01ad-4c2b-a46b-d12a06ed8106
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1628772284;
  h=from:to:cc:subject:date:message-id:in-reply-to:
   references:mime-version:content-transfer-encoding;
  bh=zo/FdfZgl0SABWDptLciouu2Og1mvE5JKQFifVbrfF8=;
  b=Mbp53Bej4wihhaSvofxs+BAmB7vXqqXOUR8m5sS0zFYBydpnZUrH6XZV
   6kb7AmXEr3+Mxj1kGvXU9LdZL8inwKD/xElzY2RWBpTyg8We6Und3YSM0
   XaiIuIZN94P1hXCvADCc/AAi2Br/z8OlQz3McexVDtKwTDsFuZ4ELHzFw
   0=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: YhCaqMCz8mrbqegoSoka1t8S9N1C1pTSBIoScNClOrfFyfSfMxlpXnr0j2E2y1IKmzxCkGtknv
 D32tGoyDJDvBLmt5M257nhDVANRBiOIUW2DegXpGOOIBp5LVACMmJTv1lufad6CyYnCLF0uyV1
 PK7TPuvgh43SXx1LlwqCeL9iQPMaXNd+MMuFzHD6mytbabb2SIC2F04Poakt/OWZ9JpLTFoosb
 431KWX4HfNrCql8UcLwRZi/F7hCrcUyVSEwfoPukHOEMx5/1dAuH0MDSlvXvvaEcwdXpYaKLXt
 XGn9CTyCv81DxUCAovZ42MlC
X-SBRS: 5.1
X-MesageID: 50684465
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.158.21
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:Uuvzh60di0cjyfzPZU+1RAqjBGgkLtp133Aq2lEZdPUMSL3iqy
 iv9M5rtiMc+wxhIk3I+OrwRpVoJEm3yXcb2/h3AV7PZmjbUS6TXflfBOjZskzd8k/Fh4hgPM
 5bGsAUZbGeY2SSz/yKmTVQeOxQouVvhZrY4ds2uE0dKD2CBZsB0+4zMHfnLqQ/fng7OXMWLu
 vi2vZ6
X-IronPort-AV: E=Sophos;i="5.84,315,1620705600"; 
   d="scan'208";a="50684465"
From: Owen Smith <owen.smith@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Owen Smith <owen.smith@citrix.com>
Subject: [PATCH 3/3] Fix CodeQL warnings
Date: Thu, 12 Aug 2021 13:44:27 +0100
Message-ID: <20210812124427.1736-3-owen.smith@citrix.com>
X-Mailer: git-send-email 2.31.1.windows.1
In-Reply-To: <20210812124427.1736-1-owen.smith@citrix.com>
References: <20210812124427.1736-1-owen.smith@citrix.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

- ExAllocatePoolWithTag has been deprecated with Win10 2004, use
    ExAllocatePoolUninitialized instead
- Check return value of _strtoui64 for error condition as indicated by
    _UI64_MAX

Signed-off-by: Owen Smith <owen.smith@citrix.com>
---
 src/xenvif/fdo.c  |  4 +---
 src/xenvif/mac.c  |  2 ++
 src/xenvif/pdo.c  | 16 ++++------------
 src/xenvif/util.h |  4 ++++
 4 files changed, 11 insertions(+), 15 deletions(-)

diff --git a/src/xenvif/fdo.c b/src/xenvif/fdo.c
index 745f948..8067e03 100644
--- a/src/xenvif/fdo.c
+++ b/src/xenvif/fdo.c
@@ -1879,14 +1879,12 @@ FdoQueryDeviceRelations(
 
     Size = FIELD_OFFSET(DEVICE_RELATIONS, Objects) + (sizeof (PDEVICE_OBJECT) * __max(Count, 1));
 
-    Relations = ExAllocatePoolWithTag(PagedPool, Size, 'FIV');
+    Relations = __AllocatePoolWithTag(PagedPool, Size, 'FIV');
 
     status = STATUS_NO_MEMORY;
     if (Relations == NULL)
         goto fail1;
 
-    RtlZeroMemory(Relations, Size);
-
     for (ListEntry = Fdo->Dx->ListEntry.Flink;
          ListEntry != &Fdo->Dx->ListEntry;
          ListEntry = ListEntry->Flink) {
diff --git a/src/xenvif/mac.c b/src/xenvif/mac.c
index a89904b..f21a673 100644
--- a/src/xenvif/mac.c
+++ b/src/xenvif/mac.c
@@ -715,6 +715,8 @@ __MacGetSpeed(
         Unit = "G";
     } else {
         Speed = _strtoui64(Buffer, &Unit, 10);
+        if (Speed == _UI64_MAX)
+            Speed = Mac->Speed;
         if (*Unit == '\0')
             Unit = "G";
 
diff --git a/src/xenvif/pdo.c b/src/xenvif/pdo.c
index e6ffbc3..bc9b9ed 100644
--- a/src/xenvif/pdo.c
+++ b/src/xenvif/pdo.c
@@ -1595,14 +1595,12 @@ PdoQueryDeviceRelations(
     if (StackLocation->Parameters.QueryDeviceRelations.Type != TargetDeviceRelation)
         goto done;
 
-    Relations = ExAllocatePoolWithTag(PagedPool, sizeof (DEVICE_RELATIONS), 'FIV');
+    Relations = __AllocatePoolWithTag(PagedPool, sizeof (DEVICE_RELATIONS), 'FIV');
 
     status = STATUS_NO_MEMORY;
     if (Relations == NULL)
         goto done;
 
-    RtlZeroMemory(Relations, sizeof (DEVICE_RELATIONS));
-
     Relations->Count = 1;
     ObReferenceObject(__PdoGetDeviceObject(Pdo));
     Relations->Objects[0] = __PdoGetDeviceObject(Pdo);
@@ -1848,14 +1846,12 @@ PdoQueryDeviceText(
         goto done;
     }
 
-    Buffer = ExAllocatePoolWithTag(PagedPool, MAXTEXTLEN, 'FIV');
+    Buffer = __AllocatePoolWithTag(PagedPool, MAXTEXTLEN, 'FIV');
 
     status = STATUS_NO_MEMORY;
     if (Buffer == NULL)
         goto done;
 
-    RtlZeroMemory(Buffer, MAXTEXTLEN);
-
     Text.Buffer = Buffer;
     Text.MaximumLength = MAXTEXTLEN;
     Text.Length = 0;
@@ -1983,14 +1979,12 @@ PdoQueryId(
         goto done;
     }
 
-    Buffer = ExAllocatePoolWithTag(PagedPool, Id.MaximumLength, 'FIV');
+    Buffer = __AllocatePoolWithTag(PagedPool, Id.MaximumLength, 'FIV');
 
     status = STATUS_NO_MEMORY;
     if (Buffer == NULL)
         goto done;
 
-    RtlZeroMemory(Buffer, Id.MaximumLength);
-
     Id.Buffer = Buffer;
     Id.Length = 0;
 
@@ -2129,14 +2123,12 @@ PdoQueryBusInformation(
 
     UNREFERENCED_PARAMETER(Pdo);
 
-    Info = ExAllocatePoolWithTag(PagedPool, sizeof (PNP_BUS_INFORMATION), 'FIV');
+    Info = __AllocatePoolWithTag(PagedPool, sizeof (PNP_BUS_INFORMATION), 'FIV');
 
     status = STATUS_NO_MEMORY;
     if (Info == NULL)
         goto done;
 
-    RtlZeroMemory(Info, sizeof (PNP_BUS_INFORMATION));
-
     Info->BusTypeGuid = GUID_BUS_TYPE_INTERNAL;
     Info->LegacyBusType = PNPBus;
     Info->BusNumber = 0;
diff --git a/src/xenvif/util.h b/src/xenvif/util.h
index 74d0436..0df2a52 100644
--- a/src/xenvif/util.h
+++ b/src/xenvif/util.h
@@ -151,8 +151,12 @@ __AllocatePoolWithTag(
     __analysis_assume(PoolType == NonPagedPool ||
                       PoolType == PagedPool);
 
+#if (_MSC_VER >= 1928) // VS 16.9 (EWDK 20344 or later)
+    Buffer = ExAllocatePoolUninitialized(PoolType, NumberOfBytes, Tag);
+#else
 #pragma warning(suppress:28160) // annotation error
     Buffer = ExAllocatePoolWithTag(PoolType, NumberOfBytes, Tag);
+#endif
     if (Buffer == NULL)
         return NULL;
 
-- 
2.31.1.windows.1



From win-pv-devel-bounces@lists.xenproject.org Tue Aug 17 08:33:20 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 17 Aug 2021 08:33:20 +0000
Received: from list by lists.xenproject.org with outflank-mailman.167647.306035 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mFuX8-0005Yg-2V; Tue, 17 Aug 2021 08:33:18 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 167647.306035; Tue, 17 Aug 2021 08:33:18 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mFuX7-0005YY-VX; Tue, 17 Aug 2021 08:33:17 +0000
Received: by outflank-mailman (input) for mailman id 167647;
 Tue, 17 Aug 2021 08:33:16 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=uFNe=NI=citrix.com=martin.harvey@srs-us1.protection.inumbo.net>)
 id 1mFuX6-0005YS-DQ
 for win-pv-devel@lists.xenproject.org; Tue, 17 Aug 2021 08:33:16 +0000
Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id c3c13c4e-ff35-11eb-a493-12813bfff9fa;
 Tue, 17 Aug 2021 08:33:15 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: c3c13c4e-ff35-11eb-a493-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1629189195;
  h=from:to:cc:subject:date:message-id:mime-version:
   content-transfer-encoding;
  bh=K2YpWHLIR+TCN/Ji51w/Rv901Ua8wavzDYiwYSoB2PE=;
  b=COwIf3bTPusdEeKyVeAb3Km0XKzM+v8gJl4dNYY1gVmdcwBi4SwSONws
   d4pPmsjJzq7VlZilq8Z6BYmKhZWXfq4fQHqaYZqkWJMXK5NA0eJA9OEjQ
   WKnD07paLfOfA5Gk0V0lCT+qdVM6sbD5B4ZWHHebTF0ABxYzeRfFxO/88
   o=;
Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
IronPort-SDR: cFLhtaCNmo/N402RVzZnLQ2+DX/CdKGO6CfRzW+sdRGiNRQsV38EQHddim120OLzPSG3//wwD2
 2hIxZBl9rg85E2Rk2macwC5Hz39cedrnFgR3MCgXx657Ki00HeDXZ1T9FTvqUUMhbiOsNjzIot
 gsTlMJyYTMUkX3GolOIeX3MiVSfPcv9LtdnBDNBBmi8BFAMgVI4i281rEG+NA+T/kJb+3Odai6
 4V2IzLlfCqe/Is2b+WrUGZEMzjXUA4wzr6Q291kA/y4xZauAsvFtZw6d7iRNTz+eCdwcOxHow+
 //7cXSi69aRb58X9lqxGPdZX
X-SBRS: 5.1
X-MesageID: 50615450
X-Ironport-Server: esa3.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:9salQK2sbBX4Yu+LiCIlKwqjBLwkLtp133Aq2lEZdPRUGvb4qy
 nIpoV96faUskdpZJhOo6HiBEDtexzhHP1OkO0s1NWZLWvbUQKTRekIh+aP/9SJIVyZygc378
 ddmsZFZuEYdWIK6PrH3A==
X-IronPort-AV: E=Sophos;i="5.84,328,1620705600"; 
   d="scan'208";a="50615450"
From: Martin Harvey <Martin.Harvey@citrix.com>
To: <win-pv-devel@lists.xenproject.org>
CC: Martin Harvey <Martin.Harvey@citrix.com>, Martin Harvey
	<martin.harvey@citrix.com>
Subject: [PATCH] Add ring disconnect logging.
Date: Tue, 17 Aug 2021 09:33:04 +0100
Message-ID: <20210817083304.957-1-Martin.Harvey@citrix.com>
X-Mailer: git-send-email 2.25.0.windows.1
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain

Logging to note error cases which would otherwise be silent in release builds.
This aids greatly with customer debugging.

Signed-off-by: Martin Harvey <martin.harvey@citrix.com>
---
 src/xenvif/receiver.c    | 9 +++++++++
 src/xenvif/transmitter.c | 4 ++++
 2 files changed, 13 insertions(+)

diff --git a/src/xenvif/receiver.c b/src/xenvif/receiver.c
index c70d938..123b2d7 100644
--- a/src/xenvif/receiver.c
+++ b/src/xenvif/receiver.c
@@ -2887,6 +2887,15 @@ __ReceiverRingDisconnect(
     ASSERT3U(Ring->ResponsesProcessed, ==, Ring->RequestsPushed);
     ASSERT3U(Ring->RequestsPushed, ==, Ring->RequestsPosted);
 
+    //Debug logs as well as assertion, else customer debugging difficult.
+    if ((Ring->ResponsesProcessed != Ring->RequestsPushed) ||
+        (Ring->RequestsPushed != Ring->RequestsPosted))
+    {
+        XENBUS_DEBUG(Trigger,
+                    &Receiver->DebugInterface,
+                    Ring->DebugCallback);
+    }
+
     Ring->ResponsesProcessed = 0;
     Ring->RequestsPushed = 0;
     Ring->RequestsPosted = 0;
diff --git a/src/xenvif/transmitter.c b/src/xenvif/transmitter.c
index de9b476..abda21b 100644
--- a/src/xenvif/transmitter.c
+++ b/src/xenvif/transmitter.c
@@ -4005,6 +4005,10 @@ __TransmitterRingDisable(
     }
     if (Ring->ResponsesProcessed != Ring->RequestsPushed)
     {
+        XENBUS_DEBUG(Trigger,
+                    &Transmitter->DebugInterface,
+                    Ring->DebugCallback);
+
         __TransmitterRingFakeResponses(Ring);
         (VOID) TransmitterRingPoll(Ring);
     }
-- 
2.25.0.windows.1



From win-pv-devel-bounces@lists.xenproject.org Fri Aug 20 08:00:13 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 20 Aug 2021 08:00:13 +0000
Received: from list by lists.xenproject.org with outflank-mailman.169286.309240 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mGzRi-00016A-Ow; Fri, 20 Aug 2021 08:00:10 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 169286.309240; Fri, 20 Aug 2021 08:00:10 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mGzRi-000163-Ll; Fri, 20 Aug 2021 08:00:10 +0000
Received: by outflank-mailman (input) for mailman id 169286;
 Fri, 20 Aug 2021 08:00:09 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V2tb=NL=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1mGzRh-00015x-Hf
 for win-pv-devel@lists.xenproject.org; Fri, 20 Aug 2021 08:00:09 +0000
Received: from mail-wr1-x42b.google.com (unknown [2a00:1450:4864:20::42b])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 463cb586-711b-4764-b1aa-34b5f20895e4;
 Fri, 20 Aug 2021 08:00:08 +0000 (UTC)
Received: by mail-wr1-x42b.google.com with SMTP id x12so12835442wrr.11
 for <win-pv-devel@lists.xenproject.org>; Fri, 20 Aug 2021 01:00:08 -0700 (PDT)
Received: from ?IPv6:2a00:23c5:5785:9a01:ad9a:ab78:5748:a7ec?
 ([2a00:23c5:5785:9a01:ad9a:ab78:5748:a7ec])
 by smtp.gmail.com with ESMTPSA id o14sm5224979wrw.17.2021.08.20.01.00.07
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 20 Aug 2021 01:00:07 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 463cb586-711b-4764-b1aa-34b5f20895e4
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=W+iIOdgh6lRvOkM77T7BMjbdyRL55fW/LWP+I7t1SjI=;
        b=gl7SLBwrchzOo21gRSIsIutxM3JO4osLzopAlCLp5oS67dfOvcDktiWetoZNey7zNU
         cBJXmguMAkMPPXkm7Oc6yqeAcRkX/d0nj3PozvJLQs+9VLKxX9zFMxxSYQy5iYNmN0F5
         0K1/csRISn7pdMWB+MyaYHwJWBEWz8ioQZmzMydP3ffJDpuAE5Xg/M/lf6IAfU/oByTN
         qddQILePyP1SPmfm9kqD+vmB+F/GUpyvGg7kItShkopilsB1jBXn3vENy2i8n+2GsbRI
         +/9lwMZVYDxxRUz2rsqeGZmAsRtSyQ+ed5UZ/GDRYyw5TqZcR9/xiEbN77+u/bnZKBs2
         zVhw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:references:message-id
         :date:user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=W+iIOdgh6lRvOkM77T7BMjbdyRL55fW/LWP+I7t1SjI=;
        b=mlOqseCXtt1L2r2eZLNIeJyiI1IYVzsdytSCMEux8CwnvHaqC58+pivUQXxrYj6/TA
         K0dh2PbdOnnzy3Ns8oLANJgty1hvk/zNWzhPmu06uJF+odKOqlpqGSCqHO0b1ipHRr5G
         R7sYj8q/dte+m9WGYyC8ah7a1RqprgsqXdiwffsIuJBinB6liYkna2rlcSV1mtiidCzW
         vnUFv3hfYZFsIj/vqHci3Jx7v2jzsDc8+AYbLYGSxyLfDrZFbXQSOKB753m+HGjUH01G
         rPSvDsn/o7tcv9yb5an0fozR42KgBC+l9NxaGEEypE6Zp6v86mh88vxt8h23q6zf/esr
         xflw==
X-Gm-Message-State: AOAM531p+EZAFRVfIc5FzOcP40ASnhFTn1bWd9N5FnuoWWTZ7Gss6ErK
	2oy0DXtKQjAAYOp2idIdyIG5utuZfWc=
X-Google-Smtp-Source: ABdhPJz7QmJ4Px0DLKrsJXyI0lqz0ev3a1s371s0gqmpA3Uojviqh2p2yA05mW4KsNKtD0ZzeAqJfA==
X-Received: by 2002:a5d:4fc9:: with SMTP id h9mr8561047wrw.2.1629446407849;
        Fri, 20 Aug 2021 01:00:07 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [PATCH 1/3] Fix build with later WDKs
To: win-pv-devel@lists.xenproject.org
References: <20210810154048.1006-1-owen.smith@citrix.com>
Message-ID: <68120b83-070c-f981-60a4-4a5528dcaa5b@xen.org>
Date: Fri, 20 Aug 2021 09:00:06 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.12.0
MIME-Version: 1.0
In-Reply-To: <20210810154048.1006-1-owen.smith@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

Sorry this has taken ages to get to...

On 10/08/2021 16:40, Owen Smith wrote:
> - Adds alias for GetProjectInfoForReference target to version.vcxproj
>      Later kits seemed to have renamed the build target, and will fail without
>      this alias target.
> - Adds "/fd sha256" to signtool command line
>      WDK 20344 and later require binaries signed with a SHA256 file digest, or
>      the build outputs are deleted
> - Fixes warning 4061 - switch statement on enum types need to have a case for
>      all values of the enumeration

IMO this is a stupid rule and, in many cases in the patch, leads to the 
magic 'number of things in the enum' being added to the case 
statements... which is just bogus. Let's just squash this warning instead.

   Paul


From win-pv-devel-bounces@lists.xenproject.org Fri Aug 20 08:08:48 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 20 Aug 2021 08:08:48 +0000
Received: from list by lists.xenproject.org with outflank-mailman.169294.309247 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mGza3-0001Z7-EH; Fri, 20 Aug 2021 08:08:47 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 169294.309247; Fri, 20 Aug 2021 08:08:47 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mGza3-0001Yz-B6; Fri, 20 Aug 2021 08:08:47 +0000
Received: by outflank-mailman (input) for mailman id 169294;
 Fri, 20 Aug 2021 08:08:46 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V2tb=NL=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1mGza1-0001Yt-Sg
 for win-pv-devel@lists.xenproject.org; Fri, 20 Aug 2021 08:08:45 +0000
Received: from mail-wr1-x435.google.com (unknown [2a00:1450:4864:20::435])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 5a05a20d-509c-4d29-80ba-c2159a2c3c74;
 Fri, 20 Aug 2021 08:08:45 +0000 (UTC)
Received: by mail-wr1-x435.google.com with SMTP id z9so12875308wrh.10
 for <win-pv-devel@lists.xenproject.org>; Fri, 20 Aug 2021 01:08:44 -0700 (PDT)
Received: from ?IPv6:2a00:23c5:5785:9a01:ad9a:ab78:5748:a7ec?
 ([2a00:23c5:5785:9a01:ad9a:ab78:5748:a7ec])
 by smtp.gmail.com with ESMTPSA id i3sm9521937wmb.17.2021.08.20.01.08.43
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 20 Aug 2021 01:08:43 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 5a05a20d-509c-4d29-80ba-c2159a2c3c74
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=0WtKuYiPbvlQYqtZ91oPJ8sN8Ejfi4k3+ZJFKEazbR4=;
        b=fQWrKfl86sxvmO+rK3kwHKpzqq2KnkMRVRx4ZCB8lOw+XH1GzZFXDkst876oQD61pC
         r/su8dmuUDy2ZvT1ul6JpcQaqOECnIA/zQBM+mGyDROKihSCAC4g1lyBVouAj2bijTpP
         kvD5rbapQJHatcGvqWSwqGOZhewQjWaR41ILneprbqKNVkBfMXxTecrAwGCFbJbfPdqp
         41mh53QvTzP+dikR+jpiUhXH+5rydL5h0fTMllLJh12JD+TUrajH/AiUb8D4HyBDF6J+
         0/TuOdANH7zHksBZSCf8G28G95E+aM6dZkYsR2ZxZD+l8rzKZRzkpwUtoo5hGmxuaoQm
         7xGQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:references:message-id
         :date:user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=0WtKuYiPbvlQYqtZ91oPJ8sN8Ejfi4k3+ZJFKEazbR4=;
        b=BjIQbsI9Ig8NMdx+AdAUXYw4vZXeN3pqjHxQ7xTgcxZ6r/Nty5EBuGEAfJ8RoZzwLD
         +MAlOa5XzZBu1uu85RC04z8wMhJ9GX19FzypGNJ0DHB/eUQdftEoX5Q/O9hYV5p8QvG3
         4pIPlUgNEjtZNWFrMpC1YA42b8rBTteSUkkVBD3G8dzkvVpzYKiqZ8BliRHc4XY25XUl
         6WcZ6iyQbwqfp/7teB9jhWgGHKQPD4mf5fBeO72P//rHxMskojSG4thEYok601xl8fls
         AL60JYQ67If0V5JhD8uN9oabKBeG5YFdjg1qDDGkGHU8ikOaXXUe46Hq6+7I2MZwS4sQ
         y3UQ==
X-Gm-Message-State: AOAM532mzFQuXxf49AzyAgILrzx99XbgkxUmo+4hxlNovqDfQ3HSbVyt
	annHxb0J4csn5n/ZIYQ84DjrOH6iHGY=
X-Google-Smtp-Source: ABdhPJxbQKLpGPKszuYDRzrW02lcbHPpKeyxUZkeVuiiVTytYmtsMoY4P5y6//qfeqDunq3+3CkBhg==
X-Received: by 2002:a5d:6186:: with SMTP id j6mr8739752wru.115.1629446924068;
        Fri, 20 Aug 2021 01:08:44 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [PATCH 2/3] Fix SDV/CodeQL log generation
To: win-pv-devel@lists.xenproject.org
References: <20210810154048.1006-1-owen.smith@citrix.com>
 <20210810154048.1006-2-owen.smith@citrix.com>
Message-ID: <e2c97293-3859-c99a-f1c2-cdba5240d607@xen.org>
Date: Fri, 20 Aug 2021 09:08:42 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.12.0
MIME-Version: 1.0
In-Reply-To: <20210810154048.1006-2-owen.smith@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 10/08/2021 16:40, Owen Smith wrote:
> - sarif files need to be stored with SDV logs when generating the DVL file
> - Disable PREFast and CodeAnalysis by default
> - Run a seperate CodeAnalysis build after SDV, but before generating DVL file
>      DVL file should contain multiple summary lines for SDV, at least 1 line
>      for CodeAnalysis and at least 1 line for Semmle (CodeQL)
> 
> Signed-off-by: Owen Smith <owen.smith@citrix.com>

Acked-by: Paul Durrant <paul@xen.org>


From win-pv-devel-bounces@lists.xenproject.org Fri Aug 20 08:15:21 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 20 Aug 2021 08:15:21 +0000
Received: from list by lists.xenproject.org with outflank-mailman.169302.309254 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mGzgN-0002Zh-VY; Fri, 20 Aug 2021 08:15:19 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 169302.309254; Fri, 20 Aug 2021 08:15:19 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mGzgN-0002Za-ST; Fri, 20 Aug 2021 08:15:19 +0000
Received: by outflank-mailman (input) for mailman id 169302;
 Fri, 20 Aug 2021 08:15:18 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V2tb=NL=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1mGzgM-0002ZU-Lw
 for win-pv-devel@lists.xenproject.org; Fri, 20 Aug 2021 08:15:18 +0000
Received: from mail-wr1-x432.google.com (unknown [2a00:1450:4864:20::432])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 7bade2e4-cf11-4820-a482-c6ad250654ec;
 Fri, 20 Aug 2021 08:15:17 +0000 (UTC)
Received: by mail-wr1-x432.google.com with SMTP id x10so12941580wrt.8
 for <win-pv-devel@lists.xenproject.org>; Fri, 20 Aug 2021 01:15:17 -0700 (PDT)
Received: from ?IPv6:2a00:23c5:5785:9a01:ad9a:ab78:5748:a7ec?
 ([2a00:23c5:5785:9a01:ad9a:ab78:5748:a7ec])
 by smtp.gmail.com with ESMTPSA id z137sm10001616wmc.14.2021.08.20.01.15.16
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 20 Aug 2021 01:15:16 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 7bade2e4-cf11-4820-a482-c6ad250654ec
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=KShGlSwCbkeXKXhtllw40/eyEOKP9htn0cMj6B37R4U=;
        b=CqqDtc5nqX+0n/i58hRrKXFkFUelUsOq9Y/nep1dkUdMNxC7lEcBtr+Kr/y9JpkudT
         89XCO5c36jvs6gAucsTiYJ+DcdNeRydawMKj0otDSs+4Mm5rR88fO1G4/R/eky77KYfY
         xD/tcm/4NntfjuwVy+wXV2CmkCtcgY0mzhpRbyn/e8BxzrS2KZjxnwJB3jJmpxBvemqe
         3VBI9wyvdBhFgyunmNNPACQLIi8BtIw4FeLIEN6v+RsLt0/j/POPGLUWNMCM+W20AwB8
         7NoOympiQKhieX8Cu9+ymRj2aZYXDwH0AwTI0GEIITpZVmLt4S8t5kKpWDAPK08GYVku
         84hA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:references:message-id
         :date:user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=KShGlSwCbkeXKXhtllw40/eyEOKP9htn0cMj6B37R4U=;
        b=PwxQkq2Qz0Sigg44Oa5z9dijv3VesJChy0oTElymu2yJEpzH1iFkAc4ZFn9AGP7TqV
         4kz1XU/11V/pN4pGiouDWLC3yFEnXz68cNXwr/NymmkU+KtzOswZFk5rbyqflkkcmq5T
         FGIvZ0nwCzdJTWzHDA3MYwBoIETJ8FXA8aRmhJqfVC5nBArDoQctyYUHHf955F7NFEwi
         Hx7ubrDZjSQH7E+J3wSGGO8Hbgd4OI3XsnG7XQxljNAa0GoP4GstWcV0yI7XtJt8OWOr
         PU+F+O1+tQ9+lOIRJxgjZOkl6B5rm5atE5zulzkYRCoea3Tn8RRwZEBiZrGZzd4+lKVB
         tQkw==
X-Gm-Message-State: AOAM532e/l7MvjTVKGEKubaMODX6GSMJ78t9BjhQo8/hIZDy1SOqBV0q
	21UxHqBfaxgxdEHB28CMpSrsi5K1DFA=
X-Google-Smtp-Source: ABdhPJym/I+lzp+aLUoLjwuTLo39BScmiuQhUQC6cPNhkBYBAMPrAdXFAeRRtECAAKEVnwD2WaMMFw==
X-Received: by 2002:a05:6000:18c2:: with SMTP id w2mr8378490wrq.282.1629447316833;
        Fri, 20 Aug 2021 01:15:16 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [PATCH 3/3] Fix issues raised by CodeQL
To: win-pv-devel@lists.xenproject.org
References: <20210810154048.1006-1-owen.smith@citrix.com>
 <20210810154048.1006-3-owen.smith@citrix.com>
Message-ID: <5d06ae38-28c4-9501-4c55-c0cd9dffb8e3@xen.org>
Date: Fri, 20 Aug 2021 09:15:15 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.12.0
MIME-Version: 1.0
In-Reply-To: <20210810154048.1006-3-owen.smith@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 10/08/2021 16:40, Owen Smith wrote:
> - ExAllocatePoolWithTag is deprecated in Windows 10 2004 and replaced with
>      ExAllocatePool2. Use ExAllocatePoolUninitialized to maintain support for
>      earlier versions of Windows.
> - strtol can fail, check for LONG_MIN or LONG_MAX as indicators of an error

I think these probably ought to be separate patches. As for the strtol() 
change... There also uses of strtoul() (and _strtoui64()) elsewhere. If 
we're going to catch overflow here then ought we not have similar 
checking there?

   Paul

> 
> Signed-off-by: Owen Smith <owen.smith@citrix.com>
> ---
>   src/common/util.h      |  4 ++++
>   src/xenfilt/emulated.c | 34 ++++++++++++++++++++++++++--------
>   2 files changed, 30 insertions(+), 8 deletions(-)
> 
> diff --git a/src/common/util.h b/src/common/util.h
> index eddad4a..36a36dd 100644
> --- a/src/common/util.h
> +++ b/src/common/util.h
> @@ -151,8 +151,12 @@ __AllocatePoolWithTag(
>       __analysis_assume(PoolType == NonPagedPool ||
>                         PoolType == PagedPool);
>   
> +#if (_MSC_VER >= 1928) // VS 16.9 (EWDK 20344 or later)
> +    Buffer = ExAllocatePoolUninitialized(PoolType, NumberOfBytes, Tag);
> +#else
>   #pragma warning(suppress:28160) // annotation error
>       Buffer = ExAllocatePoolWithTag(PoolType, NumberOfBytes, Tag);
> +#endif
>       if (Buffer == NULL)
>           return NULL;
>   
> diff --git a/src/xenfilt/emulated.c b/src/xenfilt/emulated.c
> index b7ae510..c0b666e 100644
> --- a/src/xenfilt/emulated.c
> +++ b/src/xenfilt/emulated.c
> @@ -159,9 +159,9 @@ EmulatedSetObjectDiskData(
>       )
>   {
>       PCHAR                               End;
> -    ULONG                               Controller;
> -    ULONG                               Target;
> -    ULONG                               Lun;
> +    LONG                                Controller;
> +    LONG                                Target;
> +    LONG                                Lun;
>       NTSTATUS                            status;
>   
>       UNREFERENCED_PARAMETER(DeviceID);
> @@ -171,36 +171,54 @@ EmulatedSetObjectDiskData(
>       if (Type != XENFILT_EMULATED_OBJECT_TYPE_IDE)
>           goto fail1;
>   
> +    status = STATUS_INVALID_PARAMETER;
>       Controller = strtol(InstanceID, &End, 10);
> +    if (Controller == LONG_MIN || Controller == LONG_MAX)
> +        goto fail2;
>   
>       status = STATUS_INVALID_PARAMETER;
>       if (*End != '.' || Controller > 1)
> -        goto fail2;
> +        goto fail3;
>   
>       End++;
>   
> +    status = STATUS_INVALID_PARAMETER;
>       Target = strtol(End, &End, 10);
> +    if (Target == LONG_MIN || Target == LONG_MAX)
> +        goto fail4;
>   
>       status = STATUS_INVALID_PARAMETER;
>       if (*End != '.' || Target > 1)
> -        goto fail3;
> +        goto fail5;
>   
>       End++;
>   
> +    status = STATUS_INVALID_PARAMETER;
>       Lun = strtol(End, &End, 10);
> +    if (Lun == LONG_MIN || Lun == LONG_MAX)
> +        goto fail6;
>   
>       status = STATUS_INVALID_PARAMETER;
>       if (*End != '\0')
> -        goto fail4;
> +        goto fail7;
>   
>       status = STATUS_NOT_SUPPORTED;
>       if (Lun != 0)
> -        goto fail5;
> +        goto fail8;
>   
> -    EmulatedObject->Data.Disk.Index = Controller << 1 | Target;
> +    EmulatedObject->Data.Disk.Index = (ULONG)Controller << 1 | (ULONG)Target;
>   
>       return STATUS_SUCCESS;
>   
> +fail8:
> +    Error("fail8\n");
> +
> +fail7:
> +    Error("fail7\n");
> +
> +fail6:
> +    Error("fail6\n");
> +
>   fail5:
>       Error("fail5\n");
>   
> 



From win-pv-devel-bounces@lists.xenproject.org Fri Aug 20 08:16:34 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 20 Aug 2021 08:16:34 +0000
Received: from list by lists.xenproject.org with outflank-mailman.169309.309257 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mGzha-0002ed-4B; Fri, 20 Aug 2021 08:16:34 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 169309.309257; Fri, 20 Aug 2021 08:16:34 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mGzha-0002eW-11; Fri, 20 Aug 2021 08:16:34 +0000
Received: by outflank-mailman (input) for mailman id 169309;
 Fri, 20 Aug 2021 08:16:32 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=V2tb=NL=gmail.com=xadimgnik@srs-us1.protection.inumbo.net>)
 id 1mGzhY-0002eQ-Ku
 for win-pv-devel@lists.xenproject.org; Fri, 20 Aug 2021 08:16:32 +0000
Received: from mail-wr1-x430.google.com (unknown [2a00:1450:4864:20::430])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 28fb050f-2d2b-4c82-920f-02820f597b40;
 Fri, 20 Aug 2021 08:16:31 +0000 (UTC)
Received: by mail-wr1-x430.google.com with SMTP id q6so12952161wrv.6
 for <win-pv-devel@lists.xenproject.org>; Fri, 20 Aug 2021 01:16:31 -0700 (PDT)
Received: from ?IPv6:2a00:23c5:5785:9a01:ad9a:ab78:5748:a7ec?
 ([2a00:23c5:5785:9a01:ad9a:ab78:5748:a7ec])
 by smtp.gmail.com with ESMTPSA id n188sm8658797wmn.48.2021.08.20.01.16.30
 for <win-pv-devel@lists.xenproject.org>
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 20 Aug 2021 01:16:30 -0700 (PDT)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 28fb050f-2d2b-4c82-920f-02820f597b40
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=from:reply-to:subject:to:references:message-id:date:user-agent
         :mime-version:in-reply-to:content-language:content-transfer-encoding;
        bh=2AxpLtPdhGjVWDI3dU5JCvI8DPgmgNiP9H1mdoCO8Jk=;
        b=lmmkgua/4/XPH2giWsxDa121M2yiSVFTwSSUQwq2E4nRNBQMV0fSgmxZF4vM7kRKyG
         pPbd0AjouTctA2cCs2F+G32PGMuItRO3DyrI3a5LNgrWdWfHd7jiCgc+7nsIivTqQ5Ds
         1AjsBG07Y9pwovu/vNwce70dXedAslwJgAkaQinM2hoGttZoYc6QE0gEY2VI8O9oyAwr
         nXdr9wkS8TDz9MSgxeVc1pd98SnDo+BJd+ff4pr7cm8T6MoNiF1jVlmdfxheTlyZgRhU
         uz4w9x4QhDUa+tbJ6Ur595R9YQSmF2ARQBJt7++OLy8HhfuqNoWfk21Cq1MDvp4Rc1La
         k+pg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:from:reply-to:subject:to:references:message-id
         :date:user-agent:mime-version:in-reply-to:content-language
         :content-transfer-encoding;
        bh=2AxpLtPdhGjVWDI3dU5JCvI8DPgmgNiP9H1mdoCO8Jk=;
        b=sGvoArffyy9UdHoyzLKJuAbOGVhtZWCYvGtiSjskJaorIhqvQIEEcNsbQ2dX0gBgbC
         8ka1QKuVNtMiYlZy/ZmJ3Ekx1RdRll556kYlGWy2qAsMXA1MHfclGVVId/wWX7cqv4B7
         MC3JiXecP0m3MYL/v2yVuRNExVtE45IlZs1ibuzvZpXOQVuxL5Up81J1z+5o9yHntR2L
         f6WYu8nUO5XQj9wc7ObwBddFHRn1pMYjEcKGVuRR+kgsafRPGF82alyqETAeXbFz8+Fx
         1Fd3FVSEMma3tmhaA21WTb3CRMM/xXQzEyNC42fiSflTxa+ictelikXfdkdL6iENQ/Mf
         v3fQ==
X-Gm-Message-State: AOAM530BXozug/ulleEwLdRAInJdfbHqNVDoWwRrbI1EqNM/qv2L8rCu
	nXe9RQkwONkxtHPpWWSortEj/iC8rE4=
X-Google-Smtp-Source: ABdhPJykKF4NDoxHR9WmecIZGw2wFR+0XfNM3XlCenggo15Z1fGHSgnveByxSmHfrtRsnjVzrvpcPQ==
X-Received: by 2002:adf:eb02:: with SMTP id s2mr8496037wrn.294.1629447391123;
        Fri, 20 Aug 2021 01:16:31 -0700 (PDT)
From: Paul Durrant <xadimgnik@gmail.com>
X-Google-Original-From: Paul Durrant <paul@xen.org>
Reply-To: paul@xen.org
Subject: Re: [PATCH] Add ring disconnect logging.
To: win-pv-devel@lists.xenproject.org
References: <20210817083304.957-1-Martin.Harvey@citrix.com>
Message-ID: <14bbda7d-b710-0ecb-8210-41c756d90909@xen.org>
Date: Fri, 20 Aug 2021 09:16:30 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
 Thunderbird/78.12.0
MIME-Version: 1.0
In-Reply-To: <20210817083304.957-1-Martin.Harvey@citrix.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit

On 17/08/2021 09:33, Martin Harvey wrote:
> Logging to note error cases which would otherwise be silent in release builds.
> This aids greatly with customer debugging.
> 
> Signed-off-by: Martin Harvey <martin.harvey@citrix.com>
> ---
>   src/xenvif/receiver.c    | 9 +++++++++
>   src/xenvif/transmitter.c | 4 ++++
>   2 files changed, 13 insertions(+)
> 
> diff --git a/src/xenvif/receiver.c b/src/xenvif/receiver.c
> index c70d938..123b2d7 100644
> --- a/src/xenvif/receiver.c
> +++ b/src/xenvif/receiver.c
> @@ -2887,6 +2887,15 @@ __ReceiverRingDisconnect(
>       ASSERT3U(Ring->ResponsesProcessed, ==, Ring->RequestsPushed);
>       ASSERT3U(Ring->RequestsPushed, ==, Ring->RequestsPosted);
>   
> +    //Debug logs as well as assertion, else customer debugging difficult.
> +    if ((Ring->ResponsesProcessed != Ring->RequestsPushed) ||
> +        (Ring->RequestsPushed != Ring->RequestsPosted))
> +    {
> +        XENBUS_DEBUG(Trigger,
> +                    &Receiver->DebugInterface,
> +                    Ring->DebugCallback);
> +    }

No need for the braces, but I can clean that up on commit.

Acked-by: Paul Durrant <paul@xen.org>

> +
>       Ring->ResponsesProcessed = 0;
>       Ring->RequestsPushed = 0;
>       Ring->RequestsPosted = 0;
> diff --git a/src/xenvif/transmitter.c b/src/xenvif/transmitter.c
> index de9b476..abda21b 100644
> --- a/src/xenvif/transmitter.c
> +++ b/src/xenvif/transmitter.c
> @@ -4005,6 +4005,10 @@ __TransmitterRingDisable(
>       }
>       if (Ring->ResponsesProcessed != Ring->RequestsPushed)
>       {
> +        XENBUS_DEBUG(Trigger,
> +                    &Transmitter->DebugInterface,
> +                    Ring->DebugCallback);
> +
>           __TransmitterRingFakeResponses(Ring);
>           (VOID) TransmitterRingPoll(Ring);
>       }
> 



From win-pv-devel-bounces@lists.xenproject.org Fri Aug 20 18:31:04 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Fri, 20 Aug 2021 18:31:04 +0000
Received: from list by lists.xenproject.org with outflank-mailman.169657.309934 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mH9IE-0007Fv-BN; Fri, 20 Aug 2021 18:31:02 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 169657.309934; Fri, 20 Aug 2021 18:31:02 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mH9IE-0007Fm-7h; Fri, 20 Aug 2021 18:31:02 +0000
Received: by outflank-mailman (input) for mailman id 169657;
 Fri, 20 Aug 2021 18:31:00 +0000
Received: from winpvdrvbuild.xenproject.org ([162.242.160.44])
 by lists.xenproject.org with esmtp (Exim 4.92)
 (envelope-from <paul.durrant@xenproject.org>) id 1mH9IC-0007Fa-CX
 for win-pv-devel@lists.xenproject.org; Fri, 20 Aug 2021 18:31:00 +0000
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
Date: Fri, 20 Aug 2021 18:30:49 +0000 (UTC)
From: paul.durrant@xenproject.org
To: win-pv-devel@lists.xenproject.org
Message-ID: <29638778.1.1629484253089.JavaMail.WINPVDRVBUILD$@winpvdrvbuild>
Subject: XENVIF-master - Build #189 - Successful
MIME-Version: 1.0
Content-Type: multipart/mixed; 
	boundary="----=_Part_0_28689313.1629484251636"
X-Jenkins-Job: XENVIF-master
X-Jenkins-Result: SUCCESS


------=_Part_0_28689313.1629484251636
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

The build system has completed build #189.

Check console output at https://winpvdrvbuild.xenproject.org:8080/job/XENVIF-master/189/console to view the results.
------=_Part_0_28689313.1629484251636--


From win-pv-devel-bounces@lists.xenproject.org Tue Aug 31 07:21:30 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 31 Aug 2021 07:21:30 +0000
Received: from list by lists.xenproject.org with outflank-mailman.175494.319705 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mKy5I-0007H1-Ly; Tue, 31 Aug 2021 07:21:28 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 175494.319705; Tue, 31 Aug 2021 07:21:28 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mKy5I-0007Gu-J3; Tue, 31 Aug 2021 07:21:28 +0000
Received: by outflank-mailman (input) for mailman id 175494;
 Tue, 31 Aug 2021 07:21:26 +0000
Received: from us1-rack-iad1.inumbo.com ([172.99.69.81])
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=u9wr=NW=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mKy5G-0007Go-AQ
 for win-pv-devel@lists.xenproject.org; Tue, 31 Aug 2021 07:21:26 +0000
Received: from esa4.hc3370-68.iphmx.com (unknown [216.71.155.144])
 by us1-rack-iad1.inumbo.com (Halon) with ESMTPS
 id 969b52ec-fe7d-47fa-9731-b0aef0f0f77a;
 Tue, 31 Aug 2021 07:21:25 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 969b52ec-fe7d-47fa-9731-b0aef0f0f77a
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1630394486;
  h=from:to:subject:date:message-id:references:in-reply-to:
   content-transfer-encoding:mime-version;
  bh=cEgW+zWlNVo+oWof0tRwJFlWY6MdOWOJIurvvO4BiV8=;
  b=P5j8Cv8mbtGRjzChmAScRaXpn3YkCxl0Bwjgj72d4zgWaXpqkyqsqj7F
   VNHQ9LRd2CYlquKgfQ7T+xlwCi7sXUlTWjN6XkTVCEU0Zzkv7pgQZL4sB
   I9e8E4HGiB4LnrBJdI3YY3VTlu637wNoA8jtu2pCVOn8BBFzcRor0BaiO
   g=;
Authentication-Results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: TIOuCVSo9rFeImUHdeZUdSllpWnoRjjvTGLZmk/CwBbIWmoep3YkemnGPaqyLouN/dQEVtNpZL
 MA2Nq3x56+NBBkau1zsOoTTRMlz4GmOcHRUEBt0W6PpTX6QUWJuC97ijSlEcyM1558Fzqab01J
 4sM0VItRvFPHLTrPTOdCbnFuUs9ELXnREJZfSTfg1TDTGJVCv1UlbxiaWPdFoyMd4owuyACZ2i
 Mbs8V5GdP/jTpGQewi92bJFUrOQM3yl+uEBB21jTUzXUOQTRbm7qawdNFLjhHwr0bByLnrwVTI
 M3zCRc8EGgD6SXsWMakXJqfL
X-SBRS: 5.1
X-MesageID: 53405852
X-Ironport-Server: esa4.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:nZst2ag/Q8XFe1gxZ3BP9puc1XBQX2913DAbv31ZSRFFG/FwyP
 rAoB1L73PJYWgqNU3IwerwQpVoMkmsiKKdhrNhcotKPTOW9FdASbsN0WKM+UyHJ8STzJ8/6U
 4kSdkENDSSNyk1sS+Z2njALz9I+rDum8rI5ds2jU0dNT2CA5sQtzuRYTzrd3GeMTM2YqbRY6
 DsgvavyQDQG0g/X4CePD0oTuLDr9rEmNbNehgdHSMq7wGIkHeB9KP6OwLw5GZebxp/hZMZtU
 TVmQ3w4auu99uhzAXH6mPV55NK3PP819p4AtCWgMR9EESttu/oXvUjZ1SxhkFxnAid0idvrD
 AKmWZmAy1H0QKSQohym2qq5+Cv6kd215ao8y7lvZKqm72HeNt9MbsbuWsRSGqm12Mw+N57y6
 5FxGSfqt5eCg7Bhj3045zSWwhtjVfcmwtrrQc/tQ0obWIlUs4ZkWXfxjImLL4QWCbhrIw3Gu
 hnC8/RoP5QbFOBdnjc+m1i2salUHg/FgqPBhFqgL3e7xFG2HRii0cIzs0WmXkNsJo7Vplf/u
 zBdqBljqtHQMMaZb90QO0BXcy0AGrQRg+kChPYHX33UKUcf37doZ/+57s4oOmsZZwT1ZM33I
 /MVVtJ3FRCDH4Gyff+qKGj1yq9DVlVcQ6duv221qIJz4EUHoCbQBFrYGpe4Pednw==
X-IronPort-AV: E=Sophos;i="5.84,365,1620705600"; 
   d="scan'208";a="53405852"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=KoEn5WyaCMDhrhEin+cLP7WprNBznzGL1j5B0gqX7Jv66oezkboFOFeMs6DT2ce2xYTSItrMstpuAPg1d2G+oIo5rFaFltP8sIuPRN61pHKHRrbz7cni+e/My1bQ3CS3tD965tD9v2Y2u5H4clBR5mYEvllC4AAXG2JZQsOPgUDzfNapaGGxlpfNCwrNUdC5MJnaa+k5n/3sb20S3MAw0yhCFhU/ZBypSDTMmwFeQOx+E+Gj6dNz9R5MOA6VoyUmadCqaESk25A+XXIP//1y0FlGMmTIyMJiH8ICwHkStF53OHYVAaTBJKfxYqvsIamMOAsHYu8SiLM6o5LgiAiJLw==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cEgW+zWlNVo+oWof0tRwJFlWY6MdOWOJIurvvO4BiV8=;
 b=k9lV9h/eZaoyoGvNVfYpb/y3tFmvwBcsE2IfWVyOFS4tN5qL321M9md6DRNyRxe594abNo41fXTZwqJVDTPAiJKbiTQMn2DvrirYLWpgRuiqKC3/3RJPgEfft7JNHJ8eq/MPiemIn79RhoFZ/SdR5ScWHX1+Cxd69JGBsqd+5Z/CCcnHcRiL5xtqE/HlTLI69OEtyY2UCMh0O39b6H3LRnvKJyMT0s21MIi6qKyRQy6eKd91vyPhMLVsy69iHrT0miY/xzd+MD7pTdqEfdlSsg12N+j9pMA7sBLVq6xQUFpKiXvZu+fsE5uPvJJ/SnByI+EpwzIDUZHay4546UJtDg==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=cEgW+zWlNVo+oWof0tRwJFlWY6MdOWOJIurvvO4BiV8=;
 b=L7IDlpLs1mqU+NtT53gUa9xk+3sycpDNxVA+V2PWT0Vz5On0zIsUyKV6uh2ggAtBDGT0pDcCopyCqY0WTlcFSo3ETKy9TY7NKgHr+0bZTu4EHNXRIBtL3q4bfvRnox4KI16e/R78G1IcsoxhJDlT99SMgfgMHa0MlgtKXLXa6ck=
From: Owen Smith <owen.smith@citrix.com>
To: "paul@xen.org" <paul@xen.org>, "win-pv-devel@lists.xenproject.org"
	<win-pv-devel@lists.xenproject.org>
Subject: RE: [PATCH 1/3] Fix build with later WDKs
Thread-Topic: [PATCH 1/3] Fix build with later WDKs
Thread-Index: AQHXjf4eOE+nzN9Is0qjWQXuw3BBZat8FsoAgBE+MsA=
Date: Tue, 31 Aug 2021 07:21:16 +0000
Message-ID: <DS7PR03MB547786F3803E75A7FB0DDE27FECC9@DS7PR03MB5477.namprd03.prod.outlook.com>
References: <20210810154048.1006-1-owen.smith@citrix.com>
 <68120b83-070c-f981-60a4-4a5528dcaa5b@xen.org>
In-Reply-To: <68120b83-070c-f981-60a4-4a5528dcaa5b@xen.org>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 7d235bac-99d0-4af9-b28b-08d96c4fec22
x-ms-traffictypediagnostic: DS7PR03MB5496:
x-microsoft-antispam-prvs: <DS7PR03MB5496B85A14BA21AA3C108C11FECC9@DS7PR03MB5496.namprd03.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:215;
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: DGiIuOF/1MMriOz5AsKGNrnNoQOFH4nepdean5NtM6JuIsOMGMaF7lHWPzKsszo0S7sR/ZNQwl/P+2gctC7ibi8CJnMF7gzSWXWffKIaHR/AuBIvieGcCbqAzcpovyL248qyhNUXBTQJ6lCbu6WHHLcB8wZyi6CPlhcGBet79E4cTriRzbqeO22yDRzNNCGog9ItvKsUoQRn17rhPK3YS/vyuKCKJxJ2CtnX+RsCrEVfG79bHX/IFQnHhSof0v2Jtc17x2q3/x6dbwI1cpj6SBdmc+NGfny6om/SpgEAdbp41kzWu2dy3x9/fRBlTal/LoxrPCOvHC12unn+ZQIuaOI8buoIeBEmtLafsYfbO1hpFIJK5TnZPf/QDPkM3VemTGT39gFWlQJAdVRHWi1set85MwzrjZTKfEDlOEo8t1E62QyWhZ7vjWWNepOQQR872blrHelpnSeyNCMsBmbLCbHUS/bjP49oA2VfmMXEUATlnANOZszZOvd/5zHh1UQtv6s1FJNHYCEOtd6E5CTq+D1wrlvQ+EPecv81fROqrASPL3sMlJFYIetsbatw8BNKvIn9hVstEAjKpEHM97ufENDtVEvK+GPEeAvstJqCT7R6grMSu/G0hBDk2+1UUGwX0dWGboAsZmFOpBm2Erb4lef19DdltE9mP5+dzxkN1rvnlJgfXwHbwuGRgqsqLJUs5SiQLB6XGwwcHRXV0OyTXQ==
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5477.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(6506007)(83380400001)(33656002)(186003)(26005)(53546011)(7696005)(122000001)(44832011)(2906002)(8936002)(86362001)(8676002)(508600001)(64756008)(38070700005)(66946007)(55016002)(66446008)(5660300002)(52536014)(66556008)(66476007)(110136005)(9686003)(76116006)(38100700002)(316002)(71200400001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?SUptTG9NU0VySHg2UnA2L2hMeUVzQUJkR0Fob2l1NC9KVjlSQVM0QitTQWha?=
 =?utf-8?B?SG1uM0syL0pXcWtlZ01EMWo2M3BPaW53d1RPaVpMWkhDRDkxb0pxYnN0aGJN?=
 =?utf-8?B?emNja1pRL2lCbk13dVpEYUc5RE5iWmxIR2FMSWg5V0c3a2ZSS3Z3bUM2T0ho?=
 =?utf-8?B?VmNmemkwbTZOVytZZUdHQ3drR0xHR2RJbkVsZmdMVDlBQzB3U2p6NHJQRDBM?=
 =?utf-8?B?UWF5SGlVcUlaTXlUbXhJaTFTMUk3QnduMTVUSS82SnVVTWhjcHo3MFREam5S?=
 =?utf-8?B?NDl2VTNyT1MvWVF1L2RwZW5aUG9LREpnbTB4YTBUb0dod0VOK0htaWxIRity?=
 =?utf-8?B?cm1Eako5Y0hoaUtYb09EN1ZlMHJxTnEvL05iRlIzTHFLSkxycUdXUGFUazl4?=
 =?utf-8?B?YzA0VnRwNm1PclN3YUVFMG5RS1BpSlB5Q1p0WGIxdy9LdFh0Z0wzQVA0Smhv?=
 =?utf-8?B?QjRhN1p4NVMwQUhrY2tRcVkwczlocE9EV0YrbXJ5N2x6ZDRPQUtIMHVjQVFR?=
 =?utf-8?B?R2YwOUtCcUlyZDJXUGdub090Qmpib0R6M0hmMkRNb2FxVUE3YVQ0ajdFNUFF?=
 =?utf-8?B?UFpnK3pJZTRpSEtpbGF3ZUx6dTJDeXNrVFBiWEU3N2ZDWTNHQzVNbGNIRkt1?=
 =?utf-8?B?dHgyczlJMCtyWk0wZVVFTkI5OXFFOXNoY1JlQk5nSkp0VEpJdVpZdVl5MW54?=
 =?utf-8?B?bG1rUGFvWEIrYTh1eUFGbkphQVk5MEFqNTBwYkRLWlZmTGhWa3lwU1E4RGhi?=
 =?utf-8?B?c3h0NVlYa3I1dENldGRhdStpNzh6NlBTWmFXTFA5a3FCNGpXVFJ2RE16d05h?=
 =?utf-8?B?L2tleG85aUF6ZFhxS3ZVTmhmUDM0TStlWWp2MjVuczQ0WGhWNTlEekp5SkJS?=
 =?utf-8?B?bHRvSnlaVkoyTytac2xoWDlBd1Q0VWpwR1RtcmVub1B2ZzV5bzVlZy96NXVT?=
 =?utf-8?B?UEVjL2Z4SHJsOTZMTEU0TFpYVTRFYWVFem9tdkw1UXRWMXQ4cHJ6RXp5WVJj?=
 =?utf-8?B?TWhYSGRkVHlkZFcxYTRHUGwzVXpBb1E2cXA3YjBmaUJMRlI0Zm12TjJsUVlo?=
 =?utf-8?B?ZW11ZCtKVlJ3NjJvTHl6QkpzZFBWVE1RbEF4dTFWbHhhV2tUQkczZ2VQRE1a?=
 =?utf-8?B?b2R5TWN4UXkvTG9OOHdQYm42N1h5QXpiQktiNS9oNHU3bTB6SVh4MmcydVA2?=
 =?utf-8?B?cndoMEtFQ0JRTGp0aTM1aHRvam16QTVUU0p2OHZ0OWpYTENjUDAvWTVuWkp0?=
 =?utf-8?B?eldjWUFjczRjeTBqSDEyK1g4SjVpbmlmNmNaUGpyYzRuaEJObTBkWDNQb1hU?=
 =?utf-8?B?eitEcXJBM1hSaFFYWng0RTNhdzhaMGhyZHM5ZGJ6ZlhGdjBJWlQ0ZmN3NSti?=
 =?utf-8?B?OENMUU9MeEN0OXZFa0dBVE82aWQ5TTdpdkxBaW8xWHlsVEJaMkZ5NEN1bEtB?=
 =?utf-8?B?N2dlTkdDUkl2OEJ6b1lJNUt5M0YrUEZCK0N3MzhmaWUxdVNFYXpBWGEvVThY?=
 =?utf-8?B?SHhZeUFudTBsNklTMHJaam90ckdRNGRkdEg0U2lJeGhFQVYxWTBFdUtSSkpG?=
 =?utf-8?B?T0Y1T2ZuVjZ6TUxLbHY2dllNV2RWYkJPaGZra2V2bC8ydnNiOU5ZM0xkUzNB?=
 =?utf-8?B?OXh3SnAxb014bVkrQndPK0ZNVkFnVVQvOXNaNUZrUGVUMUp2dXNRN2R6OGNk?=
 =?utf-8?B?S3N2MU1UNnE5cE1vNjU1ZmMwMnJ1ODUzOUFMZ2lUcEtrcytXaGpSR0JWY0Ju?=
 =?utf-8?Q?FVyP0mitegPpS8hPBc9JUb7cj9ghGgttsG2+eyB?=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5477.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 7d235bac-99d0-4af9-b28b-08d96c4fec22
X-MS-Exchange-CrossTenant-originalarrivaltime: 31 Aug 2021 07:21:16.8135
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: y9KXwJDlotVXZw/IuAP2PdGimMnVTStXai/FjrKYJGqiha1fR/wgvQYvzrZw8rBHHeKxsc8Pcjl3rvYDW1Ht6A==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5496
X-OriginatorOrg: citrix.com

LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCkZyb206IHdpbi1wdi1kZXZlbCA8d2luLXB2LWRl
dmVsLWJvdW5jZXNAbGlzdHMueGVucHJvamVjdC5vcmc+IE9uIEJlaGFsZiBPZiBQYXVsIER1cnJh
bnQNClNlbnQ6IEZyaWRheSwgQXVndXN0IDIwLCAyMDIxIDk6MDAgQU0NClRvOiB3aW4tcHYtZGV2
ZWxAbGlzdHMueGVucHJvamVjdC5vcmcNClN1YmplY3Q6IFJlOiBbUEFUQ0ggMS8zXSBGaXggYnVp
bGQgd2l0aCBsYXRlciBXREtzDQoNCltDQVVUSU9OIC0gRVhURVJOQUwgRU1BSUxdIERPIE5PVCBy
ZXBseSwgY2xpY2sgbGlua3MsIG9yIG9wZW4gYXR0YWNobWVudHMgdW5sZXNzIHlvdSBoYXZlIHZl
cmlmaWVkIHRoZSBzZW5kZXIgYW5kIGtub3cgdGhlIGNvbnRlbnQgaXMgc2FmZS4NCg0KU29ycnkg
dGhpcyBoYXMgdGFrZW4gYWdlcyB0byBnZXQgdG8uLi4NCg0KT24gMTAvMDgvMjAyMSAxNjo0MCwg
T3dlbiBTbWl0aCB3cm90ZToNCj4gLSBBZGRzIGFsaWFzIGZvciBHZXRQcm9qZWN0SW5mb0ZvclJl
ZmVyZW5jZSB0YXJnZXQgdG8gdmVyc2lvbi52Y3hwcm9qDQo+ICAgICAgTGF0ZXIga2l0cyBzZWVt
ZWQgdG8gaGF2ZSByZW5hbWVkIHRoZSBidWlsZCB0YXJnZXQsIGFuZCB3aWxsIGZhaWwgd2l0aG91
dA0KPiAgICAgIHRoaXMgYWxpYXMgdGFyZ2V0Lg0KPiAtIEFkZHMgIi9mZCBzaGEyNTYiIHRvIHNp
Z250b29sIGNvbW1hbmQgbGluZQ0KPiAgICAgIFdESyAyMDM0NCBhbmQgbGF0ZXIgcmVxdWlyZSBi
aW5hcmllcyBzaWduZWQgd2l0aCBhIFNIQTI1NiBmaWxlIGRpZ2VzdCwgb3INCj4gICAgICB0aGUg
YnVpbGQgb3V0cHV0cyBhcmUgZGVsZXRlZA0KPiAtIEZpeGVzIHdhcm5pbmcgNDA2MSAtIHN3aXRj
aCBzdGF0ZW1lbnQgb24gZW51bSB0eXBlcyBuZWVkIHRvIGhhdmUgYSBjYXNlIGZvcg0KPiAgICAg
IGFsbCB2YWx1ZXMgb2YgdGhlIGVudW1lcmF0aW9uDQoNCklNTyB0aGlzIGlzIGEgc3R1cGlkIHJ1
bGUgYW5kLCBpbiBtYW55IGNhc2VzIGluIHRoZSBwYXRjaCwgbGVhZHMgdG8gdGhlIG1hZ2ljICdu
dW1iZXIgb2YgdGhpbmdzIGluIHRoZSBlbnVtJyBiZWluZyBhZGRlZCB0byB0aGUgY2FzZSBzdGF0
ZW1lbnRzLi4uIHdoaWNoIGlzIGp1c3QgYm9ndXMuIExldCdzIGp1c3Qgc3F1YXNoIHRoaXMgd2Fy
bmluZyBpbnN0ZWFkLg0KDQogICBQYXVsDQoNClN1cHByZXNzaW5nIHRoZSB3YXJuaW5nIGlzIGJl
dHRlci4gRml4aW5nIHRoZSBzd2l0Y2ggc3RhdGVtZW50cyBkaWRu4oCZdCBzZWVtIHNvIGxhcmdl
LCB1bnRpbCBJIGdvdCB0byB4ZW52YmQgLSBJIHNxdWFzaGVkIHRoZSB3YXJuaW5nIGhlcmUsIGFz
IEkgZG9u4oCZdCBoYXZlIGVub3VnaCB0aW1lIHRvIGZpeCBldmVyeSBzd2l0Y2ggc3RhdGVtZW50
IHRoYXTigJlzIG1pc3NpbmcgbXVsdGlwbGUgcmVkdW5kYW50IGNhc2UgbGFiZWxzIChJSVJDLCBz
b21lIHdlcmUgMjArIG1pc3NpbmcgY2FzZSBsYWJlbHMpDQoNCk93ZW4NCg==


From win-pv-devel-bounces@lists.xenproject.org Tue Aug 31 07:23:14 2021
Return-path: <win-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Tue, 31 Aug 2021 07:23:14 +0000
Received: from list by lists.xenproject.org with outflank-mailman.175501.319709 (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mKy6z-0007Nz-Rd; Tue, 31 Aug 2021 07:23:13 +0000
X-Outflank-Mailman: Message body and most headers restored to incoming version
Received: by outflank-mailman (output) from mailman id 175501.319709; Tue, 31 Aug 2021 07:23:13 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.92)
	(envelope-from <win-pv-devel-bounces@lists.xenproject.org>)
	id 1mKy6z-0007Ns-Oi; Tue, 31 Aug 2021 07:23:13 +0000
Received: by outflank-mailman (input) for mailman id 175501;
 Tue, 31 Aug 2021 07:23:12 +0000
Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]
 helo=us1-amaz-eas2.inumbo.com)
 by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from
 <SRS0=u9wr=NW=citrix.com=owen.smith@srs-us1.protection.inumbo.net>)
 id 1mKy6y-0007Nm-Ag
 for win-pv-devel@lists.xenproject.org; Tue, 31 Aug 2021 07:23:12 +0000
Received: from esa1.hc3370-68.iphmx.com (unknown [216.71.145.142])
 by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS
 id 4ba5f1ee-0a2c-11ec-ad0d-12813bfff9fa;
 Tue, 31 Aug 2021 07:23:11 +0000 (UTC)
X-BeenThere: win-pv-devel@lists.xenproject.org
List-Id: Developer list for the Windows PV Drivers subproject
 <win-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/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: <https://lists.xenproject.org/mailman/listinfo/win-pv-devel>, 
 <mailto:win-pv-devel-request@lists.xenproject.org?subject=subscribe>
Errors-To: win-pv-devel-bounces@lists.xenproject.org
Precedence: list
Sender: "win-pv-devel" <win-pv-devel-bounces@lists.xenproject.org>
X-Inumbo-ID: 4ba5f1ee-0a2c-11ec-ad0d-12813bfff9fa
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple;
  d=citrix.com; s=securemail; t=1630394591;
  h=from:to:subject:date:message-id:references:in-reply-to:
   content-transfer-encoding:mime-version;
  bh=XAWSo58tAB7XyFrDmrYLbNTyynSABxu1B+zbHE3tHxQ=;
  b=ftZMulTIDcoiRlJiroomluU1JWN/Exb2LX3PSQFI7rIpPUnlxfDJDIGe
   Zs8kIoKdr4VIuuxXT7os80uSSyr9NWgs/qmhFJgb89YlnbWvUYSrH937y
   lp0zbhoVH9NT6dL6LZUMYHap0k7+sbbZP2nyi35Y7nCjpfssqEhS60itJ
   I=;
Authentication-Results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
IronPort-SDR: 5v/yx9WIbbHdcTJ9bEG6uwg0f0Tx9OYVlosKNQNpDJOkxKTZK/P0YA4PhaXCnXpkVtT9m1b30n
 xBFJxifasZcIQKmw8efcb79v/QkycB3bROyb9uP5t0hYMJs1nO9uvS5kDQJWv4Cs0OE30oGZnX
 MyUpCkSSoeBPHYz9T118BdBRCtqzZ+FL8nSk7n4Bb16PPAFfIi8+Aa0wEcou0f8D5STkrBztzN
 pBsQ8L+gPMoaljvTyTWOJOJER4DrOARfAOYPsyVTTpVQ/ggr8VBQxO/1X0OUQyJ7ipoRccnFyp
 deaaOWSAU3L2hTspx6psYd2F
X-SBRS: 5.1
X-MesageID: 52056823
X-Ironport-Server: esa1.hc3370-68.iphmx.com
X-Remote-IP: 162.221.156.83
X-Policy: $RELAYED
IronPort-HdrOrdr: A9a23:8CiQd62ud8D4APYQSzC47gqjBQVyeYIsimQD101hICG9Lfb3qy
 n+ppsmPEHP5Ar5AEtQ5OxoS5PwPU80kqQFr7X5XI3SEzUO3VHIEGgM1/qa/9SNIVydygcZ79
 YbT0EcMqywMbEZt7eD3ODQKb9Jq7PrkNHKuQ6d9QYXcegDUdA60+4TMHf+LqQCfnghOXNPLu
 v62iMonUvERV0nKuCAQlUVVenKoNPG0Lj8ZwQdOhIh4A6SyRu19b/TCXGjr1cjegIK5Y1n3X
 nOkgT/6Knmmeq80AXg22ja6IkTsMf9y+FEGNeHhqEuW3bRY0eTFcZcso+5zXQISdKUmREXeR
 730lEd1vFImjbsl6eO0ELQMkfboW4TAjTZuCClaDPY0LLErXQBepB8bMtiA2rkwltls9dm3K
 1R2WWF85JREBPbhSz4o8PFThdwiyOP0DEfeMMo/jViuLElGfdsRE0kjTZoOYZFGDi/5JEsEe
 FoAs2Z7PFKcUmCZ3ScumV02tSjUnk6Ax/DGyE5y4Go+ikTmGo8w1oTxcQZkHtF/JUhS4Nc7+
 CBNqhzjrlBQsIfcKo4DuYcRsm8DHDLXHv3QSivCEWiELtCN2PGqpbx7rlw7Oa2eIYQxJ93g5
 jFWEMwjx9FR6svM7z44HRvyGGAfIyQZ0Wf9ihu3ekMhlSnfsuaDcSqciFdr/ed
X-IronPort-AV: E=Sophos;i="5.84,365,1620705600"; 
   d="scan'208";a="52056823"
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;
 b=RPLDl8muhlxD/t8dXcamvdn6WOuBqbvkKk50YG3iWUX9l1TF/b7cAOU64qDI2g5HDDWnnoxHTfE5oqBd04h2EayZSOwPfoenG95otdS9WP7Cg803zUM1aSUnk/Fr0gYe9UDkULvcZTu7y6QDszl7IWY2nVjdRT508d3uOH2d//AnClBmJfuTvwKer2JNJCEkEBkvJIsHLkWpYCdjUlOBYOyzGvRN4vv5PkMmWlk+rw6xOKrxDpmTNSHi/oMJHF9P3YFyxGlFVn6we8nwBlxw/VYF9MAp3cxIf4LDcOFiRDcFVmG7GFOKtH7XAMlAKaMjI3qREcrDxZq7EdiSjvN2BA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;
 s=arcselector9901;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=XAWSo58tAB7XyFrDmrYLbNTyynSABxu1B+zbHE3tHxQ=;
 b=iNFb7rZOO8tQBPEVOb3bsf6Tg4IZxK17NmAqibfSu6Z1czMvLRiSfzxEF59Rm8DAAQ7s1IqApxVvXU7hglN2LLf1NihrRJJ4CA8ER56wdH6OddhWdAJBcJ+2oWSU1l37cwY26xjPZv/0kwI1c+ykPvi6qJ4CHHybbs/SLJwgcnVzvKDPFWFhipPjMKgYSWARKFzDOFLcicakuhf7f/0IjgJK0NtOsMdsfyZzXXJDtx92RBUB0wW8V90ZpZX22PJkUMXnnFeRHSHExHOMCgCJZJtM5lt0s2CFqhTyr/0NbdRS8EIphALOnIvuWEN/YaiIWBEXOag20/SCrGH/MZtOtw==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass
 smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com;
 dkim=pass header.d=citrix.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=citrix.onmicrosoft.com; s=selector2-citrix-onmicrosoft-com;
 h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;
 bh=XAWSo58tAB7XyFrDmrYLbNTyynSABxu1B+zbHE3tHxQ=;
 b=P8iyct9NBqx9hZ4SK4qGu5/6tSdpGSC1HG5KVwknBaImB262uBI/UcEdjbt7w5HYu2KhBEoVoOv3qjMmpV8RL2CJFtkbq+iOt/8cxiC4rbZ4nftbEVprE+p3IQYZXaT0eVhQ/uJyivzMRnPavcHjrOKuZ1QrNznlsUqcyqoQ1E0=
From: Owen Smith <owen.smith@citrix.com>
To: "paul@xen.org" <paul@xen.org>, "win-pv-devel@lists.xenproject.org"
	<win-pv-devel@lists.xenproject.org>
Subject: RE: [PATCH 3/3] Fix issues raised by CodeQL
Thread-Topic: [PATCH 3/3] Fix issues raised by CodeQL
Thread-Index: AQHXjf4exGHV6ONSck6n4EgaC5jYd6t8GwaAgBE6oEA=
Date: Tue, 31 Aug 2021 07:23:07 +0000
Message-ID: <DS7PR03MB5477C21B1F34DDDF4C798DCBFECC9@DS7PR03MB5477.namprd03.prod.outlook.com>
References: <20210810154048.1006-1-owen.smith@citrix.com>
 <20210810154048.1006-3-owen.smith@citrix.com>
 <5d06ae38-28c4-9501-4c55-c0cd9dffb8e3@xen.org>
In-Reply-To: <5d06ae38-28c4-9501-4c55-c0cd9dffb8e3@xen.org>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: f3613348-6e96-48ef-eeee-08d96c502e66
x-ms-traffictypediagnostic: DS7PR03MB5496:
x-microsoft-antispam-prvs: <DS7PR03MB54963DBD39D89A6CE57EFB42FECC9@DS7PR03MB5496.namprd03.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:3631;
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: X90mAhzq6eyEODy++cj297NWz+iWNTmYuAEd7GY6w4cbW76PSLio/Eq/hdW4+KyyKtsJyIKx7NV8w5/jqWMKzQ32jYMY5TW8DHHbc85fHZdZh8AFOD99l18I6qddXNI7alhjqmYsOrsnXnnT7M5luJA6IalN4OfC9Lzk6xsNppPU/BBfBnLnI+j6nokqDo55r21Ah6oWRTxgSnc5eSvX6qlv15Y5uwlFl0O2p3uEEn2XrtpRyF0Him35+g0j/zjGmKvdu+m9QGUaqIKpYbqDCDRajf9/luIss3WIsl7ZRqW8a1vkYS01qtiKH/2dYsG3EXtTQRbrQgLBP2l33V7EK0ICwymWfx3Zcyd0UtkLPTvIH8WLYTRTbhg57wR9hsLFrMKbpDpZm79DRtiARgS304egZ3FD/hKohvGqBQ9OESzOJ5vKghbHwAqAUp4Goqi4NAQNOTT7ZkzpUmXJx7UqWXsB7PeAch5CGpqR504n2wYf3NBm3mFJU90eGOJbZCZNwFchLyanf40YLeQ+ylnuIdkd5RqZQrQUow95LMfDaDqZfqggz9xxO9Sqd9Ztdkv3mTF1i5Pt5XmI9yThyhymnJfpXgf4loW4rcpNUHB+F3K6RKTy6fPPCfJDQUxoInCEmXOpG8xUSsIhreIO/a7qZ0VDCjMshzg3XIPF96SfSr7K/Hu0Cfkgm4UAx9DQeikI3HKurBsNprkVzJ526XR8CA==
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR03MB5477.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(366004)(6506007)(83380400001)(33656002)(186003)(26005)(53546011)(7696005)(122000001)(44832011)(2906002)(8936002)(86362001)(8676002)(508600001)(64756008)(38070700005)(66946007)(55016002)(66446008)(5660300002)(52536014)(66556008)(66476007)(110136005)(9686003)(76116006)(38100700002)(316002)(71200400001);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: =?utf-8?B?bFFoT0JlaUhaalA5KytHYVNUVkRoMkFRSWNoQ3pqcG5CK0tBQVV3ZzZnSXZ5?=
 =?utf-8?B?aUVHTm81TGtLMXc4RldyQzRwTXo4RGJLMjlrUmhHaVZuL1phSDYwMDFzVjNy?=
 =?utf-8?B?Z2luSlR5OGQwdjBKcWltUklPNkY1YzdpUC9HaGt1bksxOVI0NUZseW5nT3J3?=
 =?utf-8?B?eDR1U0FIM3dQQzdCUnRZWGQ5dDd1cGNUdENnSW9Ga2JmcHJGckE0YmhrNWhV?=
 =?utf-8?B?ZXdYVDRaOVo0cnRQTzVORGJaYVdTcnRQeFU3cklkK3JMYkU0bWtiUHBBcDRQ?=
 =?utf-8?B?TEdOelFmbGd3eFF5NzhtL3FVamkrTENIMHFBSU1VVEFsQnZoaTNqRTRRWDJY?=
 =?utf-8?B?ZzBseERDZ3FCS2FCc2w5QlpiTGNxcDh5b0RSTjBwUkhPUEFpREY3UzlOVWhQ?=
 =?utf-8?B?Y3R2ZmJ4QUZDT29uZERZNWU2cnpaYlhzcGRvc0lBR1BZc3h6NURoM0dXRkoy?=
 =?utf-8?B?MVdRSFBnQzNIRk9xNENieE1HaGxTY3NvRVNNQ1NUWU5sOG1neVZobnFiRXRz?=
 =?utf-8?B?Zk9ISEtOUkpjUVNwTk1MVG1STmhhelRKcHdDRUtzU0ZzVUdqTWFaR0tlbWZH?=
 =?utf-8?B?MkJOWkRDc3Z0ZHlxVXFXLzg1YXMyQ081OEpVekRnTGFVekFwc0dQelNnY2Qr?=
 =?utf-8?B?cmZKVy84eW51aGxJM2l0S25lWUsvVUpoK3JnOGNNK2RHZXp5RXM5YVZ2cDBy?=
 =?utf-8?B?TGhNcEx4bjZUOGZ2WExTMHg1TWpsd0gweHFCUmw2Wk13bGp6OW05bk0xOTJR?=
 =?utf-8?B?U0ozT2tydkErcUdadHBtSDM1cEpYQTVXZnJQd3RJUVlYWE9sb1dLZzllWkpi?=
 =?utf-8?B?WXJXbkZpbzNJYzdKTmEwajkvNS9IaVdBdE9Ub1kzc2lqN2FMeStUcEsvZ21v?=
 =?utf-8?B?eXhCc0pLaGZtcURrWmp3WmNCdWxHTWFISEtORWhLMC9vWExsSDJvdTFrN3ht?=
 =?utf-8?B?eVhUSVZINXVRS1RvV0hmMGdhTmRCQ3AvcjQ5L1BhMkExZ1UxMDVOZ0ZncDFC?=
 =?utf-8?B?d3lrTWFKZkJ0K3VtRmVFSS9DWjFyWXdZTHg4U1JXNG93T1dXSUJ3RjMvZVFx?=
 =?utf-8?B?ckNMdUxSME9pc0p6MHpRL21JdklaK1lhQkVUajFqZEVEWHVkOVhVU1JYL1Yy?=
 =?utf-8?B?U1Z5MjZCUUtzUHNsNUc4NDZiRHZVMEw5MWU0WFVPbVpYdUVMWEVVT3U4Qi93?=
 =?utf-8?B?dERQR0RrSGhQRGhlVFlqcEFlYjRHSVhNYjhHZ0lQU0lkYXVKY3Q3dWlaZFJv?=
 =?utf-8?B?UW5TMzg2dGxpRzdPVWY3K0E1VUZZZWlhUGZUQ1diS1hiRGJoRHVzY1dkdHdo?=
 =?utf-8?B?MU9lOTJaV3UwR1JFemJWczRiaTUrRG9FUjBZMUpOcmRxcGxiUlJBMzlEZ3Nw?=
 =?utf-8?B?MCtWb0RRNUZtdFBKVE4rT2lIcGx1Ri8vbnlwRUl4UlJ0d29GS3dCQldRZHFM?=
 =?utf-8?B?L1dkRXRidFVmM0FHTUhIeVJQOHJFSHpZTGxEK1pIeVA0cHNkTjJNUm93dnMx?=
 =?utf-8?B?MW8vRzI2d2QzdDNtTHFsNFc2blhQakxqRWdrWEhMMWFGZTVCRXN3V1NHZ3Ra?=
 =?utf-8?B?N0s4Zy9IZW5KVWZ6WlJYRm8rQ3MyV3JMQVRha3ZKanJRbWVkd2NTOFFNT1pS?=
 =?utf-8?B?NHViQ1BxWm43SzdrY0hwaFp1MU9mdXh6bVQ1ZjJKK1pzRGhjbkxWL3JMTmtw?=
 =?utf-8?B?ZFFzbUJRVnRrT1lOVHZ3bk9VbUFlTUNIdzNyeURrSGdlTGE3K1A2dENDUVJw?=
 =?utf-8?Q?4TXGdtOaGa6wXizbBZVK3kFD3dPpfLvkioKf4l3?=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: DS7PR03MB5477.namprd03.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: f3613348-6e96-48ef-eeee-08d96c502e66
X-MS-Exchange-CrossTenant-originalarrivaltime: 31 Aug 2021 07:23:07.9863
 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 335836de-42ef-43a2-b145-348c2ee9ca5b
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: 6XsIK6Wxt08szjD+rF2uZewmuJKp1GDIJCmZuNR7jE8cEfob5MawvBdRxAcmhDJRKqkeQj/abUk7Huc6ukEzUQ==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR03MB5496
X-OriginatorOrg: citrix.com

DQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiB3aW4tcHYtZGV2ZWwgPHdpbi1w
di1kZXZlbC1ib3VuY2VzQGxpc3RzLnhlbnByb2plY3Qub3JnPiBPbiBCZWhhbGYgT2YgUGF1bCBE
dXJyYW50DQpTZW50OiBGcmlkYXksIEF1Z3VzdCAyMCwgMjAyMSA5OjE1IEFNDQpUbzogd2luLXB2
LWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnDQpTdWJqZWN0OiBSZTogW1BBVENIIDMvM10gRml4
IGlzc3VlcyByYWlzZWQgYnkgQ29kZVFMDQoNCltDQVVUSU9OIC0gRVhURVJOQUwgRU1BSUxdIERP
IE5PVCByZXBseSwgY2xpY2sgbGlua3MsIG9yIG9wZW4gYXR0YWNobWVudHMgdW5sZXNzIHlvdSBo
YXZlIHZlcmlmaWVkIHRoZSBzZW5kZXIgYW5kIGtub3cgdGhlIGNvbnRlbnQgaXMgc2FmZS4NCg0K
T24gMTAvMDgvMjAyMSAxNjo0MCwgT3dlbiBTbWl0aCB3cm90ZToNCj4gLSBFeEFsbG9jYXRlUG9v
bFdpdGhUYWcgaXMgZGVwcmVjYXRlZCBpbiBXaW5kb3dzIDEwIDIwMDQgYW5kIHJlcGxhY2VkIHdp
dGgNCj4gICAgICBFeEFsbG9jYXRlUG9vbDIuIFVzZSBFeEFsbG9jYXRlUG9vbFVuaW5pdGlhbGl6
ZWQgdG8gbWFpbnRhaW4gc3VwcG9ydCBmb3INCj4gICAgICBlYXJsaWVyIHZlcnNpb25zIG9mIFdp
bmRvd3MuDQo+IC0gc3RydG9sIGNhbiBmYWlsLCBjaGVjayBmb3IgTE9OR19NSU4gb3IgTE9OR19N
QVggYXMgaW5kaWNhdG9ycyBvZiBhbiANCj4gZXJyb3INCg0KSSB0aGluayB0aGVzZSBwcm9iYWJs
eSBvdWdodCB0byBiZSBzZXBhcmF0ZSBwYXRjaGVzLiBBcyBmb3IgdGhlIHN0cnRvbCgpIGNoYW5n
ZS4uLiBUaGVyZSBhbHNvIHVzZXMgb2Ygc3RydG91bCgpIChhbmQgX3N0cnRvdWk2NCgpKSBlbHNl
d2hlcmUuIElmIHdlJ3JlIGdvaW5nIHRvIGNhdGNoIG92ZXJmbG93IGhlcmUgdGhlbiBvdWdodCB3
ZSBub3QgaGF2ZSBzaW1pbGFyIGNoZWNraW5nIHRoZXJlPw0KDQogICBQYXVsDQoNCk9ubHkgc3Ry
dG9sKCkgd2FzIGZsYWdnZWQgYXMgYSB3YXJuaW5nIGJ5IHRoZSBuZXdlciBjb21waWxlciwgbm90
IHN0cnRvdWwoKSBvciBfc3RydG91aTY0KCkuIEkgb25seSBmaXhlZCB0aGUgbWluaW11bSB0byBn
ZXQgdGhlIGNvbXBpbGUgdG8gc3RvcCByYWlzaW5nIHdhcm5pbmdzDQoNCk93ZW4NCg0KPiANCj4g
U2lnbmVkLW9mZi1ieTogT3dlbiBTbWl0aCA8b3dlbi5zbWl0aEBjaXRyaXguY29tPg0KPiAtLS0N
Cj4gICBzcmMvY29tbW9uL3V0aWwuaCAgICAgIHwgIDQgKysrKw0KPiAgIHNyYy94ZW5maWx0L2Vt
dWxhdGVkLmMgfCAzNCArKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tDQo+ICAgMiBm
aWxlcyBjaGFuZ2VkLCAzMCBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQ0KPiANCj4gZGlm
ZiAtLWdpdCBhL3NyYy9jb21tb24vdXRpbC5oIGIvc3JjL2NvbW1vbi91dGlsLmggaW5kZXggDQo+
IGVkZGFkNGEuLjM2YTM2ZGQgMTAwNjQ0DQo+IC0tLSBhL3NyYy9jb21tb24vdXRpbC5oDQo+ICsr
KyBiL3NyYy9jb21tb24vdXRpbC5oDQo+IEBAIC0xNTEsOCArMTUxLDEyIEBAIF9fQWxsb2NhdGVQ
b29sV2l0aFRhZygNCj4gICAgICAgX19hbmFseXNpc19hc3N1bWUoUG9vbFR5cGUgPT0gTm9uUGFn
ZWRQb29sIHx8DQo+ICAgICAgICAgICAgICAgICAgICAgICAgIFBvb2xUeXBlID09IFBhZ2VkUG9v
bCk7DQo+ICAgDQo+ICsjaWYgKF9NU0NfVkVSID49IDE5MjgpIC8vIFZTIDE2LjkgKEVXREsgMjAz
NDQgb3IgbGF0ZXIpDQo+ICsgICAgQnVmZmVyID0gRXhBbGxvY2F0ZVBvb2xVbmluaXRpYWxpemVk
KFBvb2xUeXBlLCBOdW1iZXJPZkJ5dGVzLCANCj4gK1RhZyk7ICNlbHNlDQo+ICAgI3ByYWdtYSB3
YXJuaW5nKHN1cHByZXNzOjI4MTYwKSAvLyBhbm5vdGF0aW9uIGVycm9yDQo+ICAgICAgIEJ1ZmZl
ciA9IEV4QWxsb2NhdGVQb29sV2l0aFRhZyhQb29sVHlwZSwgTnVtYmVyT2ZCeXRlcywgVGFnKTsN
Cj4gKyNlbmRpZg0KPiAgICAgICBpZiAoQnVmZmVyID09IE5VTEwpDQo+ICAgICAgICAgICByZXR1
cm4gTlVMTDsNCj4gICANCj4gZGlmZiAtLWdpdCBhL3NyYy94ZW5maWx0L2VtdWxhdGVkLmMgYi9z
cmMveGVuZmlsdC9lbXVsYXRlZC5jIGluZGV4IA0KPiBiN2FlNTEwLi5jMGI2NjZlIDEwMDY0NA0K
PiAtLS0gYS9zcmMveGVuZmlsdC9lbXVsYXRlZC5jDQo+ICsrKyBiL3NyYy94ZW5maWx0L2VtdWxh
dGVkLmMNCj4gQEAgLTE1OSw5ICsxNTksOSBAQCBFbXVsYXRlZFNldE9iamVjdERpc2tEYXRhKA0K
PiAgICAgICApDQo+ICAgew0KPiAgICAgICBQQ0hBUiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBFbmQ7DQo+IC0gICAgVUxPTkcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29u
dHJvbGxlcjsNCj4gLSAgICBVTE9ORyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUYXJn
ZXQ7DQo+IC0gICAgVUxPTkcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTHVuOw0KPiAr
ICAgIExPTkcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbnRyb2xsZXI7DQo+ICsg
ICAgTE9ORyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGFyZ2V0Ow0KPiArICAgIExP
TkcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEx1bjsNCj4gICAgICAgTlRTVEFUVVMg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzOw0KPiAgIA0KPiAgICAgICBVTlJFRkVS
RU5DRURfUEFSQU1FVEVSKERldmljZUlEKTsgQEAgLTE3MSwzNiArMTcxLDU0IEBAIA0KPiBFbXVs
YXRlZFNldE9iamVjdERpc2tEYXRhKA0KPiAgICAgICBpZiAoVHlwZSAhPSBYRU5GSUxUX0VNVUxB
VEVEX09CSkVDVF9UWVBFX0lERSkNCj4gICAgICAgICAgIGdvdG8gZmFpbDE7DQo+ICAgDQo+ICsg
ICAgc3RhdHVzID0gU1RBVFVTX0lOVkFMSURfUEFSQU1FVEVSOw0KPiAgICAgICBDb250cm9sbGVy
ID0gc3RydG9sKEluc3RhbmNlSUQsICZFbmQsIDEwKTsNCj4gKyAgICBpZiAoQ29udHJvbGxlciA9
PSBMT05HX01JTiB8fCBDb250cm9sbGVyID09IExPTkdfTUFYKQ0KPiArICAgICAgICBnb3RvIGZh
aWwyOw0KPiAgIA0KPiAgICAgICBzdGF0dXMgPSBTVEFUVVNfSU5WQUxJRF9QQVJBTUVURVI7DQo+
ICAgICAgIGlmICgqRW5kICE9ICcuJyB8fCBDb250cm9sbGVyID4gMSkNCj4gLSAgICAgICAgZ290
byBmYWlsMjsNCj4gKyAgICAgICAgZ290byBmYWlsMzsNCj4gICANCj4gICAgICAgRW5kKys7DQo+
ICAgDQo+ICsgICAgc3RhdHVzID0gU1RBVFVTX0lOVkFMSURfUEFSQU1FVEVSOw0KPiAgICAgICBU
YXJnZXQgPSBzdHJ0b2woRW5kLCAmRW5kLCAxMCk7DQo+ICsgICAgaWYgKFRhcmdldCA9PSBMT05H
X01JTiB8fCBUYXJnZXQgPT0gTE9OR19NQVgpDQo+ICsgICAgICAgIGdvdG8gZmFpbDQ7DQo+ICAg
DQo+ICAgICAgIHN0YXR1cyA9IFNUQVRVU19JTlZBTElEX1BBUkFNRVRFUjsNCj4gICAgICAgaWYg
KCpFbmQgIT0gJy4nIHx8IFRhcmdldCA+IDEpDQo+IC0gICAgICAgIGdvdG8gZmFpbDM7DQo+ICsg
ICAgICAgIGdvdG8gZmFpbDU7DQo+ICAgDQo+ICAgICAgIEVuZCsrOw0KPiAgIA0KPiArICAgIHN0
YXR1cyA9IFNUQVRVU19JTlZBTElEX1BBUkFNRVRFUjsNCj4gICAgICAgTHVuID0gc3RydG9sKEVu
ZCwgJkVuZCwgMTApOw0KPiArICAgIGlmIChMdW4gPT0gTE9OR19NSU4gfHwgTHVuID09IExPTkdf
TUFYKQ0KPiArICAgICAgICBnb3RvIGZhaWw2Ow0KPiAgIA0KPiAgICAgICBzdGF0dXMgPSBTVEFU
VVNfSU5WQUxJRF9QQVJBTUVURVI7DQo+ICAgICAgIGlmICgqRW5kICE9ICdcMCcpDQo+IC0gICAg
ICAgIGdvdG8gZmFpbDQ7DQo+ICsgICAgICAgIGdvdG8gZmFpbDc7DQo+ICAgDQo+ICAgICAgIHN0
YXR1cyA9IFNUQVRVU19OT1RfU1VQUE9SVEVEOw0KPiAgICAgICBpZiAoTHVuICE9IDApDQo+IC0g
ICAgICAgIGdvdG8gZmFpbDU7DQo+ICsgICAgICAgIGdvdG8gZmFpbDg7DQo+ICAgDQo+IC0gICAg
RW11bGF0ZWRPYmplY3QtPkRhdGEuRGlzay5JbmRleCA9IENvbnRyb2xsZXIgPDwgMSB8IFRhcmdl
dDsNCj4gKyAgICBFbXVsYXRlZE9iamVjdC0+RGF0YS5EaXNrLkluZGV4ID0gKFVMT05HKUNvbnRy
b2xsZXIgPDwgMSB8IA0KPiArIChVTE9ORylUYXJnZXQ7DQo+ICAgDQo+ICAgICAgIHJldHVybiBT
VEFUVVNfU1VDQ0VTUzsNCj4gICANCj4gK2ZhaWw4Og0KPiArICAgIEVycm9yKCJmYWlsOFxuIik7
DQo+ICsNCj4gK2ZhaWw3Og0KPiArICAgIEVycm9yKCJmYWlsN1xuIik7DQo+ICsNCj4gK2ZhaWw2
Og0KPiArICAgIEVycm9yKCJmYWlsNlxuIik7DQo+ICsNCj4gICBmYWlsNToNCj4gICAgICAgRXJy
b3IoImZhaWw1XG4iKTsNCj4gICANCj4gDQoNCg0K


