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

Re: [PATCH 4/4] x86/PV: properly set shadow allocation for Dom0


  • To: Jan Beulich <jbeulich@xxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
  • Date: Tue, 31 Aug 2021 14:47:59 +0100
  • 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
  • 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=DrKz2jbG+mT5dOp9dPkuwq1ucx1hJ1Abwlehka9EUmI=; b=SKUGtXqb8j8S6ZENf4J0UmYscHhi4h41Pei4h21HX00mqRpPDtRjwWxc7BH65X7s9s29ubB7AhV6yhAastt6VN7uv2qTAi4uVh7CZTopFEN51MNgfYYwtkzRTJlxQ9u/ROyok0y/0duPFg8dRQyd3WL3falPBgDTMVJzpGtWAl94QZaiYCJxapo2Jo/+NOoJHsXQtRXSmlKHUvaIqz+djtz0LZ7m2vHKIRghWAYZzQB2SGgLsQsK9WnAFJ2ZT9FURbd1X4PZmkUf80RjGdti6iv2rtlNPBQj18+r724JSNYG4+aPwH+YUy5bT+SxbDqW+CQ7uBg6WGfRn2M1GwUn3A==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Dbd8bmQfbeuJa+/MqrifrbdW7R993va4u/VEKhg2PFkLZjrzR8RxzZlM6rYgSDddMdJtUsIvfXyBsnwFfnRAPnnEAXHkpC1kmo7tcYjfUsFc/K89FYvJiXRx0qoaG5jQyRfiZ+7Dd6aBgl1Bw2fgc/NucVsb+eB+CRbm/MFG9sugW0NvfL43L9Q5Wq1wnVHIS4RrOvZv0kkXoXuI4eyUM5p6IzigSOK6wuuNkt9IlDzYgLKsGg6PWmKaBzpMxoPcJObwTZ6jm9Eb1V3VS/Zry9txgVrKahKVEaDhFh0uBq11WZ3qSHjQG0P0TJBqZ222Tzdyf8hyA9oUoheXU/9phw==
  • Authentication-results: esa1.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
  • Cc: Wei Liu <wl@xxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Tim Deegan <tim@xxxxxxx>
  • Delivery-date: Tue, 31 Aug 2021 13:48:10 +0000
  • Ironport-hdrordr: A9a23:gskrDK7uVq8rQTn5sQPXwU+BI+orL9Y04lQ7vn2ZFiY6TiXIra +TdaoguSMc6AxwZJkh8erwXJVoMkmsi6KdhrNhQotKPTOWxFdASbsC0WKM+UyaJ8STzJ866U 4kSdkCNDSSNykIsS+Z2njBLz9I+rDum8rE9ISurQYZcegpUdAG0+4QMHfqLqQcfng+OXNWLu v42iMKnUvbRZxBBf7Ld0XtEtKz5uEi0/ndEFc7Li9izDPLoSKj6bb8HRTd9hACUwlXybNn1W TeiQT26oiqrvn+k3bnpizuxqUTvOGk5spIBcSKhMRQAjLwijywbIAkf7GZpjg6rMym9V5vut jRpBULOdh19hrqDyGIiCqo/zOl/Ccl6nfkx1PdqXz/ofbhTDZ/MMZFjZIxSGqU12MQ+PVHlI 5b1WOQsJRaSTnamj7m2tTOXxZ20mKpvHsLi4co/jhieLpbTIUUgZ0U/UtTHptFNjn98pobHO 5nC9yZzOpKcGmdc2vSsgBUsZmRt0wIb1G7q3U5y5WoO2A8pgEg86JY/r1cop44zuN7d3EejN 60aZiB/dp1P70rhaEUPpZNfSL4MB2WffpgWFjiaWgPL5t3TE4lnaSHqond1NvaDKDg86FC7q gpcGko+lLaKHieR/Fn4vVwg1vwqSOGLGnQ9v0=
  • Ironport-sdr: lKPNTWGDp/4zRPzvj/3EHckDt8k4i1UWAz0D0g40tDvWgDWblaoEHrAx5iPfU02vt4XgHUTXbI xJZnMVSLAw4lKw1z1fAzLquu97sMkYNgVSCBK/LaMnp68jM6TBPy/zQrbYyiax0rszzwudcnEg eU0EqvvYOdJGw/VFHZ5GPklt3ILEZehddde1goZZotEgAcyQgmsUGO7HuuwNefJEoDHqiwG5zp 6o0ijnJrOj7BVXivmyBl+ezHZSpY04SLBY9WqGUnKLEAdaK7l4Fv+EiLGML6IMKBbvDLovbPWZ lR4Eb8+JJlEwarGkoZPa+q6E
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 30/08/2021 14:03, Jan Beulich wrote:
> @@ -933,7 +934,17 @@ int __init dom0_construct_pv(struct doma
>  #ifdef CONFIG_SHADOW_PAGING
>      if ( opt_dom0_shadow )
>      {
> +        bool preempted;
> +
>          printk("Switching dom0 to using shadow paging\n");
> +
> +        do {
> +            preempted = false;
> +            shadow_set_allocation(d, dom0_paging_pages(d, nr_pages),
> +                                  &preempted);
> +            process_pending_softirqs();
> +        } while ( preempted );

This isn't correct.  The shadow pool is needed even without
opt_dom0_shadow, because some downstreams have elected not to retain
upstream's security vulnerability in default setting of opt_pv_l1tf_hwdom.

Also, dom0_paging_pages() isn't a trivial calculation, so should be
called once and cached.

~Andrew




 


Rackspace

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