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

Re: [PATCH 1/2] gnttab: remove guest_physmap_remove_page() call from gnttab_map_frame()


  • To: Jan Beulich <jbeulich@xxxxxxxx>
  • From: Roger Pau Monné <roger.pau@xxxxxxxxxx>
  • Date: Tue, 21 Sep 2021 10:32:39 +0200
  • 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; bh=aogi4k5fbzzn/66Kn/jw9xSo4g25SW0DWk2MbKqNI2s=; b=RlDKjSWE+7fN9XfK35mvDlI7fqOfq9paDLxUES+pzUD272zOp3jOtrcXUd9O/hcM/35dZNhDFZZ0KE/IVXX4VgQClwyVYDlARIfGwVfP6PA5XYk8CkBqjsNuWCqzo7KSXKi4yuuwbG7R336HK75uTidymmdUNXO7PQAK6dcrfSp0uQ0McpuGAHV9zVBuMTI8MH1aw58P6p9TnEvYioDfFkAnIpMOrDJloKtG2TrlhFqEF5y65fSyaRFlOPC+ChFExmifOpOGpLoxEyRiJtdXEny2HrUpR7ZffOx2oVbLQG1LxdupZUvHoUhbpBa63wxNstBYgR9gVLZd1EK5i96gZw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZFDA0axfIaI7rTsasuPgc3kEVa39wN8wKXjiezigJhK2H4dhs/sjQqFhhQi6vUoJ4frlxERrNyWOTqBg7am3MGszQ/cx0MaGMMtOxemzQLMtmOIUentSMTpxtPKctB6CRrO0GjFvG6w1vNu3Wi9g9wfNqLXF+/r7t4uJ90U9QE2oLYIAj+YiR5w45rE1wtv+2Ci0aNT+zJw6eDTCNdwaKxi4zu7dE6WRnPxmGh7B9KnuOeFWjitlihTgaoKnEsczAV+j8PpEY7O6vbgeo1Y7C1ZU12VIB6bKRzdwJWx4QEdhuMHB8U9muNZBknZNW+v57rh+XhydHZ+QtBFj8wKfXw==
  • Authentication-results: esa3.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>, George Dunlap <george.dunlap@xxxxxxxxxx>, Ian Jackson <iwj@xxxxxxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>
  • Delivery-date: Tue, 21 Sep 2021 08:33:03 +0000
  • Ironport-data: A9a23:VGcNYatmoMmVIdepuNulQMYWF+fnVLhZMUV32f8akzHdYApBsoF/q tZmKTqAPfeKZmT3eYgnao+x9RkCvZTXyIA2S1A6q3szFStE+JbJXdiXEBz9bniYRiHhoOOLz Cm8hv3odp1coqr0/0/1WlTZQP0VOZigHtIQMsadUsxKbVIiGHpJZS5LwbZj29Y524HhWmthh PupyyHhEA79s9JLGjp8B5Kr8HuDa9yr5Vv0FnRnDRx6lAe2e0s9VfrzFonoR5fMeaFGH/bSe gr25OrRElU1XfsaIojNfr7TKiXmS1NJVOSEoiI+t6OK2nCuqsGuu0qS2TV1hUp/0l20c95NJ Nplqtuae1ovGr/1suEQbj5eMh1jArB+5+qSSZS/mZT7I0zudnLtx7NlDV0sPJ1e8eFyaY1M3 aVGcnZXNEnF3r/ohuLgIgVvrp1LwM3DJoQQt2sm1TjEJf0nXYrCU+PB4towMDIY25sURKyAP ZtxhTxHdCnYfxBfCFguOIM+nd7xhWGjLS9+pwfAzUYwyzeKl1EguFT3C/LXZ9iLSMN9jkue4 GXc8AzRGQoGPdaSzT6E9HOEheLVmy7/HoUIG9WQ6fpCkFCVgGsJB3U+V1G2vP24gU6WQM9EJ gof/S9Ghbg/8gmnQ8fwWzW8oWWYpVgMVtxICeo45QqRjK3O7G6xB3cGZi5MbsQ8s807TiBs0 UWG9+4FHhQ27ufTEyjEsO7J83XiYkD5MFPuewcbCiE3vt/HsrgZix/yadBCLLOKk+XqTGSYL y+xkMQuu1kCpZdVjPzrpgGW22jESovhFVFut16ONo6xxkYgPtf0OdbwgbTOxasYdO6kok+9U G/ociR0xNsHC42E3AeJSf8EdF1Cz6fYaGCA6bKD8p9IythMx5JBVdsLiN2dDB0wWirhRdMOS BWI0T69HLcJYBOXgVZfOupd8fjGKJQM8vy+DJjpgidmOMAtJGdrAgk3PRP4M5/RfLgEzvhkZ MbznTeEJncGE6V3pAdatM9EiuRD+8zK/kuKHcqT503+idK2PSfJIZ9YYArmRr1ot8us/VSKm +uzwuPXkn2zpsWlOXKJmWPSRHhXRUUG6Wfe8Z0PKrHbfVo4RwnMyZb5mNscRmCspIwM/s/g9 XChQE5Ijl35gHzMMwKRbX5/LrjoWP5CQbgTYETA5H6khCouZ5iB9qAae8dldLUr7rU7n/V1U +MEa4OLBfEWEmbL/DEUbJ/cqo1+dUv02VLSbnT9ODVvLYR9QwHp+8P/ele9/ic5ESfq59A1p Ket112HTMNbFRhiFsvfdNmm00i14SoGgOt3UkaReotTdUzg/ZJEMSv0ivNrccgAJQ+anmmR1 hqMAAderu7I+tdn/N7MjKGCjoGoD+ohQRYKQziFte67bHCI8HCizIlMVPezUQrcDG6kqr+/Y eh1zu3nNKFVllh9rIchQa1gyrgz5oWzquYCnBhkBnjCc3+iFqhkfiudxcBKu6BAmu1ZtA+xV h7d89VWI+zUasbsEVpXLws5dOWTk/oTn2CKv/gyJUz74g5x/aaGDhoOb0Xd1nQFIesnKp4hz McgpNUSul62hRcdO9qbijxZqjaXJXsaXqR77pwXDecHUObwJo2utXAENhLL3Q==
  • Ironport-hdrordr: A9a23:9duF8KE8c08H8Hc2pLqFeZHXdLJyesId70hD6qkvc3Nom52j+/ xGws536faVslcssHFJo6HmBEClewKnyXcT2/htAV7CZnichILMFu9fBOTZsl/d8kHFh4tgPO JbAtRD4b7LfClHZKTBkXCF+r8bqbHtmsDY5pav854ud3ATV0gJ1XYGNu/xKDwReOApP+tcKH LKjfA32AZINE5nI/iTNz0gZazuttfLnJXpbVovAAMm0hCHiXeN5KThGxaV8x8CW3cXqI1Svl Ttokjc3OGOovu7whjT2yv66IlXosLozp9mCNaXgsYYBz3wgkKDZZhnWZeFoDcpydvfpGoCoZ 3pmVMNLs5z43TeciWcpgbs4RDp1HIU53rr2Taj8DPeiP28YAh/J9tKhIpffBecwVEnpstA3K VC2H/cn4ZLDDvb9R6Np+TgZlVPrA6ZsHAimekcgzh0So0FcoJcqoQZ4Qd8DIoAJiTn84oqed MeTf003MwmM29yUkqp+1WGmLeXLzAO91a9MwY/U/WuontrdCsT9Tpe+CQd9k1wva7VBaM0od gtn8xT5cVzp/QtHNBA7dE6ML2K41z2MGHx2V2pUCHa/YE8SjnwQs3Mkf8IDN/DQu1+8HJ1ou WZbG9l
  • Ironport-sdr: lbOyRzhIWoxEFJ33XLRwghfh2sZsDubz5uirx7tyQj9uG6kEXydFiPt0XzvaRx29YT4Z5iisCn e/s2uvs7z+D8Uk7jWWfXhkC80o0OvcOl227RgQtckZNCYiefAhdpYiIY2Q0R/vjktHgg8F4iMo FUdeEE/Obn11i7NoGXINNasi42zm7HeRayfiOJ1fuzkN5vnGO5UsH1HVshR2CKAz4W7rOBPROW yEGs40Lb5OMeleEJ+XfKJTzCDTuTuCkTeZrJIQwGj3Zju8o/VtaBrWcA4WTPnwvGW8g4yZksB0 mRJHJ1SWoT/Qvfq99q+H1Hmq
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On Mon, Sep 20, 2021 at 05:27:17PM +0200, Jan Beulich wrote:
> On 20.09.2021 12:20, Roger Pau Monné wrote:
> > On Mon, Sep 13, 2021 at 08:41:47AM +0200, Jan Beulich wrote:
> >> --- a/xen/include/asm-arm/grant_table.h
> >> +++ b/xen/include/asm-arm/grant_table.h
> >> +        if ( gfn_eq(ogfn, INVALID_GFN) || gfn_eq(ogfn, gfn) ||           \
> > 
> > I'm slightly confused by this checks, don't you need to check for
> > gfn_eq(gfn, INVALID_GFN) (not ogfn) in order to call
> > guest_physmap_remove_page?
> 
> Why? It's ogfn which gets passed to the function. And it indeed is the
> prior GFN's mapping that we want to remove here.
> 
> > Or assuming that ogfn is not invalid can be used to imply a removal?
> 
> That implication can be (and on x86 is) used for the incoming argument,
> i.e. "gfn". I don't think "ogfn" can serve this purpose.

I guess I'm confused due to the ogfn checks done on the Arm side that
are not performed on x86. So on Arm you always need to explicitly
unhook the previous GFN before attempting to setup a new mapping,
while on x86 you only need to do this when it's a removal in order to
clear the entry?

So you are effectively only removing the call to
guest_physmap_remove_page in gnttab_map_frame for x86, because Arm
will still perform it in gnttab_set_frame_gfn.

This seems like a limitation of Arm's guest_physmap_add_entry.

Thanks, Roger.



 


Rackspace

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