Re: [PATCH 03/11] fs: add new read_uptr and write_uptr file operations

From: Linus Torvalds
Date: Wed Jun 24 2020 - 13:19:40 EST


On Wed, Jun 24, 2020 at 9:29 AM Christoph Hellwig <hch@xxxxxx> wrote:
>
> Add two new file operations that are identical to ->read and ->write
> except that they can also safely take kernel pointers using the uptr_t
> type.

Honestly, I think this is the wrong way to go.

All of this new complexity and messiness, just to remove a few
unimportant final cases?

If somebody can't be bothered to convert a driver to
iter_read/iter_write, why would they be bothered to convert it to
read_uptr/write_uptr?

And this messiness will stay around for decades.

So let's not go down that path.

If you want to do "splice() and kernel_read() requires read_iter"
(with a warning so that we find any cases), then that's fine. But
let's not add yet _another_ read type.

Why did you care so much about sysctl, and why couldn't they use the iter ops?

Linus