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

Re: [PATCH v2 15/18] IOMMU/x86: prefill newly allocate page tables


  • To: Jan Beulich <jbeulich@xxxxxxxx>
  • From: Roger Pau Monné <roger.pau@xxxxxxxxxx>
  • Date: Mon, 13 Dec 2021 16:51:31 +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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=VD6L36V87ro49bV4GB8XEnLsmUys6mR5KawDGTsNJ/E=; b=npcG3pXHtuzkNvE/H+pwfrodpd26rIlw19oRkp3fiDp6s1Fzzb3LkC44SUX44KwakPTyJFFnMg7+VIH81VVCaIO3Ub2GYZszSLBCeMJ1hFYviqe9LNxvwjn3+CUgpgar51OG/WVzY3HkjJlq5Jg8wvrT1flxnWf+6DjryGrl24T96gp31GyBInbJDe0OWBUhj7P5IVmNkpId0Cs1w0jn4bgoWQR72667OxNOFJ1J1v15Fwn4AVDDkCstdQ4/dJEskwedRJkVTHBJz+6yKfbPQXeGqGqLCsnfK8SqCyjq4RjIJNIFjbo2TwKcpvJ5EHCyDh9kK6ttN+kPzfAJq3oBvw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=D4cTf9F+GuY027waYtED0HPDs7i8zrhuUQZUrKjKFMgZ2+Gn89PjUrubq2D6m4Vn0Uz19117YrKcM1bIAjquFiFCCt6BGoA8tzzOsb5vpEPyiEGN4VbQJyz0fxMZslQzmm7YA9V+bvGCJaS3DZUgRWiEu5FzKtNY03p1NIFB+DCZhHUWvSOgKQTFYlSwvbqV1bGs4Sl/cS4G02C0HbDhgPRk1lZPYum8ClRgpw9iatgOInLg5oQBEWfW3vKUfb1o22NRucJ1oCJ8MpTLbPTz5VjeqaxtSs+tX720OFmzBoyZg5LyfD+wLJ7KKn9fLs8p/BFA0xMPsWvuUry0xx0ciA==
  • Authentication-results: esa5.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
  • Cc: "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Paul Durrant <paul@xxxxxxx>, Kevin Tian <kevin.tian@xxxxxxxxx>
  • Delivery-date: Mon, 13 Dec 2021 15:52:13 +0000
  • Ironport-data: A9a23:VHEalq65db8p5Im4e9HLHgxRtNvAchMFZxGqfqrLsTDasY5as4F+v jEXWW7UOf2IZWqhfo1yPYS29xhU6JGHzYdmTApurStgHi5G8cbLO4+Ufxz6V8+wwmwvb67FA +E2MISowBUcFyeEzvuV3zyIQUBUjclkfJKlYAL/En03FV8MpBsJ00o5wrdj29Uw27BVPivW0 T/Mi5yHULOa82Yc3lI8s8pvfzs24ZweEBtB1rAPTagjUG32zhH5P7pGTU2FFFPqQ5E8IwKPb 72rIIdVXI/u10xF5tuNyt4Xe6CRK1LYFVDmZnF+A8BOjvXez8CbP2lS2Pc0MC9qZzu1c99Z+ dt2766IESkQGbTFg9xGWhNiCDhcFPgTkFPHCSDXXc27ykTHdz3nwul0DVFwNoodkgp1KTgQr 7pCcmlLN03dwbLtqF64YrAEasALNs7kMZlZonh95TrYEewnUdbIRKCiCdpwgWZs3pkUR6+2i 8wxVWMoRUzeWRZ1B0YwLY5ix/mUr2KlWmgNwL6SjfVuuDWCpOBr65D1OcfRUsyHQ4NShEnwj mHL4WX/RA0bPdq3yDyZ/3bqjejK9Qv5Uo8PELyz9tZxnUaegGcUDXU+RVa95PW0lEO6c9ZeM FAPvDojq7Ao806mRcW7WAe3yENopTZFBYAWSbdjrljQlOyEuG51G1ToUBZwZud8hvduawUNz 1aSp4jgDwZ0qZ+8HCf1GqivkRu+Pi0cLGknbCACTBcY79SLnLzfni4jXf44Tvfr04Sd9SXYh mnT8XNg3+l7Ydsjjv3jpTj6bySQSo8lp+LfziHeRSqb4wxwf+ZJjKT4uAGAvZ6swGt0J2RtX UToeeDDtYji7rnXzURhpdnh+5nzuJ643MX02wIHInXY323FF4SfVY5R+ipiA0xiL9wJfzTkC GeK51gAv8QPbCb3PfQuC25UNyjN5fK/fekJq9iONoYeCnSPXFHvEN5Sib64gDm2zRlEfVAXM paHa8e8ZUv2+ow8pAdas9w1iOdxrghnnDu7bcmik3yPjOvGDFbIGOxtGAbfMYgEAFas/Vy9H yB3bJDRlX2ykYTWP0HqzGLkBQxQcCVgW8mp85c/myzqClMOJVzNwsT5mNsJU4dkg75UhqHP+ HS8UVVf013xmTvMLgDiV5ypQO+HsU9XoS1pMCoyE0yv3nR/M4+j4L1GL8k8fKU99fwlxvlxF qFXd8KFC/VJazLG5zVCMsWt8N08LEym1VCUIi6oQDkjZJo8FQbHzcDpI1n0/y4UAyvp6cZn+ ++81hnWSIYoThh5CJqEc+qmyl685CBPmO97U0bSDMNUfUHgrNpjJyDr16dlKMAQMxTTgDCd0 l/OUxsfoODMpa4z8cXI2v/Y/9v4TbMmExMDTWfB7LuwOS3LxUaZwNdNALSSYDTQdGLo46H+N +9b+O7xba8cl1FQvosiT7sylfAi58HirqNxxxh/GCmZdEyiD75tLyXU3cRLsaERlLZVtRHvB xCK89hef76IJNnkABgaIw98NraP0vQdmz/z6/UpIRqluH8rreTfCUgCbQORjCF9LaduNNJ3y Ogsj8ca9gijh0d4Kd2BlC1VqzyBI3Fov3/LbX3G7FsHUjYW92w=
  • Ironport-hdrordr: A9a23:Hv7bvqH6Z20eOyzLpLqFcZHXdLJyesId70hD6qkvc3Nom52j+/ xGws536faVslcssHFJo6HmBEClewKnyXcV2/hrAV7GZmfbUQSTXeNfBOfZsljd8mjFh5NgPM RbAtZD4b/LfCFHZK/BiWHSebZQo+VvsprY/ds2p00dMj2CAJsQiTuRZDzrdnGfE2J9dOYE/d enl4F6T33KQwVkUu2LQl0+G8TTrdzCk5zrJTYAGh4c8QGLyRel8qTzHRS01goXF2on+8ZuzU H11yjCoomzufCyzRHRk0fV8pRtgdPkjv9OHtaFhMQ5IijlziyoeINicbufuy1dmpDk1H8a1P 335zswNcV67H3cOkmzvBvWwgHllA0j7nfzoGXo90fLkIjcfnYXGsBBjYVWfl/y8Ew7puxx16 pNwiawq4dXJQmoplWy2/H4EzVR0makq3srluAey1ZFV5EFVbNXpYsDuGtIDZY7Gj7g4oxPKp ggMCjl3ocXTbqmVQGbgoE2q+bcHEjbXy32DnTqg/blkgS/xxtCvg4lLM92pAZ2yHtycegB2w 3+CNUZqFh5dL5jUUtMPpZxfSKJMB2/ffvtChPaHb21LtBOB5ryw6SHlYndotvaP6A18A==
  • Ironport-sdr: jrjN9x6CqAywrHgLCyHowJbKTVOEOpCY0auf1MYuibXBhJecWr8u5v80uhVK4lbX5VZIM5LCTB hxUVQqOt9tNP0s34HtaE47yAEjckWP5egzU+V7YYvHIaxYlIsW6fsyfC2DZ5QxeiJej615YSyC qM07KQWoizBSS5MnxRaLK/gmepdpwGhSLGcOFveNN/LGQnrmK32ZrwkvN0Z670sc5hV8UXPZrj YxmSgfJHWZk4b56hohgiHs7nWEpKttBYNGEo9h9YewCH0Y9JmF7N7mDGocUnCZJ3uLQde1Fcs3 HaoLZfE4t9t5iLDdLmMTu0WA
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On Fri, Sep 24, 2021 at 11:54:58AM +0200, Jan Beulich wrote:
> Page table are used for two purposes after allocation: They either start
> out all empty, or they get filled to replace a superpage. Subsequently,
> to replace all empty or fully contiguous page tables, contiguous sub-
> regions will be recorded within individual page tables. Install the
> initial set of markers immediately after allocation. Make sure to retain
> these markers when further populating a page table in preparation for it
> to replace a superpage.
> 
> The markers are simply 4-bit fields holding the order value of
> contiguous entries. To demonstrate this, if a page table had just 16
> entries, this would be the initial (fully contiguous) set of markers:
> 
> index  0 1 2 3 4 5 6 7 8 9 A B C D E F
> marker 4 0 1 0 2 0 1 0 3 0 1 0 2 0 1 0
> 
> "Contiguous" here means not only present entries with successively
> increasing MFNs, each one suitably aligned for its slot, but also a
> respective number of all non-present entries.

I'm afraid I'm slightly lost with all this, please bear with me. Is
this just a performance improvement when doing super-page
replacements, or there's more to it?

Thanks, Roger.



 


Rackspace

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