Messages in this thread | | | From | Pavel Begunkov <> | Subject | [PATCH v3 0/2] iter revert problems | Date | Mon, 23 Aug 2021 11:18:43 +0100 |
| |
iov_iter_revert() doesn't go well with iov_iter_truncate() in all cases, see 2/2 for the bug description. As mentioned there the current problems is because of generic_write_checks(), but there was also a similar case fixed in 5.12, which should have been triggerable by normal write(2)/read(2) and others.
It may be better to enforce reexpands as a long term solution, but for now this patchset is quickier and easier to backport.
v2: don't fail if it was justly fully reverted v3: use truncated size + reexapand based approach
Pavel Begunkov (2): iov_iter: track truncated size io_uring: reexpand under-reexpanded iters
fs/io_uring.c | 2 ++ include/linux/uio.h | 6 +++++- 2 files changed, 7 insertions(+), 1 deletion(-)
-- 2.32.0
| |