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 96693C433FE for ; Tue, 18 Oct 2022 22:35:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id F3BB96B0072; Tue, 18 Oct 2022 18:35:46 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id EC5356B0074; Tue, 18 Oct 2022 18:35:46 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D653C6B0075; Tue, 18 Oct 2022 18:35:46 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id C2F246B0072 for ; Tue, 18 Oct 2022 18:35:46 -0400 (EDT) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id A1F9BC1043 for ; Tue, 18 Oct 2022 22:35:46 +0000 (UTC) X-FDA: 80035528692.10.7938FB0 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by imf28.hostedemail.com (Postfix) with ESMTP id 0AAC0C0007 for ; Tue, 18 Oct 2022 22:35:45 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1666132546; x=1697668546; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=qH3n/SenWLQ3oGvpoCfUDd6WBE2EAQyaCFEJgfz9kh4=; b=OmP7DJQkJLFgTasKvQKdekNV4Yl1XDJQWVqt76+9AOHT6ja6gEJYRbAi ++IN46O8YDuyY7u3kbUvqhCBjagzDqT8MIv6zm0NK+yVjl1HetxgUVH9/ ZUBMEBQJ+AIBeDH+SEOQ99owlEKh1Xsw2k04cXsoRd44qD0IEYu5Fvlwz hD0Adt1L2SMptrIQ4GSiep7M1yd70Bz1SBwU+igYjutTJSP22mdLZSTLB zm86f9BHVj9K8ykdN6b7M3XaIpru2dveGKWRit0L0IJtbpDweGTNbUoPC B6ALGzDKD/0ygnrNUJ7L/e5cWcQA1Z/LPrTJjT8x7O3SHa31YoNeA0P0v A==; X-IronPort-AV: E=McAfee;i="6500,9779,10504"; a="307937668" X-IronPort-AV: E=Sophos;i="5.95,194,1661842800"; d="scan'208";a="307937668" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Oct 2022 15:35:44 -0700 X-IronPort-AV: E=McAfee;i="6500,9779,10504"; a="662140048" X-IronPort-AV: E=Sophos;i="5.95,194,1661842800"; d="scan'208";a="662140048" Received: from vhavel-mobl.ger.corp.intel.com (HELO box.shutemov.name) ([10.252.51.115]) by orsmga001-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Oct 2022 15:35:40 -0700 Received: by box.shutemov.name (Postfix, from userid 1000) id D1359104BA9; Wed, 19 Oct 2022 01:35:37 +0300 (+03) Date: Wed, 19 Oct 2022 01:35:37 +0300 From: "Kirill A. Shutemov" To: Ashok Raj Cc: Dave Hansen , Andy Lutomirski , Peter Zijlstra , x86@kernel.org, Kostya Serebryany , Andrey Ryabinin , Andrey Konovalov , Alexander Potapenko , Taras Madan , Dmitry Vyukov , "H . J . Lu" , Andi Kleen , Rick Edgecombe , Bharata B Rao , Jacob Pan , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCHv10 10/15] x86/mm, iommu/sva: Make LAM and SVM mutually exclusive Message-ID: <20221018223537.7bmhuknclkboqgnk@box.shutemov.name> References: <20221018113358.7833-1-kirill.shutemov@linux.intel.com> <20221018113358.7833-11-kirill.shutemov@linux.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1666132546; 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=fsI4cBQYlz1ff84uReN52zoTi4FpES0SBThL+l/Bq4o=; b=B2uIG9YMmg5rC8Zoh53Z7Pu8TJd9ZUCK6dLQkPVLFjvn8jukqzXrRmGI6vTwCY7gSP1j4u Vz/GYEd5dsmK109lslyk4HHW1h+9VbSEvMqJLU6yJ1UVH9zP0XOTVN3HqbFCdyle9aEkfS 4n99tTMoY8v+AMgcOvtjzWAHxBfthlQ= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=none ("invalid DKIM record") header.d=intel.com header.s=Intel header.b=OmP7DJQk; spf=none (imf28.hostedemail.com: domain of kirill.shutemov@linux.intel.com has no SPF policy when checking 134.134.136.65) smtp.mailfrom=kirill.shutemov@linux.intel.com; dmarc=fail reason="No valid SPF" header.from=intel.com (policy=none) ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1666132546; a=rsa-sha256; cv=none; b=liWeOCWrDKBnmcjciferIUsqS2rXj3/lRGD1De9/UOVRzENmZzhQG5BqB/nW5waEX0uJxp V0LPFsSdgLyh98YBQIkBs3nkFY5Lsg2iZVhg/Y/kq1NQ07hdCX3KKCIViNVYoV3JOZJQG0 fp61dzKeQBKHn+v44gsVsh/VL/RhyOQ= Authentication-Results: imf28.hostedemail.com; dkim=none ("invalid DKIM record") header.d=intel.com header.s=Intel header.b=OmP7DJQk; spf=none (imf28.hostedemail.com: domain of kirill.shutemov@linux.intel.com has no SPF policy when checking 134.134.136.65) smtp.mailfrom=kirill.shutemov@linux.intel.com; dmarc=fail reason="No valid SPF" header.from=intel.com (policy=none) X-Stat-Signature: se5t94g8hjfp9azeh7reyygctfg7z3u6 X-Rspamd-Queue-Id: 0AAC0C0007 X-Rspam-User: X-Rspamd-Server: rspam04 X-HE-Tag: 1666132545-898547 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 Tue, Oct 18, 2022 at 01:07:29PM -0700, Ashok Raj wrote: > On Tue, Oct 18, 2022 at 02:33:53PM +0300, Kirill A. Shutemov wrote: > > IOMMU and SVM-capable devices know nothing about LAM and only expect > > canonical addresses. Attempt to pass down tagged pointer will lead to > > address translation failure. > > > > By default do not allow to enable both LAM and use SVM in the same > > process. > > > > The new ARCH_FORCE_TAGGED_SVM arch_prctl() overrides the limitation. > > By using the arch_prctl() userspace takes responsibility to never pass > > tagged address to the device. > > Reviewed-by: Ashok Raj Thanks! > > Signed-off-by: Kirill A. Shutemov > > --- > > arch/x86/include/asm/mmu.h | 6 ++++-- > > arch/x86/include/asm/mmu_context.h | 2 ++ > > arch/x86/include/uapi/asm/prctl.h | 1 + > > arch/x86/kernel/process_64.c | 13 +++++++++++++ > > drivers/iommu/iommu-sva-lib.c | 12 ++++++++++++ > > include/linux/mmu_context.h | 4 ++++ > > 6 files changed, 36 insertions(+), 2 deletions(-) > > > > diff --git a/arch/x86/include/asm/mmu.h b/arch/x86/include/asm/mmu.h > > index 2fdb390040b5..cce9b32b0d6d 100644 > > --- a/arch/x86/include/asm/mmu.h > > +++ b/arch/x86/include/asm/mmu.h > > @@ -9,9 +9,11 @@ > > #include > > > > /* Uprobes on this MM assume 32-bit code */ > > -#define MM_CONTEXT_UPROBE_IA32 BIT(0) > > +#define MM_CONTEXT_UPROBE_IA32 BIT(0) > > /* vsyscall page is accessible on this MM */ > > -#define MM_CONTEXT_HAS_VSYSCALL BIT(1) > > +#define MM_CONTEXT_HAS_VSYSCALL BIT(1) > > Nit: Looks like the two above format changes got in here :-) That's side effect of keeping the new longer flag aligned to the rest. A separate patch looks like an overkill, no? -- Kiryl Shutsemau / Kirill A. Shutemov