asmlinkage_protect sys_io_getevents

Use asmlinkage_protect in sys_io_getevents, because GCC for i386 with
CONFIG_FRAME_POINTER=n can decide to clobber an argument word on the
stack, i.e. the user struct pt_regs. Here the problem is not a tail
call, but just the compiler's use of the stack when it inlines and
optimizes the body of the called function. This seems to avoid it.

Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by Roland McGrath and committed by Linus Torvalds 598af051 54a01510

+1
+1
fs/aio.c
··· 1790 1790 put_ioctx(ioctx); 1791 1791 } 1792 1792 1793 + asmlinkage_protect(5, ret, ctx_id, min_nr, nr, events, timeout); 1793 1794 return ret; 1794 1795 } 1795 1796