lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<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

Powered by Openwall GNU/*/Linux Powered by OpenVZ