strace/backport-io_uring-Remove-struct-io_cqring_offsets-compile-tim.patch
2020-11-10 16:46:27 +08:00

47 lines
1.7 KiB
Diff

From fded17c15bca4150165f899cc47f67bab963d9a7 Mon Sep 17 00:00:00 2001
From: Chris Packham <chris.packham@alliedtelesis.co.nz>
Date: Mon, 15 Jun 2020 22:01:25 +1200
Subject: [PATCH 1/2] io_uring: Remove struct io_cqring_offsets compile time
asserts
The generated types/check-io_uring.c already checks the kernel's struct
io_cqring_offsets for compatibility with the strace definition so
there's no need for manual checks.
* io_uring.c [HAVE_STRUCT_IO_CQRING_OFFSETS]: Remove static_asserts.
Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
Resolves: https://github.com/strace/strace/issues/143
---
io_uring.c | 15 ---------------
1 file changed, 15 deletions(-)
diff --git a/io_uring.c b/io_uring.c
index cd18345..cfeea82 100644
--- a/io_uring.c
+++ b/io_uring.c
@@ -18,21 +18,6 @@
#include "xlat/uring_register_opcodes.h"
#include "xlat/uring_cqring_flags.h"
-#ifdef HAVE_STRUCT_IO_CQRING_OFFSETS
-# ifdef HAVE_STRUCT_IO_CQRING_OFFSETS_RESV
-static_assert(offsetof(struct_io_cqring_offsets, resv)
- >= offsetof(struct io_cqring_offsets, resv),
- "struct io_cqring_offsets.resv offset mismatch"
- ", please update the decoder");
-static_assert(sizeof_field(struct_io_cqring_offsets, resv)
- <= sizeof_field(struct io_cqring_offsets, resv),
- "struct io_cqring_offsets.resv size mismatch"
- ", please update the decoder");
-# else /* !HAVE_STRUCT_IO_CQRING_OFFSETS_RESV */
-static_assert(0, "struct io_cqring_offsets.resv is missing"
- ", please update the decoder");
-# endif
-#endif /* HAVE_STRUCT_IO_CQRING_OFFSETS */
#ifdef HAVE_STRUCT_IO_URING_PARAMS
# ifdef HAVE_STRUCT_IO_URING_PARAMS_RESV
static_assert(offsetof(struct_io_uring_params, resv)
--
1.8.3.1