kernel_optimize_test/arch/m68k
Andreas Schwab 8474ba7419 m68k: Define asmlinkage_protect
Make sure the compiler does not modify arguments of syscall functions.
This can happen if the compiler generates a tailcall to another
function.  For example, without asmlinkage_protect sys_openat is compiled
into this function:

sys_openat:
	clr.l %d0
	move.w 18(%sp),%d0
	move.l %d0,16(%sp)
	jbra do_sys_open

Note how the fourth argument is modified in place, modifying the register
%d4 that gets restored from this stack slot when the function returns to
user-space.  The caller may expect the register to be unmodified across
system calls.

Signed-off-by: Andreas Schwab <schwab@linux-m68k.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: stable@vger.kernel.org
2015-09-28 09:59:45 +02:00
..
68000 m68k: Use vsprintf %pM extension 2015-06-16 16:45:38 +10:00
68360 m68k: Use vsprintf %pM extension 2015-06-16 16:45:38 +10:00
amiga genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
apollo m68k/apollo: Convert printk to pr_foo() 2014-05-28 10:11:55 +02:00
atari m68k/atari: Remove obsolete IRQ_TYPE_* 2015-01-15 13:44:51 +01:00
bvme6000 m68k/UAPI: Use proper types (endianness/size) in <asm/bootinfo*.h> 2013-11-26 11:09:21 +01:00
coldfire genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
configs Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k 2015-08-31 14:52:45 -07:00
emu block: add a bi_error field to struct bio 2015-07-29 08:55:15 -06:00
fpsp040
hp300 m68k/hp300: Convert printk to pr_foo() 2014-05-28 10:11:55 +02:00
ifpsp060
include m68k: Define asmlinkage_protect 2015-09-28 09:59:45 +02:00
kernel m68k: Wire up membarrier 2015-09-28 09:59:44 +02:00
lib m68k: Remove FSF address 2015-03-15 10:23:30 +01:00
mac genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
math-emu m68k/math-emu: unsigned issue, 'unsigned long' will never be less than zero 2013-06-24 19:44:19 +02:00
mm mm/fault, arch: Use pagefault_disable() to check for disabled pagefaults in the handler 2015-05-19 08:39:15 +02:00
mvme16x m68k/mvme16x: rtc - Don't use module_init in non-modular code 2015-01-11 11:38:41 +01:00
mvme147 m68k/mvme147: config.c - Remove unused functions 2015-01-11 11:38:45 +01:00
q40 m68k: Mark functions only called from setup_arch() __init 2013-11-26 11:08:54 +01:00
sun3 sun3_scsi: Convert to platform device 2014-11-20 09:11:15 +01:00
sun3x m68k: Remove superfluous inclusions of <asm/bootinfo.h> 2013-11-26 11:09:22 +01:00
tools/amiga
install.sh
Kconfig kexec: split kexec_load syscall from kexec core code 2015-09-10 13:29:01 -07:00
Kconfig.bus
Kconfig.cpu m68knommu: make ColdFire SoC selection a choice 2015-07-13 09:34:39 +10:00
Kconfig.debug m68k: Multi-platform EARLY_PRINTK 2014-05-28 10:10:04 +02:00
Kconfig.devices Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k 2014-10-08 05:40:17 -04:00
Kconfig.machine m68k: remove 16 unused boards in Kconfig.machine 2013-08-26 16:51:14 +10:00
Makefile m68k: move non-mmu 68360 platform code 2014-09-29 09:18:35 +10:00