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

Michael Ellerman
2021-04-30T04:02:55Z

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Hi Linus,

Please pull powerpc updates for 5.13.

No conflicts that I'm aware of.

Notable out of area changes:

51c66ad849a7 powerpc/bpf: Implement extended BPF on PPC32
Documentation/admin-guide/sysctl/net.rst

808094fcbf41 lib/vdso: Add vdso_data pointer as input to __arch_get_timens_vdso_data()
arch/arm64/include/asm/vdso/compat_gettimeofday.h
arch/arm64/include/asm/vdso/gettimeofday.h
arch/s390/include/asm/vdso/gettimeofday.h
arch/x86/include/asm/vdso/gettimeofday.h
lib/vdso/gettimeofday.c

fb05121fd6a2 signal: Add unsafe_get_compat_sigset()
include/linux/compat.h
include/linux/uaccess.h

cheers

The following changes since commit 1e28eed17697bcf343c6743f0028cc3b5dd88bf0:

Linux 5.12-rc3 (2021-03-14 14:41:02 -0700)

are available in the git repository at:

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

for you to fetch changes up to 5256426247837feb8703625bda7fcfc824af04cf:

powerpc/signal32: Fix erroneous SIGSEGV on RT signal return (2021-04-28 23:35:11 +1000)

- ------------------------------------------------------------------
powerpc updates for 5.13

- Enable KFENCE for 32-bit.

- Implement EBPF for 32-bit.

- Convert 32-bit to do interrupt entry/exit in C.

- Convert 64-bit BookE to do interrupt entry/exit in C.

- Changes to our signal handling code to use user_access_begin/end() more extensively.

- Add support for time namespaces (CONFIG_TIME_NS)

- A series of fixes that allow us to reenable STRICT_KERNEL_RWX.

- Other smaller features, fixes & cleanups.

Thanks to: Alexey Kardashevskiy, Andreas Schwab, Andrew Donnellan, Aneesh Kumar K.V,
Athira Rajeev, Bhaskar Chowdhury, Bixuan Cui, Cédric Le Goater, Chen Huang, Chris
Packham, Christophe Leroy, Christopher M. Riedl, Colin Ian King, Dan Carpenter, Daniel
Axtens, Daniel Henrique Barboza, David Gibson, Davidlohr Bueso, Denis Efremov,
dingsenjie, Dmitry Safonov, Dominic DeMarco, Fabiano Rosas, Ganesh Goudar, Geert
Uytterhoeven, Geetika Moolchandani, Greg Kurz, Guenter Roeck, Haren Myneni, He Ying,
Jiapeng Chong, Jordan Niethe, Laurent Dufour, Lee Jones, Leonardo Bras, Li Huafei,
Madhavan Srinivasan, Mahesh Salgaonkar, Masahiro Yamada, Nathan Chancellor, Nathan
Lynch, Nicholas Piggin, Oliver O'Halloran, Paul Menzel, Pu Lehui, Randy Dunlap, Ravi
Bangoria, Rosen Penev, Russell Currey, Santosh Sivaraj, Sebastian Andrzej Siewior,
Segher Boessenkool, Shivaprasad G Bhat, Srikar Dronamraju, Stephen Rothwell, Thadeu Lima
de Souza Cascardo, Thomas Gleixner, Tony Ambardar, Tyrel Datwyler, Vaibhav Jain,
Vincenzo Frascino, Xiongwei Song, Yang Li, Yu Kuai, Zhang Yunkai.

- ------------------------------------------------------------------
Alexey Kardashevskiy (3):
powerpc/iommu: Allocate it_map by vmalloc
powerpc/iommu: Do not immediately panic when failed IOMMU table allocation
powerpc/iommu: Annotate nested lock for lockdep

Aneesh Kumar K.V (2):
powerpc/book3s64/kuap: Move Kconfig varriables to BOOK3S_64
powerpc/mm: Revert "powerpc/mm: Remove DEBUG_VM_PGTABLE support on powerpc"

Athira Rajeev (4):
powerpc/perf: Fix PMU constraint check for EBB events
powerpc/perf: Expose processor pipeline stage cycles using PERF_SAMPLE_WEIGHT_STRUCT
powerpc/perf: Fix sampled instruction type for larx/stcx
powerpc/perf: Fix the threshold event selection for memory events in power10

Bhaskar Chowdhury (6):
powerpc: Fix spelling of "droping" to "dropping" in traps.c
powerpc/64e: Trivial spelling fixes throughout head_fsl_booke.S
powerpc/mm/book3s64: Fix a typo in mmu_context.c
powerpc/kernel: Trivial typo fix in kgdb.c
cxl: Fix couple of spellings
powerpc: Spelling/typo fixes

Bixuan Cui (5):
powerpc/pseries: Make symbol '__pcpu_scope_hcall_stats' static
powerpc/pseries/pmem: Make symbol 'drc_pmem_match' static
powerpc/perf: Make symbol 'isa207_pmu_format_attr' static
powerpc/perf/hv-24x7: Make some symbols static
powerpc/powernv: make symbol 'mpipl_kobj' static

Chen Huang (1):
powerpc: Fix HAVE_HARDLOCKUP_DETECTOR_ARCH build configuration

Christophe Leroy (130):
powerpc: Enable KFENCE for PPC32
powerpc/uaccess: Also perform 64 bits copies in unsafe_copy_to_user() on ppc32
powerpc/uaccess: Swap clear_user() and __clear_user()
powerpc/uaccess: Move copy_mc_xxx() functions down
powerpc/syscalls: Use sys_old_select() in ppc_select()
powerpc/lib: Don't use __put_user_asm_goto() outside of uaccess.h
powerpc/net: Switch csum_and_copy_{to/from}_user to user_access block
powerpc/futex: Switch to user_access block
powerpc/ptrace: Convert gpr32_set_common() to user access block
powerpc/traps: Declare unrecoverable_exception() as __noreturn
powerpc/40x: Don't use SPRN_SPRG_SCRATCH0/1 in TLB miss handlers
powerpc/40x: Change CRITICAL_EXCEPTION_PROLOG macro to a gas macro
powerpc/40x: Save SRR0/SRR1 and r10/r11 earlier in critical exception
powerpc/40x: Reorder a few instructions in critical exception prolog
powerpc/40x: Prepare for enabling MMU in critical exception prolog
powerpc/40x: Prepare normal exception handler for enabling MMU early
powerpc/32: Reconcile interrupts in C
powerpc/32: Entry cpu time accounting in C
powerpc/32: Handle bookE debugging in C in exception entry
powerpc/32: Use fast instruction to set MSR RI in exception prolog on 8xx
powerpc/32: Remove ksp_limit
powerpc/32: Always enable data translation in exception prolog
powerpc/32: Tag DAR in EXCEPTION_PROLOG_2 for the 8xx
powerpc/32: Enable instruction translation at the same time as data translation
powerpc/32: Statically initialise first emergency context
powerpc/32: Add vmap_stack_overflow label inside the macro
powerpc/32: Use START_EXCEPTION() as much as possible
powerpc/32: Move exception prolog code into .text once MMU is back on
powerpc/32: Provide a name to exception prolog continuation in virtual mode
powerpc/32: Refactor booke critical registers saving
powerpc/32: Perform normal function call in exception entry
powerpc/32: Always save non volatile registers on exception entry
powerpc/32: Replace ASM exception exit by C exception exit from ppc64
powerpc/32: Don't save thread.regs on interrupt entry
powerpc/32: Set regs parameter in r3 in transfer_to_handler
powerpc/32: Call bad_page_fault() from do_page_fault()
powerpc/32: Save trap number on stack in exception prolog
powerpc/32: Add a prepare_transfer_to_handler macro for exception prologs
powerpc/32: Only restore non volatile registers when required
powerpc/32: Dismantle EXC_XFER_STD/LITE/TEMPLATE
powerpc/32: Remove the xfer parameter in EXCEPTION() macro
powerpc/32: Refactor saving of volatile registers in exception prologs
powerpc/32: Save remaining registers in exception prolog
powerpc/32: Return directly from power_save_ppc32_restore()
powerpc/32: Only use prepare_transfer_to_handler function on book3s/32 and e500
powerpc/32s: Move KUEP locking/unlocking in C
powerpc/64s: Make kuap_check_amr() and kuap_get_and_check_amr() generic
powerpc/32s: Create C version of kuap save/restore/check helpers
powerpc/8xx: Create C version of kuap save/restore/check helpers
powerpc/32: Manage KUAP in C
powerpc/Makefile: Remove workaround for gcc versions below 4.9
powerpc/math: Fix missing __user qualifier for get_user() and other sparse warnings
powerpc/asm-offsets: GPR14 is not needed either
powerpc/mm: Remove unneeded #ifdef CONFIG_PPC_MEM_KEYS
powerpc: Activate HAVE_RELIABLE_STACKTRACE for all
powerpc: Rename 'tsk' parameter into 'task'
powerpc: Convert stacktrace to generic ARCH_STACKWALK
powerpc: Fix arch_stack_walk() to have running function as first entry
powerpc/embedded6xx: Remove CONFIG_MV64X60
powerpc/irq: Inline call_do_irq() and call_do_softirq()
powerpc/uaccess: Remove __get_user_allowed() and unsafe_op_wrap()
powerpc/uaccess: Define ___get_user_instr() for ppc32
powerpc/align: Convert emulate_spe() to user_access_begin
powerpc/uaccess: Remove __get/put_user_inatomic()
powerpc/uaccess: Move get_user_instr helpers in asm/inst.h
powerpc/align: Don't use __get_user_instr() on kernel addresses
powerpc/uaccess: Call might_fault() inconditionaly
powerpc/uaccess: Remove __unsafe_put_user_goto()
powerpc/uaccess: Remove __chk_user_ptr() in __get/put_user
powerpc/uaccess: Remove calls to __get_user_bad() and __put_user_bad()
powerpc/uaccess: Split out __get_user_nocheck()
powerpc/uaccess: Rename __get/put_user_check/nocheck
powerpc/uaccess: Refactor get/put_user() and __get/put_user()
powerpc/uaccess: Introduce __get_user_size_goto()
powerpc/uaccess: Use asm goto for get_user when compiler supports it
signal: Add unsafe_get_compat_sigset()
powerpc/uaccess: Also perform 64 bits copies in unsafe_copy_from_user() on ppc32
powerpc/signal: Add unsafe_copy_ck{fpr/vsx}_from_user
powerpc/signal32: Rename save_user_regs_unsafe() and save_general_regs_unsafe()
powerpc/signal32: Remove ifdefery in middle of if/else in sigreturn()
powerpc/signal32: Perform access_ok() inside restore_user_regs()
powerpc/signal32: Reorder user reads in restore_tm_user_regs()
powerpc/signal32: Convert restore_[tm]_user_regs() to user access block
powerpc/signal32: Convert do_setcontext[_tm]() to user access block
powerpc/signal32: Simplify logging in sigreturn()
powerpc/bpf: Remove classical BPF support for PPC32
powerpc/bpf: Change register numbering for bpf_set/is_seen_register()
powerpc/bpf: Move common helpers into bpf_jit.h
powerpc/bpf: Move common functions into bpf_jit_comp.c
powerpc/bpf: Change values of SEEN_ flags
powerpc/asm: Add some opcodes in asm/ppc-opcode.h for PPC32 eBPF
powerpc/bpf: Implement extended BPF on PPC32
powerpc/bpf: Reallocate BPF registers to volatile registers when possible on PPC32
powerpc: Switch to relative jump labels
powerpc/32: Remove powerpc specific definition of 'ptrdiff_t'
powerpc/signal32: Fix build failure with CONFIG_SPE
powerpc/modules: Load modules closer to kernel text
powerpc/8xx: Define a MODULE area below kernel text
powerpc/32s: Define a MODULE area below kernel text all the time
powerpc/mem: Move cache flushing functions into mm/cacheflush.c
powerpc/mem: Declare __flush_dcache_icache() static
powerpc/mem: Remove address argument to flush_coherent_icache()
powerpc/mem: Call flush_coherent_icache() at higher level
powerpc/mem: Optimise flush_dcache_icache_hugepage()
powerpc/mem: flush_dcache_icache_phys() is for HIGHMEM pages only
powerpc/mem: Help GCC realise __flush_dcache_icache() flushes single pages
powerpc/mem: Inline flush_dcache_page()
powerpc/mem: Use kmap_local_page() in flushing functions
lib/vdso: Mark do_hres_timens() and do_coarse_timens() __always_inline()
lib/vdso: Add vdso_data pointer as input to __arch_get_timens_vdso_data()
powerpc/vdso: Add support for time namespaces
powerpc/8xx: Enhance readability of trap types
powerpc/32s: Enhance readability of trap types
powerpc/irq: Enhance readability of trap types
powerpc/inst: ppc_inst_as_u64() becomes ppc_inst_as_ulong()
powerpc: Enable OPTPROBES on PPC32
selftests/timens: Fix gettime_perf to work on powerpc
powerpc/32: Use r2 in wrtspr() instead of r0
powerpc/ebpf32: Fix comment on BPF_ALU{64} | BPF_LSH | BPF_K
powerpc/ebpf32: Rework 64 bits shifts to avoid tests and branches
powerpc/ebpf32: Use standard function call for functions within 32M distance
powerpc: Remove probe_user_read_inst()
powerpc: Make probe_kernel_read_inst() common to PPC32 and PPC64
powerpc: Rename probe_kernel_read_inst()
powerpc: Move copy_inst_from_kernel_nofault()
powerpc/64: Fix the definition of the fixmap area
powerpc/legacy_serial: Use early_ioremap()
powerpc/52xx: Fix an invalid ASM expression ('addi' used instead of 'add')
powerpc/kasan: Fix shadow start address with modules
powerpc/signal32: Fix erroneous SIGSEGV on RT signal return

Christopher M. Riedl (8):
powerpc/uaccess: Add unsafe_copy_from_user()
powerpc/signal: Add unsafe_copy_{vsx, fpr}_from_user()
powerpc/signal64: Remove non-inline calls from setup_sigcontext()
powerpc: Reference parameter in MSR_TM_ACTIVE() macro
powerpc/signal64: Remove TM ifdefery in middle of if/else block
powerpc/signal64: Replace setup_sigcontext() w/ unsafe_setup_sigcontext()
powerpc/signal64: Replace restore_sigcontext() w/ unsafe_restore_sigcontext()
powerpc/signal: Use __get_user() to copy sigset_t

Colin Ian King (1):
powerpc/44x: fix spelling mistake in Kconfig "varients" -> "variants"

Cédric Le Goater (9):
powerpc/xive: Introduce an IPI interrupt domain
powerpc/xive: Remove useless check on XIVE_IPI_HW_IRQ
powerpc/xive: Simplify xive_core_debug_show()
powerpc/xive: Drop check on irq_data in xive_core_debug_show()
powerpc/xive: Simplify the dump of XIVE interrupts under xmon
powerpc/xive: Fix xmon command "dxi"
powerpc/xive: Map one IPI interrupt per node
powerpc/xive: Modernize XIVE-IPI domain with an 'alloc' handler
powerpc/xive: Use the "ibm, chip-id" property only under PowerNV

Daniel Axtens (2):
powerpc/signal64: Rewrite handle_rt_signal64() to minimise uaccess switches
powerpc/signal64: Rewrite rt_sigreturn() to minimise uaccess switches

Daniel Henrique Barboza (3):
powerpc/pseries/hotplug-cpu: Show 'last online CPU' error in dlpar_cpu_offline()
powerpc/pseries: Introduce dlpar_unisolate_drc()
powerpc/pseries: Set UNISOLATE on dlpar_cpu_remove() failure

Davidlohr Bueso (3):
powerpc/spinlock: Define smp_mb__after_spinlock only once
powerpc/spinlock: Unserialize spin_is_locked
powerpc/qspinlock: Use generic smp_cond_load_relaxed

Denis Efremov (1):
powerpc/ptrace: Remove duplicate check from pt_regs_check()

Dmitry Safonov (1):
powerpc/vdso: Separate vvar vma from vdso

Ganesh Goudar (2):
powerpc/pseries/mce: Fix a typo in error type assignment
powerpc/mce: save ignore_event flag unconditionally for UE

Geert Uytterhoeven (1):
powerpc/chrp: Make hydra_init() static

Haren Myneni (1):
Documentation/powerpc: Add proper links for manual and tests

He Ying (1):
powerpc/setup_64: Fix sparse warnings

Jiapeng Chong (2):
powerpc: remove unneeded semicolon
powerpc/pci: fix warning comparing pointer to 0

Jordan Niethe (4):
powerpc/64s: Fix pte update for kernel memory on radix
selftests/powerpc: Test for spurious kernel memory faults on radix
powerpc/powernv/memtrace: Allow mmaping trace buffers
selftests/powerpc: Suggest memtrace instead of /dev/mem for ci memory

Laurent Dufour (2):
powerpc/pseries: export LPAR security flavor in lparcfg
cxl: don't manipulate the mm.mm_users field directly

Lee Jones (1):
powerpc/pseries: Move hvc_vio_init_early() prototype to shared location

Leonardo Bras (4):
powerpc/iommu: Enable remaining IOMMU Pagesizes present in LoPAR
powerpc/pseries/iommu: Fix window size for direct mapping with pmem
powerpc/kernel/iommu: Align size for IOMMU_PAGE_SIZE() to save TCEs
powerpc/kernel/iommu: Use largepool as a last resort when !largealloc

Li Huafei (2):
powerpc/security: Make symbol 'stf_barrier' static
powerpc/mce: Make symbol 'mce_ue_event_work' static

Madhavan Srinivasan (2):
powerpc/perf: Infrastructure to support checking of attr.config*
powerpc/perf: Add platform specific check_attr_config

Mahesh Salgaonkar (1):
powerpc/eeh: Fix EEH handling for hugepages in ioremap space.

Masahiro Yamada (2):
powerpc/syscalls: switch to generic syscalltbl.sh
powerpc/syscalls: switch to generic syscallhdr.sh

Michael Ellerman (27):
powerpc/eeh: Fix build failure with CONFIG_PROC_FS=n
powerpc/64s: Fold update_current_thread_[i]amr() into their only callers
powerpc: Fix section mismatch warning in smp_setup_pacas()
powerpc/fsl-pci: Fix section mismatch warning
powerpc/pseries: Only register vio drivers if vio bus exists
powerpc/mm/64s: Add _PAGE_KERNEL_ROX
powerpc/pseries: Add key to flags in pSeries_lpar_hpte_updateboltedpp()
powerpc/64s: Use htab_convert_pte_flags() in hash__mark_rodata_ro()
powerpc/mm/64s/hash: Factor out change_memory_range()
powerpc/mm/64s/hash: Add real-mode change_memory_range() for hash LPAR
powerpc/mm/64s: Allow STRICT_KERNEL_RWX again
powerpc/64: Move security code into security.c
powerpc/kexec: Don't use .machine ppc64 in trampoline_64.S
powerpc/mm/radix: Make radix__change_memory_range() static
powerpc/configs: Add PAPR_SCM to pseries_defconfig
powerpc/papr_scm: Fix build error due to wrong printf specifier
macintosh/via-pmu: Fix build warning
Merge branch 'topic/ppc-kvm' into next
powerpc/fadump: Fix compile error since trap type change
powerpc: Only define _TASK_CPU for 32-bit
powerpc/pseries: Stop calling printk in rtas_stop_self()
powerpc/kvm: Fix PR KVM with KUAP/MEM_KEYS enabled
powerpc/fadump: Fix sparse warnings
powerpc/powernv: Fix type of opal_mpipl_query_tag() addr argument
powerpc/64s: Add FA_DUMP to defconfig
powerpc/configs: Add IBMVNIC to some 64-bit configs
powerpc/kvm: Fix build error when PPC_MEM_KEYS/PPC_PSERIES=n

Nathan Chancellor (3):
powerpc/fadump: Mark fadump_calculate_reserve_size as __init
powerpc/prom: Mark identical_pvr_fixup as __init
powerpc: Avoid clang uninitialized warning in __get_user_size_allowed

Nathan Lynch (5):
powerpc/rtas: improve ppc_rtas_rmo_buf_show documentation
powerpc/rtas-proc: remove unused RMO_READ_BUF_MAX
powerpc/rtas: remove ibm_suspend_me_token
powerpc/rtas: move syscall filter setup into separate function
powerpc/rtas: rename RTAS_RMOBUF_MAX to RTAS_USER_REGION_SIZE

Nicholas Piggin (27):
powerpc/64s: Fix hash fault to use TRAP accessor
powerpc/64s: power4 nap fixup in C
KVM: PPC: Book3S HV P9: Restore host CTRL SPR after guest exit
KVM: PPC: Book3S HV: Nested move LPCR sanitising to sanitise_hv_regs
KVM: PPC: Book3S HV: Add a function to filter guest LPCR bits
KVM: PPC: Book3S HV: Disallow LPCR[AIL] to be set to 1 or 2
KVM: PPC: Book3S HV: Prevent radix guests setting LPCR[TC]
KVM: PPC: Book3S HV: Remove redundant mtspr PSPB
KVM: PPC: Book3S HV: remove unused kvmppc_h_protect argument
KVM: PPC: Book3S HV: Fix CONFIG_SPAPR_TCE_IOMMU=n default hcalls
powerpc/64s: Remove KVM handler support from CBE_RAS interrupts
powerpc/64s: remove KVM SKIP test from instruction breakpoint handler
KVM: PPC: Book3S HV: Ensure MSR[ME] is always set in guest MSR
KVM: PPC: Book3S HV: Ensure MSR[HV] is always clear in guest MSR
powerpc/syscall: switch user_exit_irqoff and trace_hardirqs_off order
powerpc/64e/interrupt: always save nvgprs on interrupt
powerpc/interrupt: update common interrupt code for
powerpc/64e/interrupt: use new interrupt return
powerpc/64e/interrupt: NMI save irq soft-mask state in C
powerpc/64e/interrupt: reconcile irq soft-mask state in C
powerpc/64e/interrupt: Use new interrupt context tracking scheme
powerpc/64e/interrupt: handle bad_page_fault in C
powerpc: clean up do_page_fault
powerpc: remove partial register save logic
powerpc: move norestart trap flag to bit 0
powerpc/powernv: Enable HAIL (HV AIL) for ISA v3.1 processors
powerpc/64s: Fix mm_cpumask memory ordering comment

Pu Lehui (2):
powerpc/xmon: Make symbol 'spu_inst_dump' static
powerpc/fadump: make symbol 'rtas_fadump_set_regval' static

Randy Dunlap (3):
selftests/powerpc: unmark non-kernel-doc comments
powerpc: iommu: fix build when neither PCI or IBMVIO is set
powerpc: make ALTIVEC select PPC_FPU

Ravi Bangoria (5):
powerpc/uprobes: Validation for prefixed instruction
powerpc/selftests/ptrace-hwbreak: Add testcases for 2nd DAWR
powerpc/selftests/perf-hwbreak: Coalesce event creation code
powerpc/selftests/perf-hwbreak: Add testcases for 2nd DAWR
powerpc/selftests: Add selftest to test concurrent perf/ptrace events

Russell Currey (1):
selftests/powerpc: Fix L1D flushing tests for Power10

Sebastian Andrzej Siewior (1):
powerpc/mm: Move the linear_mapping_mutex to the ifdef where it is used

Shivaprasad G Bhat (1):
powerpc/papr_scm: Implement support for H_SCM_FLUSH hcall

Srikar Dronamraju (4):
powerpc/smp: Reintroduce cpu_core_mask
Revert "powerpc/topology: Update topology_core_cpumask"
powerpc/smp: Cache CPU to chip lookup
powerpc/smp: Set numa node before updating mask

Thadeu Lima de Souza Cascardo (1):
selftests/powerpc: Add uaccess flush test

Tony Ambardar (1):
powerpc: fix EDEADLOCK redefinition error in uapi/asm/errno.h

Tyrel Datwyler (2):
powerpc/pseries: extract host bridge from pci_bus prior to bus removal
powerpc/pseries: Add shutdown() to vio_driver and vio_bus

Vaibhav Jain (2):
powerpc/mm: Add cond_resched() while removing hpte mappings
powerpc/papr_scm: Mark nvdimm as unarmed if needed during probe

Xiongwei Song (1):
powerpc/traps: Enhance readability for trap types

Yang Li (5):
powerpc/xive: use true and false for bool variable
powerpc/pseries: remove unneeded semicolon
powerpc/eeh: remove unneeded semicolon
powerpc/64s: remove unneeded semicolon
selftests/powerpc: remove unneeded semicolon

Yu Kuai (4):
macintosh/windfarm: Make symbol 'pm121_sys_state' static
windfarm: make symbol 'wf_thread' static
macintosh/via-pmu: Make some symbols static
powerpc/smp: Make some symbols static

Zhang Yunkai (2):
powerpc: Remove duplicate includes
powerpc: Fix misspellings in tlbflush.h

dingsenjie (1):
powerpc/powernv: Remove unneeded variable: "rc"

kernel test robot (1):
powerpc/iommu/debug: fix ifnullfree.cocci warnings

Documentation/admin-guide/sysctl/net.rst | 2 +-
Documentation/features/debug/debug-vm-pgtable/arch-support.txt | 2 +-
Documentation/powerpc/papr_hcalls.rst | 14 +
Documentation/powerpc/vas-api.rst | 4 +-
arch/arm64/include/asm/vdso/compat_gettimeofday.h | 3 +-
arch/arm64/include/asm/vdso/gettimeofday.h | 2 +-
arch/powerpc/Kconfig | 32 +-
arch/powerpc/Kconfig.debug | 1 +
arch/powerpc/Makefile | 11 +-
arch/powerpc/configs/ppc64_defconfig | 2 +
arch/powerpc/configs/pseries_defconfig | 2 +
arch/powerpc/include/asm/Kbuild | 1 -
arch/powerpc/include/asm/asm-prototypes.h | 2 -
arch/powerpc/include/asm/barrier.h | 16 -
arch/powerpc/include/asm/book3s/32/kup.h | 126 +--
arch/powerpc/include/asm/book3s/32/pgtable.h | 2 -
arch/powerpc/include/asm/book3s/32/tlbflush.h | 2 +-
arch/powerpc/include/asm/book3s/64/kup.h | 24 +-
arch/powerpc/include/asm/book3s/64/mmu-hash.h | 1 -
arch/powerpc/include/asm/book3s/64/pgtable.h | 5 +-
arch/powerpc/include/asm/book3s/64/radix.h | 6 +-
arch/powerpc/include/asm/bug.h | 5 +-
arch/powerpc/include/asm/cacheflush.h | 15 +-
arch/powerpc/include/asm/cpm2.h | 2 +-
arch/powerpc/include/asm/fixmap.h | 9 +
arch/powerpc/include/asm/futex.h | 12 +-
arch/powerpc/include/asm/hvcall.h | 4 +-
arch/powerpc/include/asm/hvconsole.h | 3 +
arch/powerpc/include/asm/hydra.h | 2 -
arch/powerpc/include/asm/inst.h | 55 +-
arch/powerpc/include/asm/interrupt.h | 173 ++-
arch/powerpc/include/asm/irq.h | 2 -
arch/powerpc/include/asm/jump_label.h | 21 +-
arch/powerpc/include/asm/kasan.h | 2 +-
arch/powerpc/include/asm/kfence.h | 33 +
arch/powerpc/include/asm/kup.h | 27 +-
arch/powerpc/include/asm/kvm_book3s.h | 2 +
arch/powerpc/include/asm/kvm_ppc.h | 3 +-
arch/powerpc/include/asm/mmu_context.h | 2 +-
arch/powerpc/include/asm/nohash/32/kup-8xx.h | 56 +-
arch/powerpc/include/asm/nohash/32/mmu-8xx.h | 3 +
arch/powerpc/include/asm/nohash/64/pgtable.h | 5 +-
arch/powerpc/include/asm/opal.h | 2 +-
arch/powerpc/include/asm/perf_event_server.h | 8 +-
arch/powerpc/include/asm/pgtable.h | 2 -
arch/powerpc/include/asm/ppc-opcode.h | 13 +
arch/powerpc/include/asm/ppc_asm.h | 30 -
arch/powerpc/include/asm/processor.h | 9 +-
arch/powerpc/include/asm/ptrace.h | 45 +-
arch/powerpc/include/asm/qspinlock.h | 21 +-
arch/powerpc/include/asm/reg.h | 6 +-
arch/powerpc/include/asm/rtas.h | 6 +-
arch/powerpc/include/asm/simple_spinlock.h | 6 +-
arch/powerpc/include/asm/smp.h | 6 +
arch/powerpc/include/asm/spinlock.h | 3 +
arch/powerpc/include/asm/thread_info.h | 7 +-
arch/powerpc/include/asm/topology.h | 2 +-
arch/powerpc/include/asm/uaccess.h | 389 +++----
arch/powerpc/include/asm/unistd.h | 1 +
arch/powerpc/include/asm/vdso/gettimeofday.h | 10 +
arch/powerpc/include/asm/vdso_datapage.h | 2 -
arch/powerpc/include/asm/vio.h | 1 +
arch/powerpc/include/asm/xive.h | 1 +
arch/powerpc/include/uapi/asm/errno.h | 1 +
arch/powerpc/include/uapi/asm/posix_types.h | 5 -
arch/powerpc/kernel/align.c | 72 +-
arch/powerpc/kernel/asm-offsets.c | 17 -
arch/powerpc/kernel/eeh.c | 15 +-
arch/powerpc/kernel/entry_32.S | 796 +++-----------
arch/powerpc/kernel/entry_64.S | 40 +-
arch/powerpc/kernel/exceptions-64e.S | 425 +-------
arch/powerpc/kernel/exceptions-64s.S | 60 +-
arch/powerpc/kernel/fadump.c | 18 +-
arch/powerpc/kernel/fpu.S | 2 -
arch/powerpc/kernel/head_32.h | 198 ++--
arch/powerpc/kernel/head_40x.S | 271 ++---
arch/powerpc/kernel/head_44x.S | 10 +-
arch/powerpc/kernel/head_8xx.S | 156 ++-
arch/powerpc/kernel/head_book3s_32.S | 242 ++---
arch/powerpc/kernel/head_booke.h | 203 ++--
arch/powerpc/kernel/head_fsl_booke.S | 70 +-
arch/powerpc/kernel/hw_breakpoint_constraints.c | 2 +-
arch/powerpc/kernel/idle_6xx.S | 14 +-
arch/powerpc/kernel/idle_book3s.S | 4 +
arch/powerpc/kernel/idle_e500.S | 14 +-
arch/powerpc/kernel/interrupt.c | 67 +-
arch/powerpc/kernel/iommu.c | 46 +-
arch/powerpc/kernel/irq.c | 132 +--
arch/powerpc/kernel/jump_label.c | 4 +-
arch/powerpc/kernel/kgdb.c | 2 +-
arch/powerpc/kernel/legacy_serial.c | 33 +-
arch/powerpc/kernel/mce.c | 5 +-
arch/powerpc/kernel/misc_32.S | 39 -
arch/powerpc/kernel/misc_64.S | 22 -
arch/powerpc/kernel/module.c | 23 +-
arch/powerpc/kernel/optprobes.c | 24 +-
arch/powerpc/kernel/optprobes_head.S | 65 +-
arch/powerpc/kernel/process.c | 25 +-
arch/powerpc/kernel/prom.c | 21 +-
arch/powerpc/kernel/prom_init.c | 2 +-
arch/powerpc/kernel/ptrace/ptrace-view.c | 51 +-
arch/powerpc/kernel/ptrace/ptrace.c | 4 -
arch/powerpc/kernel/ptrace/ptrace32.c | 4 -
arch/powerpc/kernel/rtas-proc.c | 15 +-
arch/powerpc/kernel/rtas.c | 34 +-
arch/powerpc/kernel/security.c | 263 ++++-
arch/powerpc/kernel/setup-common.c | 3 +-
arch/powerpc/kernel/setup_32.c | 2 +-
arch/powerpc/kernel/setup_64.c | 282 +----
arch/powerpc/kernel/signal.h | 55 +
arch/powerpc/kernel/signal_32.c | 254 +++--
arch/powerpc/kernel/signal_64.c | 319 +++---
arch/powerpc/kernel/smp.c | 68 +-
arch/powerpc/kernel/stacktrace.c | 108 +-
arch/powerpc/kernel/syscalls.c | 12 +-
arch/powerpc/kernel/syscalls/Makefile | 33 +-
arch/powerpc/kernel/syscalls/syscallhdr.sh | 36 -
arch/powerpc/kernel/syscalls/syscalltbl.sh | 36 -
arch/powerpc/kernel/systbl.S | 5 +-
arch/powerpc/kernel/trace/ftrace.c | 22 +-
arch/powerpc/kernel/traps.c | 40 +-
arch/powerpc/kernel/uprobes.c | 7 +
arch/powerpc/kernel/vdso.c | 138 ++-
arch/powerpc/kernel/vdso32/vdso32.lds.S | 2 +-
arch/powerpc/kernel/vdso64/vdso64.lds.S | 2 +-
arch/powerpc/kernel/vector.S | 2 -
arch/powerpc/kexec/crash.c | 3 +-
arch/powerpc/kvm/book3s_64_mmu_host.c | 2 +
arch/powerpc/kvm/book3s_hv.c | 85 +-
arch/powerpc/kvm/book3s_hv_builtin.c | 3 +
arch/powerpc/kvm/book3s_hv_nested.c | 37 +-
arch/powerpc/kvm/book3s_hv_rm_mmu.c | 3 +-
arch/powerpc/lib/Makefile | 2 +-
arch/powerpc/lib/checksum_wrappers.c | 15 +-
arch/powerpc/lib/code-patching.c | 13 +-
arch/powerpc/lib/inst.c | 73 --
arch/powerpc/lib/sstep.c | 13 -
arch/powerpc/math-emu/math.c | 4 +-
arch/powerpc/mm/Makefile | 3 +-
arch/powerpc/mm/book3s32/Makefile | 1 +
arch/powerpc/mm/book3s32/hash_low.S | 14 -
arch/powerpc/mm/book3s32/kuep.c | 40 +
arch/powerpc/mm/book3s32/mmu.c | 9 +-
arch/powerpc/mm/book3s64/hash_pgtable.c | 130 ++-
arch/powerpc/mm/book3s64/hash_utils.c | 35 +-
arch/powerpc/mm/book3s64/mmu_context.c | 2 +-
arch/powerpc/mm/book3s64/pkeys.c | 20 +-
arch/powerpc/mm/book3s64/radix_pgtable.c | 10 +-
arch/powerpc/mm/cacheflush.c | 234 +++++
arch/powerpc/mm/fault.c | 60 +-
arch/powerpc/mm/init_32.c | 3 +
arch/powerpc/mm/maccess.c | 21 +
arch/powerpc/mm/mem.c | 283 +----
arch/powerpc/mm/mmu_context.c | 24 +-
arch/powerpc/mm/mmu_decl.h | 5 +
arch/powerpc/mm/nohash/8xx.c | 4 +-
arch/powerpc/net/Makefile | 6 +-
arch/powerpc/net/bpf_jit.h | 64 ++
arch/powerpc/net/bpf_jit32.h | 139 ---
arch/powerpc/net/bpf_jit64.h | 21 +-
arch/powerpc/net/bpf_jit_asm.S | 226 ----
arch/powerpc/net/bpf_jit_comp.c | 782 ++++----------
arch/powerpc/net/bpf_jit_comp32.c | 1100 ++++++++++++++++++++
arch/powerpc/net/bpf_jit_comp64.c | 295 +-----
arch/powerpc/perf/core-book3s.c | 20 +-
arch/powerpc/perf/hv-24x7.c | 10 +-
arch/powerpc/perf/isa207-common.c | 115 +-
arch/powerpc/perf/isa207-common.h | 9 +-
arch/powerpc/perf/power10-events-list.h | 4 +-
arch/powerpc/perf/power10-pmu.c | 13 +
arch/powerpc/perf/power9-pmu.c | 13 +
arch/powerpc/platforms/44x/Kconfig | 2 +-
arch/powerpc/platforms/52xx/lite5200_sleep.S | 2 +-
arch/powerpc/platforms/Kconfig.cputype | 5 +-
arch/powerpc/platforms/cell/iommu.c | 3 +-
arch/powerpc/platforms/cell/spu_callbacks.c | 2 +-
arch/powerpc/platforms/chrp/pci.c | 3 +-
arch/powerpc/platforms/embedded6xx/Kconfig | 5 -
arch/powerpc/platforms/maple/pci.c | 2 +-
arch/powerpc/platforms/pasemi/iommu.c | 4 +-
arch/powerpc/platforms/powernv/memtrace.c | 18 +-
arch/powerpc/platforms/powernv/opal-core.c | 2 +-
arch/powerpc/platforms/powernv/opal-prd.c | 5 +-
arch/powerpc/platforms/powernv/pci-ioda.c | 15 +-
arch/powerpc/platforms/powernv/setup.c | 2 +-
arch/powerpc/platforms/pseries/dlpar.c | 14 +
arch/powerpc/platforms/pseries/hotplug-cpu.c | 27 +-
arch/powerpc/platforms/pseries/hvCall_inst.c | 2 +-
arch/powerpc/platforms/pseries/iommu.c | 49 +-
arch/powerpc/platforms/pseries/lpar.c | 6 +-
arch/powerpc/platforms/pseries/lparcfg.c | 2 +
arch/powerpc/platforms/pseries/papr_scm.c | 48 +
arch/powerpc/platforms/pseries/pci_dlpar.c | 4 +-
arch/powerpc/platforms/pseries/pmem.c | 2 +-
arch/powerpc/platforms/pseries/pseries.h | 5 +-
arch/powerpc/platforms/pseries/ras.c | 2 +-
arch/powerpc/platforms/pseries/rtas-fadump.c | 2 +-
arch/powerpc/platforms/pseries/setup.c | 8 +
arch/powerpc/platforms/pseries/vio.c | 20 +
arch/powerpc/purgatory/trampoline_64.S | 1 -
arch/powerpc/sysdev/dart_iommu.c | 3 +-
arch/powerpc/sysdev/fsl_pci.c | 2 +-
arch/powerpc/sysdev/xive/common.c | 213 ++--
arch/powerpc/sysdev/xive/native.c | 6 +
arch/powerpc/sysdev/xive/spapr.c | 2 +-
arch/powerpc/sysdev/xive/xive-internal.h | 3 +-
arch/powerpc/xmon/xmon.c | 76 +-
arch/s390/include/asm/vdso/gettimeofday.h | 3 +-
arch/x86/include/asm/vdso/gettimeofday.h | 3 +-
drivers/i2c/busses/Kconfig | 2 +-
drivers/macintosh/via-pmu.c | 4 +-
drivers/macintosh/windfarm_core.c | 2 +-
drivers/macintosh/windfarm_pm121.c | 2 +-
drivers/macintosh/windfarm_smu_controls.c | 2 +-
include/linux/compat.h | 35 +
include/linux/uaccess.h | 1 +
lib/vdso/gettimeofday.c | 31 +-
tools/testing/selftests/powerpc/alignment/alignment_handler.c | 11 +-
tools/testing/selftests/powerpc/mm/Makefile | 1 +
tools/testing/selftests/powerpc/mm/stress_code_patching.sh | 49 +
tools/testing/selftests/powerpc/nx-gzip/gzfht_test.c | 2 +-
tools/testing/selftests/powerpc/ptrace/.gitignore | 1 +
tools/testing/selftests/powerpc/ptrace/Makefile | 2 +-
tools/testing/selftests/powerpc/ptrace/perf-hwbreak.c | 635 ++++++++++-
tools/testing/selftests/powerpc/ptrace/ptrace-hwbreak.c | 79 ++
tools/testing/selftests/powerpc/ptrace/ptrace-perf-hwbreak.c | 659 ++++++++++++
tools/testing/selftests/powerpc/security/Makefile | 3 +-
tools/testing/selftests/powerpc/security/entry_flush.c | 2 +-
tools/testing/selftests/powerpc/security/flush_utils.c | 13 +
tools/testing/selftests/powerpc/security/flush_utils.h | 7 +
tools/testing/selftests/powerpc/security/rfi_flush.c | 2 +-
tools/testing/selftests/powerpc/security/uaccess_flush.c | 158 +++
tools/testing/selftests/powerpc/tm/tm-trap.c | 4 +-
tools/testing/selftests/timens/gettime_perf.c | 8 +
234 files changed, 6868 insertions(+), 5596 deletions(-)
create mode 100644 arch/powerpc/include/asm/kfence.h
delete mode 100644 arch/powerpc/kernel/syscalls/syscallhdr.sh
delete mode 100644 arch/powerpc/kernel/syscalls/syscalltbl.sh
delete mode 100644 arch/powerpc/lib/inst.c
create mode 100644 arch/powerpc/mm/book3s32/kuep.c
create mode 100644 arch/powerpc/mm/cacheflush.c
delete mode 100644 arch/powerpc/net/bpf_jit32.h
delete mode 100644 arch/powerpc/net/bpf_jit_asm.S
create mode 100644 arch/powerpc/net/bpf_jit_comp32.c
create mode 100755 tools/testing/selftests/powerpc/mm/stress_code_patching.sh
create mode 100644 tools/testing/selftests/powerpc/ptrace/ptrace-perf-hwbreak.c
create mode 100644 tools/testing/selftests/powerpc/security/uaccess_flush.c
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEJFGtCPCthwEv2Y/bUevqPMjhpYAFAmCLgQUACgkQUevqPMjh
pYBLWQ//QybD2ID0PI2AU5aFnV4mA1Jt5jBsp//iyEInqnUe7/RUhKFGE++KCcIN
ylZcNGNDrmMHqvdONbad6bYK76dw7xy98CAOPfvT5jW5J3XhTdLrc6QxN1Nkrdj8
trSsH1O1DxF7zXD0a0BcjuY7FzPWlIKcE85EH4jMevs+Xo+HAguReswUlMQk6QGl
aZuD22sDsRbxHF27/SZBrxcsAPW8jVbG0PXb49knPJBeQ0mN4HkTpOvD6GKPE3d5
ajXfHZ/qtRiD8Lo5J75o+QAiHW0OPE2MXROhnwouZJEz/cpYBRTefkbzsLk3rESl
0TL6d14A6F+t1w6MKHdiNilhV4uO4H5D9pjy4Hms4mN5A9PO78adsNGvAJW+WcDT
m4IckH2E7KE+2NsSTcRvGdongtV2VjoVHad6gm76PDcJtwLoX+Dsi9bNgHIu5bWr
oWlSUi5kiWqAYWQMOQbmOJ4EQsvwpBSCKIUq7xaI/HEcgopI/DPn3FawVjmtAall
2VjsIaF60rODigUOCPeK6hVQs5JhBnHsjBHi0wGpqRM8pp7kNROlR0BT5ame94Lu
oOnpQxG/OlRTGF4kAc82uQiwSf3sZGrlgVRveH7Qt8G39t+dJ/o0wVNDivJCwLvM
7QMt5+RRmIlD0/mqTnlrT7/x7H4ssTG7E/I0qaekZczJM2L4Yzs=
=c6XH
-----END PGP SIGNATURE-----