Skip to content

Commit 73061db

Browse files
isilenceaxboe
authored andcommitted
selftests/io_uring: add io_uring_queue_init_params
Add a ring init variant taking struct io_uring_params, which mimicks liburing API. Signed-off-by: Pavel Begunkov <asml.silence@gmail.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
1 parent 10dc959 commit 73061db

1 file changed

Lines changed: 17 additions & 8 deletions

File tree

tools/include/io_uring/mini_liburing.h

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -126,28 +126,37 @@ static inline int io_uring_enter(int fd, unsigned int to_submit,
126126
flags, sig, _NSIG / 8);
127127
}
128128

129-
static inline int io_uring_queue_init(unsigned int entries,
130-
struct io_uring *ring,
131-
unsigned int flags)
129+
static inline int io_uring_queue_init_params(unsigned int entries,
130+
struct io_uring *ring,
131+
struct io_uring_params *p)
132132
{
133-
struct io_uring_params p;
134133
int fd, ret;
135134

136135
memset(ring, 0, sizeof(*ring));
137-
memset(&p, 0, sizeof(p));
138-
p.flags = flags;
139136

140-
fd = io_uring_setup(entries, &p);
137+
fd = io_uring_setup(entries, p);
141138
if (fd < 0)
142139
return fd;
143-
ret = io_uring_mmap(fd, &p, &ring->sq, &ring->cq);
140+
ret = io_uring_mmap(fd, p, &ring->sq, &ring->cq);
144141
if (!ret)
145142
ring->ring_fd = fd;
146143
else
147144
close(fd);
148145
return ret;
149146
}
150147

148+
static inline int io_uring_queue_init(unsigned int entries,
149+
struct io_uring *ring,
150+
unsigned int flags)
151+
{
152+
struct io_uring_params p;
153+
154+
memset(&p, 0, sizeof(p));
155+
p.flags = flags;
156+
157+
return io_uring_queue_init_params(entries, ring, &p);
158+
}
159+
151160
/* Get a sqe */
152161
static inline struct io_uring_sqe *io_uring_get_sqe(struct io_uring *ring)
153162
{

0 commit comments

Comments
 (0)