> I agree that for at least put_user() using asm goto would be an even > better option. get_user() on the other hand, will be much messier to > deal with, since asm goto statements can't have outputs, plus it > zeroes the output register on fault. get_user() is the much more interesting one for me. A read from a poisoned user address that generates a machine check is something that can be recovered (kill the process). A write to user space doesn't even generate a machine check. -Tony