summaryrefslogtreecommitdiff
path: root/block
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2020-04-01 12:41:50 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2020-04-01 12:41:50 -0700
commit7da63b3d54aa7f1ad4b33a50d88edd623f29fded (patch)
tree9fb16ca84b061d5a9b6c1a5fddc73b659c3c2e3a /block
parent3680785692fbc57453a7bf973f962a92d1b9ec33 (diff)
x86: get rid of 'rtype' argument to __get_user_asm() macro
This is the exact same thing as 3680785692fb ("x86: get rid of 'rtype' argument to __put_user_goto() macro") except it's about __get_user_asm() rather than __put_user_goto(). The reasons are the same: having the low-level asm access the argument with a different size than the compiler thinks it does is fundamentally wrong. But unlike the __put_user_goto() case, we actually did tell the compiler that we used a bigger variable (either long or long long), and then only filled in the low bits, and ended up "fixing" this by casting the result to the proper pointer type. That's because we needed to use a non-qualified type (the user pointer might be a const pointer!), and that makes this a bit more painful. Our '__inttype()' macro used to be lazy and only differentiate between "fits in a register" or "needs two registers". So this fix had to also make that '__inttype()' macro more precise. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'block')
0 files changed, 0 insertions, 0 deletions