From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.3 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 665FFC433B4 for ; Thu, 22 Apr 2021 15:49:38 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 340F561026 for ; Thu, 22 Apr 2021 15:49:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230469AbhDVPuJ (ORCPT ); Thu, 22 Apr 2021 11:50:09 -0400 Received: from mx2.suse.de ([195.135.220.15]:35456 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236058AbhDVPtz (ORCPT ); Thu, 22 Apr 2021 11:49:55 -0400 X-Virus-Scanned: by amavisd-new at test-mx.suse.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1619106560; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=hz9XYKqwpYHccMVq4bsKUKqKOZAp25cT/I1NdE2EWjU=; b=pz7duKlZYpGD1CTyF/POHpJxqT7wkGYksUMNdU8iWs5EP3pMuWqhb7mQvN6wN4NasONWJe GEDiYLZNrz/pWv0iRjuJbIfd3cgnz10cghERCjdYXAxvhK5MVC0oK+slgUdPYO8iOAjOfQ r9wpPIg/hB+ejIb2HqdmNL2g7c+AG2E= Received: from relay2.suse.de (unknown [195.135.221.27]) by mx2.suse.de (Postfix) with ESMTP id 13522B184; Thu, 22 Apr 2021 15:49:20 +0000 (UTC) To: Jan Beulich Cc: Boris Ostrovsky , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , "H. Peter Anvin" , Peter Zijlstra , linux-kernel@vger.kernel.org, x86@kernel.org, xen-devel@lists.xenproject.org References: <20210422151007.2205-1-jgross@suse.com> <08e3fcf1-dabc-c550-f76c-47a78a12274b@suse.com> From: Juergen Gross Subject: Re: [PATCH 0/3] xen: remove some checks for always present Xen features Message-ID: Date: Thu, 22 Apr 2021 17:49:19 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="F0Yc8BA3IXYCie2CVrwFR4t5PxTxKUyZZ" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --F0Yc8BA3IXYCie2CVrwFR4t5PxTxKUyZZ Content-Type: multipart/mixed; boundary="apamsbglEX41XbtEqnkh9Lm22D1T4KpvS"; protected-headers="v1" From: Juergen Gross To: Jan Beulich Cc: Boris Ostrovsky , Stefano Stabellini , Thomas Gleixner , Ingo Molnar , Borislav Petkov , "H. Peter Anvin" , Peter Zijlstra , linux-kernel@vger.kernel.org, x86@kernel.org, xen-devel@lists.xenproject.org Message-ID: Subject: Re: [PATCH 0/3] xen: remove some checks for always present Xen features References: <20210422151007.2205-1-jgross@suse.com> <08e3fcf1-dabc-c550-f76c-47a78a12274b@suse.com> In-Reply-To: --apamsbglEX41XbtEqnkh9Lm22D1T4KpvS Content-Type: multipart/mixed; boundary="------------55018C58D764913433BA096E" Content-Language: en-US This is a multi-part message in MIME format. --------------55018C58D764913433BA096E Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable On 22.04.21 17:42, Jan Beulich wrote: > On 22.04.2021 17:28, Juergen Gross wrote: >> On 22.04.21 17:23, Jan Beulich wrote: >>> On 22.04.2021 17:17, Juergen Gross wrote: >>>> On 22.04.21 17:16, Jan Beulich wrote: >>>>> On 22.04.2021 17:10, Juergen Gross wrote: >>>>>> Some features of Xen can be assumed to be always present, so add a= >>>>>> central check to verify this being true and remove the other check= s. >>>>>> >>>>>> Juergen Gross (3): >>>>>> xen: check required Xen features >>>>>> xen: assume XENFEAT_mmu_pt_update_preserve_ad being set for p= v guests >>>>>> xen: assume XENFEAT_gnttab_map_avail_bits being set for pv gu= ests >>>>> >>>>> I wonder whether it's a good idea to infer feature presence from >>>>> version numbers. If (at some point in the past) you had inferred >>>>> gnttab v2 being available by version, this would have been broken >>>>> by its availability becoming controllable by a command line option >>>>> in Xen. >>>> >>>> I'm testing the feature to be really present when booting and issue = a >>>> message if it is not there. >>> >>> And how does this help if the feature really isn't there yet other co= de >>> assumes it is? >> >> Did you look at the features I'm testing? >=20 > I did, yes. >=20 >> Those are really just low >> level additions I can't imagine will ever be removed again. >=20 > I don't expect them to be removed. But I don't think the people having > contributed gnttab v2 expected any such for it, either. There is a major difference here. gnttab v2 was replacing an existing functionality by a more scalable, but more complex solution. The features I'm assuming to be present are basically repairing issues which have been present due to omissions in the initial implementation. Especially the XENFEAT_gnttab_map_avail_bits causes a racy workaround in the kernel when not present. The race is only avoided in case the user code is well-behaved. It is dom0 user code, yes, but nevertheless such issues are never nice. Juergen --------------55018C58D764913433BA096E Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" -----BEGIN PGP PUBLIC KEY BLOCK----- xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOBy= cWx w3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJvedYm8O= f8Z d621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJNwQpd369y= 9bf IhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvxXP3FAp2pkW0xq= G7/ 377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEBAAHNHEp1ZXJnZW4gR= 3Jv c3MgPGpnQHBmdXBmLm5ldD7CwHkEEwECACMFAlOMcBYCGwMHCwkIBwMCAQYVCAIJCgsEFgIDA= QIe AQIXgAAKCRCw3p3WKL8TL0KdB/93FcIZ3GCNwFU0u3EjNbNjmXBKDY4FUGNQH2lvWAUy+dnyT= hpw dtF/jQ6j9RwE8VP0+NXcYpGJDWlNb9/JmYqLiX2Q3TyevpB0CA3dbBQp0OW0fgCetToGIQrg0= MbD 1C/sEOv8Mr4NAfbauXjZlvTj30H2jO0u+6WGM6nHwbh2l5O8ZiHkH32iaSTfN7Eu5RnNVUJbv= oPH Z8SlM4KWm8rG+lIkGurqqu5gu8q8ZMKdsdGC4bBxdQKDKHEFExLJK/nRPFmAuGlId1E3fe10v= 5QL +qHI3EIPtyfE7i9Hz6rVwi7lWKgh7pe0ZvatAudZ+JNIlBKptb64FaiIOAWDCx1SzR9KdWVyZ= 2Vu IEdyb3NzIDxqZ3Jvc3NAc3VzZS5jb20+wsB5BBMBAgAjBQJTjHCvAhsDBwsJCAcDAgEGFQgCC= QoL BBYCAwECHgECF4AACgkQsN6d1ii/Ey/HmQf/RtI7kv5A2PS4RF7HoZhPVPogNVbC4YA6lW7Dr= Wf0 teC0RR3MzXfy6pJ+7KLgkqMlrAbN/8Dvjoz78X+5vhH/rDLa9BuZQlhFmvcGtCF8eR0T1v0nC= /nu AFVGy+67q2DH8As3KPu0344TBDpAvr2uYM4tSqxK4DURx5INz4ZZ0WNFHcqsfvlGJALDeE0Lh= ITT d9jLzdDad1pQSToCnLl6SBJZjDOX9QQcyUigZFtCXFst4dlsvddrxyqT1f17+2cFSdu7+ynLm= XBK 7abQ3rwJY8SbRO2iRulogc5vr/RLMMlscDAiDkaFQWLoqHHOdfO9rURssHNN8WkMnQfvUewRz= 80h SnVlcmdlbiBHcm9zcyA8amdyb3NzQG5vdmVsbC5jb20+wsB5BBMBAgAjBQJTjHDXAhsDBwsJC= AcD AgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey8PUQf/ehmgCI9jB9hlgexLvgOtf7PJn= FOX gMLdBQgBlVPO3/D9R8LtF9DBAFPNhlrsfIG/SqICoRCqUcJ96Pn3P7UUinFG/I0ECGF4EvTE1= jnD kfJZr6jrbjgyoZHiw/4BNwSTL9rWASyLgqlA8u1mf+c2yUwcGhgkRAd1gOwungxcwzwqgljf0= N51 N5JfVRHRtyfwq/ge+YEkDGcTU6Y0sPOuj4Dyfm8fJzdfHNQsWq3PnczLVELStJNdapwPOoE+l= otu fe3AM2vAEYJ9rTz3Cki4JFUsgLkHFqGZarrPGi1eyQcXeluldO3m91NK/1xMI3/+8jbO0tsn1= tqS EUGIJi7ox80eSnVlcmdlbiBHcm9zcyA8amdyb3NzQHN1c2UuZGU+wsB5BBMBAgAjBQJTjHDrA= hsD BwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQsN6d1ii/Ey+LhQf9GL45eU5vOowA2u5N3= g3O ZUEBmDHVVbqMtzwlmNC4k9Kx39r5s2vcFl4tXqW7g9/ViXYuiDXb0RfUpZiIUW89siKrkzmQ5= dM7 wRqzgJpJwK8Bn2MIxAKArekWpiCKvBOB/Cc+3EXE78XdlxLyOi/NrmSGRIov0karw2RzMNOu5= D+j LRZQd1Sv27AR+IP3I8U4aqnhLpwhK7MEy9oCILlgZ1QZe49kpcumcZKORmzBTNh30FVKK1Evm= V2x AKDoaEOgQB4iFQLhJCdP1I5aSgM5IVFdn7v5YgEYuJYx37IoN1EblHI//x/e2AaIHpzK5h88N= Eaw QsaNRpNSrcfbFmAg987ATQRTjHAWAQgAyzH6AOODMBjgfWE9VeCgsrwH3exNAU32gLq2xvjpW= nHI s98ndPUDpnoxWQugJ6MpMncr0xSwFmHEgnSEjK/PAjppgmyc57BwKII3sV4on+gDVFJR6Y8ZR= wgn BC5mVM6JjQ5xDk8WRXljExRfUX9pNhdE5eBOZJrDRoLUmmjDtKzWaDhIg/+1Hzz93X4fCQkNV= bVF LELU9bMaLPBG/x5q4iYZ2k2ex6d47YE1ZFdMm6YBYMOljGkZKwYde5ldM9mo45mmwe0icXKLk= pEd IXKTZeKDO+Hdv1aqFuAcccTg9RXDQjmwhC3yEmrmcfl0+rPghO0Iv3OOImwTEe4co3c1mwARA= QAB wsBfBBgBAgAJBQJTjHAWAhsMAAoJELDendYovxMvQ/gH/1ha96vm4P/L+bQpJwrZ/dneZcmEw= Tbe 8YFsw2V/Buv6Z4Mysln3nQK5ZadD534CF7TDVft7fC4tU4PONxF5D+/tvgkPfDAfF77zy2AH1= vJz Q1fOU8lYFpZXTXIHb+559UqvIB8AdgR3SAJGHHt4RKA0F7f5ipYBBrC6cyXJyyoprT10EMvU8= VGi wXvTyJz3fjoYsdFzpWPlJEBRMedCot60g5dmbdrZ5DWClAr0yau47zpWj3enf1tLWaqcsuylW= svi uGjKGw7KHQd3bxALOknAp4dN3QwBYCKuZ7AddY9yjynVaD5X7nF9nO5BjR/i1DG86lem3iBDX= zXs ZDn8R38=3D =3D2wuH -----END PGP PUBLIC KEY BLOCK----- --------------55018C58D764913433BA096E-- --apamsbglEX41XbtEqnkh9Lm22D1T4KpvS-- --F0Yc8BA3IXYCie2CVrwFR4t5PxTxKUyZZ Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmCBmv8FAwAAAAAACgkQsN6d1ii/Ey/v Vwf9Gw7dj26e80Pm5BriAq8iEhAv4IA2WJHwx70rVR5MzaIll9VAhRvgv7qWVwe/6kviOTWLwmhO vHKzbzkeQeejjaBX6Wbl1Rpnihtgnv50PvxmNSlAkkt2KnaCa4HYjc71wIx0UZDLDrCxcAuHEEkM EsMyUXwXj/aKc5VQSneU4o5ic8Uj2G4paThgAduYTcXpnAGWSMEZuvozaUx4O1GN66czuFDbqmyl y72iwg0I9x8xI4keXXYVkVMvWL+L5/ANurHZ71r2ccE5nwTwDmufHqY5p2yr+GEV9cV0UN4DghY3 mA/u1GXWXSl7Y16HnkXyOrTlgOR/bj61wJ3APOeA7g== =jITu -----END PGP SIGNATURE----- --F0Yc8BA3IXYCie2CVrwFR4t5PxTxKUyZZ--