LKML Archive on lore.kernel.org
 help / color / Atom feed
* [GIT PULL] x86/mm changes for v5.8
@ 2020-06-01 17:01 Ingo Molnar
  2020-06-01 21:42 ` Linus Torvalds
  0 siblings, 1 reply; 15+ messages in thread
From: Ingo Molnar @ 2020-06-01 17:01 UTC (permalink / raw)
  To: Linus Torvalds
  Cc: linux-kernel, Thomas Gleixner, Borislav Petkov, Peter Zijlstra,
	Andrew Morton, Andy Lutomirski

Linus,

Please pull the latest x86/mm git tree from:

   git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86-mm-2020-06-01

   # HEAD: 0fcfdf55db9e1ecf85edd6aa8d0bc78a448cb96a Documentation: Add L1D flushing Documentation

Misc changes:

 - Unexport various PAT primitives

 - Unexport per-CPU tlbstate

 - Provide an opt-in (prctl driven) mechanism to flush the L1D cache on context switch.
   The goal is to allow tasks that are paranoid due to the recent snoop assisted data
   sampling vulnerabilites, to flush their L1D on being switched out.
   This protects their data from being snooped or leaked via side channels
   after the task has context switched out.

Signed-off-by: Ingo Molnar <mingo@kernel.org>

  out-of-topic modifications in x86/mm:
  ---------------------------------------
  include/uapi/linux/prctl.h         # edf7ce0b231c: prctl: Hook L1D flushing in 

 Thanks,

	Ingo

------------------>
Balbir Singh (7):
      x86/kvm: Refactor L1D flush page management
      x86/kvm: Refactor L1D flush operations
      x86/mm: Refactor cond_ibpb() to support other use cases
      x86/kvm: Refactor L1D flushing
      x86/mm: Optionally flush L1D on context switch
      prctl: Hook L1D flushing in via prctl
      Documentation: Add L1D flushing Documentation

Borislav Petkov (1):
      x86/tlb/uv: Add a forward declaration for struct flush_tlb_info

Christoph Hellwig (5):
      x86/mm: Add a x86_has_pat_wp() helper
      x86/mm: Move pgprot2cachemode out of line
      x86/mm: Cleanup pgprot_4k_2_large() and pgprot_large_2_4k()
      x86/mm: Unexport __cachemode2pte_tbl
      x86/mm: Use pgprotval_t in protval_4k_2_large() and protval_large_2_4k()

Thomas Gleixner (17):
      x86/tlb: Uninline __get_current_cr3_fast()
      x86/cpu: Uninline CR4 accessors
      x86/cr4: Sanitize CR4.PCE update
      x86/alternatives: Move temporary_mm helpers into C
      x86/tlb: Move __flush_tlb() out of line
      x86/tlb: Move __flush_tlb_global() out of line
      x86/tlb: Move __flush_tlb_one_user() out of line
      x86/tlb: Move __flush_tlb_one_kernel() out of line
      x86/tlb: Move flush_tlb_others() out of line
      x86/tlb: Move __flush_tlb_all() out of line
      x86/tlb: Move paravirt_tlb_remove_table() to the usage site
      x86/tlb: Move cr4_set_bits_and_update_boot() to the usage site
      x86/tlb: Uninline nmi_uaccess_okay()
      x86/tlb: Move PCID helpers where they are used
      xen/privcmd: Remove unneeded asm/tlb.h include
      x86/tlb: Restrict access to tlbstate
      x86/cpu: Export native_write_cr4() only when CONFIG_LKTDM=m


 Documentation/admin-guide/hw-vuln/index.rst     |   1 +
 Documentation/admin-guide/hw-vuln/l1d_flush.rst |  51 +++
 Documentation/userspace-api/spec_ctrl.rst       |   7 +
 arch/x86/events/core.c                          |  11 +-
 arch/x86/include/asm/cacheflush.h               |   8 +
 arch/x86/include/asm/memtype.h                  |   3 +
 arch/x86/include/asm/mmu_context.h              |  88 +----
 arch/x86/include/asm/paravirt.h                 |  12 +-
 arch/x86/include/asm/pgtable_32.h               |   2 +-
 arch/x86/include/asm/pgtable_types.h            |  44 +--
 arch/x86/include/asm/thread_info.h              |   9 +-
 arch/x86/include/asm/tlbflush.h                 | 443 +++-------------------
 arch/x86/include/asm/uv/uv.h                    |   1 +
 arch/x86/kernel/Makefile                        |   1 +
 arch/x86/kernel/alternative.c                   |  55 +++
 arch/x86/kernel/cpu/bugs.c                      |  28 ++
 arch/x86/kernel/cpu/common.c                    |  25 +-
 arch/x86/kernel/cpu/mtrr/generic.c              |   4 +-
 arch/x86/kernel/l1d_flush.c                     | 120 ++++++
 arch/x86/kernel/paravirt.c                      |  21 +-
 arch/x86/kernel/process.c                       |  11 +
 arch/x86/kvm/vmx/vmx.c                          |  62 +---
 arch/x86/mm/init.c                              |  44 ++-
 arch/x86/mm/init_64.c                           |   4 +-
 arch/x86/mm/ioremap.c                           |  10 +-
 arch/x86/mm/kmmio.c                             |   2 +-
 arch/x86/mm/mem_encrypt.c                       |   2 +-
 arch/x86/mm/pat/set_memory.c                    |   7 +-
 arch/x86/mm/pgtable.c                           |  16 +-
 arch/x86/mm/pgtable_32.c                        |   2 +-
 arch/x86/mm/tlb.c                               | 471 ++++++++++++++++++++++--
 arch/x86/platform/uv/tlb_uv.c                   |   4 +-
 drivers/xen/privcmd.c                           |   1 -
 include/uapi/linux/prctl.h                      |   1 +
 34 files changed, 899 insertions(+), 672 deletions(-)
 create mode 100644 Documentation/admin-guide/hw-vuln/l1d_flush.rst
 create mode 100644 arch/x86/kernel/l1d_flush.c

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, back to index

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-01 17:01 [GIT PULL] x86/mm changes for v5.8 Ingo Molnar
2020-06-01 21:42 ` Linus Torvalds
2020-06-02  2:35   ` Linus Torvalds
2020-06-02 10:25     ` Singh, Balbir
2020-06-02  7:33   ` Ingo Molnar
2020-06-02  9:37     ` Benjamin Herrenschmidt
2020-06-02 18:28       ` Thomas Gleixner
2020-06-02 19:14         ` Linus Torvalds
2020-06-02 23:01           ` Singh, Balbir
2020-06-02 23:28             ` Linus Torvalds
2020-06-03  1:31               ` Singh, Balbir
2020-06-04 17:29           ` [GIT PULL v2] " Ingo Molnar
2020-06-05  2:41             ` Linus Torvalds
2020-06-05  8:11               ` [GIT PULL v3] " Ingo Molnar
2020-06-05 20:40                 ` pr-tracker-bot

LKML Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/lkml/0 lkml/git/0.git
	git clone --mirror https://lore.kernel.org/lkml/1 lkml/git/1.git
	git clone --mirror https://lore.kernel.org/lkml/2 lkml/git/2.git
	git clone --mirror https://lore.kernel.org/lkml/3 lkml/git/3.git
	git clone --mirror https://lore.kernel.org/lkml/4 lkml/git/4.git
	git clone --mirror https://lore.kernel.org/lkml/5 lkml/git/5.git
	git clone --mirror https://lore.kernel.org/lkml/6 lkml/git/6.git
	git clone --mirror https://lore.kernel.org/lkml/7 lkml/git/7.git
	git clone --mirror https://lore.kernel.org/lkml/8 lkml/git/8.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 lkml lkml/ https://lore.kernel.org/lkml \
		linux-kernel@vger.kernel.org
	public-inbox-index lkml

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git