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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id A865AC77B60 for ; Mon, 3 Apr 2023 09:44:28 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 033176B0075; Mon, 3 Apr 2023 05:44:28 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id F262A6B0078; Mon, 3 Apr 2023 05:44:27 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DC6956B007B; Mon, 3 Apr 2023 05:44:27 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id CD71E6B0075 for ; Mon, 3 Apr 2023 05:44:27 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id A4A50ABE9A for ; Mon, 3 Apr 2023 09:44:27 +0000 (UTC) X-FDA: 80639594574.01.2434189 Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by imf28.hostedemail.com (Postfix) with ESMTP id 85D7BC000A for ; Mon, 3 Apr 2023 09:44:24 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=shutemov.name header.s=fm1 header.b="W +3Oj32"; dkim=pass header.d=messagingengine.com header.s=fm2 header.b=XUmijHB1; spf=pass (imf28.hostedemail.com: domain of kirill@shutemov.name designates 66.111.4.28 as permitted sender) smtp.mailfrom=kirill@shutemov.name; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1680515064; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=2pcfFIJgR5HmBPHP1v+3gt9ctXXHOFIL+EutshVs9fg=; b=KVBcvTJmmGitlD8kzhbdGVi8atSI5EsdTtfWOMWuTGH0fYzPYp/aFiq1w3fYX9nxB84lYL 8ZRb0IJQgb9lPjZA95E+UHe/TlxMJiwgw72Z27yDYVxJRsfrZ8udQKkZoqi+vIC2tiHQE3 DLNrKqZrC2n6esIKCRCSaMEcD+FAL4k= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=shutemov.name header.s=fm1 header.b="W +3Oj32"; dkim=pass header.d=messagingengine.com header.s=fm2 header.b=XUmijHB1; spf=pass (imf28.hostedemail.com: domain of kirill@shutemov.name designates 66.111.4.28 as permitted sender) smtp.mailfrom=kirill@shutemov.name; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1680515064; a=rsa-sha256; cv=none; b=KXC+y4ImEP44SIMA+oEEjjf0YaKjri8VFd8eS+1pt9+pzLmxMyyepy1wlIeDaMkoK/lr3S udiBR6oYmSt7WoD77gdTLFuu8pnGC1srzY3VY1h15BU3SjbPiR/Pj34ACYzA8UwCg24OKb cpvyFqDT2+JqnI+Cyr3kmqkRMmDU+kk= Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id A81A65C0158; Mon, 3 Apr 2023 05:44:23 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Mon, 03 Apr 2023 05:44:23 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=shutemov.name; h=cc:cc:content-type:content-type:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to; s=fm1; t=1680515063; x= 1680601463; bh=2pcfFIJgR5HmBPHP1v+3gt9ctXXHOFIL+EutshVs9fg=; b=W +3Oj32TsZ2HMHjTi2MPIXNX1TRSAG87+b3XedOPC0NX3IxGAhrO1g3ZUbIkOlTM/ eeAOBkOz7Y/WQ0hEljKi2wULs18jUxl75nHL6iPHIL6mxwE9pTWtLmOh4DrEs0Ej JcowUSrUYxlWtI23iEH0BFEPBtsefcpbJsm7ZEC3tdG/5cRFIGbSKyCKFhHeBLRw 8jks8bGQrIXWlOP1VizwkFKDeT69SW+NRyoamZE/G50/LeKChndo1gkOcks3n+Q+ X5MAhCEXNLXsrrgoEtmDd5RaeTSoD16I42NpEUWuyPokor6EoiXlwNIY/vITQHan V0uJ26+r9EFudbhxJiulg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; t=1680515063; x=1680601463; bh=2pcfFIJgR5HmB PHP1v+3gt9ctXXHOFIL+EutshVs9fg=; b=XUmijHB1aMmu3mAcL+QsIFrIp57mR X/0U4XHdR5ZzNLx4NAOiOZ/gMiDZRMMPC63Loxu6TGlcdPatM4jG+bUumC1C19cb DcmfYn3ZwBxHGo7Ybgp+qL94LUpPzzycz9ZqObqFJDN3D8lbQxOcSsrI1yaAFSJo CyGjOF9njKvZ5EkfiVbOO8KqHXUxF35Boh0y+ZKtnBCf4baPO1tSF6YdBVpw2ZjF 6gRmqecmynfhfng5vGBPaS7v3iZ8yaqHs9abShZMt5+G0om/bYv4GmtVi/2ESxPk ziy9w08fFihiwtB42PP0xd0T+4M2CVuFT9x8lLnUfxP3sBn5ah3mzz9mw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrvdeijedgudelucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvfevuffkfhggtggujgesthdtredttddtvdenucfhrhhomhepfdfmihhr ihhllhcutedrucfuhhhuthgvmhhovhdfuceokhhirhhilhhlsehshhhuthgvmhhovhdrnh grmhgvqeenucggtffrrghtthgvrhhnpeeuveelveevleeggeevudefheeifeegvdejteel jeejtdfgfefgvdeiheeuvdeikeenucffohhmrghinhepphgrshhiugdrhhhmnecuvehluh hsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepkhhirhhilhhlsehs hhhuthgvmhhovhdrnhgrmhgv X-ME-Proxy: Feedback-ID: ie3994620:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 3 Apr 2023 05:44:22 -0400 (EDT) Received: by box.shutemov.name (Postfix, from userid 1000) id 43B4610D7B3; Mon, 3 Apr 2023 12:44:19 +0300 (+03) Date: Mon, 3 Apr 2023 12:44:19 +0300 From: "Kirill A. Shutemov" To: Dmitry Vyukov Cc: "Kirill A. Shutemov" , Dave Hansen , Andy Lutomirski , Peter Zijlstra , x86@kernel.org, Kostya Serebryany , Andrey Ryabinin , Andrey Konovalov , Alexander Potapenko , Taras Madan , "H . J . Lu" , Andi Kleen , Rick Edgecombe , Bharata B Rao , Jacob Pan , Ashok Raj , Linus Torvalds , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCHv16 11/17] x86/mm/iommu/sva: Make LAM and SVA mutually exclusive Message-ID: <20230403094419.zl2ncsd4qyd35fex@box> References: <20230312112612.31869-1-kirill.shutemov@linux.intel.com> <20230312112612.31869-12-kirill.shutemov@linux.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 85D7BC000A X-Rspam-User: X-Stat-Signature: 8yzwsiysgf3w9rssgje3trgupt3ofyce X-HE-Tag: 1680515064-618470 X-HE-Meta: U2FsdGVkX1/n/8LqZHLN6DTWSvBo9dIddFuQkNURn+55v1K10dW+Glgf5Ad6axQlbhOhwvHa8reBXUwKqQoFJn+Et7OOkpVZDhMLLfipstR7Sn8/LYpmek8IY3yrsB4xTqnyr9EOc8m3+EJfZSUDW6tsEHWlhjLuHWcC0TgSygf1KfsVhh+q3qGwBlKz0LCASRHuPiWibBSEkY8OmD5tqslPK4JIpP4s0Z1fOdacXX48nNG/F0u0szXLaPHowYwyAk6ttQZiMmzhN41i6rhxuxPFLp/9ke6Y1Q0DtObJ5qJDCalZppTbdsceSXDQpFe2/Rq/BIPOeX4R8UBwLjHTBUufZiYfJ/cUIsJOegKfl40891uUwDKK7vMIOmpaTDQ7QiyJy+wjjGISoNIXWlEVtqpc7GnLu0jbuy0V4HbFCw77bthq4WL+Imv2WBeuiKHSYyrO9LS5JXym0JGAGeK7VTfib7QPxo4/D2apogtyr72ZfnstKsAYoNCi2F0dJF5zKBekZIb1mx76Zw+YCvnOLJdw1xOTw+vQmfHRjKHTFSvedrcVgBUPxhNbjGWBxjgDT1Cxy1gUuDstbJOBJ6j0UGIjnkzmFaIMbiVsu9v+i704tZTwjlY/P5QA3iFLwoEzJTKmzN34BVrhacXJEaDZEFYIG6WDbEAq1tWt/rfZr+UqJ/++G1qr7p1p49wiggrg7toxOGtgco0+CUwo9o8isHTw2ZqSLL737DR5AgSm+P0yVeNksFfRWszSo8+Aedz4BhV3gAGfBpMX7/cysFWaVwtN6X9/mIDK96PrJzKjyowD21X6p5lHdrQzRa0MaGqviGq9FsKU+vNGBnh13OIFW8ddplQmXdSKWtZlVwoW2P+BUyqmeAvjmnUTNMEFYJmZtlVjBqqYS4CqRbPOb7+GL1oGhzZli0yg1djvpsJ26Ivs2EtoSz7f2onEKbmFIaVLBHQ4cYQcHezF3TF9zAn XTIDZu+p i/71OJZoH2AOy4iDOInTUrGDaMjNukWv1iNr17wxGfhvGk6WiGTH1w60ptnOFRZTrrBlL/dW/yjKfTdeypBVDFWx79+KLhkD3IlZrO9D20wgN9OmyFCB7emDF/H9NyBzpxF/6g1zrCc7Lhah2zJSzhU8h/B3tpoG3Etb83WvLvSnsSjPUtp4f2XU1exiR3KOMM2qiDOCU2cayQN2Yl+4aGNGgLYAmOovP8anPbanP4iM4sCHQv1GEeEp23Id8cjf2VH1LDQS8kxYfLk9v0hwfIlqHEkeWLMnfABcQgsKWLD589M8NsoNznUT4ytF9pw0OlwDcpe5Lw/DhqskHyxNLkDlVLMgEYRSe1AMP X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Mon, Apr 03, 2023 at 08:18:57AM +0200, Dmitry Vyukov wrote: > Hi Kirill, > > ARCH_ENABLE_TAGGED_ADDR checks that task->mm == current->mm, > shouldn't ARCH_FORCE_TAGGED_SVA check that as well? Do you a particular race in mind? I cannot think of anything right away. I guess we can add the check for consistency. But if there's a bug it is a different story. > Also it looks like currently to enable both LAM and SVA. > LAM enabling checks for SVA, but SVA doesn't and both are not mutually > exclusive. For LAM we check SVM with mm_valid_pasid() && !test_bit() in prctl_enable_tagged_addr(). For SVM we check for LAM with !mm_lam_cr3_mask() || test_bit() in arch_pgtable_dma_compat() which called from iommu_sva_alloc_pasid(). Hm? -- Kiryl Shutsemau / Kirill A. Shutemov