linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Dave Hansen <dave.hansen@intel.com>
To: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>,
	Jacob Pan <jacob.jun.pan@intel.com>
Cc: Ashok Raj <ashok.raj@intel.com>,
	"Kirill A. Shutemov" <kirill@shutemov.name>,
	Ashok Raj <ashok_raj@linux.intel.com>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	Andy Lutomirski <luto@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	x86@kernel.org, Kostya Serebryany <kcc@google.com>,
	Andrey Ryabinin <ryabinin.a.a@gmail.com>,
	Andrey Konovalov <andreyknvl@gmail.com>,
	Alexander Potapenko <glider@google.com>,
	Taras Madan <tarasmadan@google.com>,
	Dmitry Vyukov <dvyukov@google.com>,
	"H . J . Lu" <hjl.tools@gmail.com>,
	Andi Kleen <ak@linux.intel.com>,
	Rick Edgecombe <rick.p.edgecombe@intel.com>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	Jason Gunthorpe <jgg@nvidia.com>, Joerg Roedel <joro@8bytes.org>
Subject: Re: [PATCHv8 00/11] Linear Address Masking enabling
Date: Wed, 21 Sep 2022 09:57:47 -0700	[thread overview]
Message-ID: <562dec4d-a39f-b517-58a3-45f691a2d10a@intel.com> (raw)
In-Reply-To: <20220915172858.pl62a5w3m5binxrk@box.shutemov.name>

On 9/15/22 10:28, Kirill A. Shutemov wrote:> +	/* Serialize against
address tagging enabling *
> +	if (mmap_write_lock_killable(mm))
> +		return -EINTR;
> +
> +	if (!arch_can_alloc_pasid(mm)) {
> +		mmap_write_unlock(mm);
> +		return -EBUSY;
> +	}

Shouldn't this actually be some kind of *device* check?

The question here is whether the gunk in the mm's address space is
compatible with the device.

 * Can the device walk the page tables in use under the mm?
 * Does the device interpret addresses the same way as the CPUs
   using the mm?

The page table format is, right now, wholly determined at boot at the
latest.  But, it probably wouldn't hurt to pretend like it _might_
change at runtime.

The address interpretation part is, of course, what LAM changes.  It's
also arguable that it includes features like protection keys.  I can
totally see a case where folks might want to be careful and disallow
device access to an mm where pkeys are in use.


  parent reply	other threads:[~2022-09-21 16:57 UTC|newest]

Thread overview: 67+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-30  1:00 Kirill A. Shutemov
2022-08-30  1:00 ` [PATCHv8 01/11] x86/mm: Fix CR3_ADDR_MASK Kirill A. Shutemov
2022-08-30  1:00 ` [PATCHv8 02/11] x86: CPUID and CR3/CR4 flags for Linear Address Masking Kirill A. Shutemov
2022-08-30  1:00 ` [PATCHv8 03/11] mm: Pass down mm_struct to untagged_addr() Kirill A. Shutemov
2022-08-30  1:00 ` [PATCHv8 04/11] x86/mm: Handle LAM on context switch Kirill A. Shutemov
2022-08-30  1:00 ` [PATCHv8 05/11] x86/uaccess: Provide untagged_addr() and remove tags before address check Kirill A. Shutemov
2022-08-30  1:00 ` [PATCHv8 06/11] x86/mm: Provide arch_prctl() interface for LAM Kirill A. Shutemov
2022-08-30  1:01 ` [PATCHv8 07/11] x86: Expose untagging mask in /proc/$PID/arch_status Kirill A. Shutemov
2022-08-30  1:01 ` [PATCHv8 08/11] selftests/x86/lam: Add malloc and tag-bits test cases for linear-address masking Kirill A. Shutemov
2022-08-30  1:01 ` [PATCHv8 09/11] selftests/x86/lam: Add mmap and SYSCALL " Kirill A. Shutemov
2022-09-07  3:19   ` Robert Hoo
2022-09-09 11:24     ` Zhang, Weihong
2022-08-30  1:01 ` [PATCHv8 10/11] selftests/x86/lam: Add io_uring " Kirill A. Shutemov
2022-08-30  1:01 ` [PATCHv8 11/11] selftests/x86/lam: Add inherit " Kirill A. Shutemov
2022-09-01 17:45 ` [PATCHv8 00/11] Linear Address Masking enabling Ashok Raj
2022-09-04  0:39   ` Kirill A. Shutemov
2022-09-09 16:08     ` Ashok Raj
2022-09-12 20:39       ` Jacob Pan
2022-09-12 21:41         ` Dave Hansen
2022-09-12 22:55           ` Jacob Pan
2022-09-13  0:06             ` Kirill A. Shutemov
2022-09-13  0:23           ` Ashok Raj
2022-09-12 22:49     ` Kirill A. Shutemov
2022-09-13  0:08       ` Jacob Pan
2022-09-13  0:18         ` Kirill A. Shutemov
2022-09-14 14:45       ` Kirill A. Shutemov
2022-09-14 15:11         ` Ashok Raj
2022-09-14 15:18           ` Kirill A. Shutemov
2022-09-14 15:31             ` Ashok Raj
2022-09-14 15:45               ` Kirill A. Shutemov
2022-09-14 23:51                 ` Jacob Pan
2022-09-15  9:01                   ` Kirill A. Shutemov
2022-09-15 17:28                     ` Kirill A. Shutemov
2022-09-20 13:14                       ` Jason Gunthorpe
2022-09-20 14:57                         ` Ashok Raj
2022-09-20 16:06                         ` Dave Hansen
2022-09-20 16:27                           ` Jason Gunthorpe
2022-09-20 18:41                             ` Jacob Pan
2022-09-20 18:50                               ` Jason Gunthorpe
2022-09-20 20:44                                 ` Jacob Pan
2022-09-21  0:01                                   ` Jason Gunthorpe
2022-09-21  9:36                       ` Tian, Kevin
2022-09-21 16:57                       ` Dave Hansen [this message]
2022-09-21 17:08                         ` Ashok Raj
2022-09-21 17:11                           ` Dave Hansen
2022-09-21 17:29                             ` Ashok Raj
2022-09-21 18:11                             ` Jason Gunthorpe
2022-09-23  0:42                               ` Kirill A. Shutemov
2022-09-23  5:27                                 ` Ashok Raj
2022-09-23  9:38                                   ` Kirill A. Shutemov
2022-09-23 11:46                                     ` Jason Gunthorpe
2022-09-23 14:18                                       ` Dave Hansen
2022-09-23 14:42                                         ` Jason Gunthorpe
2022-09-23 14:59                                           ` Ashok Raj
2022-09-23 15:28                                         ` Ashok Raj
2022-09-23 15:31                                           ` Dave Hansen
2022-09-23 15:44                                             ` Ashok Raj
2022-09-23 16:23                                               ` Dave Hansen
2022-09-23 16:44                                                 ` Jason Gunthorpe
2022-09-04  1:00 ` Kirill A. Shutemov
2022-09-05  5:05   ` Bharata B Rao
2022-09-05 13:44     ` Kirill A. Shutemov
2022-09-05 14:30       ` Peter Zijlstra
2022-09-05 15:35         ` Kirill A. Shutemov
2022-09-05 15:46           ` Peter Zijlstra
2022-09-05 16:47             ` Kirill A. Shutemov
2022-09-06  8:39               ` Peter Zijlstra

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=562dec4d-a39f-b517-58a3-45f691a2d10a@intel.com \
    --to=dave.hansen@intel.com \
    --cc=ak@linux.intel.com \
    --cc=andreyknvl@gmail.com \
    --cc=ashok.raj@intel.com \
    --cc=ashok_raj@linux.intel.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=dvyukov@google.com \
    --cc=glider@google.com \
    --cc=hjl.tools@gmail.com \
    --cc=jacob.jun.pan@intel.com \
    --cc=jgg@nvidia.com \
    --cc=joro@8bytes.org \
    --cc=kcc@google.com \
    --cc=kirill.shutemov@linux.intel.com \
    --cc=kirill@shutemov.name \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=luto@kernel.org \
    --cc=peterz@infradead.org \
    --cc=rick.p.edgecombe@intel.com \
    --cc=ryabinin.a.a@gmail.com \
    --cc=tarasmadan@google.com \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox