Hi Chris, Pending anything that sparse reported (which I haven't checked), this looks ok to me.
Reviewed-by: Daniel Axtens <d...@axtens.net> Kind regards, Daniel > Just wrap __copy_tofrom_user() for the usual 'unsafe' pattern which > takes in a label to goto on error. > > Signed-off-by: Christopher M. Riedl <c...@codefail.de> > --- > arch/powerpc/include/asm/uaccess.h | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/arch/powerpc/include/asm/uaccess.h > b/arch/powerpc/include/asm/uaccess.h > index 501c9a79038c..036e82eefac9 100644 > --- a/arch/powerpc/include/asm/uaccess.h > +++ b/arch/powerpc/include/asm/uaccess.h > @@ -542,6 +542,9 @@ user_write_access_begin(const void __user *ptr, size_t > len) > #define unsafe_get_user(x, p, e) unsafe_op_wrap(__get_user_allowed(x, p), e) > #define unsafe_put_user(x, p, e) __put_user_goto(x, p, e) > > +#define unsafe_copy_from_user(d, s, l, e) \ > + unsafe_op_wrap(__copy_tofrom_user((__force void __user *)d, s, l), e) > + > #define unsafe_copy_to_user(d, s, l, e) \ > do { \ > u8 __user *_dst = (u8 __user *)(d); \ > -- > 2.26.1