On Mon, Dec 13, 2021 at 08:30:33AM +0000, David Laight wrote: > From: Matthew Wilcox > > Sent: 12 December 2021 11:48 > > > > 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. > > iov_iter gets horribly expensive... Oh, right. Reading the kcore is a high-performance path, my mistake.