From ad03d9a93d28042a6a37087a49a92017fe49c2a7 Mon Sep 17 00:00:00 2001
From: Biswapriyo Nath <nathbap...@gmail.com>
Date: Tue, 8 Oct 2024 14:56:06 +0000
Subject: [PATCH 1/2] headers: Add new ioring symbols and apis

Signed-off-by: Biswapriyo Nath <nathbap...@gmail.com>
---
 mingw-w64-headers/include/ioringapi.h  | 5 ++++-
 mingw-w64-headers/include/ntioring_x.h | 3 +++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/mingw-w64-headers/include/ioringapi.h 
b/mingw-w64-headers/include/ioringapi.h
index d476829..5822aca 100644
--- a/mingw-w64-headers/include/ioringapi.h
+++ b/mingw-w64-headers/include/ioringapi.h
@@ -32,7 +32,8 @@ typedef enum IORING_CREATE_REQUIRED_FLAGS {
 DEFINE_ENUM_FLAG_OPERATORS(IORING_CREATE_REQUIRED_FLAGS)
 
 typedef enum IORING_CREATE_ADVISORY_FLAGS {
-  IORING_CREATE_ADVISORY_FLAGS_NONE = 0
+  IORING_CREATE_ADVISORY_FLAGS_NONE = 0,
+  IORING_CREATE_SKIP_BUILDER_PARAM_CHECKS = 0x00000001
 } IORING_CREATE_ADVISORY_FLAGS;
 DEFINE_ENUM_FLAG_OPERATORS(IORING_CREATE_ADVISORY_FLAGS)
 
@@ -136,6 +137,8 @@ STDAPI BuildIoRingRegisterBuffers(HIORING ioRing, UINT32 
count, IORING_BUFFER_IN
 #if NTDDI_VERSION >= NTDDI_WIN10_NI
 STDAPI BuildIoRingWriteFile(HIORING ioRing, IORING_HANDLE_REF fileRef, 
IORING_BUFFER_REF bufferRef, UINT32 numberOfBytesToWrite, UINT64 fileOffset, 
FILE_WRITE_FLAGS writeFlags, UINT_PTR userData, IORING_SQE_FLAGS sqeFlags);
 STDAPI BuildIoRingFlushFile(HIORING ioRing, IORING_HANDLE_REF fileRef, 
FILE_FLUSH_MODE flushMode, UINT_PTR userData, IORING_SQE_FLAGS sqeFlags);
+STDAPI BuildIoRingReadFileScatter(HIORING ioRing, IORING_HANDLE_REF fileRef, 
UINT32 segmentCount, FILE_SEGMENT_ELEMENT segmentArray[], UINT32 
numberOfBytesToRead, UINT64 fileOffset, UINT_PTR userData, IORING_SQE_FLAGS 
sqeFlags);
+STDAPI BuildIoRingWriteFileGather(HIORING ioRing, IORING_HANDLE_REF fileRef, 
UINT32 segmentCount, FILE_SEGMENT_ELEMENT segmentArray[], UINT32 
numberOfBytesToWrite, UINT64 fileOffset, FILE_WRITE_FLAGS writeFlags, UINT_PTR 
userData, IORING_SQE_FLAGS sqeFlags);
 #endif
 
 #ifdef __cplusplus
diff --git a/mingw-w64-headers/include/ntioring_x.h 
b/mingw-w64-headers/include/ntioring_x.h
index c82c034..3e94082 100644
--- a/mingw-w64-headers/include/ntioring_x.h
+++ b/mingw-w64-headers/include/ntioring_x.h
@@ -20,6 +20,7 @@ typedef enum IORING_VERSION {
 #if NTDDI_VERSION >= NTDDI_WIN10_NI
   , IORING_VERSION_3 = 300
 #endif
+  , IORING_VERSION_4 = 400
 } IORING_VERSION;
 
 typedef enum IORING_FEATURE_FLAGS {
@@ -39,6 +40,8 @@ typedef enum IORING_OP_CODE {
   , IORING_OP_WRITE
   , IORING_OP_FLUSH
 #endif
+  , IORING_OP_READ_SCATTER
+  , IORING_OP_WRITE_GATHER
 } IORING_OP_CODE;
 
 typedef struct IORING_BUFFER_INFO {
-- 
2.46.2

_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to