mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 09:36:22 +02:00
afs: use kvfree() to free memory allocated by kvcalloc()
op->more_files is allocated with kvcalloc() but released via
afs_put_operation(), which uses kfree() internally. This mismach prevents
the resource from being released properly and may lead to undefined
behavior.
Fix this by using kvfree() to free op->more_files to match its allocation
method.
Fixes: e49c7b2f6d ("afs: Build an abstraction around an "operation" concept")
Signed-off-by: Zilin Guan <zilin@seu.edu.cn>
Signed-off-by: David Howells <dhowells@redhat.com>
Link: https://patch.msgid.link/20260622090856.2746629-8-dhowells@redhat.com
cc: Marc Dionne <marc.dionne@auristor.com>
cc: linux-afs@lists.infradead.org
Signed-off-by: Christian Brauner (Amutable) <brauner@kernel.org>
This commit is contained in:
parent
35b177ef54
commit
cb39654926
|
|
@ -348,7 +348,7 @@ int afs_put_operation(struct afs_operation *op)
|
|||
for (i = 0; i < op->nr_files - 2; i++)
|
||||
if (op->more_files[i].put_vnode)
|
||||
iput(&op->more_files[i].vnode->netfs.inode);
|
||||
kfree(op->more_files);
|
||||
kvfree(op->more_files);
|
||||
}
|
||||
|
||||
if (op->estate) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user