From baf3ec25f6605650ee392fd52928651a6965afa6 Mon Sep 17 00:00:00 2001
From: Florian Fischer <florian.fischer@muhq.space>
Date: Tue, 3 Aug 2021 14:24:06 +0200
Subject: [PATCH] fix io_uring setup error reporting

---
 io_uring.c | 2 +-
 io_uring.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/io_uring.c b/io_uring.c
index ea0141e..a7c4d22 100644
--- a/io_uring.c
+++ b/io_uring.c
@@ -10,7 +10,7 @@ struct io_uring ring;
 void init(__attribute__((unused)) int fd) {
 	int res = io_uring_queue_init(1, &ring, 0);
 	if (res < 0) {
-		errno = res;
+		errno = -res;
 		err(EXIT_FAILURE, "io_uring_setup failed");
 	}
 }
diff --git a/io_uring.h b/io_uring.h
index 961ef30..936d893 100644
--- a/io_uring.h
+++ b/io_uring.h
@@ -26,7 +26,7 @@ struct io_uring_sqe* sqpoll_ring_get_sqe(struct io_uring* ring) {
 void io_uring_init_sqpoll(struct io_uring* ring) {
 	int res = io_uring_queue_init(SQPOLL_RING_ENTRIES, ring, IORING_SETUP_SQPOLL);
 	if (res < 0) {
-		errno = res;
+		errno = -res;
 		err(EXIT_FAILURE, "io_uring_setup failed");
 	}
 }
-- 
GitLab