io_uring/uring_cmd.h | 6 ------ 1 file changed, 6 deletions(-)
io_uring_cmd_import_fixed_vec() is declared in both
include/linux/io_uring/cmd.h and io_uring/uring_cmd.h. The declarations
are identical (if redundant) for CONFIG_IO_URING=y. But if
CONFIG_IO_URING=N, include/linux/io_uring/cmd.h declares the function as
static inline while io_uring/uring_cmd.h declares it as extern. This
causes linker errors if the declaration in io_uring/uring_cmd.h is used.
Remove the declaration in io_uring/uring_cmd.h to avoid linker errors
and prevent the declarations getting out of sync.
Signed-off-by: Caleb Sander Mateos <csander@purestorage.com>
Fixes: ef4902752972 ("io_uring/cmd: introduce io_uring_cmd_import_fixed_vec")
---
io_uring/uring_cmd.h | 6 ------
1 file changed, 6 deletions(-)
diff --git a/io_uring/uring_cmd.h b/io_uring/uring_cmd.h
index b04686b6b5d2..e6a5142c890e 100644
--- a/io_uring/uring_cmd.h
+++ b/io_uring/uring_cmd.h
@@ -15,11 +15,5 @@ void io_uring_cmd_cleanup(struct io_kiocb *req);
bool io_uring_try_cancel_uring_cmd(struct io_ring_ctx *ctx,
struct io_uring_task *tctx, bool cancel_all);
void io_cmd_cache_free(const void *entry);
-
-int io_uring_cmd_import_fixed_vec(struct io_uring_cmd *ioucmd,
- const struct iovec __user *uvec,
- size_t uvec_segs,
- int ddir, struct iov_iter *iter,
- unsigned issue_flags);
--
2.45.2
On Tue, 20 May 2025 13:33:36 -0600, Caleb Sander Mateos wrote:
> io_uring_cmd_import_fixed_vec() is declared in both
> include/linux/io_uring/cmd.h and io_uring/uring_cmd.h. The declarations
> are identical (if redundant) for CONFIG_IO_URING=y. But if
> CONFIG_IO_URING=N, include/linux/io_uring/cmd.h declares the function as
> static inline while io_uring/uring_cmd.h declares it as extern. This
> causes linker errors if the declaration in io_uring/uring_cmd.h is used.
>
> [...]
Applied, thanks!
[1/1] io_uring/cmd: axe duplicate io_uring_cmd_import_fixed_vec() declaration
commit: f1774d9d4e104639a9122bde3b1fe58a0c0dcde7
Best regards,
--
Jens Axboe
© 2016 - 2025 Red Hat, Inc.