All of lore.kernel.org
 help / color / mirror / Atom feed
From: will.deacon@arm.com (Will Deacon)
To: linux-arm-kernel@lists.infradead.org
Subject: [GIT PULL] arm64: updates for 4.1
Date: Thu, 16 Apr 2015 17:11:58 +0100	[thread overview]
Message-ID: <20150416161158.GG25640@arm.com> (raw)

Hi Linus,

Here are the core arm64 updates for 4.1. Highlights include a significant
rework to head.S (allowing us to boot on machines with physical memory at
a really high address), an AES performance boost on Cortex-A57 and the
ability to run a 32-bit userspace with 64k pages (although this requires
said userspace to be built with a recent binutils).

The head.S rework spilt over into KVM, so there are some changes under
arch/arm/ which have been acked by Marc Zyngier (KVM co-maintainer).
In particular, the linker script changes caused us some issues in -next,
so there are a few merge commits where we had to apply fixes on top of
a stable branch.

Please pull.

Cheers,

Will

--->8

The following changes since commit 06e5801b8cb3fc057d88cb4dc03c0b64b2744cda:

  Linux 4.0-rc4 (2015-03-15 17:38:20 -0700)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git tags/arm64-upstream

for you to fetch changes up to 6d1966dfd6e0ad2f8aa4b664ae1a62e33abe1998:

  arm64: fix midr range for Cortex-A57 erratum 832075 (2015-04-01 11:12:03 +0100)

----------------------------------------------------------------
arm64 updates for 4.1:

The main change here is a significant head.S rework that allows us to
boot on machines with physical memory at a really high address without
having to increase our mapped VA range. Other changes include:

- AES performance boost for Cortex-A57
- AArch32 (compat) userspace with 64k pages
- Cortex-A53 erratum workaround for #845719
- defconfig updates (new platforms, PCI, ...)

----------------------------------------------------------------
Alexander Graf (1):
      arm64: Enable CONFIG_COMPAT also for 64k page size

Andreas Schwab (1):
      arm64: fix implementation of mmap2 compat syscall

Ard Biesheuvel (14):
      arm64/crypto: issue aese/aesmc instructions in pairs
      ARM, arm64: kvm: get rid of the bounce page
      arm64: add macros for common adrp usages
      arm64: remove processor_id
      arm64: remove __switch_data object from head.S
      arm64: use PC-relative reference for secondary_holding_pen_release
      arm64: merge __enable_mmu and __turn_mmu_on
      arm64: remove __calc_phys_offset
      arm64: enforce x1|x2|x3 == 0 upon kernel entry as per boot protocol
      ARM: kvm: implement replacement for ld's LOG2CEIL()
      arm64: mm: increase VA range of identity map
      arm64: KVM: use ID map with increased VA range if required
      ARM: kvm: assert on HYP section boundaries not actual code size
      ARM: kvm: round HYP section to page size instead of log2 upper bound

Bo Yan (1):
      arm64: fix midr range for Cortex-A57 erratum 832075

Daniel Borkmann (1):
      arm64: mm: unexport set_memory_ro and set_memory_rw

Ganapatrao Kulkarni (1):
      arm64: kconfig: increase NR_CPUS range to 2-4096.

Joe Perches (1):
      arm64: Use bool function return values of true/false not 1/0

Marc Zyngier (4):
      arm64: Get rid of struct cpu_table
      arm64: insn: Add aarch64_insn_decode_immediate
      arm64: alternative: Allow immediate branch as alternative instruction
      arm64: Extract feature parsing code from cpu_errata.c

Mark Rutland (7):
      arm64: apply alternatives for !SMP kernels
      arm64: fix hyp mode mismatch detection
      arm64: log CPU boot modes
      arm64: fixmap: make FIX_TEXT_POKE0 permanent
      arm64: fixmap: check idx is definitely valid
      arm64: head.S: ensure visibility of page tables
      arm64: head.S: ensure idmap_t0sz is visible

Peter Crosthwaite (1):
      arm64: Implement cpu_relax as yield

Steve Capper (1):
      arm64: Adjust EFI libstub object include logic

Suzuki K. Poulose (1):
      arm64: perf: reject groups spanning multiple HW PMUs

Will Deacon (8):
      arm64: proc: remove unused cpu_get_pgd macro
      Merge branch 'aarch64/kvm-bounce-page' into aarch64/for-next/core
      dt: pmu: extend ARM PMU binding to allow for explicit interrupt affinity
      arm64: pmu: add support for interrupt-affinity property
      Merge branch 'aarch64/kvm-bounce-page' into aarch64/for-next/core
      Merge branch 'aarch64/kvm-bounce-page' into aarch64/for-next/core
      arm64: defconfig: updates for 4.1
      arm64: errata: add workaround for cortex-a53 erratum #845719

 Documentation/devicetree/bindings/arm/pmu.txt |   7 +
 arch/arm/include/asm/kvm_mmu.h                |  10 +
 arch/arm/kernel/vmlinux.lds.S                 |  11 +-
 arch/arm/kvm/mmu.c                            |  69 +++----
 arch/arm64/Kconfig                            |  35 +++-
 arch/arm64/Makefile                           |   2 +-
 arch/arm64/configs/defconfig                  |  14 +-
 arch/arm64/crypto/aes-ce-ccm-core.S           |  12 +-
 arch/arm64/crypto/aes-ce.S                    |  10 +-
 arch/arm64/include/asm/assembler.h            |  48 +++++
 arch/arm64/include/asm/cpufeature.h           |  18 +-
 arch/arm64/include/asm/cputable.h             |  30 ---
 arch/arm64/include/asm/dma-mapping.h          |   2 +-
 arch/arm64/include/asm/fixmap.h               |   2 +-
 arch/arm64/include/asm/insn.h                 |   1 +
 arch/arm64/include/asm/kvm_mmu.h              |  33 ++++
 arch/arm64/include/asm/mmu_context.h          |  43 +++++
 arch/arm64/include/asm/page.h                 |   6 +-
 arch/arm64/include/asm/pgtable-hwdef.h        |   7 +-
 arch/arm64/include/asm/pmu.h                  |   1 +
 arch/arm64/include/asm/proc-fns.h             |   9 -
 arch/arm64/include/asm/processor.h            |   6 +-
 arch/arm64/include/asm/smp_plat.h             |   2 +
 arch/arm64/include/asm/unistd32.h             |   2 +-
 arch/arm64/kernel/Makefile                    |   4 +-
 arch/arm64/kernel/alternative.c               |  55 +++++-
 arch/arm64/kernel/asm-offsets.c               |   4 -
 arch/arm64/kernel/cpu_errata.c                |  47 ++---
 arch/arm64/kernel/cpufeature.c                |  47 +++++
 arch/arm64/kernel/cpuinfo.c                   |   1 +
 arch/arm64/kernel/cputable.c                  |  33 ----
 arch/arm64/kernel/entry.S                     |  20 ++
 arch/arm64/kernel/entry32.S                   |  18 ++
 arch/arm64/kernel/head.S                      | 261 +++++++++-----------------
 arch/arm64/kernel/insn.c                      |  81 ++++++--
 arch/arm64/kernel/perf_event.c                |  78 +++++++-
 arch/arm64/kernel/setup.c                     |  55 ++++--
 arch/arm64/kernel/smp.c                       |   3 +-
 arch/arm64/kernel/sys32.c                     |   1 +
 arch/arm64/kernel/vmlinux.lds.S               |  17 +-
 arch/arm64/kvm/hyp-init.S                     |  25 +++
 arch/arm64/mm/mmu.c                           |  12 +-
 arch/arm64/mm/pageattr.c                      |   2 -
 arch/arm64/mm/proc-macros.S                   |  10 +
 arch/arm64/mm/proc.S                          |   3 +
 45 files changed, 748 insertions(+), 409 deletions(-)
 delete mode 100644 arch/arm64/include/asm/cputable.h
 create mode 100644 arch/arm64/kernel/cpufeature.c
 delete mode 100644 arch/arm64/kernel/cputable.c

WARNING: multiple messages have this Message-ID (diff)
From: Will Deacon <will.deacon@arm.com>
To: torvalds@linux-foundation.org
Cc: linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, catalin.marinas@arm.com,
	ard.biesheuvel@linaro.org, marc.zyngier@arm.com,
	linux@arm.linux.org.uk
Subject: [GIT PULL] arm64: updates for 4.1
Date: Thu, 16 Apr 2015 17:11:58 +0100	[thread overview]
Message-ID: <20150416161158.GG25640@arm.com> (raw)

Hi Linus,

Here are the core arm64 updates for 4.1. Highlights include a significant
rework to head.S (allowing us to boot on machines with physical memory at
a really high address), an AES performance boost on Cortex-A57 and the
ability to run a 32-bit userspace with 64k pages (although this requires
said userspace to be built with a recent binutils).

The head.S rework spilt over into KVM, so there are some changes under
arch/arm/ which have been acked by Marc Zyngier (KVM co-maintainer).
In particular, the linker script changes caused us some issues in -next,
so there are a few merge commits where we had to apply fixes on top of
a stable branch.

Please pull.

Cheers,

Will

--->8

The following changes since commit 06e5801b8cb3fc057d88cb4dc03c0b64b2744cda:

  Linux 4.0-rc4 (2015-03-15 17:38:20 -0700)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git tags/arm64-upstream

for you to fetch changes up to 6d1966dfd6e0ad2f8aa4b664ae1a62e33abe1998:

  arm64: fix midr range for Cortex-A57 erratum 832075 (2015-04-01 11:12:03 +0100)

----------------------------------------------------------------
arm64 updates for 4.1:

The main change here is a significant head.S rework that allows us to
boot on machines with physical memory at a really high address without
having to increase our mapped VA range. Other changes include:

- AES performance boost for Cortex-A57
- AArch32 (compat) userspace with 64k pages
- Cortex-A53 erratum workaround for #845719
- defconfig updates (new platforms, PCI, ...)

----------------------------------------------------------------
Alexander Graf (1):
      arm64: Enable CONFIG_COMPAT also for 64k page size

Andreas Schwab (1):
      arm64: fix implementation of mmap2 compat syscall

Ard Biesheuvel (14):
      arm64/crypto: issue aese/aesmc instructions in pairs
      ARM, arm64: kvm: get rid of the bounce page
      arm64: add macros for common adrp usages
      arm64: remove processor_id
      arm64: remove __switch_data object from head.S
      arm64: use PC-relative reference for secondary_holding_pen_release
      arm64: merge __enable_mmu and __turn_mmu_on
      arm64: remove __calc_phys_offset
      arm64: enforce x1|x2|x3 == 0 upon kernel entry as per boot protocol
      ARM: kvm: implement replacement for ld's LOG2CEIL()
      arm64: mm: increase VA range of identity map
      arm64: KVM: use ID map with increased VA range if required
      ARM: kvm: assert on HYP section boundaries not actual code size
      ARM: kvm: round HYP section to page size instead of log2 upper bound

Bo Yan (1):
      arm64: fix midr range for Cortex-A57 erratum 832075

Daniel Borkmann (1):
      arm64: mm: unexport set_memory_ro and set_memory_rw

Ganapatrao Kulkarni (1):
      arm64: kconfig: increase NR_CPUS range to 2-4096.

Joe Perches (1):
      arm64: Use bool function return values of true/false not 1/0

Marc Zyngier (4):
      arm64: Get rid of struct cpu_table
      arm64: insn: Add aarch64_insn_decode_immediate
      arm64: alternative: Allow immediate branch as alternative instruction
      arm64: Extract feature parsing code from cpu_errata.c

Mark Rutland (7):
      arm64: apply alternatives for !SMP kernels
      arm64: fix hyp mode mismatch detection
      arm64: log CPU boot modes
      arm64: fixmap: make FIX_TEXT_POKE0 permanent
      arm64: fixmap: check idx is definitely valid
      arm64: head.S: ensure visibility of page tables
      arm64: head.S: ensure idmap_t0sz is visible

Peter Crosthwaite (1):
      arm64: Implement cpu_relax as yield

Steve Capper (1):
      arm64: Adjust EFI libstub object include logic

Suzuki K. Poulose (1):
      arm64: perf: reject groups spanning multiple HW PMUs

Will Deacon (8):
      arm64: proc: remove unused cpu_get_pgd macro
      Merge branch 'aarch64/kvm-bounce-page' into aarch64/for-next/core
      dt: pmu: extend ARM PMU binding to allow for explicit interrupt affinity
      arm64: pmu: add support for interrupt-affinity property
      Merge branch 'aarch64/kvm-bounce-page' into aarch64/for-next/core
      Merge branch 'aarch64/kvm-bounce-page' into aarch64/for-next/core
      arm64: defconfig: updates for 4.1
      arm64: errata: add workaround for cortex-a53 erratum #845719

 Documentation/devicetree/bindings/arm/pmu.txt |   7 +
 arch/arm/include/asm/kvm_mmu.h                |  10 +
 arch/arm/kernel/vmlinux.lds.S                 |  11 +-
 arch/arm/kvm/mmu.c                            |  69 +++----
 arch/arm64/Kconfig                            |  35 +++-
 arch/arm64/Makefile                           |   2 +-
 arch/arm64/configs/defconfig                  |  14 +-
 arch/arm64/crypto/aes-ce-ccm-core.S           |  12 +-
 arch/arm64/crypto/aes-ce.S                    |  10 +-
 arch/arm64/include/asm/assembler.h            |  48 +++++
 arch/arm64/include/asm/cpufeature.h           |  18 +-
 arch/arm64/include/asm/cputable.h             |  30 ---
 arch/arm64/include/asm/dma-mapping.h          |   2 +-
 arch/arm64/include/asm/fixmap.h               |   2 +-
 arch/arm64/include/asm/insn.h                 |   1 +
 arch/arm64/include/asm/kvm_mmu.h              |  33 ++++
 arch/arm64/include/asm/mmu_context.h          |  43 +++++
 arch/arm64/include/asm/page.h                 |   6 +-
 arch/arm64/include/asm/pgtable-hwdef.h        |   7 +-
 arch/arm64/include/asm/pmu.h                  |   1 +
 arch/arm64/include/asm/proc-fns.h             |   9 -
 arch/arm64/include/asm/processor.h            |   6 +-
 arch/arm64/include/asm/smp_plat.h             |   2 +
 arch/arm64/include/asm/unistd32.h             |   2 +-
 arch/arm64/kernel/Makefile                    |   4 +-
 arch/arm64/kernel/alternative.c               |  55 +++++-
 arch/arm64/kernel/asm-offsets.c               |   4 -
 arch/arm64/kernel/cpu_errata.c                |  47 ++---
 arch/arm64/kernel/cpufeature.c                |  47 +++++
 arch/arm64/kernel/cpuinfo.c                   |   1 +
 arch/arm64/kernel/cputable.c                  |  33 ----
 arch/arm64/kernel/entry.S                     |  20 ++
 arch/arm64/kernel/entry32.S                   |  18 ++
 arch/arm64/kernel/head.S                      | 261 +++++++++-----------------
 arch/arm64/kernel/insn.c                      |  81 ++++++--
 arch/arm64/kernel/perf_event.c                |  78 +++++++-
 arch/arm64/kernel/setup.c                     |  55 ++++--
 arch/arm64/kernel/smp.c                       |   3 +-
 arch/arm64/kernel/sys32.c                     |   1 +
 arch/arm64/kernel/vmlinux.lds.S               |  17 +-
 arch/arm64/kvm/hyp-init.S                     |  25 +++
 arch/arm64/mm/mmu.c                           |  12 +-
 arch/arm64/mm/pageattr.c                      |   2 -
 arch/arm64/mm/proc-macros.S                   |  10 +
 arch/arm64/mm/proc.S                          |   3 +
 45 files changed, 748 insertions(+), 409 deletions(-)
 delete mode 100644 arch/arm64/include/asm/cputable.h
 create mode 100644 arch/arm64/kernel/cpufeature.c
 delete mode 100644 arch/arm64/kernel/cputable.c

             reply	other threads:[~2015-04-16 16:11 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-16 16:11 Will Deacon [this message]
2015-04-16 16:11 ` [GIT PULL] arm64: updates for 4.1 Will Deacon

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=20150416161158.GG25640@arm.com \
    --to=will.deacon@arm.com \
    --cc=linux-arm-kernel@lists.infradead.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.