[GIT PULL v3] x86/mm changes for v5.8

From: Ingo Molnar
Date: Fri Jun 05 2020 - 04:11:45 EST



* Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:

> On Thu, Jun 4, 2020 at 10:29 AM Ingo Molnar <mingo@xxxxxxxxxx> wrote:
> >
> > Yeah, sure - here's the updated pull request for the rest:
> >
> > git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86-mm-2020-06-04
> >
> > # HEAD: bd1de2a7aace4d1d312fb1be264b8fafdb706208 x86/tlb/uv: Add a forward declaration for struct flush_tlb_info
>
> Nope, that still points to
>
> 0fcfdf55db9e1ecf85edd6aa8d0bc78a448cb96a Documentation: Add L1D
> flushing Documentation
>
> although it looks like the 'x86/mm' _branch_ does point to that commit
> bd1de2a7aace.
>
> You did something odd where you created a new tag, but used the old branch. Hmm?

Oops, my apologies, indeed I did something odd with tags: my testing
script used a x86-mm-for-linus temporary branch to construct the tag
and test the tree, and merged x86/mm into it - but this branch was
still a leftover from the previous pull request and the merge of
x86/mm into it succeeded without an error ...

In a comedy of errors, while it used the out of date x86-mm-for-linus
to generate the tag, it consistently used the correct x86/mm branch
for the pull request itself, and thus my fail-safes to catch such
mishaps of sending the wrong tree to you all failed. :-/

I fixed my tag workflow, re-tested this case (and a few others) to
make sure it doesn't happen again, and find below the updated v3 pull
request. Sorry about this!

---
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-05

# HEAD: bd1de2a7aace4d1d312fb1be264b8fafdb706208 x86/tlb/uv: Add a forward declaration for struct flush_tlb_info

Misc changes:

- Unexport various PAT primitives

- Unexport per-CPU tlbstate

Thanks,

Ingo

------------------>
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


arch/x86/events/core.c | 11 +-
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/tlbflush.h | 441 ++++-------------------------------
arch/x86/include/asm/uv/uv.h | 1 +
arch/x86/kernel/alternative.c | 55 +++++
arch/x86/kernel/cpu/common.c | 25 +-
arch/x86/kernel/cpu/mtrr/generic.c | 4 +-
arch/x86/kernel/paravirt.c | 21 +-
arch/x86/kernel/process.c | 11 +
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 | 384 +++++++++++++++++++++++++++++-
arch/x86/platform/uv/tlb_uv.c | 4 +-
drivers/xen/privcmd.c | 1 -
24 files changed, 608 insertions(+), 586 deletions(-)