fs:aio: Remove TODO comment suggesting hash or array usage in io_cancel()
authorMohammed Anees <pvmohammedanees2003@gmail.com>
Tue, 12 Nov 2024 11:38:34 +0000 (17:08 +0530)
committerChristian Brauner <brauner@kernel.org>
Tue, 12 Nov 2024 13:36:45 +0000 (14:36 +0100)
The comment suggests a hash or array approach to
store the active requests. Currently it iterates
through all the active requests and when found
deletes the requested request, in the linked list.
However io_cancel() isn’t a frequently used operation,
and optimizing it wouldn’t bring a substantial benefit
to real users and the increased complexity of maintaining
a hashtable for this would be significant and will slow
down other operation. Therefore remove this TODO
to avoid people spending time improving this.

Signed-off-by: Mohammed Anees <pvmohammedanees2003@gmail.com>
Link: https://lore.kernel.org/r/20241112113906.15825-1-pvmohammedanees2003@gmail.com
Reviewed-by: Jan Kara <jack@suse.cz>
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/aio.c

index e8920178b50f73267306a6da8f177785267f0c15..72e3970f42256b2c6ca2117f3e54ebfa64af1c8b 100644 (file)
--- a/fs/aio.c
+++ b/fs/aio.c
@@ -2191,7 +2191,6 @@ SYSCALL_DEFINE3(io_cancel, aio_context_t, ctx_id, struct iocb __user *, iocb,
                return -EINVAL;
 
        spin_lock_irq(&ctx->ctx_lock);
-       /* TODO: use a hash or array, this sucks. */
        list_for_each_entry(kiocb, &ctx->active_reqs, ki_list) {
                if (kiocb->ki_res.obj == obj) {
                        ret = kiocb->ki_cancel(&kiocb->rw);