[GIT PULL] Please pull powerpc/linux.git powerpc-4.21-1 tag

From: Michael Ellerman
Date: Thu Dec 27 2018 - 06:58:23 EST


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Linus,

Please pull powerpc updates for 4.21:

The following changes since commit ccda4af0f4b92f7b4c308d3acc262f4a7e3affad:

Linux 4.20-rc2 (2018-11-11 17:12:31 -0600)

are available in the git repository at:

https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git tags/powerpc-4.21-1

for you to fetch changes up to 12526b0d6c580df860b31e59d68e5696e16c6e5b:

Merge branch 'next' of https://git.kernel.org/pub/scm/linux/kernel/git/scottwood/linux into next (2018-12-24 14:14:45 +1100)


There are two conflicts I'm aware of.

The first is in arch/powerpc/mm/fault.c, the resolution is to add the 0xe00 case
to the switch and use the pr_alert() version of the printk.

The other is in arch/powerpc/kernel/iommu.c, where we deleted some code that was
modified in the iommu tree to use a new accessor.

cheers

- ------------------------------------------------------------------
powerpc updates for 4.21

Notable changes:

- Mitigations for Spectre v2 on some Freescale (NXP) CPUs.

- A large series adding support for pass-through of Nvidia V100 GPUs to guests
on Power9.

- Another large series to enable hardware assistance for TLB table walk on
MPC8xx CPUs.

- Some preparatory changes to our DMA code, to make way for further cleanups
from Christoph.

- Several fixes for our Transactional Memory handling discovered by fuzzing the
signal return path.

- Support for generating our system call table(s) from a text file like other
architectures.

- A fix to our page fault handler so that instead of generating a WARN_ON_ONCE,
user accesses of kernel addresses instead print a ratelimited and
appropriately scary warning.

- A cosmetic change to make our unhandled page fault messages more similar to
other arches and also more compact and informative.

- Freescale updates from Scott:
"Highlights include elimination of legacy clock bindings use from dts
files, an 83xx watchdog handler, fixes to old dts interrupt errors, and
some minor cleanup."

And many clean-ups, reworks and minor fixes etc.

Thanks to:
Alexandre Belloni, Alexey Kardashevskiy, Andrew Donnellan, Aneesh Kumar K.V,
Arnd Bergmann, Benjamin Herrenschmidt, Breno Leitao, Christian Lamparter,
Christophe Leroy, Christoph Hellwig, Daniel Axtens, Darren Stevens, David
Gibson, Diana Craciun, Dmitry V. Levin, Firoz Khan, Geert Uytterhoeven, Greg
Kurz, Gustavo Romero, Hari Bathini, Joel Stanley, Kees Cook, Madhavan
Srinivasan, Mahesh Salgaonkar, Markus Elfring, Mathieu Malaterre, Michal
SuchÃnek, Naveen N. Rao, Nick Desaulniers, Oliver O'Halloran, Paul Mackerras,
Ram Pai, Ravi Bangoria, Rob Herring, Russell Currey, Sabyasachi Gupta, Sam
Bobroff, Satheesh Rajendran, Scott Wood, Segher Boessenkool, Stephen Rothwell,
Tang Yuantian, Thiago Jung Bauermann, Yangtao Li, Yuantian Tang, Yue Haibing.

- ------------------------------------------------------------------
Alexandre Belloni (2):
powerpc/fsl-rio: fix spelling mistake "reserverd" -> "reserved"
powerpc/fsl-rio: fix spelling mistake "reserverd" -> "reserved"

Alexey Kardashevskiy (26):
powerpc/powernv/ioda: Allocate indirect TCE levels of cached userspace addresses on demand
powerpc/powernv/npu: Remove unused headers and a macro.
vfio/spapr_tce: Get rid of possible infinite loop
powerpc/powernv/ioda1: Remove dead code for a single device PE
powerpc/powernv/ioda: Reduce a number of hooks in pnv_phb
powerpc/powernv/eeh/npu: Fix uninitialized variables in opal_pci_eeh_freeze_status
powerpc/ioda/npu: Call skiboot's hot reset hook when disabling NPU2
powerpc/mm/iommu/vfio_spapr_tce: Change mm_iommu_get to reference a region
powerpc/vfio/iommu/kvm: Do not pin device memory
powerpc/powernv: Move npu struct from pnv_phb to pci_controller
powerpc/powernv/npu: Move OPAL calls away from context manipulation
powerpc/pseries/iommu: Use memory@ nodes in max RAM address calculation
powerpc/pseries/npu: Enable platform support
powerpc/pseries: Remove IOMMU API support for non-LPAR systems
powerpc/powernv/pseries: Rework device adding to IOMMU groups
powerpc/iommu_api: Move IOMMU groups setup to a single place
powerpc/powernv: Reference iommu_table while it is linked to a group
powerpc/powernv/npu: Move single TVE handling to NPU PE
powerpc/powernv/npu: Convert NPU IOMMU helpers to iommu_table_group_ops
powerpc/powernv/npu: Add compound IOMMU groups
powerpc/powernv/npu: Add release_ownership hook
powerpc/powernv/npu: Check mmio_atsd array bounds when populating
powerpc/powernv/npu: Fault user page into the hypervisor's pagetable
vfio_pci: Allow mapping extra regions
vfio_pci: Allow regions to add own capabilities
vfio_pci: Add NVIDIA GV100GL [Tesla V100 SXM2] subdriver

Aneesh Kumar K.V (1):
powerpc/mm/hash: Handle user access of kernel address gracefully

Arnd Bergmann (1):
powerpc: eeh_event: convert semaphore to completion

Benjamin Herrenschmidt (2):
powerpc/44x/bamboo: Fix PCI range
powerpc: Fix HMIs on big-endian with CONFIG_RELOCATABLE=y

Breno Leitao (20):
powerpc/64s: Include cpu header
powerpc/eeh: Declare pci_ers_result_name() as static
powerpc/xive: Define xive_do_source_eoi as static
powerpc/xmon: Define static functions
powerpc/lib: Declare static methods
powerpc/scom: Return NULL instead of 0
powerpc/perf: Declare static identifier a such
powerpc/pkey: Define functions as static
powerpc/mm: Remove extern from function definition
selftests/powerpc: Allocate base registers
selftests/powerpc: Create a new SKIP_IF macro
selftests/powerpc: Skip test instead of failing
powerpc/xmon: Fix invocation inside lock region
powerpc/pseries/cpuidle: Fix preempt warning
powerpc/mm: remove unused function prototype
powerpc/tm: Set MSR[TS] just prior to recheckpoint
powerpc/tm: Save MSR to PACA before RFID
powerpc/tm: Print scratch value
powerpc/tm: Unset MSR[TS] if not recheckpointing
selftests/powerpc: Add checks for transactional sigreturn

Christoph Hellwig (10):
powerpc: allow NOT_COHERENT_CACHE for amigaone
powerpc/dma: properly wire up the unmap_page and unmap_sg methods
crypto4xx_core: don't abuse __dma_sync_page
powerpc/dma: remove the unused ARCH_HAS_DMA_MMAP_COHERENT define
powerpc/dma: remove the unused ISA_DMA_THRESHOLD export
powerpc/dma: remove the unused dma_iommu_ops export
powerpc/dma: split the two __dma_alloc_coherent implementations
cxl: drop the dma_set_mask callback from vphb
powerpc: use mm zones more sensibly
powerpc/fsl_pci: simplify fsl_pci_dma_set_mask

Christophe Leroy (55):
drivers/cpufreq: change CONFIG_6xx to CONFIG_PPC_BOOK3S_32
powerpc: change CONFIG_6xx to CONFIG_PPC_BOOK3S_32
powerpc/kconfig: remove CONFIG_6xx
powerpc/32: Remove #ifdef CONFIG_PPC_STD_MMU_32 in asm/book3s/32/pgtable.h
powerpc: change CONFIG_PPC_STD_MMU_32 to CONFIG_PPC_BOOK3S_32
powerpc: change CONFIG_PPC_STD_MMU to CONFIG_PPC_BOOK3S
powerpc/kconfig: remove PPC_STD_MMU_32 and PPC_STD_MMU
powerpc/book3s32: Remove CONFIG_BOOKE dependent code
powerpc/8xx: Remove PTE_ATOMIC_UPDATES
powerpc/mm: Move pte_fragment_alloc() to a common location
powerpc/mm: Avoid useless lock with single page fragments
powerpc/mm: move platform specific mmu-xxx.h in platform directories
powerpc/mm: Move pgtable_t into platform headers
powerpc/mm: add helpers to get/set mm.context->pte_frag
powerpc/mm: Extend pte_fragment functionality to PPC32
powerpc/mm: enable the use of page table cache of order 0
powerpc/mm: replace hugetlb_cache by PGT_CACHE(PTE_T_ORDER)
powerpc/mm: fix a warning when a cache is common to PGD and hugepages
powerpc/mm: remove unnecessary test in pgtable_cache_init()
powerpc/8xx: Move SW perf counters in first 32kb of memory
powerpc/8xx: Temporarily disable 16k pages and hugepages
powerpc/8xx: Use hardware assistance in TLB handlers
powerpc/8xx: Enable 8M hugepage support with HW assistance
powerpc/8xx: Enable 512k hugepage support with HW assistance
powerpc/8xx: reintroduce 16K pages with HW assistance
powerpc/8xx: don't use r12/SPRN_SPRG_SCRATCH2 in TLB Miss handlers
powerpc/8xx: regroup TLB handler routines
powerpc/mm: dump segment registers on book3s/32
powerpc/mm: dump block address translation on book3s/32
lib: fix build failure in CONFIG_DEBUG_VIRTUAL test
powerpc: implement CONFIG_DEBUG_VIRTUAL
powerpc/mm: remove unused variable
powerpc: simplify patch_instruction_site() and patch_branch_site()
powerpc: add modify_instruction() and modify_instruction_site()
powerpc/32: use patch_site_addr() in machine_init()
powerpc/book3s/32: Use MMU_FTR_HPTE_TABLE in head_32.S
powerpc/book3s/32: Use patch_site to patch hash functions
powerpc/8xx: use modify_instruction_site()
powerpc/signal: Use code patching instead of hardcoding
powerpc/44x: use patch_sites for TLB handlers patching
powerpc/smp: Use code patching to restore reset vector
powerpc/mm: Eliminate not possible mmu features at compile time
powerpc/book3s/32: fix number of bats in p/v_block_mapped()
powerpc/8xx: add exception frame marker
powerpc/xmon: fix dump_segments()
powerpc: remove remaining bits from CONFIG_APUS
powerpc/uaccess: fix warning/error with access_ok()
powerpc/mm: define an empty slice_init_new_context_exec()
powerpc/mm: add exec protection on powerpc 603
powerpc/prom: fix early DEBUG messages
powerpc/mm: Make NULL pointer deferences explicit on bad page faults.
powerpc/prom: move the device tree if not in declared memory.
powerpc/8xx: Allow pinning IMMR TLB when using early debug console
powerpc/mm: Fix reporting of kernel execute faults on the 8xx
powerpc/83xx: handle machine check caused by watchdog timer

Daniel Axtens (1):
powerpc: mark 64-bit PD_HUGE constant as unsigned long

Darren Stevens (4):
powerpc/pasemi: Add PCI initialisation for Nemo board.
powerpc/pasemi: Add Nemo board IRQ initroutine
powerpc/pasemi: Add Nemo board device init code.
powerpc/pasemi: Add Nemo board IRQ initroutine

Diana Craciun (11):
powerpc/fsl: Add infrastructure to fixup branch predictor flush
powerpc/fsl: Add macro to flush the branch predictor
powerpc/fsl: Fix spectre_v2 mitigations reporting
powerpc/fsl: Emulate SPRN_BUCSR register
powerpc/fsl: Add nospectre_v2 command line argument
powerpc/fsl: Flush the branch predictor at each kernel entry (64bit)
powerpc/fsl: Flush the branch predictor at each kernel entry (32 bit)
powerpc/fsl: Flush branch predictor when entering KVM
powerpc/fsl: Enable runtime patching if nospectre_v2 boot arg is used
powerpc/fsl: Update Spectre v2 reporting
powerpc/fsl: Add FSL_PPC_BOOK3E as supported arch for nospectre_v2 boot arg

Dmitry V. Levin (1):
powerpc/ptrace: Combine SYSCALL_EMU & SYSCALL_TRACE handling

Firoz Khan (5):
powerpc: add __NR_syscalls along with NR_syscalls
powerpc: move macro definition from asm/systbl.h
powerpc: split compat syscall table out from native table
powerpc: add system call table generation support
powerpc: generate uapi header and system call table files

Geert Uytterhoeven (1):
powerpc: Typo s/use use/use/

Greg Kurz (4):
ocxl: Fix endiannes bug in ocxl_link_update_pe()
ocxl: Clarify error path in setup_xsl_irq()
ocxl/afu_irq: Don't include <asm/pnv-ocxl.h>
ocxl: Fix endiannes bug in read_afu_name()

Joel Stanley (3):
powerpc/math-emu: Update macros from GCC
raid6/ppc: Fix build for clang
powerpc/32: Avoid unsupported flags with clang

Madhavan Srinivasan (6):
powerpc/perf: Fix thresholding counter data for unknown type
powerpc/perf: Update perf_regs structure to include SIER
powerpc/perf: Cleanup cache_sel bits comment
powerpc/perf: Fix unit_sel/cache_sel checks
powerpc/perf: Add constraints for power9 l2/l3 bus events
powerpc/perf: Remove l2 bus events from HW cache event array

Mahesh Salgaonkar (4):
powerpc/powernv: Move opal_power_control_init() call in opal_init().
powerpc/fadump: Reservationless firmware assisted dump
powerpc/fadump: Throw proper error message on fadump registration failure
powerpc/fadump: Do not allow hot-remove memory from fadump reserved area.

Markus Elfring (4):
powerpc/4xx: Combine four seq_printf() calls into two in ocm_debugfs_show()
powerpc/4xx: Use seq_putc() in ocm_debugfs_show()
powerpc/4xx: Delete error message for a ENOMEM in two functions
powerpc/4xx: Delete an unnecessary return statement in two functions

Mathieu Malaterre (3):
powerpc/32: Add .data..Lubsan_data*/.data..Lubsan_type* sections explicitly
powerpc/mm: remove const type qualifier from function âpud_pfnâ
powerpc/32: Move the old 6xx -mcpu logic before the TARGET_CPU logic

Michael Ellerman (10):
Merge branch 'fixes' into next
powerpc/configs: Remove unnecessary ftrace symbols
powerpc/configs: Update ppc64_defconfig with savedefconfig
Merge branch 'fixes' into next
powerpc/ipic: Remove unused ipic_set_priority()
powerpc/configs: Don't enable PPC_EARLY_DEBUG in defconfigs
powerpc: Add some documentation of ISA versions
powerpc/pseries: Fix node leak in update_lmb_associativity_index()
powerpc/mm: Remove very old comment in hash-4k.h
Merge branch 'next' of https://git.kernel.org/.../scottwood/linux into next

Oliver O'Halloran (2):
powerpc/powernv: Remove PCI_MSI ifdef checks
powerpc/zImage: Also check for stdout-path

Ram Pai (1):
powerpc/pkeys: Fix handling of pkey state across fork()

Ravi Bangoria (1):
Powerpc/perf: Wire up PMI throttling

Rob Herring (9):
powerpc: Rework btext_find_display to use of_stdout and device_type helpers
powerpc: Use device_type helpers to access the node type
macintosh: windfarm: Another convert to using %pOFn instead of device_node.name
macintosh: Use device_type helpers to access the node type
cxl: Use device_type helpers to access the node type
powerpc/pseries/pmem: Convert to %pOFn instead of device_node.name
powerpc: Use of_node_name_eq for node name comparisons
ide: Use of_node_name_eq for node name comparisons
macintosh: Use of_node_name_{eq, prefix} for node name comparisons

Russell Currey (1):
powerpc/tools/checkpatch: Ignore DT_SPLIT_BINDING_PATCH

Sabyasachi Gupta (2):
powerpc/pasemi: Use dma_zalloc_coherent()
arch/powerpc/fsl_rmu: Use dma_zalloc_coherent

Satheesh Rajendran (3):
powerpc/configs: Add CONFIG_NR_CPUS to ppc64_defconfig
powerpc/configs: Add missing config symbols for ppc64_defconfig
powerpc/configs: Add KVM guest defconfig

Scott Wood (4):
powerpc/fsl: Use new clockgen binding
powerpc/dts/fsl: Fix dtc-flagged interrupt errors
powerpc/configs/85xx: Enable CONFIG_DEBUG_KERNEL
Revert "powerpc/fsl_pci: simplify fsl_pci_dma_set_mask"

Stephen Rothwell (1):
powerpc: annotate implicit fall throughs

Yangtao Li (2):
powerpc/powernv/vas: Use DEFINE_SHOW_ATTRIBUTE macro
powerpc/fadump: Change to use DEFINE_SHOW_ATTRIBUTE macro

Yuantian Tang (1):
clk: qoriq: add more compatibles strings

Yue Haibing (1):
powerpc/85xx: Drop pointless static qualifier

YueHaibing (2):
powerpc64/ftrace: Drop pointless static qualifier in is_b_op()
powerpc/eeh: Fix debugfs_simple_attr.cocci warnings


Documentation/admin-guide/kernel-parameters.txt | 2 +-
.../devicetree/bindings/clock/qoriq-clock.txt | 6 +
Documentation/powerpc/firmware-assisted-dump.txt | 17 +-
Documentation/powerpc/isa-versions.rst | 74 +++
arch/powerpc/Kconfig | 15 +-
arch/powerpc/Makefile | 28 +-
arch/powerpc/boot/dts/bamboo.dts | 4 +-
arch/powerpc/boot/dts/fsl/b4420si-pre.dtsi | 4 +-
arch/powerpc/boot/dts/fsl/b4860si-pre.dtsi | 8 +-
arch/powerpc/boot/dts/fsl/b4si-post.dtsi | 15 -
arch/powerpc/boot/dts/fsl/mpc8641_hpcn.dts | 128 ++---
arch/powerpc/boot/dts/fsl/mpc8641_hpcn_36b.dts | 128 ++---
arch/powerpc/boot/dts/fsl/mpc8641si-post.dtsi | 2 +
arch/powerpc/boot/dts/fsl/p1020rdb-pc.dtsi | 4 +-
arch/powerpc/boot/dts/fsl/p2041si-post.dtsi | 18 -
arch/powerpc/boot/dts/fsl/p2041si-pre.dtsi | 8 +-
arch/powerpc/boot/dts/fsl/p3041si-post.dtsi | 18 -
arch/powerpc/boot/dts/fsl/p3041si-pre.dtsi | 8 +-
arch/powerpc/boot/dts/fsl/p4080si-post.dtsi | 70 ---
arch/powerpc/boot/dts/fsl/p4080si-pre.dtsi | 16 +-
arch/powerpc/boot/dts/fsl/p5020si-pre.dtsi | 4 +-
arch/powerpc/boot/dts/fsl/p5040si-post.dtsi | 18 -
arch/powerpc/boot/dts/fsl/p5040si-pre.dtsi | 8 +-
arch/powerpc/boot/dts/fsl/qoriq-clockgen1.dtsi | 47 --
arch/powerpc/boot/dts/fsl/qoriq-clockgen2.dtsi | 30 --
arch/powerpc/boot/dts/fsl/t1023si-post.dtsi | 16 -
arch/powerpc/boot/dts/fsl/t102xsi-pre.dtsi | 4 +-
arch/powerpc/boot/dts/fsl/t1040si-post.dtsi | 44 --
arch/powerpc/boot/dts/fsl/t104xsi-pre.dtsi | 8 +-
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 22 -
arch/powerpc/boot/dts/fsl/t208xsi-pre.dtsi | 8 +-
arch/powerpc/boot/dts/fsl/t4240si-post.dtsi | 61 ---
arch/powerpc/boot/dts/fsl/t4240si-pre.dtsi | 24 +-
arch/powerpc/boot/dts/mpc832x_rdb.dts | 4 -
arch/powerpc/boot/serial.c | 3 +-
arch/powerpc/configs/fsl-emb-nonhw.config | 1 +
arch/powerpc/configs/g5_defconfig | 1 -
arch/powerpc/configs/guest.config | 13 +
arch/powerpc/configs/maple_defconfig | 1 -
arch/powerpc/configs/pmac32_defconfig | 1 -
arch/powerpc/configs/ppc64_defconfig | 81 +--
arch/powerpc/configs/ppc6xx_defconfig | 1 -
arch/powerpc/configs/pseries_defconfig | 2 -
arch/powerpc/include/asm/Kbuild | 4 +
arch/powerpc/include/asm/asm-prototypes.h | 1 -
arch/powerpc/include/asm/book3s/32/hash.h | 1 +
arch/powerpc/include/asm/book3s/32/mmu-hash.h | 15 +
arch/powerpc/include/asm/book3s/32/pgalloc.h | 40 +-
arch/powerpc/include/asm/book3s/32/pgtable.h | 46 +-
arch/powerpc/include/asm/book3s/64/hash-4k.h | 6 +-
arch/powerpc/include/asm/book3s/64/mmu.h | 9 +
arch/powerpc/include/asm/book3s/64/pgalloc.h | 6 +-
arch/powerpc/include/asm/book3s/64/pgtable.h | 2 +-
arch/powerpc/include/asm/cache.h | 2 +-
arch/powerpc/include/asm/code-patching.h | 23 +-
arch/powerpc/include/asm/cputable.h | 9 +-
arch/powerpc/include/asm/dma-mapping.h | 7 -
arch/powerpc/include/asm/fadump.h | 7 +-
arch/powerpc/include/asm/feature-fixups.h | 12 +
arch/powerpc/include/asm/hugetlb.h | 15 +-
arch/powerpc/include/asm/io.h | 13 +-
arch/powerpc/include/asm/iommu.h | 17 +-
arch/powerpc/include/asm/ipic.h | 1 -
arch/powerpc/include/asm/mmu.h | 49 +-
arch/powerpc/include/asm/mmu_context.h | 32 +-
arch/powerpc/include/asm/{ => nohash/32}/mmu-40x.h | 0
arch/powerpc/include/asm/{ => nohash/32}/mmu-44x.h | 3 +
arch/powerpc/include/asm/{ => nohash/32}/mmu-8xx.h | 4 +
arch/powerpc/include/asm/nohash/32/mmu.h | 25 +
arch/powerpc/include/asm/nohash/32/pgalloc.h | 27 +-
arch/powerpc/include/asm/nohash/32/pgtable.h | 15 +-
arch/powerpc/include/asm/nohash/32/pte-40x.h | 2 +-
arch/powerpc/include/asm/nohash/32/pte-8xx.h | 3 -
arch/powerpc/include/asm/nohash/64/mmu.h | 12 +
arch/powerpc/include/asm/nohash/64/pgalloc.h | 5 +-
arch/powerpc/include/asm/{ => nohash}/mmu-book3e.h | 0
arch/powerpc/include/asm/nohash/mmu.h | 11 +
arch/powerpc/include/asm/nohash/pgtable.h | 4 +
arch/powerpc/include/asm/opal.h | 1 +
arch/powerpc/include/asm/page.h | 18 +-
arch/powerpc/include/asm/page_32.h | 3 +-
arch/powerpc/include/asm/pci-bridge.h | 1 +
arch/powerpc/include/asm/pci.h | 4 +
arch/powerpc/include/asm/perf_event.h | 3 +
arch/powerpc/include/asm/perf_event_server.h | 2 +
arch/powerpc/include/asm/pgtable-types.h | 4 +
arch/powerpc/include/asm/pgtable.h | 32 +-
arch/powerpc/include/asm/ppc-opcode.h | 1 +
arch/powerpc/include/asm/ppc_asm.h | 29 +-
arch/powerpc/include/asm/reg.h | 4 +-
arch/powerpc/include/asm/setup.h | 7 +
arch/powerpc/include/asm/sfp-machine.h | 92 ++--
arch/powerpc/include/asm/slice.h | 14 +-
arch/powerpc/include/asm/syscall.h | 3 +-
arch/powerpc/include/asm/systbl.h | 396 ---------------
arch/powerpc/include/asm/time.h | 2 +-
arch/powerpc/include/asm/tlb.h | 2 +-
arch/powerpc/include/asm/uaccess.h | 2 +-
arch/powerpc/include/asm/unistd.h | 3 +-
arch/powerpc/include/uapi/asm/Kbuild | 2 +
arch/powerpc/include/uapi/asm/perf_regs.h | 1 +
arch/powerpc/include/uapi/asm/unistd.h | 389 +-------------
arch/powerpc/kernel/Makefile | 12 +-
arch/powerpc/kernel/btext.c | 16 +-
arch/powerpc/kernel/cacheinfo.c | 2 +-
arch/powerpc/kernel/cpu_setup_6xx.S | 2 +-
arch/powerpc/kernel/cpu_setup_fsl_booke.S | 2 +-
arch/powerpc/kernel/cputable.c | 10 +-
arch/powerpc/kernel/dma-iommu.c | 2 -
arch/powerpc/kernel/dma-swiotlb.c | 6 +-
arch/powerpc/kernel/dma.c | 31 +-
arch/powerpc/kernel/eeh.c | 20 +-
arch/powerpc/kernel/eeh_driver.c | 2 +-
arch/powerpc/kernel/eeh_event.c | 9 +-
arch/powerpc/kernel/entry_32.S | 10 +-
arch/powerpc/kernel/entry_64.S | 16 +-
arch/powerpc/kernel/exceptions-64e.S | 26 +-
arch/powerpc/kernel/exceptions-64s.S | 2 +-
arch/powerpc/kernel/fadump.c | 154 +++++-
arch/powerpc/kernel/head_32.S | 20 +-
arch/powerpc/kernel/head_44x.S | 11 +-
arch/powerpc/kernel/head_8xx.S | 369 +++++---------
arch/powerpc/kernel/head_booke.h | 6 +
arch/powerpc/kernel/head_fsl_booke.S | 15 +
arch/powerpc/kernel/iommu.c | 69 +--
arch/powerpc/kernel/isa-bridge.c | 3 +-
arch/powerpc/kernel/legacy_serial.c | 10 +-
arch/powerpc/kernel/misc_32.S | 4 +-
arch/powerpc/kernel/nvram_64.c | 1 +
arch/powerpc/kernel/pci_of_scan.c | 11 +-
arch/powerpc/kernel/pmc.c | 2 +-
arch/powerpc/kernel/prom.c | 10 +-
arch/powerpc/kernel/ptrace.c | 54 +-
arch/powerpc/kernel/security.c | 29 +-
arch/powerpc/kernel/setup-common.c | 7 +-
arch/powerpc/kernel/setup_32.c | 6 +-
arch/powerpc/kernel/signal_32.c | 50 +-
arch/powerpc/kernel/signal_64.c | 71 ++-
arch/powerpc/kernel/syscalls/Makefile | 63 +++
arch/powerpc/kernel/syscalls/syscall.tbl | 427 ++++++++++++++++
arch/powerpc/kernel/syscalls/syscallhdr.sh | 37 ++
arch/powerpc/kernel/syscalls/syscalltbl.sh | 36 ++
arch/powerpc/kernel/sysfs.c | 2 +-
arch/powerpc/kernel/systbl.S | 40 +-
arch/powerpc/kernel/systbl_chk.c | 60 ---
arch/powerpc/kernel/trace/ftrace.c | 2 +-
arch/powerpc/kernel/traps.c | 3 +-
arch/powerpc/kernel/vdso.c | 7 +-
arch/powerpc/kernel/vmlinux.lds.S | 18 +-
arch/powerpc/kvm/book3s_64_vio.c | 18 +-
arch/powerpc/kvm/bookehv_interrupts.S | 4 +
arch/powerpc/kvm/e500.h | 2 +-
arch/powerpc/kvm/e500_emulate.c | 7 +
arch/powerpc/lib/code-patching.c | 16 -
arch/powerpc/lib/feature-fixups.c | 27 +-
arch/powerpc/mm/44x_mmu.c | 14 +-
arch/powerpc/mm/8xx_mmu.c | 10 +-
arch/powerpc/mm/Makefile | 11 +-
arch/powerpc/mm/dma-noncoherent.c | 15 +-
arch/powerpc/mm/dump_bats.c | 173 +++++++
arch/powerpc/mm/dump_linuxpagetables-generic.c | 2 -
arch/powerpc/mm/dump_sr.c | 64 +++
arch/powerpc/mm/fault.c | 49 +-
arch/powerpc/mm/hash_low_32.S | 33 +-
arch/powerpc/mm/hugetlbpage.c | 40 +-
arch/powerpc/mm/init-common.c | 56 +-
arch/powerpc/mm/mem.c | 51 +-
arch/powerpc/mm/mmu_context.c | 10 +
arch/powerpc/mm/mmu_context_book3s64.c | 15 -
arch/powerpc/mm/mmu_context_iommu.c | 110 +++-
arch/powerpc/mm/mmu_context_nohash.c | 4 +-
arch/powerpc/mm/mmu_decl.h | 2 +-
arch/powerpc/mm/numa.c | 2 +-
arch/powerpc/mm/pgtable-book3s64.c | 88 +---
arch/powerpc/mm/pgtable-frag.c | 119 +++++
arch/powerpc/mm/pgtable.c | 26 +-
arch/powerpc/mm/pgtable_32.c | 29 +-
arch/powerpc/mm/pkeys.c | 25 +-
arch/powerpc/mm/ppc_mmu_32.c | 51 +-
arch/powerpc/mm/tlb_low_64e.S | 7 +
arch/powerpc/oprofile/Makefile | 2 +-
arch/powerpc/oprofile/common.c | 2 +-
arch/powerpc/perf/core-book3s.c | 39 +-
arch/powerpc/perf/imc-pmu.c | 6 +-
arch/powerpc/perf/isa207-common.c | 58 ++-
arch/powerpc/perf/isa207-common.h | 9 +-
arch/powerpc/perf/perf_regs.c | 7 +
arch/powerpc/perf/power9-pmu.c | 22 +-
arch/powerpc/platforms/44x/warp.c | 6 +-
arch/powerpc/platforms/4xx/ocm.c | 17 +-
arch/powerpc/platforms/4xx/pci.c | 7 +-
arch/powerpc/platforms/512x/Kconfig | 2 +-
arch/powerpc/platforms/52xx/Kconfig | 2 +-
arch/powerpc/platforms/52xx/efika.c | 6 +-
arch/powerpc/platforms/82xx/Kconfig | 4 +-
arch/powerpc/platforms/83xx/Kconfig | 2 +-
arch/powerpc/platforms/83xx/misc.c | 17 +
arch/powerpc/platforms/85xx/corenet_generic.c | 10 -
arch/powerpc/platforms/85xx/qemu_e500.c | 9 -
arch/powerpc/platforms/85xx/t1042rdb_diu.c | 2 +-
arch/powerpc/platforms/86xx/Kconfig | 2 +-
arch/powerpc/platforms/86xx/mpc86xx_smp.c | 3 +-
arch/powerpc/platforms/Kconfig | 8 +-
arch/powerpc/platforms/Kconfig.cputype | 21 +-
arch/powerpc/platforms/amigaone/Kconfig | 2 +-
arch/powerpc/platforms/cell/cbe_regs.c | 6 +-
arch/powerpc/platforms/cell/setup.c | 5 +-
arch/powerpc/platforms/cell/spu_callbacks.c | 17 +-
arch/powerpc/platforms/cell/spu_manage.c | 10 +-
arch/powerpc/platforms/chrp/Kconfig | 2 +-
arch/powerpc/platforms/chrp/pci.c | 4 +-
arch/powerpc/platforms/chrp/setup.c | 10 +-
arch/powerpc/platforms/embedded6xx/Kconfig | 2 +-
arch/powerpc/platforms/maple/pci.c | 6 +-
arch/powerpc/platforms/pasemi/dma_lib.c | 4 +-
arch/powerpc/platforms/pasemi/pci.c | 66 +++
arch/powerpc/platforms/pasemi/setup.c | 86 ++++
arch/powerpc/platforms/powermac/cache.S | 4 +-
arch/powerpc/platforms/powermac/feature.c | 14 +-
arch/powerpc/platforms/powermac/low_i2c.c | 11 +-
arch/powerpc/platforms/powermac/pci.c | 27 +-
arch/powerpc/platforms/powermac/pfunc_base.c | 7 +-
arch/powerpc/platforms/powermac/pic.c | 6 +-
arch/powerpc/platforms/powermac/setup.c | 10 +-
arch/powerpc/platforms/powermac/sleep.S | 4 +-
arch/powerpc/platforms/powermac/smp.c | 3 +-
arch/powerpc/platforms/powermac/udbg_adb.c | 2 +-
arch/powerpc/platforms/powermac/udbg_scc.c | 2 +-
arch/powerpc/platforms/powernv/eeh-powernv.c | 8 +-
arch/powerpc/platforms/powernv/npu-dma.c | 564 +++++++++++++++++----
arch/powerpc/platforms/powernv/opal-power.c | 3 +-
arch/powerpc/platforms/powernv/opal.c | 5 +-
arch/powerpc/platforms/powernv/pci-ioda-tce.c | 5 +-
arch/powerpc/platforms/powernv/pci-ioda.c | 265 ++++------
arch/powerpc/platforms/powernv/pci.c | 49 +-
arch/powerpc/platforms/powernv/pci.h | 36 +-
arch/powerpc/platforms/powernv/vas-debug.c | 28 +-
arch/powerpc/platforms/pseries/hotplug-memory.c | 16 +-
arch/powerpc/platforms/pseries/iommu.c | 88 ++--
arch/powerpc/platforms/pseries/pci.c | 22 +
arch/powerpc/platforms/pseries/pmem.c | 8 +-
arch/powerpc/platforms/pseries/setup.c | 12 +-
arch/powerpc/platforms/pseries/vio.c | 27 +-
arch/powerpc/sysdev/Makefile | 2 +-
arch/powerpc/sysdev/fsl_rio.h | 2 +-
arch/powerpc/sysdev/fsl_rmu.c | 4 +-
arch/powerpc/sysdev/ipic.c | 28 -
arch/powerpc/sysdev/scom.c | 4 +-
arch/powerpc/sysdev/xive/common.c | 2 +-
arch/powerpc/tools/checkpatch.sh | 1 +
arch/powerpc/xmon/xmon.c | 33 +-
drivers/cpufreq/pmac32-cpufreq.c | 4 +-
drivers/cpuidle/cpuidle-pseries.c | 8 +-
drivers/crypto/amcc/crypto4xx_core.c | 2 +-
drivers/ide/pmac.c | 2 +-
drivers/macintosh/ans-lcd.c | 2 +-
drivers/macintosh/macio_asic.c | 35 +-
drivers/macintosh/macio_sysfs.c | 18 +-
drivers/macintosh/rack-meter.c | 13 +-
drivers/macintosh/via-pmu.c | 4 +-
drivers/macintosh/windfarm_fcu_controls.c | 14 +-
drivers/macintosh/windfarm_lm87_sensor.c | 4 +-
drivers/macintosh/windfarm_smu_controls.c | 4 +-
drivers/macintosh/windfarm_smu_sat.c | 9 +-
drivers/macintosh/windfarm_smu_sensors.c | 15 +-
drivers/misc/cxl/pci.c | 4 +-
drivers/misc/cxl/vphb.c | 12 -
drivers/misc/ocxl/afu_irq.c | 1 -
drivers/misc/ocxl/config.c | 2 +-
drivers/misc/ocxl/link.c | 25 +-
drivers/vfio/pci/Kconfig | 6 +
drivers/vfio/pci/Makefile | 1 +
drivers/vfio/pci/trace.h | 102 ++++
drivers/vfio/pci/vfio_pci.c | 42 +-
drivers/vfio/pci/vfio_pci_nvlink2.c | 482 ++++++++++++++++++
drivers/vfio/pci/vfio_pci_private.h | 20 +
drivers/vfio/vfio_iommu_spapr_tce.c | 74 +--
include/linux/mmzone.h | 2 +-
include/uapi/linux/vfio.h | 42 ++
lib/raid6/Makefile | 15 +
lib/test_debug_virtual.c | 1 +
tools/arch/powerpc/include/uapi/asm/perf_regs.h | 1 +
tools/perf/arch/powerpc/include/perf_regs.h | 3 +-
tools/perf/arch/powerpc/util/perf_regs.c | 1 +
tools/testing/selftests/powerpc/include/utils.h | 10 +
tools/testing/selftests/powerpc/ptrace/core-pkey.c | 5 +-
.../testing/selftests/powerpc/ptrace/ptrace-gpr.c | 2 +-
.../selftests/powerpc/ptrace/ptrace-tm-gpr.c | 4 +-
.../selftests/powerpc/ptrace/ptrace-tm-spd-tar.c | 2 +-
.../selftests/powerpc/ptrace/ptrace-tm-spd-vsx.c | 3 +-
.../selftests/powerpc/ptrace/ptrace-tm-spr.c | 2 +-
.../selftests/powerpc/ptrace/ptrace-tm-tar.c | 2 +-
.../selftests/powerpc/ptrace/ptrace-tm-vsx.c | 3 +-
tools/testing/selftests/powerpc/tm/.gitignore | 1 +
tools/testing/selftests/powerpc/tm/Makefile | 2 +-
.../selftests/powerpc/tm/tm-signal-sigreturn-nt.c | 46 ++
296 files changed, 4689 insertions(+), 3411 deletions(-)
create mode 100644 Documentation/powerpc/isa-versions.rst
create mode 100644 arch/powerpc/configs/guest.config
rename arch/powerpc/include/asm/{ => nohash/32}/mmu-40x.h (100%)
rename arch/powerpc/include/asm/{ => nohash/32}/mmu-44x.h (98%)
rename arch/powerpc/include/asm/{ => nohash/32}/mmu-8xx.h (98%)
create mode 100644 arch/powerpc/include/asm/nohash/32/mmu.h
create mode 100644 arch/powerpc/include/asm/nohash/64/mmu.h
rename arch/powerpc/include/asm/{ => nohash}/mmu-book3e.h (100%)
create mode 100644 arch/powerpc/include/asm/nohash/mmu.h
delete mode 100644 arch/powerpc/include/asm/systbl.h
create mode 100644 arch/powerpc/kernel/syscalls/Makefile
create mode 100644 arch/powerpc/kernel/syscalls/syscall.tbl
create mode 100644 arch/powerpc/kernel/syscalls/syscallhdr.sh
create mode 100644 arch/powerpc/kernel/syscalls/syscalltbl.sh
delete mode 100644 arch/powerpc/kernel/systbl_chk.c
create mode 100644 arch/powerpc/mm/dump_bats.c
create mode 100644 arch/powerpc/mm/dump_sr.c
create mode 100644 arch/powerpc/mm/pgtable-frag.c
create mode 100644 drivers/vfio/pci/trace.h
create mode 100644 drivers/vfio/pci/vfio_pci_nvlink2.c
create mode 100644 tools/testing/selftests/powerpc/tm/tm-signal-sigreturn-nt.c
-----BEGIN PGP SIGNATURE-----

iQIcBAEBAgAGBQJcJL3eAAoJEFHr6jzI4aWAom8P/RNu5cmjgbl2WIgke+xZDb8M
FR868yMM7VFryQJ9bQ6hXMMF5RDD6mn4c/NBk61l5SgcsCfIa6gM5uiwp8T64/DC
t6qZ9XNL99dTU3R5PEI8MBDOcGci0E9hDDKZAD7Ez9kuyeOWf7OP5Rk5xOiCp7Gv
HADB81eXk+9GXFVKwEsludg7WaYCB2fthNWLDf4WTocHUadonR+NsvSntZUBU2Vl
f59VVzBekROBo23WuAi+wnPEu8dbzMeQPsrsQWUBSru7KS2tZXKsU5+N5cql5gMn
QCNwf/L52zgoFiroOyYHuXLAgd7xxDP4nrZhJTZmWH81P3ej+g3HN0GdJbci0+Rh
6RdNi3U/KlH+DZGGIAmulwpUBCxyyNi/aY46zaoGPMSw+EJwpT15A9IG+dHn9Oba
owUf66LXELmdkT0KpqhEjk/PI05ySINcQRmX0+Ar2eiUL8JeXc3bqDngr0Q/bbSv
ZkUnuglxrIuw/UInM2X7fR3uR6Hok8mEhzDuYhxRnMTv+BTYMeYIpSljFq5juoxF
v2wsrAkqS/T16vo75WHqWjAXUpUAWr9ODXisivdNC/Yrt1qfEv+8Cg+QjsC4V6e9
8dYB89FxENEy0h9WGuJ9jdar8N1rgcKFSCcgddsNz7XqI8LlKY0wCv1r2KifB6or
Ietwk+gAlOzJCxyDyjU/
=8AUI
-----END PGP SIGNATURE-----