• Jeff Dike's avatar
    uml: eliminate setjmp_wrapper · 8efa3c9d
    Jeff Dike authored
    setjmp_wrapper existed to provide setjmp to kernel code when UML used libc's
    setjmp and longjmp.  Now that UML has its own implementation, this isn't
    needed and kernel code can invoke setjmp directly.
    
    do_buffer_op is massively cleaned up since it is no longer a callback from
    setjmp_wrapper and given a va_list from which it must extract its arguments.
    
    The actual setjmp is moved from buffer_op to do_op_one_page because the copy
    operation is inside an atomic section (kmap_atomic to kunmap_atomic) and it
    shouldn't be longjmp-ed out of.
    Signed-off-by: default avatarJeff Dike <jdike@linux.intel.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    8efa3c9d
util.c 2.99 KB