Index: libcfa/configure.ac
===================================================================
--- libcfa/configure.ac	(revision 7288c0049997864732d1382f7fbefea144a2137e)
+++ libcfa/configure.ac	(revision 22ddadea18425bfa5c6025a0d5f3cdca5dbb5e49)
@@ -129,4 +129,5 @@
 #io_uring 5.6 and later uses probes
 define(ioring_ops, [IORING_OP_NOP,IORING_OP_READV,IORING_OP_WRITEV,IORING_OP_FSYNC,IORING_OP_READ_FIXED,IORING_OP_WRITE_FIXED,IORING_OP_POLL_ADD,IORING_OP_POLL_REMOVE,IORING_OP_SYNC_FILE_RANGE,IORING_OP_SENDMSG,IORING_OP_RECVMSG,IORING_OP_TIMEOUT,IORING_OP_TIMEOUT_REMOVE,IORING_OP_ACCEPT,IORING_OP_ASYNC_CANCEL,IORING_OP_LINK_TIMEOUT,IORING_OP_CONNECT,IORING_OP_FALLOCATE,IORING_OP_OPENAT,IORING_OP_CLOSE,IORING_OP_FILES_UPDATE,IORING_OP_STATX,IORING_OP_READ,IORING_OP_WRITE,IORING_OP_FADVISE,IORING_OP_MADVISE,IORING_OP_SEND,IORING_OP_RECV,IORING_OP_OPENAT2,IORING_OP_EPOLL_CTL,IORING_OP_SPLICE,IORING_OP_PROVIDE_BUFFERS,IORING_OP_REMOVE_BUFFER])
+define(ioring_flags, [IOSQE_FIXED_FILE,IOSQE_IO_DRAIN,IOSQE_ASYNC,IOSQE_IO_LINK,IOSQE_IO_HARDLINK,SPLICE_F_FD_IN_FIXED])
 
 define(ioring_from_decls, [
@@ -166,4 +167,9 @@
 		ioring_from_decls
 	])
+
+	# check support for various io_uring flags
+	m4_foreach([op], [ioring_flags], [
+		AC_CHECK_DECL(op, [AC_DEFINE([CFA_HAVE_]op)], [], [[#include <linux/io_uring.h>]])
+	])
 ])
 AC_CHECK_FUNCS([preadv2 pwritev2])
Index: libcfa/prelude/defines.hfa.in
===================================================================
--- libcfa/prelude/defines.hfa.in	(revision 7288c0049997864732d1382f7fbefea144a2137e)
+++ libcfa/prelude/defines.hfa.in	(revision 22ddadea18425bfa5c6025a0d5f3cdca5dbb5e49)
@@ -50,4 +50,11 @@
 #undef CFA_HAVE_IORING_OP_REMOVE_BUFFER
 
+#undef CFA_HAVE_IOSQE_FIXED_FILE
+#undef CFA_HAVE_IOSQE_IO_DRAIN
+#undef CFA_HAVE_IOSQE_ASYNC
+#undef CFA_HAVE_IOSQE_IO_LINK
+#undef CFA_HAVE_IOSQE_IO_HARDLINK
+#undef CFA_HAVE_SPLICE_F_FD_IN_FIXED
+
 #undef HAVE_PREADV2
 #undef HAVE_PWRITEV2
