summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2016-05-22 07:44:51 +0300
committerLinus Torvalds <torvalds@linux-foundation.org>2019-01-05 05:00:49 +0300
commit4a789213c9a54c8b618924d3421e56e98df8a447 (patch)
tree1e6775ba2fc12cb9893f09b203c85e2014de256b /scripts
parent594cc251fdd0d231d342d88b2fdff4bc42fb0690 (diff)
downloadlinux-4a789213c9a54c8b618924d3421e56e98df8a447.tar.xz
x86 uaccess: Introduce __put_user_goto
This is finally the actual reason for the odd error handling in the "unsafe_get/put_user()" functions, introduced over three years ago. Using a "jump to error label" interface is somewhat odd, but very convenient as a programming interface, and more importantly, it fits very well with simply making the target be the exception handler address directly from the inline asm. The reason it took over three years to actually do this? We need "asm goto" support for it, which only became the default on x86 last year. It's now been a year that we've forced asm goto support (see commit e501ce957a78 "x86: Force asm-goto"), and so let's just do it here too. [ Side note: this commit was originally done back in 2016. The above commentary about timing is obviously about it only now getting merged into my real upstream tree - Linus ] Sadly, gcc still only supports "asm goto" with asms that do not have any outputs, so we are limited to only the put_user case for this. Maybe in several more years we can do the get_user case too. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'scripts')
0 files changed, 0 insertions, 0 deletions