io_uring/rsrc: disassociate nodes and rsrc_data
Make rsrc nodes independent from rsrd_data, for that we keep ctx and
rsrc type in nodes.
Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Link: https://lore.kernel.org/r/4f259abe9cd4eea6a3b4ed83508635218acd3c3f.1681822823.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
diff --git a/io_uring/rsrc.h b/io_uring/rsrc.h
index 5d0733c..0a8a95e 100644
--- a/io_uring/rsrc.h
+++ b/io_uring/rsrc.h
@@ -40,10 +40,11 @@ struct io_rsrc_data {
struct io_rsrc_node {
union {
struct io_cache_entry cache;
- struct io_rsrc_data *rsrc_data;
+ struct io_ring_ctx *ctx;
};
int refs;
bool empty;
+ u16 type;
struct list_head node;
struct io_rsrc_put item;
};