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

[PATCH v2 0/6] x86/PVH: Dom0 building adjustments

  • To: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Jan Beulich <jbeulich@xxxxxxxx>
  • Date: Thu, 2 Sep 2021 10:30:53 +0200
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none
  • 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; bh=k4ggceMNvf4IRPKEMkkUaFmoZHmRsMaw7LT5S9Zt76I=; b=V9kYmAZo3wOL90yX3vpomujPPRJ8OpE9lwj3O9TihoZCU//Vfn+ZQRpFtfhEv6Dp1DVjuTUNvsDIdjgJX1Ysj2bn4SXEQQuvV/wvsFS1IiMpDZuYfMpUXXRLiymz+n4Os/a4pc5Zoz4Mo3H9gJi5BobmloNQbfC5+riM0ZKmKrnAnEe4PimJJnkxgh1udZwF8wCeaSLXplMfA2hFwiTvxxd89GgHDJ0Vva2N/aJb+FKBNdU3moCzoqjjNGIc7LsPedukr9Pbi/Qk26sXWfl3amMwxJXh4a0vyFaHH6f7nxJpqssWJw5PFlj5iDfM6mVNIU/n1HCHG4ehI1KVdxy+ew==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hSZ/CGTR841tgVVIFefnw7W1STvHB8Y87QlEZlFUrN8b/VY2Joq+qHPMM6OsnLGTa0pgaJvHatxUYNdLs7ar7S+232d9+pmJ02owC62nT+Xrep0QopFG7cmgtBX/MNCXpKxUot6I1HK6zswfJ2W2tOXrqKeSyFrtdx6sGjKkNF0bgqjqS+6/l6/CB5i34Y80BnOBYcoctX3lz9880439HgbYpOplHIuY5p1+ovkWl6tWjVpO2TCy9fh+Uumw+OgSY33gdRu1gPbnzDJVh+pX5ihJUEfB5muaq30ZPFAUiVuTJw00IvynV10wYC/HS4BHgfXhVP4s3Lw06LQ6hfQ+Dw==
  • Authentication-results: citrix.com; dkim=none (message not signed) header.d=none;citrix.com; dmarc=none action=none header.from=suse.com;
  • Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>
  • Delivery-date: Thu, 02 Sep 2021 08:31:24 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

The code building PVH Dom0 made use of sequences of P2M changes
which are disallowed as of XSA-378. First of all population of the
first Mb of memory needs to be redone. Then, largely as a
workaround, checking introduced by XSA-378 needs to be slightly

Note that with these adjustments I get Dom0 to start booting on my
development system, but the Dom0 kernel then gets stuck. Since it
was the first time for me to try PVH Dom0 in this context (see
below for why I was hesitant), I cannot tell yet whether this is
due further fallout from the XSA, or some further unrelated
problem. Dom0's BSP makes it all the way through to entering the
idle loop while all APs are still in VPF_down.

[And there was another rather basic issue to fight first (patch
 was submitted separately as RFC): vPCI wasn't aware of hidden PCI
 devices, hitting an ASSERT(). Obviously I couldn't afford not
 having a functioning serial console.]

In the course I ran into an oom condition while populating Dom0's
RAM. Hence next some re-work of dom0_compute_nr_pages(). In turn
in the course of putting that together I did notice that PV Dom0,
when run in shadow mode, wouldn't have its shadow allocation
properly set.

Finally make debug key '0' work at least partially for PVH Dom0
and limit the amount of log output for offline (down) vCPU-s.

1: P2M: relax guarding of MMIO entries
2: P2M: relax permissions of PVH Dom0's MMIO entries
3: PVH: improve Dom0 memory size calculation
4: PV: properly set shadow allocation for Dom0
5: PVH: actually show Dom0's register state from debug key '0'
6: HVM: skip offline vCPU-s when dumping VMCBs/VMCSes




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