linux/arch/powerpc/include/asm
Michael Ellerman 3e3786801b powerpc: Check address limit on user-mode return (TIF_FSCHECK)
set_fs() sets the addr_limit, which is used in access_ok() to
determine if an address is a user or kernel address.

Some code paths use set_fs() to temporarily elevate the addr_limit so
that kernel code can read/write kernel memory as if it were user
memory. That is fine as long as the code can't ever return to
userspace with the addr_limit still elevated.

If that did happen, then userspace can read/write kernel memory as if
it were user memory, eg. just with write(2). In case it's not clear,
that is very bad. It has also happened in the past due to bugs.

Commit 5ea0727b16 ("x86/syscalls: Check address limit on user-mode
return") added a mechanism to check the addr_limit value before
returning to userspace. Any call to set_fs() sets a thread flag,
TIF_FSCHECK, and if we see that on the return to userspace we go out
of line to check that the addr_limit value is not elevated.

For further info see the above commit, as well as:
  https://lwn.net/Articles/722267/
  https://bugs.chromium.org/p/project-zero/issues/detail?id=990

Verified to work on 64-bit Book3S using a POC that objdumps the system
call handler, and a modified lkdtm_CORRUPT_USER_DS() that doesn't kill
the caller.

Before:
  $ sudo ./test-tif-fscheck
  ...
  0000000000000000 <.data>:
         0:       e1 f7 8a 79     rldicl. r10,r12,30,63
         4:       80 03 82 40     bne     0x384
         8:       00 40 8a 71     andi.   r10,r12,16384
         c:       78 0b 2a 7c     mr      r10,r1
        10:       10 fd 21 38     addi    r1,r1,-752
        14:       08 00 c2 41     beq-    0x1c
        18:       58 09 2d e8     ld      r1,2392(r13)
        1c:       00 00 41 f9     std     r10,0(r1)
        20:       70 01 61 f9     std     r11,368(r1)
        24:       78 01 81 f9     std     r12,376(r1)
        28:       70 00 01 f8     std     r0,112(r1)
        2c:       78 00 41 f9     std     r10,120(r1)
        30:       20 00 82 41     beq     0x50
        34:       a6 42 4c 7d     mftb    r10

After:

  $ sudo ./test-tif-fscheck
  Killed

And in dmesg:
  Invalid address limit on user-mode return
  WARNING: CPU: 1 PID: 3689 at ../include/linux/syscalls.h:260 do_notify_resume+0x140/0x170
  ...
  NIP [c00000000001ee50] do_notify_resume+0x140/0x170
  LR [c00000000001ee4c] do_notify_resume+0x13c/0x170
  Call Trace:
    do_notify_resume+0x13c/0x170 (unreliable)
    ret_from_except_lite+0x70/0x74

Performance overhead is essentially zero in the usual case, because
the bit is checked as part of the existing _TIF_USER_WORK_MASK check.

Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2018-06-03 20:43:42 +10:00
..
book3s powerpc/64s/radix: optimise pte_update 2018-06-03 20:40:36 +10:00
nohash powerpc/mm/radix: Change pte relax sequence to handle nest MMU hang 2018-06-03 20:40:34 +10:00
8xx_immap.h
Kbuild arch: Remove clkdev.h asm-generic from Kbuild 2018-01-03 09:02:11 -08:00
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-compat.h powerpc/asm: Convert .llong directives to .8byte 2017-08-31 14:26:47 +10:00
asm-offsets.h
asm-prototypes.h Merge branch 'topic/ppc-kvm' into next 2018-06-03 20:23:54 +10:00
async_tx.h
atomic.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01: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/64: Fix smp_wmb barrier definition use use lwsync consistently 2018-03-31 00:10:34 +11:00
bitops.h powerpc: Remove __ilog2()s and use generic ones 2017-06-02 19:23:56 +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 License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cacheflush.h powerpc/64s/radix: avoid ptesync after set_pte and ptep_set_access_flags 2018-06-03 20:40:36 +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 Revert "powerpc/64: Fix checksum folding in csum_add()" 2018-05-18 00:09:04 +10:00
cmpxchg.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
code-patching.h powerpc/lib/feature-fixups: use raw_patch_instruction() 2018-01-21 15:06:25 +11:00
compat.h signal: Unify and correct copy_siginfo_to_user32 2018-01-15 19:56:20 -06: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
cpm.h powerpc/sysdev: change CPM GPIO to platform_device 2018-01-20 23:29:02 -06:00
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
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: Add TIDR CPU feature for POWER9 2018-06-03 20:40:31 +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 sched/cputime: Remove generic asm headers 2017-02-01 09:14:07 +01: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/64s: msgclr when handling doorbell exceptions from system reset 2017-06-19 19:46:27 +10:00
dcr-generic.h
dcr-mmio.h
dcr-native.h powerpc: Move cpu_has_feature() to a separate file 2016-08-01 11:15:03 +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: Add ppc_breakpoint_available() 2018-03-27 23:52:43 +11: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 License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
edac.h EDAC: Cleanup atomic_scrub mess 2015-05-28 15:31:53 +02:00
eeh.h powerpc/eeh: Introduce eeh_for_each_pe() 2018-06-03 20:43:39 +10:00
eeh_event.h powerpc/eeh: Manage EEH_PE_RECOVERING inside eeh_handle_normal_event() 2018-03-27 23:44:58 +11: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/64s: Fix MASKABLE_RELON_EXCEPTION_HV_OOL macro 2018-02-08 23:56:10 +11: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/64s: Add support for RFI flush of L1-D cache 2018-01-10 21:27:06 +11:00
firmware.h powerpc/pseries: Fix duplicate firmware feature for DRC_INFO 2018-02-22 14:32:32 +11:00
fixmap.h powerpc/mm: Simplify __set_fixmap() 2017-08-15 22:55:58 +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 iommu/fsl: Various cleanups 2015-02-03 18:47:18 +01:00
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 License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01: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/time: account broadcast timer event interrupts separately 2018-06-03 20:40:29 +10: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 License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01: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 Merge branch 'topic/ppc-kvm' into next 2018-03-27 23:55:49 +11: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/hw_breakpoint: Only disable hw breakpoint if cpu supports it 2018-04-04 21:54:02 +10:00
hw_irq.h powerpc: generic clockevents broadcast receiver call tick_receive_broadcast 2018-06-03 20:40:27 +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-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
io_event_irq.h
iommu.h powerpc: implement ->mapping_error 2017-06-28 06:54:33 -07:00
ipic.h
irq.h powerpc: Add missing prototype for init_IRQ() 2018-03-13 15:50:38 +11:00
irq_work.h powerpc: Add missing prototype for arch_irq_work_raise() 2018-03-13 15:50:37 +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 updates for 4.8 #2 2016-08-05 09:00:54 -04: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.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: Book3S HV: Work around transactional memory bugs in POWER9 2018-03-24 00:39:13 +11: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_booke.h KVM: PPC: Book3S: correct width in XER handling 2015-08-22 11:16:19 +02:00
kvm_booke_hv_asm.h
kvm_fpu.h
kvm_host.h ARM: 2018-04-09 11:42:31 -07:00
kvm_para.h KVM: Introduce paravirtualization hints and KVM_HINTS_DEDICATED 2018-03-06 18:40:44 +01:00
kvm_ppc.h ARM: 2018-04-09 11:42:31 -07: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 powerpc/mm: tracking vDSO remap 2015-06-24 17:49:41 -07:00
mman.h mm: Add address parameter to arch_validate_prot() 2018-03-18 07:38:47 -07: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 License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01: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/64s: Remove POWER4 support 2018-04-01 00:47:50 +11: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
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/modules: remove unused mod_arch_specific.toc field 2018-05-28 18:46:34 +10: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.h powerpc/52xx: Add missing functions prototypes 2018-05-25 12:04:42 +10:00
mpc52xx_psc.h powerpc: mpc512x: drop bogus and unused psc register bit definitions 2015-10-22 16:06:08 +02:00
mpc85xx.h powerpc/fsl-booke: Add T4080 SVR value 2015-03-31 22:23:17 -05:00
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.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
msi_bitmap.h powerpc/msi: Free the bitmap if it was slab allocated 2015-10-05 21:32:50 +11:00
nmi.h powerpc/watchdog: remove arch_trigger_cpumask_backtrace 2018-01-18 15:43:43 +11:00
nvram.h powerpc/nvram: Move generic code for nvram and pstore 2015-03-23 14:05:49 +11:00
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: use time64_t in read_persistent_clock 2018-06-03 20:43:33 +10:00
oprofile_impl.h
paca.h Merge branch 'fixes' into next 2018-06-03 20:32:02 +10:00
page.h powerpc/fadump: Do not use hugepages when fadump is active 2018-05-03 23:09:25 +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/mm/slice: create header files dedicated to slices 2018-03-06 09:21:22 +11: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 powerpc/pci: Use generic pci_mmap_resource_range() 2018-02-28 16:18:53 -06: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.h
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
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: Drop private VM_PKEY definitions 2018-05-10 19:46:10 +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 powerpc/powernv: Enable tunneled operations 2018-03-13 15:50:30 +11:00
powernv.h powerpc/powernv/npu: Prevent overwriting of pnv_npu2_init_contex() callback parameters 2018-04-24 09:46:57 +10:00
ppc-opcode.h powerpc/mm: Use instruction symbolic names in store_updates_sp() 2018-05-25 00:08:24 +10:00
ppc-pci.h powerpc/eeh: Refactor EEH PE reset functions 2016-11-22 11:57:08 +11:00
ppc4xx.h powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
ppc4xx_ocm.h
ppc_asm.h powerpc/32: Use stmw/lmw for registers save/restore in asm 2018-05-18 00:09:06 +10:00
probes.h
processor.h powerpc: Rename thread_struct.fs to addr_limit 2018-06-03 20:43:42 +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 powerpc: get rid of PMD_PAGE_SIZE() and _PMD_SIZE 2018-05-18 00:09:03 +10:00
pte-walk.h powerpc/mm: Rename find_linux_pte_or_hugepte() 2017-08-17 23:13:46 +10:00
ptrace.h powerpc: Define and use PPC64_ELF_ABI_v2/v1 2016-06-14 13:58:27 +10:00
reg.h powerpc/reg: Add TEXASR related macros 2018-05-24 16:03:36 +10:00
reg_8xx.h powerpc/8xx: Remove CPU6 ERRATA Workaround 2018-01-16 23:47:12 +11:00
reg_a2.h
reg_booke.h powerpc: Remove old unused icswx based coprocessor support 2017-08-03 16:06:52 +10:00
reg_fsl_emb.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01: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: Move default security feature flags 2018-04-03 21:50:08 +10:00
serial.h
setjmp.h
setup.h Merge branch 'topic/paca' into next 2018-03-31 09:09:36 +11: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/setup: Add cpu_to_phys_id array 2018-03-30 23:34:27 +11: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: Pass node id into create_section_mapping 2018-03-31 00:07:10 +11:00
spinlock.h powerpc: Fix oops due to bad access of lppaca on bare metal 2018-04-03 21:50:07 +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
spu.h
spu_csa.h powerpc/cell: Drop support for 64K local store on 4K kernels 2015-08-18 19:29:49 +10:00
spu_info.h
spu_priv1.h
sstep.h powerpc: Emulate load/store floating point as integer word instructions 2017-09-01 16:42:44 +10:00
string.h powerpc updates for 4.15 2017-11-16 12:47:46 -08:00
swab.h powerpc: Remove unused st_le*() and ld_le* functions 2015-03-24 13:33:52 +11:00
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/64: Fix smp_wmb barrier definition use use lwsync consistently 2018-03-31 00:10:34 +11:00
syscall.h powerpc: Change syscall_get_nr() to return int 2015-07-29 11:56:13 +10:00
syscalls.h powerpc/syscalls: switch rtas(2) to SYSCALL_DEFINE 2018-05-10 23:25:14 +10:00
systbl.h powerpc/syscalls: timer_create can be handle by perfectly normal COMPAT_SYS_SPU 2018-05-10 23:25:16 +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: Check address limit on user-mode return (TIF_FSCHECK) 2018-06-03 20:43:42 +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/64s/radix: flush remote CPUs out of single-threaded mm_cpumask 2018-06-03 20:40:36 +10:00
tlbflush.h powerpc/64s: Replace CONFIG_PPC_STD_MMU_64 with CONFIG_PPC_BOOK3S_64 2017-11-06 16:48:14 +11: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.h powerpc/pseries: hcall_exit tracepoint retval should be signed 2018-05-10 23:17:43 +10:00
trace_clock.h powerpc/ftrace: add powerpc timebase as a trace clock source 2015-08-06 16:36:23 +10:00
tsi108.h powerpc: Various typo fixes 2016-06-14 13:58:26 +10:00
tsi108_irq.h
tsi108_pci.h genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
types.h powerpc: Define and use PPC64_ELF_ABI_v2/v1 2016-06-14 13:58:27 +10:00
uaccess.h powerpc: Check address limit on user-mode return (TIF_FSCHECK) 2018-06-03 20:43:42 +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: sys_pkey_mprotect() system call 2018-01-21 01:06:16 +11: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.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
vdso_datapage.h powerpc: Standardise on NR_syscalls rather than __NR_syscalls. 2015-11-26 22:11:17 +11: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 remove <asm/scatterlist.h> 2015-05-05 13:35:39 -06:00
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.h powerpc/altivec: Add missing prototypes for altivec 2018-05-25 12:04:38 +10:00
xor_altivec.h powerpc/altivec: Add missing prototypes for altivec 2018-05-25 12:04:38 +10:00