Re: [netfs?] KASAN: slab-use-after-free Write in io_submit_one

From: Edward Adam Davis
Date: Fri Feb 14 2025 - 20:06:05 EST


#syz test

diff --git a/fs/netfs/read_collect.c b/fs/netfs/read_collect.c
index f65affa5a9e4..7854d55120b8 100644
--- a/fs/netfs/read_collect.c
+++ b/fs/netfs/read_collect.c
@@ -371,9 +371,11 @@ static void netfs_rreq_assess_dio(struct netfs_io_request *rreq)

if (rreq->iocb) {
rreq->iocb->ki_pos += rreq->transferred;
- if (rreq->iocb->ki_complete)
+ if (rreq->iocb->ki_complete) {
rreq->iocb->ki_complete(
rreq->iocb, rreq->error ? rreq->error : rreq->transferred);
+ rreq->iocb->ki_complete = NULL;
+ }
}
if (rreq->netfs_ops->done)
rreq->netfs_ops->done(rreq);