From ce8e2bc298c7dc8604a908136b9563ff6b986674 Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Tue, 30 Apr 2019 14:50:36 -0600 Subject: Update tests for 'sqe submit always posts a cqe' Signed-off-by: Jens Axboe --- test/eeed8b54e0df-test.c | 16 ++++++++++++++-- test/fsync.c | 5 ++++- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/test/eeed8b54e0df-test.c b/test/eeed8b54e0df-test.c index 428b42b..f9ddfb3 100644 --- a/test/eeed8b54e0df-test.c +++ b/test/eeed8b54e0df-test.c @@ -47,6 +47,7 @@ int main(int argc, char *argv[]) { struct io_uring ring; struct io_uring_sqe *sqe; + struct io_uring_cqe *cqe; struct iovec iov; int ret, fd; @@ -74,8 +75,19 @@ int main(int argc, char *argv[]) sqe->rw_flags = RWF_NOWAIT; ret = io_uring_submit(&ring); - if (ret != -EAGAIN) { - printf("Got submit %d, expected EAGAIN\n", ret); + if (ret != 1) { + printf("Got submit %d, expected 1\n", ret); + goto err; + } + + ret = io_uring_peek_cqe(&ring, &cqe); + if (ret) { + printf("Ring peek got %d\n", ret); + goto err; + } + + if (cqe->res != -EAGAIN) { + printf("cqe error: %d\n", cqe->res); goto err; } diff --git a/test/fsync.c b/test/fsync.c index de28c2c..c9c2c5d 100644 --- a/test/fsync.c +++ b/test/fsync.c @@ -112,6 +112,9 @@ static int test_barrier_fsync(struct io_uring *ring) printf("child: wait completion %d\n", ret); goto err; } + /* kernel doesn't support IOSQE_IO_DRAIN */ + if (cqe->res == -EINVAL) + break; if (i <= 3) { if (cqe->user_data) { printf("Got fsync early?\n"); @@ -153,7 +156,7 @@ int main(int argc, char *argv[]) ret = test_barrier_fsync(&ring); if (ret) { - printf("test_single_fsync failed\n"); + printf("test_barrier_fsync failed\n"); return ret; } -- cgit