linux-kernelorg-stable/arch/x86/include/asm
Brian Gerst 616d24835e sched/x86: Pass kernel thread parameters in 'struct fork_frame'
Instead of setting up a fake pt_regs context, put the kernel thread
function pointer and arg into the unused callee-restored registers
of 'struct fork_frame'.

Signed-off-by: Brian Gerst <brgerst@gmail.com>
Reviewed-by: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/1471106302-10159-6-git-send-email-brgerst@gmail.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2016-08-24 12:31:50 +02:00
..
crypto
fpu tree-wide: replace config_enabled() with IS_ENABLED() 2016-08-04 08:50:07 -04:00
numachip
trace
uv x86/platform/UV: Fix problem with UV4 BIOS providing incorrect PXM values 2016-08-10 15:55:38 +02:00
xen dma-mapping: use unsigned long for dma_attrs 2016-08-04 08:50:07 -04:00
Kbuild
a.out-core.h
acenv.h
acpi.h Merge branch 'acpi-tables' 2016-07-25 13:41:01 +02:00
agp.h
alternative-asm.h
alternative.h
amd_nb.h
apb_timer.h
apic.h x86/timers/apic: Inform TSC deadline clockevent device about recalibration 2016-08-10 12:38:12 +02:00
apic_flat_64.h
apicdef.h
apm.h
arch_hweight.h
archrandom.h
asm-offsets.h
asm.h
atomic.h Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-07-25 15:34:18 -07:00
atomic64_32.h
atomic64_64.h Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-07-25 15:34:18 -07:00
barrier.h
bios_ebda.h x86/boot: Reorganize and clean up the BIOS area reservation code 2016-07-21 10:11:57 +02:00
bitops.h
boot.h
bootparam_utils.h
bug.h
bugs.h
cache.h
cacheflush.h
calgary.h
ce4100.h
checksum.h
checksum_32.h
checksum_64.h
clocksource.h
cmdline.h
cmpxchg.h
cmpxchg_32.h
cmpxchg_64.h
compat.h
cpu.h xen: features and fixes for 4.8-rc0 2016-07-27 11:35:37 -07:00
cpu_device_id.h
cpufeature.h
cpufeatures.h Merge branch 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-07-30 12:56:26 -07:00
cpumask.h
crash.h
current.h
debugreg.h
delay.h
desc.h
desc_defs.h
device.h
disabled-features.h
div64.h
dma-mapping.h dma-mapping: use unsigned long for dma_attrs 2016-08-04 08:50:07 -04:00
dma.h
dmi.h
dwarf2.h
e820.h
edac.h
efi.h Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-07-25 15:34:18 -07:00
elf.h tree-wide: replace config_enabled() with IS_ENABLED() 2016-08-04 08:50:07 -04:00
emergency-restart.h
entry_arch.h
espfix.h
exec.h
fb.h
fixmap.h
floppy.h
frame.h
ftrace.h ftrace/x86: Implement HAVE_FUNCTION_GRAPH_RET_ADDR_PTR 2016-08-24 12:15:15 +02:00
futex.h
gart.h
genapic.h
geode.h
hardirq.h x86/irq: Do not substract irq_tlb_count from irq_call_count 2016-08-11 11:14:59 +02:00
highmem.h
hpet.h
hugetlb.h
hw_breakpoint.h
hw_irq.h
hypertransport.h
hypervisor.h
i8259.h
ia32.h
ia32_unistd.h
idle.h
imr.h
inat.h x86/insn: Add AVX-512 support to the instruction decoder 2016-07-21 09:37:11 -03:00
inat_types.h
init.h x86/power/64: Always create temporary identity mapping correctly 2016-08-08 22:04:30 +02:00
insn.h x86/insn: Add AVX-512 support to the instruction decoder 2016-07-21 09:37:11 -03:00
inst.h
intel-family.h Merge branch 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-07-30 12:56:26 -07:00
intel-mid.h
intel_mid_vrtc.h
intel_pmc_ipc.h
intel_pt.h
intel_punit_ipc.h
intel_scu_ipc.h
intel_telemetry.h
io.h
io_apic.h
iomap.h
iommu.h
iommu_table.h
iosf_mbi.h
ipi.h
irq.h
irq_regs.h
irq_remapping.h
irq_vectors.h
irq_work.h
irqdomain.h
irqflags.h
ist.h
jump_label.h
kasan.h
kaslr.h
kbdleds.h
kdebug.h x86/dumpstack: Remove show_trace() 2016-08-18 18:41:27 +02:00
kexec-bzimage64.h
kexec.h
kgdb.h
kmap_types.h
kmemcheck.h
kprobes.h
kvm_emulate.h
kvm_guest.h
kvm_host.h - ARM: GICv3 ITS emulation and various fixes. Removal of the old 2016-08-02 16:11:27 -04:00
kvm_page_track.h
kvm_para.h
lguest.h
lguest_hcall.h
linkage.h
livepatch.h
local.h
local64.h
mach_timer.h
mach_traps.h
math_emu.h
mc146818rtc.h
mce.h
microcode.h
microcode_amd.h
microcode_intel.h
misc.h
mmconfig.h
mmu.h
mmu_context.h tree-wide: replace config_enabled() with IS_ENABLED() 2016-08-04 08:50:07 -04:00
mmx.h
mmzone.h
mmzone_32.h
mmzone_64.h
module.h
mpspec.h
mpspec_def.h
mpx.h
mshyperv.h
msi.h
msidef.h
msr-index.h
msr-trace.h
msr.h
mtrr.h
mutex.h
mutex_32.h
mutex_64.h
mwait.h x86/cpu: Add workaround for MONITOR instruction erratum on Goldmont based CPUs 2016-07-20 09:48:40 +02:00
nmi.h
nops.h
numa.h
numa_32.h
olpc.h
olpc_ofw.h
page.h
page_32.h
page_32_types.h x86/asm, x86/microcode: Add __PAGE_OFFSET_BASE define on 32-bit 2016-07-27 14:59:59 +02:00
page_64.h
page_64_types.h
page_types.h
paravirt.h
paravirt_types.h
parport.h
pat.h
pci-direct.h
pci-functions.h
pci.h
pci_64.h
pci_x86.h
percpu.h
perf_event.h
perf_event_p4.h
pgalloc.h arch: x86: charge page tables to kmemcg 2016-07-26 16:19:19 -07:00
pgtable-2level.h
pgtable-2level_types.h
pgtable-3level.h
pgtable-3level_types.h
pgtable.h Merge branch 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-07-25 17:32:28 -07:00
pgtable_32.h
pgtable_32_types.h
pgtable_64.h x86/mm: Fix swap entry comment and macro 2016-08-11 11:04:10 +02:00
pgtable_64_types.h
pgtable_types.h
pkeys.h
platform_sst_audio.h
pm-trace.h
pmc_atom.h
pmc_core.h
pmem.h
posix_types.h
preempt.h
probe_roms.h
processor-cyrix.h
processor-flags.h
processor.h sched/x86: Rewrite the switch_to() code 2016-08-24 12:31:41 +02:00
prom.h
proto.h
ptrace.h
pvclock-abi.h
pvclock.h pvclock: introduce seqcount-like API 2016-08-04 13:52:21 +02:00
qrwlock.h
qspinlock.h
qspinlock_paravirt.h
realmode.h x86/asm/head: Rename 'stack_start' -> 'initial_stack' 2016-08-18 18:41:29 +02:00
reboot.h
reboot_fixups.h
required-features.h
rio.h
rmwcc.h
rwsem.h Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-07-25 15:34:18 -07:00
seccomp.h
sections.h
segment.h
serial.h
setup.h
setup_arch.h
shmparam.h
sigcontext.h
sigframe.h
sighandling.h
signal.h
simd.h
smap.h
smp.h x86/asm/head: Rename 'stack_start' -> 'initial_stack' 2016-08-18 18:41:29 +02:00
sparsemem.h
special_insns.h x86/insn: remove pcommit 2016-07-23 11:04:23 -07:00
spinlock.h
spinlock_types.h
sta2x11.h
stackprotector.h
stacktrace.h sched/x86: Add 'struct inactive_task_frame' to better document the sleeping task stack frame 2016-08-24 12:27:41 +02:00
string.h
string_32.h
string_64.h
suspend.h
suspend_32.h
suspend_64.h
svm.h
swiotlb.h dma-mapping: use unsigned long for dma_attrs 2016-08-04 08:50:07 -04:00
switch_to.h sched/x86: Pass kernel thread parameters in 'struct fork_frame' 2016-08-24 12:31:50 +02:00
sync_bitops.h
sys_ia32.h
syscall.h x86/ptrace: Stop setting TS_COMPAT in ptrace code 2016-07-27 11:09:43 +02:00
syscalls.h
sysfb.h
tce.h
text-patching.h
thread_info.h sched/x86: Rewrite the switch_to() code 2016-08-24 12:31:41 +02:00
time.h
timer.h
timex.h
tlb.h
tlbflush.h x86/mm: Disable preemption during CR3 read+write 2016-08-10 15:37:16 +02:00
topology.h Merge branch 'x86-headers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-08-01 14:23:42 -04:00
trace_clock.h
traps.h
tsc.h
uaccess.h Implements HARDENED_USERCOPY verification of copy_to_user/copy_from_user 2016-08-08 14:48:14 -07:00
uaccess_32.h x86/uaccess: Enable hardened usercopy 2016-07-26 14:41:48 -07:00
uaccess_64.h x86/uaccess: Enable hardened usercopy 2016-07-26 14:41:48 -07:00
unaligned.h
unistd.h
uprobes.h
user.h
user32.h
user_32.h
user_64.h
vdso.h
vga.h
vgtod.h
virtext.h
vm86.h
vmx.h Revert "KVM: x86: add pcommit support" 2016-07-23 11:04:23 -07:00
vsyscall.h
vvar.h
word-at-a-time.h
x2apic.h
x86_init.h Merge branch 'x86-timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-07-25 19:41:35 -07:00
xor.h
xor_32.h
xor_64.h
xor_avx.h