linux/arch/powerpc/include/asm
Michael Ellerman a984506c54 powerpc/mm: Don't report PUDs as memory leaks when using kmemleak
Paul Menzel reported that kmemleak was producing reports such as:

  unreferenced object 0xc0000000f8b80000 (size 16384):
    comm "init", pid 1, jiffies 4294937416 (age 312.240s)
    hex dump (first 32 bytes):
      00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
      00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
    backtrace:
      [<00000000d997deb7>] __pud_alloc+0x80/0x190
      [<0000000087f2e8a3>] move_page_tables+0xbac/0xdc0
      [<00000000091e51c2>] shift_arg_pages+0xc0/0x210
      [<00000000ab88670c>] setup_arg_pages+0x22c/0x2a0
      [<0000000060871529>] load_elf_binary+0x41c/0x1648
      [<00000000ecd9d2d4>] search_binary_handler.part.11+0xbc/0x280
      [<0000000034e0cdd7>] __do_execve_file.isra.13+0x73c/0x940
      [<000000005f953a6e>] sys_execve+0x58/0x70
      [<000000009700a858>] system_call+0x5c/0x70

Indicating that a PUD was being leaked.

However what's really happening is that kmemleak is not able to
recognise the references from the PGD to the PUD, because they are not
fully qualified pointers.

We can confirm that in xmon, eg:

Find the task struct for pid 1 "init":
  0:mon> P
       task_struct     ->thread.ksp    PID   PPID S  P CMD
  c0000001fe7c0000 c0000001fe803960      1      0 S 13 systemd

Dump virtual address 0 to find the PGD:
  0:mon> dv 0 c0000001fe7c0000
  pgd  @ 0xc0000000f8b01000

Dump the memory of the PGD:
  0:mon> d c0000000f8b01000
  c0000000f8b01000 00000000f8b90000 0000000000000000  |................|
  c0000000f8b01010 0000000000000000 0000000000000000  |................|
  c0000000f8b01020 0000000000000000 0000000000000000  |................|
  c0000000f8b01030 0000000000000000 00000000f8b80000  |................|
                                    ^^^^^^^^^^^^^^^^

There we can see the reference to our supposedly leaked PUD. But
because it's missing the leading 0xc, kmemleak won't recognise it.

We can confirm it's still in use by translating an address that is
mapped via it:
  0:mon> dv 7fff94000000 c0000001fe7c0000
  pgd  @ 0xc0000000f8b01000
  pgdp @ 0xc0000000f8b01038 = 0x00000000f8b80000 <--
  pudp @ 0xc0000000f8b81ff8 = 0x00000000037c4000
  pmdp @ 0xc0000000037c5ca0 = 0x00000000fbd89000
  ptep @ 0xc0000000fbd89000 = 0xc0800001d5ce0386
  Maps physical address = 0x00000001d5ce0000
  Flags = Accessed Dirty Read Write

The fix is fairly simple. We need to tell kmemleak to ignore PUD
allocations and never report them as leaks. We can also tell it not to
scan the PGD, because it will never find pointers in there. However it
will still notice if we allocate a PGD and then leak it.

Reported-by: Paul Menzel <pmenzel@molgen.mpg.de>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Tested-by: Paul Menzel <pmenzel@molgen.mpg.de>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2018-07-30 22:48:21 +10:00
..
book3s powerpc/mm: Don't report PUDs as memory leaks when using kmemleak 2018-07-30 22:48:21 +10:00
nohash powerpc: split asm/tlbflush.h 2018-07-30 22:48:21 +10:00
8xx_immap.h
accounting.h sched/cputime, powerpc: Prepare accounting structure for cputime flush on tick 2017-01-14 09:54:12 +01:00
agp.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
archrandom.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
asm-405.h powerpc/405: move PPC405_ERR77 in asm-405.h 2018-07-30 22:48:13 +10:00
asm-compat.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
asm-const.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
asm-offsets.h
asm-prototypes.h powerpc/64: enhance memcmp() with VMX instruction for long bytes comparision 2018-07-24 22:03:21 +10:00
async_tx.h
atomic.h powerpc/405: move PPC405_ERR77 in asm-405.h 2018-07-30 22:48:13 +10:00
backlight.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
barrier.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
bitops.h powerpc/405: move PPC405_ERR77 in asm-405.h 2018-07-30 22:48:13 +10:00
bootx.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
btext.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
bug.h powerpc/pseries, ps3: panic flush kernel messages before halting system 2018-01-22 11:44:24 +11:00
bugs.h
cache.h powerpc/lib: Adjust .balign inside string functions for PPC32 2018-06-04 00:39:19 +10:00
cacheflush.h powerpc: remove unneeded inclusions of cpu_has_feature.h 2018-07-30 22:47:54 +10:00
cell-pmu.h
cell-regs.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
checksum.h powerpc: Implement csum_ipv6_magic in assembly 2018-06-04 00:39:19 +10:00
cmpxchg.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
code-patching.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
compat.h y2038: powerpc: Extend sysvipc data structures 2018-04-20 16:20:13 +02:00
context_tracking.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
copro.h
cpm1.h powerpc/sysdev: change CPM GPIO to platform_device 2018-01-20 23:29:02 -06:00
cpm2.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cpm.h powerpc/sysdev: change CPM GPIO to platform_device 2018-01-20 23:29:02 -06:00
cpu_has_feature.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cpufeature.h powerpc: Add module autoloading based on CPU features 2016-07-21 20:33:57 +10:00
cpuidle.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cputable.h powerpc: clean inclusions of asm/feature-fixups.h 2018-07-30 22:48:17 +10:00
cputhreads.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cputime.h powerpc: remove unneeded inclusions of cpu_has_feature.h 2018-07-30 22:47:54 +10:00
current.h
dbdma.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
dbell.h powerpc: clean inclusions of asm/feature-fixups.h 2018-07-30 22:48:17 +10:00
dcr-generic.h
dcr-mmio.h
dcr-native.h powerpc: clean the inclusion of stringify.h 2018-07-30 22:48:17 +10:00
dcr-regs.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
dcr.h
debug.h powerpc: declare set_breakpoint() static 2018-07-30 22:48:18 +10:00
debugfs.h powerpc: Create asm/debugfs.h and move powerpc_debugfs_root there 2017-04-11 07:46:03 +10:00
delay.h powerpc: use spin loop primitives in some functions 2017-07-02 20:40:24 +10:00
device.h treewide: Move dma_ops from struct dev_archdata into struct device 2017-01-24 12:23:35 -05:00
disassemble.h KVM: PPC: Book3S: Add MMIO emulation for FP and VSX instructions 2017-04-20 11:36:41 +10:00
dma-direct.h dma/direct: Handle the memory encryption bit in common code 2018-03-20 10:01:59 +01:00
dma-mapping.h powerpc: rename dma_direct_ to dma_nommu_ 2018-01-10 16:41:14 +01:00
dma.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
drmem.h powerpc/drmem: Add support for ibm, dynamic-memory-v2 property 2018-01-16 23:26:29 +11:00
dt_cpu_ftrs.h powerpc: clean inclusions of asm/feature-fixups.h 2018-07-30 22:48:17 +10:00
edac.h
eeh_event.h powerpc/eeh: Manage EEH_PE_RECOVERING inside eeh_handle_normal_event() 2018-03-27 23:44:58 +11:00
eeh.h powerpc/eeh: Avoid misleading message "EEH: no capable adapters found" 2018-07-02 23:54:26 +10:00
ehv_pic.h
elf.h powerpc: move ELF_ET_DYN_BASE to 4GB / 4MB 2017-07-10 16:32:36 -07:00
emergency-restart.h
emulated_ops.h powerpc/64s: Add workaround for P9 vector CI load issue 2017-09-27 08:23:22 +10:00
epapr_hcalls.h powerpc/epapr: Move register keyword at the beginning of declaration 2018-03-13 15:50:32 +11:00
exception-64e.h powerpc/64: Add macros for annotating the destination of rfid/hrfid 2018-01-10 03:07:30 +11:00
exception-64s.h powerpc: clean inclusions of asm/feature-fixups.h 2018-07-30 22:48:17 +10:00
exec.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
extable.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
fadump.h powerpc/powernv: Use kernel crash path for machine checks 2017-08-31 14:26:04 +10:00
fb.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
feature-fixups.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
firmware.h powerpc: clean inclusions of asm/feature-fixups.h 2018-07-30 22:48:17 +10:00
fixmap.h powerpc: remove superflous inclusions of asm/fixmap.h 2018-07-30 22:48:18 +10:00
floppy.h floppy: consolidate the dummy fd_cacheflush definition 2017-10-19 16:37:08 +02:00
fs_pd.h powerpc/8xx: Getting rid of remaining use of CONFIG_8xx 2017-08-10 23:32:12 +10:00
fsl_85xx_cache_sram.h
fsl_gtm.h
fsl_hcalls.h scripts/spelling.txt: add "partiton" pattern and fix typo instances 2017-02-27 18:43:46 -08:00
fsl_lbc.h
fsl_pamu_stash.h
fsl_pm.h powerpc/rcpm: add RCPM driver 2016-03-04 23:50:27 -06:00
ftrace.h Merge branch 'fixes' into next 2018-06-03 20:32:02 +10:00
futex.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
grackle.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
hardirq.h powerpc updates for 4.18 2018-06-07 10:23:33 -07:00
head-64.h powerpc/64s: Add support to take additional parameter in MASKABLE_* macro 2018-01-19 22:37:02 +11:00
heathrow.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
highmem.h powerpc: remove unnecessary inclusion of asm/tlbflush.h 2018-07-30 22:48:20 +10:00
hmi.h KVM: PPC: Book3S HV: Improve handling of debug-trigger HMIs on POWER9 2018-01-18 15:31:25 +11:00
hugetlb.h powerpc/mm/hugetlb: Update huge_ptep_set_access_flags to call __ptep_set_access_flags directly 2018-06-03 20:40:33 +10:00
hvcall.h misc: IBM Virtual Management Channel Driver (VMC) 2018-05-14 16:35:42 +02:00
hvconsole.h
hvcserver.h
hvsi.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
hw_breakpoint.h powerpc: fix includes in asm/processor.h 2018-07-30 22:48:19 +10:00
hw_irq.h powerpc/64s: make PACA_IRQ_HARD_DIS track MSR[EE] closely 2018-07-24 22:03:14 +10:00
hydra.h powerpc: Fix misspellings in comments. 2016-03-01 19:27:20 +11:00
i8259.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ibmebus.h
icswx.h crypto/nx: Add P9 NX specific error codes for 842 engine 2017-09-01 16:42:50 +10:00
ide.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ima.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
imc-pmu.h powerpc/perf: Unregister thread-imc if core-imc not supported 2018-06-03 20:43:37 +10:00
immap_cpm2.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
io_event_irq.h
io-defs.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
io-workarounds.h
io.h powerpc/io: Add __raw_writeq_be() __raw_rm_writeq_be() 2018-05-18 21:59:56 +10:00
iommu.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
ipic.h
irq_work.h powerpc: Add missing prototype for arch_irq_work_raise() 2018-03-13 15:50:37 +11:00
irq.h powerpc: Add missing prototype for init_IRQ() 2018-03-13 15:50:38 +11:00
irqflags.h powerpc/64: Rename soft_enabled to irq_soft_mask 2018-01-19 22:37:01 +11:00
isa-bridge.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
jump_label.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
Kbuild arch: Remove clkdev.h asm-generic from Kbuild 2018-01-03 09:02:11 -08:00
kdebug.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
kdump.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
kexec.h kexec_file,x86,powerpc: factor out kexec_file_ops functions 2018-04-13 17:10:27 -07:00
keylargo.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
kgdb.h
kmap_types.h
kprobes.h powerpc/kprobes: Clean up jprobe detection in livepatch handler 2017-10-04 23:42:17 +11:00
kvm_asm.h KVM: PPC: Book3S HV: Work around transactional memory bugs in POWER9 2018-03-24 00:39:13 +11:00
kvm_book3s_32.h
kvm_book3s_64.h KVM: PPC: Move nip/ctr/lr/xer registers to pt_regs in kvm_vcpu_arch 2018-05-18 15:38:23 +10:00
kvm_book3s_asm.h KVM: PPC: Book3S HV: Work around transactional memory bugs in POWER9 2018-03-24 00:39:13 +11:00
kvm_book3s.h KVM: PPC: Book3S PR: Support TAR handling for PR KVM HTM 2018-06-01 10:30:43 +10:00
kvm_booke_hv_asm.h powerpc: clean inclusions of asm/feature-fixups.h 2018-07-30 22:48:17 +10:00
kvm_booke.h KVM: PPC: Move nip/ctr/lr/xer registers to pt_regs in kvm_vcpu_arch 2018-05-18 15:38:23 +10:00
kvm_fpu.h
kvm_host.h KVM: PPC: Book3S PR: Add transaction memory save/restore skeleton 2018-06-01 10:29:55 +10:00
kvm_para.h KVM: Introduce paravirtualization hints and KVM_HINTS_DEDICATED 2018-03-06 18:40:44 +01:00
kvm_ppc.h KVM: PPC: Reimplement LOAD_VMX/STORE_VMX instruction mmio emulation with analyse_instr() input 2018-05-22 19:53:00 +10:00
libata-portmap.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
linkage.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
livepatch.h powerpc/livepatch: Remove klp_write_module_reloc() stub 2016-12-19 11:15:25 +01:00
local.h powerpc/64s: Implement local_t using irq soft masking 2018-01-19 22:37:04 +11:00
lppaca.h powerpc: Fix oops due to bad access of lppaca on bare metal 2018-04-03 21:50:07 +10:00
lv1call.h
machdep.h powerpc: use time64_t in read_persistent_clock 2018-06-03 20:43:33 +10:00
macio.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mc146818rtc.h
mce.h powerpc/mce: Hookup derror (load/store) UE errors 2017-10-16 23:12:01 +11:00
mediabay.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
membarrier.h membarrier: Provide GLOBAL_EXPEDITED command 2018-02-05 21:34:31 +01:00
mm-arch-hooks.h
mman.h mm: Add address parameter to arch_validate_prot() 2018-03-18 07:38:47 -07:00
mmu_context.h mm/pkeys, powerpc, x86: Provide an empty vma_pkey() in linux/pkeys.h 2018-05-09 11:50:41 +10:00
mmu-8xx.h powerpc/mm/slice: implement a slice mask cache 2018-03-13 23:43:06 +11:00
mmu-40x.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mmu-44x.h powerpc/44x: remove page.h from mmu-44x.h 2018-07-30 22:48:20 +10:00
mmu-book3e.h powerpc/mm/book3e/64: Remove unsupported 64Kpage size from 64bit booke 2018-05-15 22:29:10 +10:00
mmu.h powerpc: clean inclusions of asm/feature-fixups.h 2018-07-30 22:48:17 +10:00
mmzone.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
module.h powerpc/kbuild: move -mprofile-kernel check to Kconfig 2018-06-11 09:16:29 +09:00
mpc5xxx.h
mpc6xx.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mpc52xx_psc.h powerpc: mpc512x: drop bogus and unused psc register bit definitions 2015-10-22 16:06:08 +02:00
mpc52xx.h powerpc/52xx: Add missing functions prototypes 2018-05-25 12:04:42 +10:00
mpc85xx.h
mpc5121.h powerpc/512x: add LocalPlus Bus FIFO device driver 2015-10-22 15:19:40 +02:00
mpc8260.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mpic_msgr.h powerpc: Remove all usages of NO_IRQ 2016-09-20 20:57:12 +10:00
mpic_timer.h powerpc/mpic_timer: avoid struct timeval 2018-01-21 15:06:16 +11:00
mpic.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
msi_bitmap.h powerpc/msi: Free the bitmap if it was slab allocated 2015-10-05 21:32:50 +11:00
nmi.h powerpc/64s: Fix build failures with CONFIG_NMI_IPI=n 2018-06-19 23:03:50 +10:00
nvram.h
ohare.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
opal-api.h powerpc/powernv: call OPAL_QUIESCE before OPAL_SIGNAL_SYSTEM_RESET 2018-06-03 20:40:30 +10:00
opal.h powerpc/powernv: implement opal_put_chars_atomic 2018-07-24 22:09:57 +10:00
oprofile_impl.h
paca.h powerpc/64s: Remove POWER9 DD1 support 2018-07-16 11:37:21 +10:00
page_32.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
page_64.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
page.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
parport.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pasemi_dma.h
pci-bridge.h powerpc/powernv/idoa: Remove unnecessary pcidev from pci_dn 2018-01-27 20:39:01 +11:00
pci.h PCI: remove PCI_DMA_BUS_IS_PHYS 2018-05-07 07:15:41 +02:00
percpu.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
perf_event_fsl_emb.h
perf_event_server.h powerpc/perf: Infrastructure to support addition of blacklisted events 2018-03-27 19:25:10 +11:00
perf_event.h
pgalloc.h kmemcheck: stop using GFP_NOTRACK and SLAB_NOTRACK 2017-11-15 18:21:04 -08:00
pgtable-be-types.h powerpc updates for 4.15 2017-11-16 12:47:46 -08:00
pgtable-types.h powerpc updates for 4.15 2017-11-16 12:47:46 -08:00
pgtable.h powerpc/mm/radix: Change pte relax sequence to handle nest MMU hang 2018-06-03 20:40:34 +10:00
pkeys.h powerpc/pkeys: make protection key 0 less special 2018-07-24 21:43:24 +10:00
plpar_wrappers.h powerpc/pseries: put cede MSR[EE] check under IRQ_SOFT_MASK_DEBUG 2018-06-03 20:40:25 +10:00
pmac_feature.h powerpc: Various typo fixes 2016-06-14 13:58:26 +10:00
pmac_low_i2c.h
pmac_pfunc.h powerpc/powermac: Move pmac_pfunc_base_install prototype to header file 2018-05-25 12:04:41 +10:00
pmc.h powerpc/64s: Do not allocate lppaca if we are not virtualized 2018-03-30 23:34:22 +11:00
pmi.h
pnv-ocxl.h ocxl: Rename pnv_ocxl_spa_remove_pe to clarify it's action 2018-06-03 20:40:32 +10:00
pnv-pci.h Revert "powerpc/powernv: Add support for the cxl kernel api on the real phb" 2018-07-02 23:54:32 +10:00
powernv.h powerpc/powernv/npu: Prevent overwriting of pnv_npu2_init_contex() callback parameters 2018-04-24 09:46:57 +10:00
ppc4xx_ocm.h
ppc4xx.h powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
ppc_asm.h powerpc: clean inclusions of asm/feature-fixups.h 2018-07-30 22:48:17 +10:00
ppc-opcode.h powerpc: clean the inclusion of stringify.h 2018-07-30 22:48:17 +10:00
ppc-pci.h powerpc/eeh: Refactor EEH PE reset functions 2016-11-22 11:57:08 +11:00
probes.h
processor.h powerpc: fix includes in asm/processor.h 2018-07-30 22:48:19 +10:00
prom.h pseries/drc-info: Search DRC properties for CPU indexes 2018-01-21 16:21:46 +11:00
ps3.h treewide: Consolidate get_dma_ops() implementations 2017-01-24 12:23:35 -05:00
ps3av.h powerpc: Various typo fixes 2016-06-14 13:58:26 +10:00
ps3gpu.h
ps3stor.h
pte-common.h mm: introduce ARCH_HAS_PTE_SPECIAL 2018-06-07 17:34:35 -07:00
pte-walk.h powerpc/mm: Rename find_linux_pte_or_hugepte() 2017-08-17 23:13:46 +10:00
ptrace.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
reg_8xx.h powerpc/8xx: Remove CPU6 ERRATA Workaround 2018-01-16 23:47:12 +11:00
reg_a2.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
reg_booke.h powerpc: Remove old unused icswx based coprocessor support 2017-08-03 16:06:52 +10:00
reg_fsl_emb.h powerpc: clean the inclusion of stringify.h 2018-07-30 22:48:17 +10:00
reg.h powerpc: clean inclusions of asm/feature-fixups.h 2018-07-30 22:48:17 +10:00
rheap.h powerpc: Add missing prototype 2018-05-25 12:04:43 +10:00
rio.h
rtas.h powerpc: use time64_t in read_persistent_clock 2018-06-03 20:43:33 +10:00
runlatch.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
scom.h
seccomp.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sections.h powerpc64: Add .opd based function descriptor dereference 2018-01-09 10:45:37 +01:00
security_features.h powerpc/64s: Add support for a store forwarding barrier at kernel entry/exit 2018-05-21 20:45:31 -07:00
serial.h
setjmp.h
setup.h powerpc/64s: Enable barrier_nospec based on firmware settings 2018-06-03 20:43:45 +10:00
sfp-machine.h
shmparam.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
signal.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
slice.h powerpc/mm/slice: Simplify and optimise slice context initialisation 2018-03-13 23:43:05 +11:00
smp.h powerpc: NMI IPI make NMI IPIs fully sychronous 2018-07-24 22:03:14 +10:00
smu.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sparsemem.h powerpc/mm: Increase MAX_PHYSMEM_BITS to 128TB with SPARSEMEM_VMEMMAP config 2018-07-24 22:03:17 +10:00
spinlock_types.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
spinlock.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
spu_csa.h
spu_info.h
spu_priv1.h
spu.h
sstep.h powerpc/sstep: Introduce GETTYPE macro 2018-06-03 21:19:40 +10:00
string.h powerpc updates for 4.15 2017-11-16 12:47:46 -08:00
swab.h
swiotlb.h powerpc: rename swiotlb_dma_ops 2018-01-15 09:35:26 +01:00
switch_to.h powerpc: use task_pid_nr() for TID allocation 2018-06-03 20:40:31 +10:00
synch.h powerpc: clean the inclusion of stringify.h 2018-07-30 22:48:17 +10:00
syscall.h
syscalls.h powerpc/syscalls: switch rtas(2) to SYSCALL_DEFINE 2018-05-10 23:25:14 +10:00
systbl.h powerpc: Wire up io_pgetevents 2018-06-23 21:43:21 +10:00
tce.h powerpc/powernv/pci: Remove SWINV constants and obsolete TCE code 2016-07-17 16:42:47 +10:00
termios.h
thread_info.h powerpc: clean the inclusion of stringify.h 2018-07-30 22:48:17 +10:00
time.h powerpc: remove unused to_tm() helper 2018-06-03 20:43:34 +10:00
timex.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
tlb.h powerpc: remove unnecessary inclusion of asm/tlbflush.h 2018-07-30 22:48:20 +10:00
tlbflush.h powerpc: split asm/tlbflush.h 2018-07-30 22:48:21 +10:00
tm.h powerpc: Export tm_enable()/tm_disable/tm_abort() APIs 2018-05-24 16:04:02 +10:00
topology.h powerpc/pseries: Fix CONFIG_NUMA=n build 2018-05-08 14:59:56 +10:00
trace_clock.h
trace.h powerpc/pseries: hcall_exit tracepoint retval should be signed 2018-05-10 23:17:43 +10:00
tsi108_irq.h
tsi108_pci.h genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
tsi108.h powerpc: Various typo fixes 2016-06-14 13:58:26 +10:00
types.h powerpc: Define and use PPC64_ELF_ABI_v2/v1 2016-06-14 13:58:27 +10:00
uaccess.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
udbg.h
uic.h
unaligned.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
uninorth.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
unistd.h powerpc: Wire up io_pgetevents 2018-06-23 21:43:21 +10:00
uprobes.h
user.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
vas.h powerpc/vas: Define vas_win_id() 2017-11-12 09:03:10 +11:00
vdso_datapage.h powerpc: Standardise on NR_syscalls rather than __NR_syscalls. 2015-11-26 22:11:17 +11:00
vdso.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
vga.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
vio.h
word-at-a-time.h powerpc: EX_TABLE macro for exception tables 2016-11-14 11:11:51 +11:00
xics.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
xilinx_intc.h powerpc/virtex: Use generic xilinx irqchip driver 2016-11-29 09:14:50 +00:00
xilinx_pci.h
xive-regs.h powerpc/xive: Remove (almost) unused macros 2018-06-03 20:43:35 +10:00
xive.h KVM changes for 4.16 2018-02-10 13:16:35 -08:00
xmon.h powerpc/xmon: Add __printf annotation to xmon_printf() 2018-05-25 12:04:36 +10:00
xor_altivec.h powerpc/altivec: Add missing prototypes for altivec 2018-05-25 12:04:38 +10:00
xor.h powerpc/altivec: Add missing prototypes for altivec 2018-05-25 12:04:38 +10:00