2 * Copyright (C) 2001 Chris Emerson (cemerson@chiark.greenend.org.uk)
3 * Copyright (C) 2001 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com)
4 * Licensed under the GPL
10 unsigned long __do_user_copy(void *to
, const void *from
, int n
,
11 void **fault_addr
, jmp_buf **fault_catcher
,
12 void (*op
)(void *to
, const void *from
,
13 int n
), int *faulted_out
)
15 unsigned long *faddrp
= (unsigned long *) fault_addr
, ret
;
18 *fault_catcher
= &jbuf
;
19 if (UML_SETJMP(&jbuf
) == 0) {
29 *fault_catcher
= NULL
;