On Sat, Dec 11, 2021 at 05:53:46PM +0000, David Laight wrote: > From: Tiezhu Yang > > Sent: 11 December 2021 03:33 > > > > v2: > > -- add copy_to_user_or_kernel() in lib/usercopy.c > > -- define userbuf as bool type > > Instead of having a flag to indicate whether the buffer is user or kernel, > would it be better to have two separate buffer pointers. > One for a user space buffer, the other for a kernel space buffer. > Exactly one of the buffers should always be NULL. No. You should be using an iov_iter instead. See https://lore.kernel.org/all/Ya4bdB0UBJCZhUSo@xxxxxxxxxxxxxxxxxxxx/ for a start on this.