From: Al Viro Date: Sun, 1 Sep 2013 19:35:01 +0000 (+0100) Subject: Introduce [compat_]save_altstack_ex() to unbreak x86 SMAP X-Git-Tag: v3.12-rc1~153^2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bd1c149aa9915b9abb6d83d0f01dfd2ace0680b5;p=pandora-kernel.git Introduce [compat_]save_altstack_ex() to unbreak x86 SMAP For performance reasons, when SMAP is in use, SMAP is left open for an entire put_user_try { ... } put_user_catch(); block, however, calling __put_user() in the middle of that block will close SMAP as the STAC..CLAC constructs intentionally do not nest. Furthermore, using __put_user() rather than put_user_ex() here is bad for performance. Thus, introduce new [compat_]save_altstack_ex() helpers that replace __[compat_]save_altstack() for x86, being currently the only architecture which supports put_user_try { ... } put_user_catch(). Reported-by: H. Peter Anvin Signed-off-by: Al Viro Signed-off-by: H. Peter Anvin Cc: # v3.8+ Link: http://lkml.kernel.org/n/tip-es5p6y64if71k8p5u08agv9n@git.kernel.org --- Reading git-diff-tree failed