[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20181019175952.GA57321@arrakis.emea.arm.com>
Date: Fri, 19 Oct 2018 18:59:53 +0100
From: Catalin Marinas <catalin.marinas@....com>
To: Linus Torvalds <torvalds@...ux-foundation.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Cc: Will Deacon <will.deacon@....com>,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: [GIT PULL] arm64 updated for 4.20
Hi Linus, Greg,
I'm sending the pull request for 4.20 slightly earlier as I'm on holiday
next week (not in Edinburgh). Apart from some new arm64 features and
clean-ups, this request also contains the core mmu_gather changes for
tracking the levels of the page table being cleared and a minor update
to the generic compat_sys_sigaltstack() introducing COMPAT_SIGMINSKSZ.
Thanks.
The following changes since commit 57361846b52bc686112da6ca5368d11210796804:
Linux 4.19-rc2 (2018-09-02 14:37:30 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux tags/arm64-upstream
for you to fetch changes up to 4debef5510071032c6d5dace31ca1cc42a120073:
arm64: KVM: Guests can skip __install_bp_hardening_cb()s HYP work (2018-10-19 15:37:25 +0100)
----------------------------------------------------------------
arm64 updates for 4.20:
- Core mmu_gather changes which allow tracking the levels of page-table
being cleared together with the arm64 low-level flushing routines
- Support for the new ARMv8.5 PSTATE.SSBS bit which can be used to
mitigate Spectre-v4 dynamically without trapping to EL3 firmware
- Introduce COMPAT_SIGMINSTKSZ for use in compat_sys_sigaltstack
- Optimise emulation of MRS instructions to ID_* registers on ARMv8.4
- Support for Common Not Private (CnP) translations allowing threads of
the same CPU to share the TLB entries
- Accelerated crc32 routines
- Move swapper_pg_dir to the rodata section
- Trap WFI instruction executed in user space
- ARM erratum 1188874 workaround (arch_timer)
- Miscellaneous fixes and clean-ups
----------------------------------------------------------------
Andrew Murray (1):
arm64: Remove unused VGA console support
Anshuman Khandual (8):
arm64/cpufeatures: Introduce ESR_ELx_SYS64_ISS_RT()
arm64/cpufeatures: Factorize emulate_mrs()
arm64/cpufeatures: Emulate MRS instructions by parsing ESR_ELx.ISS
arm64/mm: Use ESR_ELx_FSC macro while decoding fault exception
arm64/mm: Reorganize arguments for is_el1_permission_fault()
arm64/mm: Define esr_to_debug_fault_info()
arm64/numa: Report correct memblock range for the dummy node
arm64/numa: Unify common error path in numa_init()
Ard Biesheuvel (4):
lib/crc32: make core crc32() routines weak so they can be overridden
arm64: cpufeature: add feature for CRC32 instructions
arm64/lib: add accelerated crc32 routines
arm64: remove unused asm/compiler.h header file
Arnd Bergmann (1):
arm64: arch_timer: avoid unused function warning
Giacomo Travaglini (1):
arm64: docs: Fix typos in ELF hwcaps
Hari Vyas (1):
arm64: fix for bad_mode() handler to always result in panic
James Morse (6):
arm64: Kconfig: Remove ARCH_HAS_HOLES_MEMORYMODEL
arm64: mm: Use #ifdef for the __PAGETABLE_P?D_FOLDED defines
MAINTAINERS: fix bad sdei paths
Revert "arm64: uaccess: implement unsafe accessors"
arm64: mm: Use __pa_symbol() for set_swapper_pgd()
arm64: KVM: Guests can skip __install_bp_hardening_cb()s HYP work
Julien Thierry (4):
arm64: uaccess: implement unsafe accessors
arm64: daifflags: Use irqflags functions for daifflags
arm64: Use daifflag_restore after bp_hardening
arm64: xen: Use existing helper to check interrupt status
Jun Yao (4):
arm64/mm: Pass ttbr1 as a parameter to __enable_mmu()
arm64/mm: Separate boot-time page tables from swapper_pg_dir
arm64/mm: use fixmap to modify swapper_pg_dir
arm64/mm: move runtime pgds to rodata
Kyrylo Tkachov (1):
arm64: Fix typo in a comment in arch/arm64/mm/kasan_init.c
Marc Zyngier (9):
arm64: Add decoding macros for CP15_32 and CP15_64 traps
arm64: compat: Add separate CP15 trapping hook
arm64: compat: Add condition code checks and IT advance
arm64: compat: Add cp15_32 and cp15_64 handler arrays
arm64: compat: Add CNTVCT trap handler
arm64: compat: Add CNTFRQ trap handler
arm64: arch_timer: Add workaround for ARM erratum 1188873
arm64: Trap WFI executed in userspace
arm64: Add silicon-errata.txt entry for ARM erratum 1188873
Peter Zijlstra (2):
asm-generic/tlb: Track freeing of page-table directories in struct mmu_gather
mm/memory: Move mmu_gather and TLB invalidation code into its own file
Punit Agrawal (1):
Documentation/arm64: HugeTLB page implementation
Rob Herring (1):
perf: Convert to using %pOFn instead of device_node.name
Shaokun Zhang (1):
arm64: mm: Drop the unused cpu parameter
Suzuki K Poulose (4):
arm64: sysreg: Clean up instructions for modifying PSTATE fields
arm64: cpufeature: ctr: Fix cpu capability check for late CPUs
arm64: cpufeature: Fix handling of CTR_EL0.IDC field
arm64: cpufeature: Trap CTR_EL0 access only where it is necessary
Tri Vo (1):
arm64: lse: remove -fcall-used-x0 flag
Vladimir Murzin (2):
arm64: mm: Support Common Not Private translations
arm64: KVM: Enable Common Not Private translations
Will Deacon (26):
asm-generic/tlb: Guard with #ifdef CONFIG_MMU
asm-generic/tlb: Track which levels of the page tables have been cleared
MAINTAINERS: Add entry for MMU GATHER AND TLB INVALIDATION
Merge branch 'tlb/asm-generic' into aarch64/for-next/core
arm64: dump: Use consistent capitalisation for page-table dumps
arm64: tlb: Use last-level invalidation in flush_tlb_kernel_range()
arm64: tlb: Add DSB ISHST prior to TLBI in __flush_tlb_[kernel_]pgtable()
arm64: pgtable: Implement p[mu]d_valid() and check in set_p[mu]d()
arm64: tlb: Justify non-leaf invalidation in flush_tlb_range()
arm64: tlbflush: Allow stride to be specified for __flush_tlb_range()
arm64: tlb: Remove redundant !CONFIG_HAVE_RCU_TABLE_FREE code
arm64: tlb: Adjust stride and type of TLBI according to mmu_gather
arm64: tlb: Avoid synchronous TLBIs when freeing page tables
arm64: tlb: Rewrite stale comment in asm/tlbflush.h
arm64: Fix silly typo in comment
arm64: cpufeature: Detect SSBS and advertise to userspace
arm64: ssbd: Drop #ifdefs for PR_SPEC_STORE_BYPASS
arm64: entry: Allow handling of undefined instructions from EL1
arm64: ssbd: Add support for PSTATE.SSBS rather than trapping to EL3
KVM: arm64: Set SCTLR_EL2.DSSBS if SSBD is forcefully disabled and !vhe
arm64: cpu: Move errata and feature enable callbacks closer to callers
arm64: force_signal_inject: WARN if called from kernel context
arm64: cpu_errata: Remove ARM64_MISMATCHED_CACHE_LINE_SIZE
signal: Introduce COMPAT_SIGMINSTKSZ for use in compat_sys_sigaltstack
arm64: compat: Provide definition for COMPAT_SIGMINSTKSZ
arm64: docs: Document SSBS HWCAP
zhong jiang (1):
arm64/kprobes: remove an extra semicolon in arch_prepare_kprobe
Documentation/arm64/elf_hwcaps.txt | 12 +-
Documentation/arm64/hugetlbpage.txt | 38 +++++
Documentation/arm64/silicon-errata.txt | 1 +
MAINTAINERS | 17 ++-
arch/arm/include/asm/kvm_arm.h | 1 +
arch/arm/include/asm/kvm_mmu.h | 5 +
arch/arm64/Kconfig | 34 ++++-
arch/arm64/include/asm/assembler.h | 7 +-
arch/arm64/include/asm/cache.h | 40 +++++
arch/arm64/include/asm/compat.h | 1 +
arch/arm64/include/asm/compiler.h | 30 ----
arch/arm64/include/asm/cpucaps.h | 7 +-
arch/arm64/include/asm/cpufeature.h | 9 +-
arch/arm64/include/asm/cputype.h | 2 +
arch/arm64/include/asm/daifflags.h | 15 +-
arch/arm64/include/asm/esr.h | 77 ++++++++++
arch/arm64/include/asm/kernel-pgtable.h | 2 +-
arch/arm64/include/asm/kvm_arm.h | 1 +
arch/arm64/include/asm/kvm_emulate.h | 2 +-
arch/arm64/include/asm/kvm_host.h | 11 ++
arch/arm64/include/asm/kvm_mmu.h | 5 +
arch/arm64/include/asm/mmu.h | 3 +
arch/arm64/include/asm/mmu_context.h | 17 ++-
arch/arm64/include/asm/page.h | 2 -
arch/arm64/include/asm/pgtable-hwdef.h | 2 +
arch/arm64/include/asm/pgtable.h | 48 +++++-
arch/arm64/include/asm/processor.h | 11 +-
arch/arm64/include/asm/ptrace.h | 1 +
arch/arm64/include/asm/sysreg.h | 44 ++++--
arch/arm64/include/asm/tlb.h | 34 ++---
arch/arm64/include/asm/tlbflush.h | 112 +++++++++-----
arch/arm64/include/asm/uaccess.h | 1 -
arch/arm64/include/asm/xen/events.h | 2 +-
arch/arm64/include/uapi/asm/hwcap.h | 1 +
arch/arm64/include/uapi/asm/ptrace.h | 1 +
arch/arm64/kernel/cpu_errata.c | 96 +++++++++---
arch/arm64/kernel/cpufeature.c | 195 +++++++++++++++++++++---
arch/arm64/kernel/cpuinfo.c | 11 +-
arch/arm64/kernel/entry.S | 18 ++-
arch/arm64/kernel/head.S | 40 ++---
arch/arm64/kernel/probes/kprobes.c | 2 +-
arch/arm64/kernel/process.c | 4 +
arch/arm64/kernel/psci.c | 1 -
arch/arm64/kernel/setup.c | 4 -
arch/arm64/kernel/sleep.S | 1 +
arch/arm64/kernel/ssbd.c | 24 ++-
arch/arm64/kernel/suspend.c | 4 +
arch/arm64/kernel/traps.c | 211 ++++++++++++++++++++++++--
arch/arm64/kernel/vmlinux.lds.S | 35 +++--
arch/arm64/kvm/hyp-init.S | 3 +
arch/arm64/kvm/hyp/sysreg-sr.c | 11 ++
arch/arm64/lib/Makefile | 4 +-
arch/arm64/lib/crc32.S | 60 ++++++++
arch/arm64/mm/context.c | 11 +-
arch/arm64/mm/dump.c | 6 +-
arch/arm64/mm/fault.c | 38 ++---
arch/arm64/mm/init.c | 2 -
arch/arm64/mm/kasan_init.c | 2 +-
arch/arm64/mm/mmu.c | 46 +++---
arch/arm64/mm/numa.c | 13 +-
arch/arm64/mm/proc.S | 11 +-
drivers/clocksource/arm_arch_timer.c | 15 ++
drivers/perf/arm_pmu_platform.c | 6 +-
include/asm-generic/tlb.h | 86 +++++++++--
include/linux/compat.h | 3 +
kernel/signal.c | 14 +-
lib/crc32.c | 11 +-
mm/Makefile | 6 +-
mm/memory.c | 247 ------------------------------
mm/mmu_gather.c | 261 ++++++++++++++++++++++++++++++++
virt/kvm/arm/arm.c | 4 +-
71 files changed, 1511 insertions(+), 591 deletions(-)
create mode 100644 Documentation/arm64/hugetlbpage.txt
delete mode 100644 arch/arm64/include/asm/compiler.h
create mode 100644 arch/arm64/lib/crc32.S
create mode 100644 mm/mmu_gather.c
--
Catalin
Powered by blists - more mailing lists