projects/linux·commit 29ec39fc

Merge tag 'powerpc-5.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux

29ec39fc · Linus Torvalds <[email protected]> · 2022-01-14 15:17:26 +01:00

Pull powerpc updates from Michael Ellerman:

 - Optimise radix KVM guest entry/exit by 2x on Power9/Power10.

 - Allow firmware to tell us whether to disable the entry and uaccess
   flushes on Power10 or later CPUs.

 - Add BPF_PROBE_MEM support for 32 and 64-bit BPF jits.

 - Several fixes and improvements to our hard lockup watchdog.

 - Activate HAVE_DYNAMIC_FTRACE_WITH_REGS on 32-bit.

 - Allow building the 64-bit Book3S kernel without hash MMU support, ie.
   Radix only.

 - Add KUAP (SMAP) support for 40x, 44x, 8xx, Book3E (64-bit).

 - Add new encodings for perf_mem_data_src.mem_hops field, and use them
   on Power10.

 - A series of small performance improvements to 64-bit interrupt entry.

 - Several commits fixing issues when building with the clang integrated
   assembler.

 - Many other small features and fixes.

Thanks to Alan Modra, Alexey Kardashevskiy, Ammar Faizi, Anders Roxell,
Arnd Bergmann, Athira Rajeev, Cédric Le Goater, Christophe JAILLET,
Christophe Leroy, Christoph Hellwig, Daniel Axtens, David Yang, Erhard
Furtner, Fabiano Rosas, Greg Kroah-Hartman, Guo Ren, Hari Bathini, Jason
Wang, Joel Stanley, Julia Lawall, Kajol Jain, Kees Cook, Laurent Dufour,
Madhavan Srinivasan, Mark Brown, Minghao Chi, Nageswara R Sastry, Naresh
Kamboju, Nathan Chancellor, Nathan Lynch, Nicholas Piggin, Nick Child,
Oliver O'Halloran, Peiwei Hu, Randy Dunlap, Ravi Bangoria, Rob Herring,
Russell Currey, Sachin Sant, Sean Christopherson, Segher Boessenkool,
Thadeu Lima de Souza Cascardo, Tyrel Datwyler, Xiang wangx, and Yang
Guang.

* tag 'powerpc-5.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (240 commits)
  powerpc/xmon: Dump XIVE information for online-only processors.
  powerpc/opal: use default_groups in kobj_type
  powerpc/cacheinfo: use default_groups in kobj_type
  powerpc/sched: Remove unused TASK_SIZE_OF
  powerpc/xive: Add missing null check after calling kmalloc
  powerpc/floppy: Remove usage of the deprecated "pci-dma-compat.h" API
  selftests/powerpc: Add a test of sigreturning to an unaligned address
  powerpc/64s: Use EMIT_WARN_ENTRY for SRR debug warnings
  powerpc/64s: Mask NIP before checking against SRR0
  powerpc/perf: Fix spelling of "its"
  powerpc/32: Fix boot failure with GCC latent entropy plugin
  powerpc/code-patching: Replace patch_instruction() by ppc_inst_write() in selftests
  powerpc/code-patching: Move code patching selftests in its own file
  powerpc/code-patching: Move instr_is_branch_{i/b}form() in code-patching.h
  powerpc/code-patching: Move patch_exception() outside code-patching.c
  powerpc/code-patching: Use test_trampoline for prefixed patch test
  powerpc/code-patching: Fix patch_branch() return on out-of-range failure
  powerpc/code-patching: Reorganise do_patch_instruction() to ease error handling
  powerpc/code-patching: Fix unmap_patch_area() error handling
  powerpc/code-patching: Fix error handling in do_patch_instruction()
  ...
Commit
29ec39fcf11e4583eb8d5174f756ea109c77cc44
Parents
3fb561b1 · f1aa0e47

Merge commit. Changes below are compared with the first parent: 3fb561b1.

Changes

370 files changed · +5618 −3431

FileStatusAddDelContent
Documentation/admin-guide/kernel-parameters.txtmodified+15−1View file
arch/powerpc/Kconfigmodified+6−4View file
arch/powerpc/Makefilemodified+6−3View file
arch/powerpc/boot/crt0.Smodified+16−17View file
arch/powerpc/boot/dts/digsy_mtc.dtsmodified+0−8View file
arch/powerpc/boot/dts/o2d.dtsimodified+0−6View file
arch/powerpc/boot/zImage.lds.Smodified+2−5View file
arch/powerpc/configs/microwatt_defconfigmodified+2−1View file
arch/powerpc/configs/ppc64_defconfigmodified+0−1View file
arch/powerpc/configs/pseries_defconfigmodified+0−1View file
arch/powerpc/crypto/md5-asm.Smodified+3−7View file
arch/powerpc/crypto/sha1-powerpc-asm.Smodified+2−4View file
arch/powerpc/include/asm/asm-prototypes.hmodified+0−5View file
arch/powerpc/include/asm/atomic.hmodified+28−123View file
arch/powerpc/include/asm/bitops.hmodified+81−8View file
arch/powerpc/include/asm/book3s/32/kup.hmodified+24−84View file
arch/powerpc/include/asm/book3s/32/mmu-hash.hmodified+81−1View file
arch/powerpc/include/asm/book3s/64/hash.hmodified+0−4View file
arch/powerpc/include/asm/book3s/64/kup.hmodified+28−28View file
arch/powerpc/include/asm/book3s/64/mmu-hash.hmodified+7−1View file
arch/powerpc/include/asm/book3s/64/mmu.hmodified+30−8View file
arch/powerpc/include/asm/book3s/64/tlbflush-hash.hmodified+6−0View file
arch/powerpc/include/asm/book3s/64/tlbflush.hmodified+0−4View file
arch/powerpc/include/asm/book3s/pgtable.hmodified+4−0View file
arch/powerpc/include/asm/btext.hmodified+5−5View file
arch/powerpc/include/asm/code-patching.hmodified+24−16View file
arch/powerpc/include/asm/cpm2.hmodified+3−3View file
arch/powerpc/include/asm/cpuidle.hmodified+1−1View file
arch/powerpc/include/asm/cputhreads.hmodified+0−33View file
arch/powerpc/include/asm/eeh.hmodified+1−1View file
arch/powerpc/include/asm/exception-64e.hmodified+4−0View file
arch/powerpc/include/asm/fadump-internal.hmodified+3−3View file
arch/powerpc/include/asm/firmware.hmodified+0−8View file
arch/powerpc/include/asm/floppy.hmodified+5−3View file
arch/powerpc/include/asm/head-64.hmodified+5−7View file
arch/powerpc/include/asm/hugetlb.hmodified+1−1View file
arch/powerpc/include/asm/hw_breakpoint.hmodified+2−3View file
arch/powerpc/include/asm/hw_irq.hmodified+93−14View file
arch/powerpc/include/asm/i8259.hmodified+1−1View file
arch/powerpc/include/asm/inst.hmodified+60−35View file
arch/powerpc/include/asm/interrupt.hmodified+59−14View file
arch/powerpc/include/asm/iommu.hmodified+1−1View file
arch/powerpc/include/asm/ipic.hmodified+1−1View file
arch/powerpc/include/asm/irq.hmodified+1−1View file
arch/powerpc/include/asm/kexec.hmodified+1−1View file
arch/powerpc/include/asm/kup.hmodified+100−22View file
arch/powerpc/include/asm/kvm_asm.hmodified+1−0View file
arch/powerpc/include/asm/kvm_book3s.hmodified+6−0View file
arch/powerpc/include/asm/kvm_book3s_64.hmodified+3−2View file
arch/powerpc/include/asm/kvm_guest.hmodified+1−1View file
arch/powerpc/include/asm/kvm_host.hmodified+5−2View file
arch/powerpc/include/asm/kvm_ppc.hmodified+2−2View file
arch/powerpc/include/asm/machdep.hmodified+0−2View file
arch/powerpc/include/asm/mmu.hmodified+13−3View file
arch/powerpc/include/asm/mmu_context.hmodified+3−1View file
arch/powerpc/include/asm/mpic.hmodified+1−1View file
arch/powerpc/include/asm/nohash/32/kup-8xx.hmodified+12−38View file
arch/powerpc/include/asm/nohash/32/mmu-44x.hmodified+0−1View file
arch/powerpc/include/asm/nohash/32/mmu-8xx.hmodified+2−4View file
arch/powerpc/include/asm/nohash/64/pgtable.hmodified+6−0View file
arch/powerpc/include/asm/nohash/kup-booke.hadded+110−0View file
arch/powerpc/include/asm/opal-api.hmodified+1−0View file
arch/powerpc/include/asm/opal.hmodified+1−1View file
arch/powerpc/include/asm/paca.hmodified+8−0View file
arch/powerpc/include/asm/pci.hmodified+1−1View file
arch/powerpc/include/asm/perf_event_server.hmodified+1−1View file
arch/powerpc/include/asm/ppc-opcode.hmodified+6−0View file
arch/powerpc/include/asm/ppc_asm.hmodified+27−16View file
arch/powerpc/include/asm/processor.hmodified+16−2View file
arch/powerpc/include/asm/ptrace.hmodified+1−1View file
arch/powerpc/include/asm/reg.hmodified+14−2View file
arch/powerpc/include/asm/rtas.hmodified+1−1View file
arch/powerpc/include/asm/sections.hmodified+8−8View file
arch/powerpc/include/asm/setup.hmodified+4−5View file
arch/powerpc/include/asm/smu.hmodified+1−1View file
arch/powerpc/include/asm/sstep.hmodified+2−2View file
arch/powerpc/include/asm/switch_to.hmodified+3−0View file
arch/powerpc/include/asm/task_size_64.hmodified+1−5View file
arch/powerpc/include/asm/time.hmodified+9−10View file
arch/powerpc/include/asm/udbg.hmodified+5−5View file
arch/powerpc/include/asm/uprobes.hmodified+0−1View file
arch/powerpc/include/asm/xics.hmodified+2−2View file
arch/powerpc/include/asm/xmon.hmodified+1−1View file
arch/powerpc/kernel/Makefilemodified+1−0View file
arch/powerpc/kernel/align.cmodified+2−2View file
arch/powerpc/kernel/asm-offsets.cmodified+4−1View file
arch/powerpc/kernel/btext.cmodified+9−7View file
arch/powerpc/kernel/cacheinfo.cmodified+3−2View file
arch/powerpc/kernel/cpu_setup_power.cmodified+10−2View file
arch/powerpc/kernel/dbell.cmodified+2−1View file
arch/powerpc/kernel/dt_cpu_ftrs.cmodified+16−8View file
arch/powerpc/kernel/eeh_cache.cmodified+1−1View file
arch/powerpc/kernel/eeh_driver.cmodified+80−82View file
arch/powerpc/kernel/entry_32.Smodified+39−15View file
arch/powerpc/kernel/entry_64.Smodified+2−2View file
arch/powerpc/kernel/epapr_paravirt.cmodified+1−1View file
arch/powerpc/kernel/exceptions-64e.Smodified+4−10View file
arch/powerpc/kernel/exceptions-64s.Smodified+105−69View file
arch/powerpc/kernel/fadump.cmodified+17−9View file
arch/powerpc/kernel/fpu.Smodified+5−0View file
arch/powerpc/kernel/head_32.hmodified+7−2View file
arch/powerpc/kernel/head_40x.Smodified+16−1View file
arch/powerpc/kernel/head_44x.Smodified+18−8View file
arch/powerpc/kernel/head_64.Smodified+10−10View file
arch/powerpc/kernel/head_book3s_32.Smodified+4−0View file
arch/powerpc/kernel/head_booke.hmodified+1−2View file
arch/powerpc/kernel/head_fsl_booke.Smodified+13−0View file
arch/powerpc/kernel/hw_breakpoint.cmodified+2−2View file
arch/powerpc/kernel/hw_breakpoint_constraints.cmodified+2−2View file
arch/powerpc/kernel/idle.cmodified+1−1View file
arch/powerpc/kernel/idle_6xx.Smodified+1−1View file
arch/powerpc/kernel/interrupt.cmodified+1−2View file
arch/powerpc/kernel/interrupt_64.Smodified+20−26View file
arch/powerpc/kernel/irq.cmodified+3−2View file
arch/powerpc/kernel/kgdb.cmodified+2−2View file
arch/powerpc/kernel/kprobes.cmodified+2−2View file
arch/powerpc/kernel/l2cr_6xx.Smodified+3−3View file
arch/powerpc/kernel/mce.cmodified+1−1View file
arch/powerpc/kernel/mce_power.cmodified+11−7View file
arch/powerpc/kernel/module.cmodified+6−5View file
arch/powerpc/kernel/module_32.cmodified+33−0View file
arch/powerpc/kernel/nvram_64.cmodified+3−3View file
arch/powerpc/kernel/optprobes.cmodified+4−8View file
arch/powerpc/kernel/optprobes_head.Smodified+2−2View file
arch/powerpc/kernel/paca.cmodified+7−11View file
arch/powerpc/kernel/pci-common.cmodified+1−1View file
arch/powerpc/kernel/pci_32.cmodified+2−2View file
arch/powerpc/kernel/process.cmodified+48−10View file
arch/powerpc/kernel/prom.cmodified+3−3View file
arch/powerpc/kernel/prom_init.cmodified+7−7View file
arch/powerpc/kernel/rtas.cmodified+91−13View file
arch/powerpc/kernel/rtasd.cmodified+3−3View file
arch/powerpc/kernel/security.cmodified+2−2View file
arch/powerpc/kernel/setup-common.cmodified+1−1View file
arch/powerpc/kernel/setup.hmodified+1−1View file
arch/powerpc/kernel/setup_32.cmodified+2−2View file
arch/powerpc/kernel/setup_64.cmodified+16−7View file
arch/powerpc/kernel/signal_32.cmodified+9−5View file
arch/powerpc/kernel/smp.cmodified+45−2View file
arch/powerpc/kernel/swsusp_32.Smodified+1−1View file
arch/powerpc/kernel/swsusp_asm64.Smodified+1−1View file
arch/powerpc/kernel/sysfs.cmodified+5−5View file
arch/powerpc/kernel/time.cmodified+62−25View file
arch/powerpc/kernel/tm.Smodified+4−11View file
arch/powerpc/kernel/trace/ftrace.cmodified+45−62View file
arch/powerpc/kernel/trace/ftrace_32.Smodified+105−13View file
arch/powerpc/kernel/trace/ftrace_64_mprofile.Smodified+6−9View file
arch/powerpc/kernel/udbg_16550.cmodified+5−5View file
arch/powerpc/kernel/vecemu.cmodified+1−1View file
arch/powerpc/kernel/vector.Smodified+10−0View file
arch/powerpc/kernel/vmlinux.lds.Smodified+3−13View file
arch/powerpc/kernel/watchdog.cmodified+180−43View file
arch/powerpc/kexec/core.cmodified+1−1View file
arch/powerpc/kexec/core_64.cmodified+2−2View file
arch/powerpc/kexec/ranges.cmodified+1−1View file
arch/powerpc/kvm/Kconfigmodified+16−0View file
arch/powerpc/kvm/book3s_64_entry.Smodified+9−2View file
arch/powerpc/kvm/book3s_64_mmu_radix.cmodified+4−0View file
arch/powerpc/kvm/book3s_hv.cmodified+451−409View file
arch/powerpc/kvm/book3s_hv.hadded+42−0View file
arch/powerpc/kvm/book3s_hv_builtin.cmodified+10−45View file
arch/powerpc/kvm/book3s_hv_hmi.cmodified+6−1View file
arch/powerpc/kvm/book3s_hv_interrupts.Smodified+4−9View file
arch/powerpc/kvm/book3s_hv_nested.cmodified+4−6View file
arch/powerpc/kvm/book3s_hv_p9_entry.cmodified+775−136View file
arch/powerpc/kvm/book3s_hv_ras.cmodified+54−0View file
arch/powerpc/kvm/book3s_hv_rm_mmu.cmodified+0−6View file
arch/powerpc/kvm/book3s_hv_rmhandlers.Smodified+17−61View file
arch/powerpc/lib/Makefilemodified+6−1View file
arch/powerpc/lib/code-patching.cmodified+49−448View file
arch/powerpc/lib/feature-fixups.cmodified+15−15View file
arch/powerpc/lib/sstep.cmodified+2−2View file
arch/powerpc/lib/test-code-patching.cadded+362−0View file
arch/powerpc/lib/test_code-patching.Sdeleted+0−20View before deletion
arch/powerpc/lib/test_emulate_step.cmodified+5−5View file
arch/powerpc/lib/test_emulate_step_exec_instr.Smodified+3−5View file
arch/powerpc/mm/book3s32/Makefilemodified+0−1View file
arch/powerpc/mm/book3s32/kuap.cmodified+4−1View file
arch/powerpc/mm/book3s32/kuep.cdeleted+0−20View before deletion
arch/powerpc/mm/book3s32/mmu.cmodified+3−4View file
arch/powerpc/mm/book3s32/mmu_context.cmodified+7−8View file
arch/powerpc/mm/book3s64/Makefilemodified+11−8View file
arch/powerpc/mm/book3s64/hash_native.cmodified+2−106View file
arch/powerpc/mm/book3s64/hash_pgtable.cmodified+0−1View file
arch/powerpc/mm/book3s64/hash_utils.cmodified+108−9View file
arch/powerpc/mm/book3s64/hash_hugetlbpage.c → arch/powerpc/mm/book3s64/hugetlbpage.crenamed+3−1View file
arch/powerpc/mm/book3s64/mmu_context.cmodified+27−7View file
arch/powerpc/mm/book3s64/pgtable.cmodified+27−5View file
arch/powerpc/mm/book3s64/pkeys.cmodified+1−1View file
arch/powerpc/mm/book3s64/radix_pgtable.cmodified+8−32View file
arch/powerpc/mm/book3s64/slb.cmodified+0−16View file
arch/powerpc/mm/book3s64/trace.cadded+8−0View file
arch/powerpc/mm/copro_fault.cmodified+2−0View file
arch/powerpc/mm/fault.cmodified+24−0View file
arch/powerpc/mm/hugetlbpage.cmodified+11−5View file
arch/powerpc/mm/init-common.cmodified+21−0View file
arch/powerpc/mm/init_64.cmodified+56−3View file
arch/powerpc/mm/ioremap.cmodified+0−20View file
arch/powerpc/mm/kasan/book3s_32.cmodified+2−1View file
arch/powerpc/mm/maccess.cmodified+0−17View file
arch/powerpc/mm/mem.cmodified+0−2View file
arch/powerpc/mm/mmap.cmodified+34−6View file
arch/powerpc/mm/mmu_context.cmodified+10−1View file
arch/powerpc/mm/nohash/44x.cmodified+2−18View file
arch/powerpc/mm/nohash/8xx.cmodified+0−33View file
arch/powerpc/mm/nohash/Makefilemodified+1−1View file
arch/powerpc/mm/nohash/book3e_pgtable.cmodified+15−0View file
arch/powerpc/mm/nohash/fsl_book3e.cmodified+5−5View file
arch/powerpc/mm/nohash/kup.cadded+33−0View file
arch/powerpc/mm/nohash/mmu_context.cmodified+5−1View file
arch/powerpc/mm/nohash/tlb.cmodified+2−11View file
arch/powerpc/mm/nohash/tlb_low_64e.Smodified+34−6View file
arch/powerpc/mm/numa.cmodified+3−3View file
arch/powerpc/mm/pgtable.cmodified+6−3View file
arch/powerpc/mm/pgtable_64.cmodified+11−3View file
arch/powerpc/mm/ptdump/Makefilemodified+1−1View file
arch/powerpc/mm/ptdump/ptdump.cmodified+3−3View file
arch/powerpc/mm/slice.cmodified+0−20View file
arch/powerpc/net/bpf_jit.hmodified+13−4View file
arch/powerpc/net/bpf_jit_comp.cmodified+62−6View file
arch/powerpc/net/bpf_jit_comp32.cmodified+85−16View file
arch/powerpc/net/bpf_jit_comp64.cmodified+57−15View file
arch/powerpc/perf/8xx-pmu.cmodified+1−1View file
arch/powerpc/perf/core-book3s.cmodified+124−2View file
arch/powerpc/perf/generic-compat-pmu.cmodified+1−1View file
arch/powerpc/perf/hv-24x7.cmodified+1−1View file
arch/powerpc/perf/internal.hmodified+9−9View file
arch/powerpc/perf/isa207-common.cmodified+45−15View file
arch/powerpc/perf/power10-pmu.cmodified+1−1View file
arch/powerpc/perf/power5+-pmu.cmodified+1−1View file
arch/powerpc/perf/power5-pmu.cmodified+1−1View file
arch/powerpc/perf/power6-pmu.cmodified+1−1View file
arch/powerpc/perf/power7-pmu.cmodified+1−1View file
arch/powerpc/perf/power8-pmu.cmodified+1−1View file
arch/powerpc/perf/power9-pmu.cmodified+1−1View file
arch/powerpc/perf/ppc970-pmu.cmodified+1−1View file
arch/powerpc/platforms/44x/fsp2.cmodified+2−2View file
arch/powerpc/platforms/4xx/cpm.cmodified+2−2View file
arch/powerpc/platforms/4xx/pci.cmodified+1−1View file
arch/powerpc/platforms/512x/clock-commonclk.cmodified+26−26View file
arch/powerpc/platforms/512x/mpc512x.hmodified+2−2View file
arch/powerpc/platforms/512x/mpc512x_shared.cmodified+2−2View file
arch/powerpc/platforms/52xx/Kconfigmodified+1−1View file
arch/powerpc/platforms/83xx/km83xx.cmodified+1−1View file
arch/powerpc/platforms/83xx/mpc834x_mds.cmodified+1−1View file
arch/powerpc/platforms/83xx/mpc837x_mds.cmodified+1−1View file
arch/powerpc/platforms/83xx/mpc837x_rdb.cmodified+1−1View file
arch/powerpc/platforms/83xx/mpc83xx.hmodified+3−3View file
arch/powerpc/platforms/83xx/usb.cmodified+3−3View file
arch/powerpc/platforms/85xx/c293pcie.cmodified+1−1View file
arch/powerpc/platforms/85xx/ge_imp3a.cmodified+1−1View file
arch/powerpc/platforms/85xx/mpc85xx_cds.cmodified+1−1View file
arch/powerpc/platforms/85xx/mpc85xx_pm_ops.cmodified+2−0View file
arch/powerpc/platforms/85xx/smp.cmodified+2−2View file
arch/powerpc/platforms/85xx/socrates_fpga_pic.cmodified+1−1View file
arch/powerpc/platforms/85xx/socrates_fpga_pic.hmodified+1−1View file
arch/powerpc/platforms/85xx/xes_mpc85xx.cmodified+2−2View file
arch/powerpc/platforms/Kconfigmodified+2−2View file
arch/powerpc/platforms/Kconfig.cputypemodified+38−20View file
arch/powerpc/platforms/cell/Kconfigmodified+2−1View file
arch/powerpc/platforms/cell/cbe_regs.cmodified+1−1View file
arch/powerpc/platforms/cell/iommu.cmodified+8−7View file
arch/powerpc/platforms/cell/pervasive.cmodified+1−0View file
arch/powerpc/platforms/cell/spu_base.cmodified+3−3View file
arch/powerpc/platforms/cell/spu_manage.cmodified+8−8View file
arch/powerpc/platforms/cell/spufs/inode.cmodified+1−1View file
arch/powerpc/platforms/chrp/Kconfigmodified+1−1View file
arch/powerpc/platforms/chrp/pegasos_eth.cmodified+1−1View file
arch/powerpc/platforms/embedded6xx/Kconfigmodified+1−1View file
arch/powerpc/platforms/embedded6xx/hlwd-pic.cmodified+3−2View file
arch/powerpc/platforms/embedded6xx/hlwd-pic.hmodified+1−1View file
arch/powerpc/platforms/embedded6xx/holly.cmodified+1−1View file
arch/powerpc/platforms/embedded6xx/usbgecko_udbg.cmodified+2−2View file
arch/powerpc/platforms/embedded6xx/wii.cmodified+1−1View file
arch/powerpc/platforms/maple/Kconfigmodified+2−1View file
arch/powerpc/platforms/microwatt/Kconfigmodified+0−1View file
arch/powerpc/platforms/microwatt/rng.cmodified+1−1View file
arch/powerpc/platforms/pasemi/Kconfigmodified+2−1View file
arch/powerpc/platforms/pasemi/msi.cmodified+1−1View file
arch/powerpc/platforms/pasemi/pasemi.hmodified+1−1View file
arch/powerpc/platforms/pasemi/pci.cmodified+1−1View file
arch/powerpc/platforms/pasemi/setup.cmodified+1−1View file
arch/powerpc/platforms/powermac/Kconfigmodified+2−1View file
arch/powerpc/platforms/powermac/cache.Smodified+2−2View file
arch/powerpc/platforms/powermac/feature.cmodified+1−1View file
arch/powerpc/platforms/powermac/low_i2c.cmodified+3−0View file
arch/powerpc/platforms/powermac/nvram.cmodified+1−1View file
arch/powerpc/platforms/powermac/pfunc_base.cmodified+3−3View file
arch/powerpc/platforms/powermac/pic.cmodified+2−4View file
arch/powerpc/platforms/powermac/setup.cmodified+3−3View file
arch/powerpc/platforms/powermac/smp.cmodified+2−2View file
arch/powerpc/platforms/powermac/udbg_scc.cmodified+1−1View file
arch/powerpc/platforms/powernv/Kconfigmodified+1−1View file
arch/powerpc/platforms/powernv/idle.cmodified+13−14View file
arch/powerpc/platforms/powernv/opal-core.cmodified+3−3View file
arch/powerpc/platforms/powernv/opal-dump.cmodified+2−1View file
arch/powerpc/platforms/powernv/opal-elog.cmodified+2−1View file
arch/powerpc/platforms/powernv/opal-fadump.cmodified+1−1View file
arch/powerpc/platforms/powernv/opal-imc.cmodified+3−3View file
arch/powerpc/platforms/powernv/opal-lpc.cmodified+1−0View file
arch/powerpc/platforms/powernv/opal-msglog.cmodified+2−2View file
arch/powerpc/platforms/powernv/opal-power.cmodified+1−1View file
arch/powerpc/platforms/powernv/opal-powercap.cmodified+1−1View file
arch/powerpc/platforms/powernv/opal-rtc.cmodified+1−1View file
arch/powerpc/platforms/powernv/opal-sensor-groups.cmodified+2−2View file
arch/powerpc/platforms/powernv/opal.cmodified+4−4View file
arch/powerpc/platforms/powernv/pci-ioda.cmodified+2−2View file
arch/powerpc/platforms/powernv/powernv.hmodified+2−2View file
arch/powerpc/platforms/powernv/rng.cmodified+1−1View file
arch/powerpc/platforms/powernv/setup.cmodified+12−6View file
arch/powerpc/platforms/ps3/gelic_udbg.cmodified+1−1View file
arch/powerpc/platforms/ps3/mm.cmodified+2−2View file
arch/powerpc/platforms/ps3/os-area.cmodified+2−2View file
arch/powerpc/platforms/ps3/platform.hmodified+7−7View file
arch/powerpc/platforms/ps3/repository.cmodified+10−10View file
arch/powerpc/platforms/ps3/smp.cmodified+1−1View file
arch/powerpc/platforms/ps3/spu.cmodified+1−1View file
arch/powerpc/platforms/pseries/Kconfigmodified+0−5View file
arch/powerpc/platforms/pseries/Makefilemodified+0−1View file
arch/powerpc/platforms/pseries/event_sources.cmodified+1−1View file
arch/powerpc/platforms/pseries/hotplug-cpu.cmodified+5−4View file
arch/powerpc/platforms/pseries/iommu.cmodified+1−1View file
arch/powerpc/platforms/pseries/lpar.cmodified+39−32View file
arch/powerpc/platforms/pseries/lparcfg.cmodified+3−2View file
arch/powerpc/platforms/pseries/mobility.cmodified+4−0View file
arch/powerpc/platforms/pseries/pseries.hmodified+6−1View file
arch/powerpc/platforms/pseries/ras.cmodified+2−0View file
arch/powerpc/platforms/pseries/rtas-fadump.cmodified+3−3View file
arch/powerpc/platforms/pseries/scanlog.cdeleted+0−195View before deletion
arch/powerpc/platforms/pseries/setup.cmodified+6−4View file
arch/powerpc/platforms/pseries/vas.cmodified+10−3View file
arch/powerpc/platforms/pseries/vio.cmodified+3−3View file
arch/powerpc/sysdev/cpm2.cmodified+3−3View file
arch/powerpc/sysdev/dart_iommu.cmodified+1−1View file
arch/powerpc/sysdev/fsl_mpic_err.cmodified+2−2View file
arch/powerpc/sysdev/fsl_pci.cmodified+1−1View file
arch/powerpc/sysdev/fsl_pci.hmodified+1−1View file
arch/powerpc/sysdev/i8259.cmodified+1−1View file
arch/powerpc/sysdev/ipic.cmodified+1−1View file
arch/powerpc/sysdev/mpic.cmodified+2−3View file
arch/powerpc/sysdev/mpic.hmodified+5−5View file
arch/powerpc/sysdev/mpic_msi.cmodified+3−3View file
arch/powerpc/sysdev/mpic_timer.cmodified+3−3View file
arch/powerpc/sysdev/mpic_u3msi.cmodified+1−1View file
arch/powerpc/sysdev/tsi108_dev.cmodified+1−2View file
arch/powerpc/sysdev/tsi108_pci.cmodified+1−1View file
arch/powerpc/sysdev/udbg_memcons.cmodified+1−1View file
arch/powerpc/sysdev/xics/icp-hv.cmodified+1−1View file
arch/powerpc/sysdev/xics/icp-opal.cmodified+1−1View file
arch/powerpc/sysdev/xics/xics-common.cmodified+1−1View file
arch/powerpc/sysdev/xive/common.cmodified+146−68View file
arch/powerpc/sysdev/xive/native.cmodified+16−3View file
arch/powerpc/sysdev/xive/spapr.cmodified+25−22View file
arch/powerpc/sysdev/xive/xive-internal.hmodified+2−0View file
arch/powerpc/xmon/xmon.cmodified+23−15View file
arch/powerpc/xmon/xmon_bpts.hmodified+2−2View file
drivers/macintosh/mediabay.cmodified+1−1View file
drivers/misc/cxl/Kconfigmodified+1−0View file
drivers/misc/lkdtm/Makefilemodified+1−1View file
drivers/misc/lkdtm/core.cmodified+1−1View file
drivers/misc/ocxl/file.cmodified+1−3View file
include/linux/cuda.hmodified+1−1View file
include/linux/pmu.hmodified+1−1View file
include/uapi/linux/perf_event.hmodified+4−1View file
tools/testing/selftests/powerpc/security/mitigation-patching.shmodified+4−1View file
tools/testing/selftests/powerpc/security/spectre_v2.cmodified+1−1View file
tools/testing/selftests/powerpc/signal/.gitignoremodified+2−0View file
tools/testing/selftests/powerpc/signal/Makefilemodified+2−0View file
tools/testing/selftests/powerpc/signal/sigreturn_kernel.cadded+132−0View file
tools/testing/selftests/powerpc/signal/sigreturn_unaligned.cadded+43−0View file

Only the first 600 diff lines are shown. Download the complete patch.

Documentation/admin-guide/kernel-parameters.txt

View file
diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
index 4955d2f..f5a27f0 100644
--- a/Documentation/admin-guide/kernel-parameters.txt
+++ b/Documentation/admin-guide/kernel-parameters.txt
@@ -3393,7 +3393,7 @@
Disable SMAP (Supervisor Mode Access Prevention)
even if it is supported by processor.
- nosmep [X86,PPC]
+ nosmep [X86,PPC64s]
Disable SMEP (Supervisor Mode Execution Prevention)
even if it is supported by processor.
@@ -4166,6 +4166,14 @@
Override pmtimer IOPort with a hex value.
e.g. pmtmr=0x508
+ pmu_override= [PPC] Override the PMU.
+ This option takes over the PMU facility, so it is no
+ longer usable by perf. Setting this option starts the
+ PMU counters by setting MMCR0 to 0 (the FC bit is
+ cleared). If a number is given, then MMCR1 is set to
+ that number, otherwise (e.g., 'pmu_override=on'), MMCR1
+ remains 0.
+
pm_debug_messages [SUSPEND,KNL]
Enable suspend/resume debug messages during boot up.
@@ -6494,6 +6502,12 @@
controller on both pseries and powernv
platforms. Only useful on POWER9 and above.
+ xive.store-eoi=off [PPC]
+ By default on POWER10 and above, the kernel will use
+ stores for EOI handling when the XIVE interrupt mode
+ is active. This option allows the XIVE driver to use
+ loads instead, as on POWER9.
+
xhci-hcd.quirks [USB,KNL]
A hex value specifying bitmask with supplemental xhci
host controller quirks. Meaning of each bit can be

arch/powerpc/Kconfig

View file
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index dea74d7..0631c92 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -129,7 +129,7 @@ config PPC
select ARCH_HAS_KCOV
select ARCH_HAS_MEMBARRIER_CALLBACKS
select ARCH_HAS_MEMBARRIER_SYNC_CORE
- select ARCH_HAS_MEMREMAP_COMPAT_ALIGN
+ select ARCH_HAS_MEMREMAP_COMPAT_ALIGN if PPC_64S_HASH_MMU
select ARCH_HAS_MMIOWB if PPC64
select ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE
select ARCH_HAS_PHYS_TO_DMA
@@ -165,6 +165,7 @@ config PPC
select BINFMT_ELF
select BUILDTIME_TABLE_SORT
select CLONE_BACKWARDS
+ select CPUMASK_OFFSTACK if NR_CPUS >= 8192
select DCACHE_WORD_ACCESS if PPC64 && CPU_LITTLE_ENDIAN
select DMA_OPS_BYPASS if PPC64
select DMA_OPS if PPC64
@@ -205,7 +206,7 @@ config PPC
select HAVE_DEBUG_KMEMLEAK
select HAVE_DEBUG_STACKOVERFLOW
select HAVE_DYNAMIC_FTRACE
- select HAVE_DYNAMIC_FTRACE_WITH_REGS if MPROFILE_KERNEL
+ select HAVE_DYNAMIC_FTRACE_WITH_REGS if MPROFILE_KERNEL || PPC32
select HAVE_EBPF_JIT
select HAVE_EFFICIENT_UNALIGNED_ACCESS if !(CPU_LITTLE_ENDIAN && POWER7_CPU)
select HAVE_FAST_GUP
@@ -229,7 +230,7 @@ config PPC
select HAVE_KPROBES_ON_FTRACE
select HAVE_KRETPROBES
select HAVE_LD_DEAD_CODE_DATA_ELIMINATION
- select HAVE_LIVEPATCH if HAVE_DYNAMIC_FTRACE_WITH_REGS
+ select HAVE_LIVEPATCH if HAVE_DYNAMIC_FTRACE_WITH_REGS && PPC64
select HAVE_MOD_ARCH_SPECIFIC
select HAVE_NMI if PERF_EVENTS || (PPC64 && PPC_BOOK3S)
select HAVE_OPTPROBES
@@ -845,7 +846,7 @@ config FORCE_MAX_ZONEORDER
config PPC_SUBPAGE_PROT
bool "Support setting protections for 4k subpages (subpage_prot syscall)"
default n
- depends on PPC_BOOK3S_64 && PPC_64K_PAGES
+ depends on PPC_64S_HASH_MMU && PPC_64K_PAGES
help
This option adds support for system call to allow user programs
to set access permissions (read/write, readonly, or no access)
@@ -943,6 +944,7 @@ config PPC_MEM_KEYS
prompt "PowerPC Memory Protection Keys"
def_bool y
depends on PPC_BOOK3S_64
+ depends on PPC_64S_HASH_MMU
select ARCH_USES_HIGH_VMA_FLAGS
select ARCH_HAS_PKEYS
help

arch/powerpc/Makefile

View file
diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
index e02568f..5f16ac1 100644
--- a/arch/powerpc/Makefile
+++ b/arch/powerpc/Makefile
@@ -245,7 +245,9 @@ cpu-as-$(CONFIG_E500) += -Wa,-me500
# When using '-many -mpower4' gas will first try and find a matching power4
# mnemonic and failing that it will allow any valid mnemonic that GAS knows
# about. GCC will pass -many to GAS when assembling, clang does not.
-cpu-as-$(CONFIG_PPC_BOOK3S_64) += -Wa,-mpower4 -Wa,-many
+# LLVM IAS doesn't understand either flag: https://github.com/ClangBuiltLinux/linux/issues/675
+# but LLVM IAS only supports ISA >= 2.06 for Book3S 64 anyway...
+cpu-as-$(CONFIG_PPC_BOOK3S_64) += $(call as-option,-Wa$(comma)-mpower4) $(call as-option,-Wa$(comma)-many)
cpu-as-$(CONFIG_PPC_E500MC) += $(call as-option,-Wa$(comma)-me500mc)
KBUILD_AFLAGS += $(cpu-as-y)
@@ -445,10 +447,11 @@ PHONY += checkbin
# Check toolchain versions:
# - gcc-4.6 is the minimum kernel-wide version so nothing required.
checkbin:
- @if test "x${CONFIG_CPU_LITTLE_ENDIAN}" = "xy" \
- && $(LD) --version | head -1 | grep ' 2\.24$$' >/dev/null ; then \
+ @if test "x${CONFIG_LD_IS_LLD}" != "xy" -a \
+ "x$(call ld-ifversion, -le, 22400, y)" = "xy" ; then \
echo -n '*** binutils 2.24 miscompiles weak symbols ' ; \
echo 'in some circumstances.' ; \
+ echo '*** binutils 2.23 do not define the TOC symbol ' ; \
echo -n '*** Please use a different binutils version.' ; \
false ; \
fi

arch/powerpc/boot/crt0.S

View file
diff --git a/arch/powerpc/boot/crt0.S b/arch/powerpc/boot/crt0.S
index 1d83966..feadee1 100644
--- a/arch/powerpc/boot/crt0.S
+++ b/arch/powerpc/boot/crt0.S
@@ -28,7 +28,7 @@ p_etext: .8byte _etext
p_bss_start: .8byte __bss_start
p_end: .8byte _end
-p_toc: .8byte __toc_start + 0x8000 - p_base
+p_toc: .8byte .TOC. - p_base
p_dyn: .8byte __dynamic_start - p_base
p_rela: .8byte __rela_dyn_start - p_base
p_prom: .8byte 0
@@ -226,16 +226,19 @@ p_base: mflr r10 /* r10 now points to runtime addr of p_base */
#ifdef __powerpc64__
#define PROM_FRAME_SIZE 512
-#define SAVE_GPR(n, base) std n,8*(n)(base)
-#define REST_GPR(n, base) ld n,8*(n)(base)
-#define SAVE_2GPRS(n, base) SAVE_GPR(n, base); SAVE_GPR(n+1, base)
-#define SAVE_4GPRS(n, base) SAVE_2GPRS(n, base); SAVE_2GPRS(n+2, base)
-#define SAVE_8GPRS(n, base) SAVE_4GPRS(n, base); SAVE_4GPRS(n+4, base)
-#define SAVE_10GPRS(n, base) SAVE_8GPRS(n, base); SAVE_2GPRS(n+8, base)
-#define REST_2GPRS(n, base) REST_GPR(n, base); REST_GPR(n+1, base)
-#define REST_4GPRS(n, base) REST_2GPRS(n, base); REST_2GPRS(n+2, base)
-#define REST_8GPRS(n, base) REST_4GPRS(n, base); REST_4GPRS(n+4, base)
-#define REST_10GPRS(n, base) REST_8GPRS(n, base); REST_2GPRS(n+8, base)
+
+.macro OP_REGS op, width, start, end, base, offset
+ .Lreg=\start
+ .rept (\end - \start + 1)
+ \op .Lreg,\offset+\width*.Lreg(\base)
+ .Lreg=.Lreg+1
+ .endr
+.endm
+
+#define SAVE_GPRS(start, end, base) OP_REGS std, 8, start, end, base, 0
+#define REST_GPRS(start, end, base) OP_REGS ld, 8, start, end, base, 0
+#define SAVE_GPR(n, base) SAVE_GPRS(n, n, base)
+#define REST_GPR(n, base) REST_GPRS(n, n, base)
/* prom handles the jump into and return from firmware. The prom args pointer
is loaded in r3. */
@@ -246,9 +249,7 @@ prom:
stdu r1,-PROM_FRAME_SIZE(r1) /* Save SP and create stack space */
SAVE_GPR(2, r1)
- SAVE_GPR(13, r1)
- SAVE_8GPRS(14, r1)
- SAVE_10GPRS(22, r1)
+ SAVE_GPRS(13, 31, r1)
mfcr r10
std r10,8*32(r1)
mfmsr r10
@@ -283,9 +284,7 @@ prom:
/* Restore other registers */
REST_GPR(2, r1)
- REST_GPR(13, r1)
- REST_8GPRS(14, r1)
- REST_10GPRS(22, r1)
+ REST_GPRS(13, 31, r1)
ld r10,8*32(r1)
mtcr r10

arch/powerpc/boot/dts/digsy_mtc.dts

View file
diff --git a/arch/powerpc/boot/dts/digsy_mtc.dts b/arch/powerpc/boot/dts/digsy_mtc.dts
index 57024a4..dfaf974 100644
--- a/arch/powerpc/boot/dts/digsy_mtc.dts
+++ b/arch/powerpc/boot/dts/digsy_mtc.dts
@@ -25,14 +25,6 @@
status = "disabled";
};
- spi@f00 {
- msp430@0 {
- compatible = "spidev";
- spi-max-frequency = <32000>;
- reg = <0>;
- };
- };
-
psc@2000 { // PSC1
status = "disabled";
};

arch/powerpc/boot/dts/o2d.dtsi

View file
diff --git a/arch/powerpc/boot/dts/o2d.dtsi b/arch/powerpc/boot/dts/o2d.dtsi
index b55a9e5..7e52509 100644
--- a/arch/powerpc/boot/dts/o2d.dtsi
+++ b/arch/powerpc/boot/dts/o2d.dtsi
@@ -34,12 +34,6 @@
#address-cells = <1>;
#size-cells = <0>;
cell-index = <0>;
-
- spidev@0 {
- compatible = "spidev";
- spi-max-frequency = <250000>;
- reg = <0>;
- };
};
psc@2200 { // PSC2

arch/powerpc/boot/zImage.lds.S

View file
diff --git a/arch/powerpc/boot/zImage.lds.S b/arch/powerpc/boot/zImage.lds.S
index d6f0728..d65cd55 100644
--- a/arch/powerpc/boot/zImage.lds.S
+++ b/arch/powerpc/boot/zImage.lds.S
@@ -36,12 +36,9 @@ SECTIONS
}
#ifdef CONFIG_PPC64_BOOT_WRAPPER
- . = ALIGN(256);
- .got :
+ .got : ALIGN(256)
{
- __toc_start = .;
- *(.got)
- *(.toc)
+ *(.got .toc)
}
#endif

arch/powerpc/configs/microwatt_defconfig

View file
diff --git a/arch/powerpc/configs/microwatt_defconfig b/arch/powerpc/configs/microwatt_defconfig
index 07d87a4..eff933e 100644
--- a/arch/powerpc/configs/microwatt_defconfig
+++ b/arch/powerpc/configs/microwatt_defconfig
@@ -15,6 +15,8 @@ CONFIG_EMBEDDED=y
# CONFIG_COMPAT_BRK is not set
# CONFIG_SLAB_MERGE_DEFAULT is not set
CONFIG_PPC64=y
+CONFIG_POWER9_CPU=y
+# CONFIG_PPC_64S_HASH_MMU is not set
# CONFIG_PPC_KUEP is not set
# CONFIG_PPC_KUAP is not set
CONFIG_CPU_LITTLE_ENDIAN=y
@@ -27,7 +29,6 @@ CONFIG_PPC_MICROWATT=y
CONFIG_CPU_FREQ=y
CONFIG_HZ_100=y
CONFIG_PPC_4K_PAGES=y
-# CONFIG_PPC_MEM_KEYS is not set
# CONFIG_SECCOMP is not set
# CONFIG_MQ_IOSCHED_KYBER is not set
# CONFIG_COREDUMP is not set

arch/powerpc/configs/ppc64_defconfig

View file
diff --git a/arch/powerpc/configs/ppc64_defconfig b/arch/powerpc/configs/ppc64_defconfig
index 203d0b7..c8b0e80 100644
--- a/arch/powerpc/configs/ppc64_defconfig
+++ b/arch/powerpc/configs/ppc64_defconfig
@@ -26,7 +26,6 @@ CONFIG_PPC64=y
CONFIG_NR_CPUS=2048
CONFIG_PPC_SPLPAR=y
CONFIG_DTL=y
-CONFIG_SCANLOG=m
CONFIG_PPC_SMLPAR=y
CONFIG_IBMEBUS=y
CONFIG_PPC_SVM=y

arch/powerpc/configs/pseries_defconfig

View file
diff --git a/arch/powerpc/configs/pseries_defconfig b/arch/powerpc/configs/pseries_defconfig
index e64f224..b571d08 100644
--- a/arch/powerpc/configs/pseries_defconfig
+++ b/arch/powerpc/configs/pseries_defconfig
@@ -38,7 +38,6 @@ CONFIG_MODULE_SRCVERSION_ALL=y
CONFIG_PARTITION_ADVANCED=y
CONFIG_PPC_SPLPAR=y
CONFIG_DTL=y
-CONFIG_SCANLOG=m
CONFIG_PPC_SMLPAR=y
CONFIG_IBMEBUS=y
CONFIG_PAPR_SCM=m

arch/powerpc/crypto/md5-asm.S

View file
diff --git a/arch/powerpc/crypto/md5-asm.S b/arch/powerpc/crypto/md5-asm.S
index 948d100..fa6bc44 100644
--- a/arch/powerpc/crypto/md5-asm.S
+++ b/arch/powerpc/crypto/md5-asm.S
@@ -38,15 +38,11 @@
#define INITIALIZE \
PPC_STLU r1,-INT_FRAME_SIZE(r1); \
- SAVE_8GPRS(14, r1); /* push registers onto stack */ \
- SAVE_4GPRS(22, r1); \
- SAVE_GPR(26, r1)
+ SAVE_GPRS(14, 26, r1) /* push registers onto stack */
#define FINALIZE \
- REST_8GPRS(14, r1); /* pop registers from stack */ \
- REST_4GPRS(22, r1); \
- REST_GPR(26, r1); \
- addi r1,r1,INT_FRAME_SIZE;
+ REST_GPRS(14, 26, r1); /* pop registers from stack */ \
+ addi r1,r1,INT_FRAME_SIZE
#ifdef __BIG_ENDIAN__
#define LOAD_DATA(reg, off) \

arch/powerpc/crypto/sha1-powerpc-asm.S

View file
diff --git a/arch/powerpc/crypto/sha1-powerpc-asm.S b/arch/powerpc/crypto/sha1-powerpc-asm.S
index 23e248b..f0d5ed5 100644
--- a/arch/powerpc/crypto/sha1-powerpc-asm.S
+++ b/arch/powerpc/crypto/sha1-powerpc-asm.S
@@ -125,8 +125,7 @@
_GLOBAL(powerpc_sha_transform)
PPC_STLU r1,-INT_FRAME_SIZE(r1)
- SAVE_8GPRS(14, r1)
- SAVE_10GPRS(22, r1)
+ SAVE_GPRS(14, 31, r1)
/* Load up A - E */
lwz RA(0),0(r3) /* A */
@@ -184,7 +183,6 @@ _GLOBAL(powerpc_sha_transform)
stw RD(0),12(r3)
stw RE(0),16(r3)
- REST_8GPRS(14, r1)
- REST_10GPRS(22, r1)
+ REST_GPRS(14, 31, r1)
addi r1,r1,INT_FRAME_SIZE
blr

arch/powerpc/include/asm/asm-prototypes.h

View file
diff --git a/arch/powerpc/include/asm/asm-prototypes.h b/arch/powerpc/include/asm/asm-prototypes.h
index 2228238..41b8a1e 100644
--- a/arch/powerpc/include/asm/asm-prototypes.h
+++ b/arch/powerpc/include/asm/asm-prototypes.h
@@ -141,11 +141,6 @@ static inline void kvmppc_restore_tm_hv(struct kvm_vcpu *vcpu, u64 msr,
bool preserve_nv) { }
#endif /* CONFIG_PPC_TRANSACTIONAL_MEM */
-void kvmhv_save_host_pmu(void);
-void kvmhv_load_host_pmu(void);
-void kvmhv_save_guest_pmu(struct kvm_vcpu *vcpu, bool pmu_in_use);
-void kvmhv_load_guest_pmu(struct kvm_vcpu *vcpu);
-
void kvmppc_p9_enter_guest(struct kvm_vcpu *vcpu);
long kvmppc_h_set_dabr(struct kvm_vcpu *vcpu, unsigned long dabr);

arch/powerpc/include/asm/atomic.h

View file
diff --git a/arch/powerpc/include/asm/atomic.h b/arch/powerpc/include/asm/atomic.h
index fd594fd..853dc86 100644
--- a/arch/powerpc/include/asm/atomic.h
+++ b/arch/powerpc/include/asm/atomic.h
@@ -37,62 +37,62 @@ static __inline__ void arch_atomic_set(atomic_t *v, int i)
__asm__ __volatile__("stw%U0%X0 %1,%0" : "=m<>"(v->counter) : "r"(i));
}
-#define ATOMIC_OP(op, asm_op) \
+#define ATOMIC_OP(op, asm_op, suffix, sign, ...) \
static __inline__ void arch_atomic_##op(int a, atomic_t *v) \
{ \
int t; \
\
__asm__ __volatile__( \
"1: lwarx %0,0,%3 # atomic_" #op "\n" \
- #asm_op " %0,%2,%0\n" \
+ #asm_op "%I2" suffix " %0,%0,%2\n" \
" stwcx. %0,0,%3 \n" \
" bne- 1b\n" \
: "=&r" (t), "+m" (v->counter) \
- : "r" (a), "r" (&v->counter) \
- : "cc"); \
+ : "r"#sign (a), "r" (&v->counter) \
+ : "cc", ##__VA_ARGS__); \
} \
-#define ATOMIC_OP_RETURN_RELAXED(op, asm_op) \
+#define ATOMIC_OP_RETURN_RELAXED(op, asm_op, suffix, sign, ...) \
static inline int arch_atomic_##op##_return_relaxed(int a, atomic_t *v) \
{ \
int t; \
\
__asm__ __volatile__( \
"1: lwarx %0,0,%3 # atomic_" #op "_return_relaxed\n" \
- #asm_op " %0,%2,%0\n" \
+ #asm_op "%I2" suffix " %0,%0,%2\n" \
" stwcx. %0,0,%3\n" \
" bne- 1b\n" \
: "=&r" (t), "+m" (v->counter) \
- : "r" (a), "r" (&v->counter) \
- : "cc"); \
+ : "r"#sign (a), "r" (&v->counter) \
+ : "cc", ##__VA_ARGS__); \
\
return t; \
}
-#define ATOMIC_FETCH_OP_RELAXED(op, asm_op) \
+#define ATOMIC_FETCH_OP_RELAXED(op, asm_op, suffix, sign, ...) \
static inline int arch_atomic_fetch_##op##_relaxed(int a, atomic_t *v) \
{ \
int res, t; \
\
__asm__ __volatile__( \
"1: lwarx %0,0,%4 # atomic_fetch_" #op "_relaxed\n" \
- #asm_op " %1,%3,%0\n" \
+ #asm_op "%I3" suffix " %1,%0,%3\n" \
" stwcx. %1,0,%4\n" \
" bne- 1b\n" \
: "=&r" (res), "=&r" (t), "+m" (v->counter) \
- : "r" (a), "r" (&v->counter) \
- : "cc"); \
+ : "r"#sign (a), "r" (&v->counter) \
+ : "cc", ##__VA_ARGS__); \
\
return res; \
}
-#define ATOMIC_OPS(op, asm_op) \
- ATOMIC_OP(op, asm_op) \
- ATOMIC_OP_RETURN_RELAXED(op, asm_op) \
- ATOMIC_FETCH_OP_RELAXED(op, asm_op)
+#define ATOMIC_OPS(op, asm_op, suffix, sign, ...) \
+ ATOMIC_OP(op, asm_op, suffix, sign, ##__VA_ARGS__) \
+ ATOMIC_OP_RETURN_RELAXED(op, asm_op, suffix, sign, ##__VA_ARGS__)\
+ ATOMIC_FETCH_OP_RELAXED(op, asm_op, suffix, sign, ##__VA_ARGS__)
-ATOMIC_OPS(add, add)
-ATOMIC_OPS(sub, subf)
+ATOMIC_OPS(add, add, "c", I, "xer")
+ATOMIC_OPS(sub, sub, "c", I, "xer")
#define arch_atomic_add_return_relaxed arch_atomic_add_return_relaxed
#define arch_atomic_sub_return_relaxed arch_atomic_sub_return_relaxed
@@ -101,13 +101,13 @@ ATOMIC_OPS(sub, subf)
#define arch_atomic_fetch_sub_relaxed arch_atomic_fetch_sub_relaxed
#undef ATOMIC_OPS
-#define ATOMIC_OPS(op, asm_op) \
- ATOMIC_OP(op, asm_op) \
- ATOMIC_FETCH_OP_RELAXED(op, asm_op)
+#define ATOMIC_OPS(op, asm_op, suffix, sign) \
+ ATOMIC_OP(op, asm_op, suffix, sign) \
+ ATOMIC_FETCH_OP_RELAXED(op, asm_op, suffix, sign)
-ATOMIC_OPS(and, and)
-ATOMIC_OPS(or, or)
-ATOMIC_OPS(xor, xor)
+ATOMIC_OPS(and, and, ".", K)
+ATOMIC_OPS(or, or, "", K)
+ATOMIC_OPS(xor, xor, "", K)
#define arch_atomic_fetch_and_relaxed arch_atomic_fetch_and_relaxed
#define arch_atomic_fetch_or_relaxed arch_atomic_fetch_or_relaxed
@@ -118,71 +118,6 @@ ATOMIC_OPS(xor, xor)
#undef ATOMIC_OP_RETURN_RELAXED
#undef ATOMIC_OP
-static __inline__ void arch_atomic_inc(atomic_t *v)
-{
- int t;
-
- __asm__ __volatile__(
-"1: lwarx %0,0,%2 # atomic_inc\n\
- addic %0,%0,1\n"
-" stwcx. %0,0,%2 \n\
- bne- 1b"
- : "=&r" (t), "+m" (v->counter)
- : "r" (&v->counter)
- : "cc", "xer");
-}
-#define arch_atomic_inc arch_atomic_inc
-
-static __inline__ int arch_atomic_inc_return_relaxed(atomic_t *v)
-{
- int t;
-
- __asm__ __volatile__(
-"1: lwarx %0,0,%2 # atomic_inc_return_relaxed\n"
-" addic %0,%0,1\n"
-" stwcx. %0,0,%2\n"
-" bne- 1b"
- : "=&r" (t), "+m" (v->counter)
- : "r" (&v->counter)
- : "cc", "xer");
-
- return t;
-}
-
-static __inline__ void arch_atomic_dec(atomic_t *v)
-{
- int t;
-
- __asm__ __volatile__(
-"1: lwarx %0,0,%2 # atomic_dec\n\
- addic %0,%0,-1\n"
-" stwcx. %0,0,%2\n\
- bne- 1b"
- : "=&r" (t), "+m" (v->counter)
- : "r" (&v->counter)
- : "cc", "xer");
-}
-#define arch_atomic_dec arch_atomic_dec
-
-static __inline__ int arch_atomic_dec_return_relaxed(atomic_t *v)
-{
- int t;
-
- __asm__ __volatile__(
-"1: lwarx %0,0,%2 # atomic_dec_return_relaxed\n"
-" addic %0,%0,-1\n"
-" stwcx. %0,0,%2\n"
-" bne- 1b"
- : "=&r" (t), "+m" (v->counter)
- : "r" (&v->counter)
- : "cc", "xer");
-
- return t;
-}
-
-#define arch_atomic_inc_return_relaxed arch_atomic_inc_return_relaxed
-#define arch_atomic_dec_return_relaxed arch_atomic_dec_return_relaxed
-
#define arch_atomic_cmpxchg(v, o, n) \
(arch_cmpxchg(&((v)->counter), (o), (n)))
#define arch_atomic_cmpxchg_relaxed(v, o, n) \
@@ -241,50 +176,20 @@ static __inline__ int arch_atomic_fetch_add_unless(atomic_t *v, int a, int u)
"1: lwarx %0,0,%1 # atomic_fetch_add_unless\n\
cmpw 0,%0,%3 \n\
beq 2f \n\
- add %0,%2,%0 \n"
+ add%I2c %0,%0,%2 \n"
" stwcx. %0,0,%1 \n\
bne- 1b \n"
PPC_ATOMIC_EXIT_BARRIER
-" subf %0,%2,%0 \n\
+" sub%I2c %0,%0,%2 \n\
2:"
: "=&r" (t)
- : "r" (&v->counter), "r" (a), "r" (u)
- : "cc", "memory");
+ : "r" (&v->counter), "rI" (a), "r" (u)
+ : "cc", "memory", "xer");
return t;
}
#define arch_atomic_fetch_add_unless arch_atomic_fetch_add_unless
-/**
- * atomic_inc_not_zero - increment unless the number is zero
- * @v: pointer of type atomic_t
- *
- * Atomically increments @v by 1, so long as @v is non-zero.
- * Returns non-zero if @v was non-zero, and zero otherwise.
- */
-static __inline__ int arch_atomic_inc_not_zero(atomic_t *v)
-{
- int t1, t2;
-
- __asm__ __volatile__ (
- PPC_ATOMIC_ENTRY_BARRIER
-"1: lwarx %0,0,%2 # atomic_inc_not_zero\n\
- cmpwi 0,%0,0\n\
- beq- 2f\n\
- addic %1,%0,1\n"
-" stwcx. %1,0,%2\n\
- bne- 1b\n"
- PPC_ATOMIC_EXIT_BARRIER
- "\n\
-2:"
- : "=&r" (t1), "=&r" (t2)
- : "r" (&v->counter)
- : "cc", "xer", "memory");
-
- return t1;
-}
-#define arch_atomic_inc_not_zero(v) arch_atomic_inc_not_zero((v))
-
/*
* Atomically test *v and decrement if it is greater than 0.
* The function returns the old value of *v minus 1, even if

arch/powerpc/include/asm/bitops.h

View file
diff --git a/arch/powerpc/include/asm/bitops.h b/arch/powerpc/include/asm/bitops.h
index 11847b6..a05d8c6 100644
--- a/arch/powerpc/include/asm/bitops.h
+++ b/arch/powerpc/include/asm/bitops.h
@@ -71,19 +71,61 @@ static inline void fn(unsigned long mask, \
__asm__ __volatile__ ( \
prefix \
"1:" PPC_LLARX "%0,0,%3,0\n" \
- stringify_in_c(op) "%0,%0,%2\n" \
+ #op "%I2 %0,%0,%2\n" \
PPC_STLCX "%0,0,%3\n" \
"bne- 1b\n" \
: "=&r" (old), "+m" (*p) \
- : "r" (mask), "r" (p) \
+ : "rK" (mask), "r" (p) \

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/book3s/32/kup.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/book3s/32/mmu-hash.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/book3s/64/hash.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/book3s/64/kup.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/book3s/64/mmu-hash.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/book3s/64/mmu.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/book3s/64/tlbflush-hash.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/book3s/64/tlbflush.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/book3s/pgtable.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/btext.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/code-patching.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/cpm2.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/cpuidle.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/cputhreads.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/eeh.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/exception-64e.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/fadump-internal.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/firmware.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/floppy.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/head-64.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/hugetlb.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/hw_breakpoint.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/hw_irq.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/i8259.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/inst.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/interrupt.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/iommu.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/ipic.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/irq.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/kexec.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/kup.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/kvm_asm.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/kvm_book3s.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/kvm_book3s_64.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/kvm_guest.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/kvm_host.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/kvm_ppc.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/machdep.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/mmu.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/mmu_context.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/mpic.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/nohash/32/kup-8xx.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/nohash/32/mmu-44x.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/nohash/32/mmu-8xx.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/nohash/64/pgtable.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/nohash/kup-booke.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/opal-api.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/opal.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/paca.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/pci.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/perf_event_server.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/ppc-opcode.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/ppc_asm.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/processor.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/ptrace.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/reg.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/rtas.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/sections.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/setup.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/smu.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/sstep.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/switch_to.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/task_size_64.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/time.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/udbg.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/uprobes.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/xics.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/xmon.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/Makefile

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/align.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/asm-offsets.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/btext.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/cacheinfo.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/cpu_setup_power.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/dbell.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/dt_cpu_ftrs.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/eeh_cache.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/eeh_driver.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/entry_32.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/entry_64.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/epapr_paravirt.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/exceptions-64e.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/exceptions-64s.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/fadump.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/fpu.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/head_32.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/head_40x.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/head_44x.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/head_64.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/head_book3s_32.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/head_booke.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/head_fsl_booke.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/hw_breakpoint.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/hw_breakpoint_constraints.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/idle.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/idle_6xx.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/interrupt.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/interrupt_64.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/irq.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/kgdb.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/kprobes.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/l2cr_6xx.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/mce.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/mce_power.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/module.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/module_32.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/nvram_64.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/optprobes.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/optprobes_head.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/paca.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/pci-common.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/pci_32.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/process.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/prom.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/prom_init.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/rtas.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/rtasd.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/security.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/setup-common.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/setup.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/setup_32.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/setup_64.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/signal_32.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/smp.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/swsusp_32.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/swsusp_asm64.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/sysfs.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/time.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/tm.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/trace/ftrace.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/trace/ftrace_32.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/trace/ftrace_64_mprofile.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/udbg_16550.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/vecemu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/vector.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/vmlinux.lds.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kernel/watchdog.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kexec/core.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kexec/core_64.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kexec/ranges.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kvm/Kconfig

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kvm/book3s_64_entry.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kvm/book3s_64_mmu_radix.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kvm/book3s_hv.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kvm/book3s_hv.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kvm/book3s_hv_builtin.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kvm/book3s_hv_hmi.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kvm/book3s_hv_interrupts.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kvm/book3s_hv_nested.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kvm/book3s_hv_p9_entry.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kvm/book3s_hv_ras.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kvm/book3s_hv_rm_mmu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/kvm/book3s_hv_rmhandlers.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/lib/Makefile

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/lib/code-patching.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/lib/feature-fixups.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/lib/sstep.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/lib/test-code-patching.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/lib/test_code-patching.S

View before deletion

This diff is incomplete. Download the complete patch.

arch/powerpc/lib/test_emulate_step.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/lib/test_emulate_step_exec_instr.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/book3s32/Makefile

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/book3s32/kuap.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/book3s32/kuep.c

View before deletion

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/book3s32/mmu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/book3s32/mmu_context.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/book3s64/Makefile

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/book3s64/hash_native.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/book3s64/hash_pgtable.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/book3s64/hash_utils.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/book3s64/hugetlbpage.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/book3s64/mmu_context.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/book3s64/pgtable.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/book3s64/pkeys.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/book3s64/radix_pgtable.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/book3s64/slb.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/book3s64/trace.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/copro_fault.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/fault.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/hugetlbpage.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/init-common.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/init_64.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/ioremap.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/kasan/book3s_32.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/maccess.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/mem.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/mmap.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/mmu_context.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/nohash/44x.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/nohash/8xx.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/nohash/Makefile

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/nohash/book3e_pgtable.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/nohash/fsl_book3e.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/nohash/kup.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/nohash/mmu_context.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/nohash/tlb.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/nohash/tlb_low_64e.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/numa.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/pgtable.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/pgtable_64.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/ptdump/Makefile

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/ptdump/ptdump.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/mm/slice.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/net/bpf_jit.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/net/bpf_jit_comp.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/net/bpf_jit_comp32.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/net/bpf_jit_comp64.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/perf/8xx-pmu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/perf/core-book3s.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/perf/generic-compat-pmu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/perf/hv-24x7.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/perf/internal.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/perf/isa207-common.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/perf/power10-pmu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/perf/power5+-pmu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/perf/power5-pmu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/perf/power6-pmu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/perf/power7-pmu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/perf/power8-pmu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/perf/power9-pmu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/perf/ppc970-pmu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/44x/fsp2.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/4xx/cpm.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/4xx/pci.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/512x/clock-commonclk.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/512x/mpc512x.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/512x/mpc512x_shared.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/52xx/Kconfig

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/83xx/km83xx.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/83xx/mpc834x_mds.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/83xx/mpc837x_mds.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/83xx/mpc837x_rdb.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/83xx/mpc83xx.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/83xx/usb.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/85xx/c293pcie.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/85xx/ge_imp3a.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/85xx/mpc85xx_cds.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/85xx/mpc85xx_pm_ops.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/85xx/smp.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/85xx/socrates_fpga_pic.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/85xx/socrates_fpga_pic.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/85xx/xes_mpc85xx.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/Kconfig

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/Kconfig.cputype

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/cell/Kconfig

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/cell/cbe_regs.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/cell/iommu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/cell/pervasive.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/cell/spu_base.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/cell/spu_manage.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/cell/spufs/inode.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/chrp/Kconfig

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/chrp/pegasos_eth.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/embedded6xx/Kconfig

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/embedded6xx/hlwd-pic.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/embedded6xx/hlwd-pic.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/embedded6xx/holly.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/embedded6xx/usbgecko_udbg.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/embedded6xx/wii.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/maple/Kconfig

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/microwatt/Kconfig

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/microwatt/rng.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pasemi/Kconfig

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pasemi/msi.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pasemi/pasemi.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pasemi/pci.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pasemi/setup.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powermac/Kconfig

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powermac/cache.S

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powermac/feature.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powermac/low_i2c.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powermac/nvram.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powermac/pfunc_base.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powermac/pic.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powermac/setup.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powermac/smp.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powermac/udbg_scc.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/Kconfig

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/idle.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/opal-core.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/opal-dump.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/opal-elog.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/opal-fadump.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/opal-imc.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/opal-lpc.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/opal-msglog.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/opal-power.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/opal-powercap.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/opal-rtc.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/opal-sensor-groups.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/opal.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/pci-ioda.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/powernv.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/rng.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/powernv/setup.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/ps3/gelic_udbg.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/ps3/mm.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/ps3/os-area.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/ps3/platform.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/ps3/repository.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/ps3/smp.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/ps3/spu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pseries/Kconfig

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pseries/Makefile

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pseries/event_sources.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pseries/hotplug-cpu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pseries/iommu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pseries/lpar.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pseries/lparcfg.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pseries/mobility.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pseries/pseries.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pseries/ras.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pseries/rtas-fadump.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pseries/scanlog.c

View before deletion

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pseries/setup.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pseries/vas.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/platforms/pseries/vio.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/cpm2.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/dart_iommu.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/fsl_mpic_err.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/fsl_pci.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/fsl_pci.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/i8259.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/ipic.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/mpic.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/mpic.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/mpic_msi.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/mpic_timer.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/mpic_u3msi.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/tsi108_dev.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/tsi108_pci.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/udbg_memcons.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/xics/icp-hv.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/xics/icp-opal.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/xics/xics-common.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/xive/common.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/xive/native.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/xive/spapr.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/sysdev/xive/xive-internal.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/xmon/xmon.c

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/xmon/xmon_bpts.h

View file

This diff is incomplete. Download the complete patch.

drivers/macintosh/mediabay.c

View file

This diff is incomplete. Download the complete patch.

drivers/misc/cxl/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/misc/lkdtm/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/misc/lkdtm/core.c

View file

This diff is incomplete. Download the complete patch.

drivers/misc/ocxl/file.c

View file

This diff is incomplete. Download the complete patch.

include/linux/cuda.h

View file

This diff is incomplete. Download the complete patch.

include/linux/pmu.h

View file

This diff is incomplete. Download the complete patch.

include/uapi/linux/perf_event.h

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/powerpc/security/mitigation-patching.sh

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/powerpc/security/spectre_v2.c

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/powerpc/signal/.gitignore

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/powerpc/signal/Makefile

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/powerpc/signal/sigreturn_kernel.c

View file

This diff is incomplete. Download the complete patch.

tools/testing/selftests/powerpc/signal/sigreturn_unaligned.c

View file

This diff is incomplete. Download the complete patch.