Skip to content

iov: Bypass usercopy hardening for kernel iterators#612

Open
blktests-ci[bot] wants to merge 1 commit intolinus-master_basefrom
series/1060724=>linus-master
Open

iov: Bypass usercopy hardening for kernel iterators#612
blktests-ci[bot] wants to merge 1 commit intolinus-master_basefrom
series/1060724=>linus-master

Conversation

@blktests-ci
Copy link

@blktests-ci blktests-ci bot commented Mar 3, 2026

Pull request for series with
subject: iov: Bypass usercopy hardening for kernel iterators
version: 1
url: https://patchwork.kernel.org/project/linux-block/list/?series=1060724

@blktests-ci
Copy link
Author

blktests-ci bot commented Mar 3, 2026

Upstream branch: af4e9ef
series: https://patchwork.kernel.org/project/linux-block/list/?series=1060724
version: 1

@blktests-ci
Copy link
Author

blktests-ci bot commented Mar 4, 2026

Upstream branch: af4e9ef
series: https://patchwork.kernel.org/project/linux-block/list/?series=1060724
version: 1

@blktests-ci blktests-ci bot force-pushed the linus-master_base branch from d4e9bad to ecd10e2 Compare March 4, 2026 07:44
@blktests-ci blktests-ci bot force-pushed the series/1060724=>linus-master branch from 2b94c84 to cd79156 Compare March 4, 2026 07:45
@blktests-ci blktests-ci bot force-pushed the linus-master_base branch from ecd10e2 to d0e1bed Compare March 4, 2026 07:45
@blktests-ci
Copy link
Author

blktests-ci bot commented Mar 4, 2026

Upstream branch: af4e9ef
series: https://patchwork.kernel.org/project/linux-block/list/?series=1060724
version: 1

@blktests-ci blktests-ci bot force-pushed the series/1060724=>linus-master branch from cd79156 to 731da92 Compare March 4, 2026 08:01
@blktests-ci blktests-ci bot force-pushed the linus-master_base branch from d0e1bed to 6b51c57 Compare March 4, 2026 09:34
@blktests-ci
Copy link
Author

blktests-ci bot commented Mar 4, 2026

Upstream branch: 0031c06
series: https://patchwork.kernel.org/project/linux-block/list/?series=1060724
version: 1

@blktests-ci blktests-ci bot force-pushed the series/1060724=>linus-master branch from 731da92 to cd0bc18 Compare March 4, 2026 09:44
@blktests-ci blktests-ci bot force-pushed the linus-master_base branch from 6b51c57 to 78036b2 Compare March 4, 2026 19:57
@blktests-ci
Copy link
Author

blktests-ci bot commented Mar 4, 2026

Upstream branch: ecc64d2
series: https://patchwork.kernel.org/project/linux-block/list/?series=1060724
version: 1

@blktests-ci blktests-ci bot force-pushed the series/1060724=>linus-master branch from cd0bc18 to 677ac1e Compare March 4, 2026 20:07
@blktests-ci blktests-ci bot force-pushed the linus-master_base branch from 78036b2 to bbb3394 Compare March 5, 2026 12:20
@blktests-ci
Copy link
Author

blktests-ci bot commented Mar 5, 2026

Upstream branch: c107785
series: https://patchwork.kernel.org/project/linux-block/list/?series=1060724
version: 1

@blktests-ci blktests-ci bot force-pushed the series/1060724=>linus-master branch from 677ac1e to 65595d1 Compare March 5, 2026 12:30
@blktests-ci blktests-ci bot force-pushed the linus-master_base branch from bbb3394 to 901a429 Compare March 5, 2026 21:37
@blktests-ci
Copy link
Author

blktests-ci bot commented Mar 5, 2026

Upstream branch: 5ee8dbf
series: https://patchwork.kernel.org/project/linux-block/list/?series=1060724
version: 1

@blktests-ci blktests-ci bot force-pushed the series/1060724=>linus-master branch from 65595d1 to 1edc59e Compare March 5, 2026 21:46
@blktests-ci blktests-ci bot force-pushed the linus-master_base branch from 901a429 to 1f19ba6 Compare March 10, 2026 06:29
@blktests-ci
Copy link
Author

blktests-ci bot commented Mar 10, 2026

Upstream branch: 1f318b9
series: https://patchwork.kernel.org/project/linux-block/list/?series=1060724
version: 1

@blktests-ci blktests-ci bot force-pushed the series/1060724=>linus-master branch from 1edc59e to 66fe4dd Compare March 10, 2026 06:35
@blktests-ci blktests-ci bot force-pushed the linus-master_base branch from 1f19ba6 to e79276a Compare March 11, 2026 08:02
@blktests-ci
Copy link
Author

blktests-ci bot commented Mar 11, 2026

Upstream branch: None
series: https://patchwork.kernel.org/project/linux-block/list/?series=1060724
version: 1

@blktests-ci blktests-ci bot force-pushed the series/1060724=>linus-master branch from 66fe4dd to 70a51a8 Compare March 11, 2026 08:10
@blktests-ci blktests-ci bot force-pushed the linus-master_base branch from e79276a to 0dd9afc Compare March 12, 2026 01:40
@blktests-ci
Copy link
Author

blktests-ci bot commented Mar 12, 2026

Upstream branch: 80234b5
series: https://patchwork.kernel.org/project/linux-block/list/?series=1060724
version: 1

Profiling NFSD under an iozone workload showed that hardened
usercopy checks consume roughly 1.3% of CPU in the TCP receive
path. The runtime check in check_object_size() validates that
copy buffers reside in expected slab regions, which is
meaningful when data crosses the user/kernel boundary but adds
no value when both source and destination are kernel addresses.

Split check_copy_size() so that copy_to_iter() can bypass the
runtime check_object_size() call for kernel-only iterators
(ITER_BVEC, ITER_KVEC). Existing callers of check_copy_size()
are unaffected; user-backed iterators still receive the full
usercopy validation.

This benefits all kernel consumers of copy_to_iter(), including
the TCP receive path used by the NFS client and server,
NVMe-TCP, and any other subsystem that uses ITER_BVEC or
ITER_KVEC receive buffers.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
@blktests-ci blktests-ci bot force-pushed the series/1060724=>linus-master branch from 70a51a8 to c6bf057 Compare March 12, 2026 02:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant