diff options
| author | Allison Henderson <achender@kernel.org> | 2026-05-06 02:43:36 +0300 |
|---|---|---|
| committer | Jakub Kicinski <kuba@kernel.org> | 2026-05-12 03:20:02 +0300 |
| commit | e174929793195e0cd6a4adb0cad731b39f9019b4 (patch) | |
| tree | 9980530ffee5f0c5a7c0c17b0f9b755388b0f5fd /scripts/stackdelta | |
| parent | a450063ef86b9967234ca1f896c0d77400c74f11 (diff) | |
| download | linux-e174929793195e0cd6a4adb0cad731b39f9019b4.tar.xz | |
net/rds: reset op_nents when zerocopy page pin fails
When iov_iter_get_pages2() fails in rds_message_zcopy_from_user(),
the pinned pages are released with put_page(), and
rm->data.op_mmp_znotifier is cleared. But we fail to properly
clear rm->data.op_nents.
Later when rds_message_purge() is called from rds_sendmsg() the
cleanup loop iterates over the incorrectly non zero number of
op_nents and frees them again.
Fix this by properly resetting op_nents when it should be in
rds_message_zcopy_from_user().
Fixes: 0cebaccef3ac ("rds: zerocopy Tx support.")
Signed-off-by: Allison Henderson <achender@kernel.org>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20260505234336.2132721-1-achender@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'scripts/stackdelta')
0 files changed, 0 insertions, 0 deletions
