linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Binbin Wu <binbin.wu@linux.intel.com>
To: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	Andy Lutomirski <luto@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>
Cc: 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>,
	Bharata B Rao <bharata@amd.com>,
	Jacob Pan <jacob.jun.pan@linux.intel.com>,
	Ashok Raj <ashok.raj@intel.com>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCHv15 00/17] Linear Address Masking enabling
Date: Mon, 13 Mar 2023 11:23:55 +0800	[thread overview]
Message-ID: <66bf51ab-15bd-7988-77c6-8776ac9755d4@linux.intel.com> (raw)
In-Reply-To: <20230123220500.21077-1-kirill.shutemov@linux.intel.com>


On 1/24/2023 6:04 AM, Kirill A. Shutemov wrote:
> Linear Address Masking[1] (LAM) modifies the checking that is applied to
> 64-bit linear addresses, allowing software to use of the untranslated
> address bits for metadata.
>
> The capability can be used for efficient address sanitizers (ASAN)
> implementation and for optimizations in JITs and virtual machines.
>
> The patchset brings support for LAM for userspace addresses. Only LAM_U57 at
> this time.
>
> Please review and consider applying.
>
> git://git.kernel.org/pub/scm/linux/kernel/git/kas/linux.git lam
>
...
>
> [1] ISE, Chapter 10. https://cdrdv2.intel.com/v1/dl/getContent/671368

It is Chapter 7. Or maybe use the name of the chapter instead.


> Kirill A. Shutemov (12):
>    x86/mm: Rework address range check in get_user() and put_user()
>    x86: Allow atomic MM_CONTEXT flags setting
>    x86: CPUID and CR3/CR4 flags for Linear Address Masking
>    x86/mm: Handle LAM on context switch
>    mm: Introduce untagged_addr_remote()
>    x86/uaccess: Provide untagged_addr() and remove tags before address
>      check
>    x86/mm: Reduce untagged_addr() overhead for systems without LAM
>    x86/mm: Provide arch_prctl() interface for LAM
>    mm: Expose untagging mask in /proc/$PID/status
>    iommu/sva: Replace pasid_valid() helper with mm_valid_pasid()
>    x86/mm/iommu/sva: Make LAM and SVA mutually exclusive
>    selftests/x86/lam: Add test cases for LAM vs thread creation
>
> Weihong Zhang (5):
>    selftests/x86/lam: Add malloc and tag-bits test cases for
>      linear-address masking
>    selftests/x86/lam: Add mmap and SYSCALL test cases for linear-address
>      masking
>    selftests/x86/lam: Add io_uring test cases for linear-address masking
>    selftests/x86/lam: Add inherit test cases for linear-address masking
>    selftests/x86/lam: Add ARCH_FORCE_TAGGED_SVA test cases for
>      linear-address masking
>
>   arch/arm64/include/asm/mmu_context.h        |    6 +
>   arch/sparc/include/asm/mmu_context_64.h     |    6 +
>   arch/sparc/include/asm/uaccess_64.h         |    2 +
>   arch/x86/Kconfig                            |   11 +
>   arch/x86/entry/vsyscall/vsyscall_64.c       |    2 +-
>   arch/x86/include/asm/cpufeatures.h          |    1 +
>   arch/x86/include/asm/disabled-features.h    |    8 +-
>   arch/x86/include/asm/mmu.h                  |   18 +-
>   arch/x86/include/asm/mmu_context.h          |   49 +-
>   arch/x86/include/asm/processor-flags.h      |    2 +
>   arch/x86/include/asm/tlbflush.h             |   48 +-
>   arch/x86/include/asm/uaccess.h              |   58 +-
>   arch/x86/include/uapi/asm/prctl.h           |    5 +
>   arch/x86/include/uapi/asm/processor-flags.h |    6 +
>   arch/x86/kernel/process.c                   |    6 +
>   arch/x86/kernel/process_64.c                |   66 +-
>   arch/x86/kernel/traps.c                     |    6 +-
>   arch/x86/lib/getuser.S                      |   83 +-
>   arch/x86/lib/putuser.S                      |   54 +-
>   arch/x86/mm/init.c                          |    5 +
>   arch/x86/mm/tlb.c                           |   53 +-
>   drivers/iommu/iommu-sva.c                   |    8 +-
>   drivers/vfio/vfio_iommu_type1.c             |    2 +-
>   fs/proc/array.c                             |    6 +
>   fs/proc/task_mmu.c                          |    9 +-
>   include/linux/ioasid.h                      |    9 -
>   include/linux/mm.h                          |   11 -
>   include/linux/mmu_context.h                 |   14 +
>   include/linux/sched/mm.h                    |    8 +-
>   include/linux/uaccess.h                     |   22 +
>   mm/debug.c                                  |    1 +
>   mm/gup.c                                    |    4 +-
>   mm/madvise.c                                |    5 +-
>   mm/migrate.c                                |   11 +-
>   tools/testing/selftests/x86/Makefile        |    2 +-
>   tools/testing/selftests/x86/lam.c           | 1241 +++++++++++++++++++
>   36 files changed, 1699 insertions(+), 149 deletions(-)
>   create mode 100644 tools/testing/selftests/x86/lam.c
>
> --
> 2.39.1
>


      parent reply	other threads:[~2023-03-13  3:24 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-23 22:04 Kirill A. Shutemov
2023-01-23 22:04 ` [PATCHv15 01/17] x86/mm: Rework address range check in get_user() and put_user() Kirill A. Shutemov
2023-01-23 22:04 ` [PATCHv15 02/17] x86: Allow atomic MM_CONTEXT flags setting Kirill A. Shutemov
2023-02-09 14:06   ` Alexander Potapenko
2023-01-23 22:04 ` [PATCHv15 03/17] x86: CPUID and CR3/CR4 flags for Linear Address Masking Kirill A. Shutemov
2023-01-23 22:04 ` [PATCHv15 04/17] x86/mm: Handle LAM on context switch Kirill A. Shutemov
2023-01-23 22:04 ` [PATCHv15 05/17] mm: Introduce untagged_addr_remote() Kirill A. Shutemov
2023-02-09 14:08   ` Alexander Potapenko
2023-01-23 22:04 ` [PATCHv15 06/17] x86/uaccess: Provide untagged_addr() and remove tags before address check Kirill A. Shutemov
2023-02-09 14:10   ` Alexander Potapenko
2023-02-10 15:18   ` Alexander Potapenko
2023-01-23 22:04 ` [PATCHv15 07/17] x86/mm: Reduce untagged_addr() overhead for systems without LAM Kirill A. Shutemov
2023-01-23 22:04 ` [PATCHv15 08/17] x86/mm: Provide arch_prctl() interface for LAM Kirill A. Shutemov
2023-02-09 14:12   ` Alexander Potapenko
2023-01-23 22:04 ` [PATCHv15 09/17] mm: Expose untagging mask in /proc/$PID/status Kirill A. Shutemov
2023-02-09 14:13   ` Alexander Potapenko
2023-02-10 12:29   ` Alexander Potapenko
2023-01-23 22:04 ` [PATCHv15 10/17] iommu/sva: Replace pasid_valid() helper with mm_valid_pasid() Kirill A. Shutemov
2023-01-23 22:04 ` [PATCHv15 11/17] x86/mm/iommu/sva: Make LAM and SVA mutually exclusive Kirill A. Shutemov
2023-01-23 22:04 ` [PATCHv15 12/17] selftests/x86/lam: Add malloc and tag-bits test cases for linear-address masking Kirill A. Shutemov
2023-01-23 22:04 ` [PATCHv15 13/17] selftests/x86/lam: Add mmap and SYSCALL " Kirill A. Shutemov
2023-01-23 22:04 ` [PATCHv15 14/17] selftests/x86/lam: Add io_uring " Kirill A. Shutemov
2023-01-23 22:04 ` [PATCHv15 15/17] selftests/x86/lam: Add inherit " Kirill A. Shutemov
2023-01-23 22:04 ` [PATCHv15 16/17] selftests/x86/lam: Add ARCH_FORCE_TAGGED_SVA " Kirill A. Shutemov
2023-01-23 22:05 ` [PATCHv15 17/17] selftests/x86/lam: Add test cases for LAM vs thread creation Kirill A. Shutemov
2023-01-24  2:07 ` [PATCHv15 00/17] Linear Address Masking enabling Linus Torvalds
2023-01-24 11:01   ` Kirill A. Shutemov
2023-01-26 14:42     ` Kirill A. Shutemov
2023-01-26 18:31       ` Linus Torvalds
2023-03-13  3:23 ` Binbin Wu [this message]

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=66bf51ab-15bd-7988-77c6-8776ac9755d4@linux.intel.com \
    --to=binbin.wu@linux.intel.com \
    --cc=ak@linux.intel.com \
    --cc=andreyknvl@gmail.com \
    --cc=ashok.raj@intel.com \
    --cc=bharata@amd.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=dvyukov@google.com \
    --cc=glider@google.com \
    --cc=hjl.tools@gmail.com \
    --cc=jacob.jun.pan@linux.intel.com \
    --cc=kcc@google.com \
    --cc=kirill.shutemov@linux.intel.com \
    --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=torvalds@linux-foundation.org \
    --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