diff options
author | Chris Zankel <chris@zankel.net> | 2014-01-28 22:09:51 -0800 |
---|---|---|
committer | Chris Zankel <chris@zankel.net> | 2014-01-29 13:47:26 -0800 |
commit | c0e50d41126e4786d9cf1105bdf783e55c99f915 (patch) | |
tree | a4b3b7cfe0e0d8fe23008b5c44a5d4ff43081738 /arch/x86/include/asm/xen/page.h | |
parent | 6b5a1f74e50170e64104135490dc32b657483594 (diff) | |
download | op-kernel-dev-c0e50d41126e4786d9cf1105bdf783e55c99f915.zip op-kernel-dev-c0e50d41126e4786d9cf1105bdf783e55c99f915.tar.gz |
xtensa: fix fast_syscall_spill_registers
The original implementation could clobber registers under certain conditions.
The Xtensa processor architecture uses windowed registers and the original
implementation was using a4 as a temporary register, which under certain
conditions could be register a0 of the oldest window frame, and didn't always
restore the content correctly.
By moving the _spill_registers routine inside the fast system call, it frees
up one more register (the return address is not required anymore) for the
spill routine.
Signed-off-by: Chris Zankel <chris@zankel.net>
Diffstat (limited to 'arch/x86/include/asm/xen/page.h')
0 files changed, 0 insertions, 0 deletions