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 0EE61C76196 for ; Mon, 3 Apr 2023 09:57:05 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 819166B0075; Mon, 3 Apr 2023 05:57:05 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 7C9526B0078; Mon, 3 Apr 2023 05:57:05 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 690BE6B007B; Mon, 3 Apr 2023 05:57:05 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 597906B0075 for ; Mon, 3 Apr 2023 05:57:05 -0400 (EDT) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 1D04980AB2 for ; Mon, 3 Apr 2023 09:57:05 +0000 (UTC) X-FDA: 80639626410.19.CDA7257 Received: from mail-lf1-f52.google.com (mail-lf1-f52.google.com [209.85.167.52]) by imf20.hostedemail.com (Postfix) with ESMTP id 448C01C0005 for ; Mon, 3 Apr 2023 09:57:02 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=GX3fVIvy; spf=pass (imf20.hostedemail.com: domain of dvyukov@google.com designates 209.85.167.52 as permitted sender) smtp.mailfrom=dvyukov@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1680515823; a=rsa-sha256; cv=none; b=fVgcFntgEOw5jm9zEphS3i+8faFaDHycIssnnrymuWe/Wp/GtTzPSPuUoVG+471zLxAglZ YKTeqUPDguSSPgwLpIG3l8GvQYT5HkFfgY/nB0N9BGs+IHN0+smvQsS6ntdH3MIpOBVvv3 tZcN5hRWbii+Y5cP4shTHh+BhHMItt4= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=GX3fVIvy; spf=pass (imf20.hostedemail.com: domain of dvyukov@google.com designates 209.85.167.52 as permitted sender) smtp.mailfrom=dvyukov@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1680515823; 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=71ApqNmMAqc4Lfz0XA+lWiPJaPmbA5X6z6e3Zew4cpc=; b=6MVxSWtSOlXyeqxIVilOtrXlognKZSAqWb/JGWf0LzPS1KVO5mHdU7mNNZwWgj5D8d3UeY MLEJ8O5XUhwiogoN+rCVKuKA4Zv//3/S8y7+giLqtoWilkIocUmqujsQVitXq87cIjzYbw KGjZl64XkfVbCQ9OZMO1fk8lTejxyUY= Received: by mail-lf1-f52.google.com with SMTP id x17so37324944lfu.5 for ; Mon, 03 Apr 2023 02:57:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1680515821; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=71ApqNmMAqc4Lfz0XA+lWiPJaPmbA5X6z6e3Zew4cpc=; b=GX3fVIvy58RxfVyJr3T9lH3qWTKv1R3J2cYs2LqG/Pxof1FznaSmJdRQPc54Ygd72w He6JnRb0h4tO4BJIDU4u2tX2M1E5Pq7Bhw7ygTGotCWkLt9Xttv/9bnjx8RAK/iOwn7y j64ats3imVw54SohsHFdRdUBWZ6EJbd23PW6dzwbZ2Ptpy9/MdM+Gae/hWM95t5BIVUH zp+IR7dAS4uh30xMdS7wozo0XmPPdFRmCNXoxfG5Dzeq7LjpE/t7Wocbt3FgxT82hlxb FLIcsmTVkDwuS039a+DK2dnbO+2MEPkCoAFm02pFkMbGPRPCAywQ2iry+OoG4EGVRqeb 22BA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680515821; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=71ApqNmMAqc4Lfz0XA+lWiPJaPmbA5X6z6e3Zew4cpc=; b=uYoag200KrZJ0wwCFp6fjgWiwLcyrNEZBqnGVr6t3gbf+Msrkw5DBWPUJ1B5KOrJyZ 3iNpfYOvHx15Vf8R87Ip/SlfMxKfdHjXaLxlGfkrYJbP4zr+GJiU6lmyZN8boNnqS+Xj b+etcTdBh46F26H+ATC1Lla71N3FCk7XdfxAuljDaKBtll25fDLRxWrAC1l3mht7/IaM kqTzSVJBWnxmnuR2dUjzDCf5L2kWfJmE6hZtn9+qTwQEMCtmrQJsTHz7cz+rJow4UaUQ aBhfKk2XWZxlacrYyXkuWXfbhEVZvTPUPj9OWiYk64E8csDqugmBf48NjVaH9pBYznkO 0x/Q== X-Gm-Message-State: AAQBX9eRAwiXRIsezyMbXvrgZXGEu1iGqwzc31Gi6ufavg9VlhiIxuNg AWcp4Dd9cCTeF7Pd380o5/WR9sv/OT3JbACUjHU7cg== X-Google-Smtp-Source: AKy350ZDqdtz9C1mXWSa/Py8A5PSluslkGSalOFUXYA5iXh4JV5QthRrQzvu6VYDcIB1LD9BJTOdIh3v9g5e5BnsyFM= X-Received: by 2002:ac2:43b3:0:b0:4db:44f9:a641 with SMTP id t19-20020ac243b3000000b004db44f9a641mr10124181lfl.6.1680515821272; Mon, 03 Apr 2023 02:57:01 -0700 (PDT) MIME-Version: 1.0 References: <20230312112612.31869-1-kirill.shutemov@linux.intel.com> <20230312112612.31869-12-kirill.shutemov@linux.intel.com> <20230403094419.zl2ncsd4qyd35fex@box> In-Reply-To: <20230403094419.zl2ncsd4qyd35fex@box> From: Dmitry Vyukov Date: Mon, 3 Apr 2023 11:56:48 +0200 Message-ID: Subject: Re: [PATCHv16 11/17] x86/mm/iommu/sva: Make LAM and SVA mutually exclusive To: "Kirill A. Shutemov" 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 Content-Type: text/plain; charset="UTF-8" X-Rspam-User: X-Rspamd-Queue-Id: 448C01C0005 X-Rspamd-Server: rspam01 X-Stat-Signature: e8xmzj99m1pasrfg56f54q5cgqzan513 X-HE-Tag: 1680515822-416577 X-HE-Meta: U2FsdGVkX1+7BaBDlCIM/TVCSNv35c2GvEXOk6eZiZdhlqstY40ZL9rTFulr51p53fL0MqS9v10atSy1LVhdmN1eAYVgzS64muUQxxbQaGpSAwQMvKRzVoE5b9Rkg5jbM9n4pkZkWj6zdwxgH/rrk8wvFokkot0lZ+b4Uxcv8fCKRsj2yTQ7U0u9ixkCAIr1JJ295dtt01D61NrF2ZFHmTyr7oC7+vgpPTJGAU932IQ4YpwgJ1cnBlhgKG5Zcmc7TlurpHbNIDsirB/msu5/qmY6jsgkIYhnTfk2j//cze/DoWk5YGV8Q1AjpTjAFeFPTjq18o/JcHSMGDi9/j2fJsndlKuwqek8+WyxLhyv5x9+nJfp9uRo3mOep+WG0O5GYoWgFiiJnc7q3uHdBKdD4EvCEOXioQ/MCKer6pfk7wMiNH3krzhrbNurFpu0HIOEQmYlguGVfnB8LSDKYnwhsAD7snujV0MC4P0VwKbeBMfQ0U7svijGDsCb7Ztuii5mKHiLfHKycrWGoI8hHWTnvQL881/79VbrSX2x5O6TX4trjgUVjV8nKWJNrLn7wSkBr0sUz4liOzqGNQuu1p2OL77bdLfhxzTobsSTHzJFrvuB1hTZKiiLn/bxUn9KegPPgfDoqyuuNRO/d4pqizmXj9OUvhmQs379jrBCIMXBXDDP1hc1XuEEWwrn+kT3+3xHgiyRD6sKRJ1JhDMliewanz0DlwhBLV79nwbdAM786yyTuB3PD0BBY6S1PsFLqMAxo5UpeY/IrUkXOcYcP5hKwrm3t8WXAeQ35UoX/gaAjsP7A59xnAP1lsh5DSJdeeEISGMFQ4gj+HVrpZvhxl8fxsOctUWjOa+Ryru15iYGIZBdbANZR7C6Ii/deRUMMwEakZLYuxtF6nDEl1yP8g4taoVVIXUCzwmclaJxyXDei/NkDt63DY72U70R48JX8QMu1xZsH7gcW7+tlRLAjJt idF1iwjj BW/f45USWWrjh4B/GTt9CXCXUOFHCGhiSV5z0xvgMOiPrROqQhNZHugO4aQvgxXwBbkr7rOMaRylLSKbLZ/JZtcbr+TeNmV/HgsBoYRH9xgyO16Qjc22ckfYO4rdCF+lSeMQ9Kmo0nqH/rwWcE+6CMTA3QBcVxIuTZFIEED71StwaidxK4ech0Mb0fGrdlOi4AzEUO7OwpYUMq1tPr1pZFU/TWY6EjOOw9C/2UzQv+YcFEVl3ji6DAUKmSwO11yTvxNnGJ597fDEezZW+1UtYPZSBmmqF1CGtLopzKFljTdpHGeEOKN9vcYjnfg== 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, 3 Apr 2023 at 11:44, Kirill A. Shutemov wrote: > > 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. No, I don't have a particular race in mind. Was thinking solely about consistency and if these things should be set for other processes (relaxing the check is always possible in future, but adding new restrictions is generally not possible). > > 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(). It seems that currently it's possible to both enable LAM and set SVA bit. Then arch_pgtable_dma_compat() will return true, but LAM is enabled.