Merge branch 'kvm-amd-pmu-fixes' into HEAD
[linux-2.6-microblaze.git] / include / uapi / linux / io_uring.h
index 787f491..1845cf7 100644 (file)
@@ -101,6 +101,7 @@ enum {
 #define IORING_SETUP_CLAMP     (1U << 4)       /* clamp SQ/CQ ring sizes */
 #define IORING_SETUP_ATTACH_WQ (1U << 5)       /* attach to existing wq */
 #define IORING_SETUP_R_DISABLED        (1U << 6)       /* start with ring disabled */
+#define IORING_SETUP_SUBMIT_ALL        (1U << 7)       /* continue submit on error */
 
 enum {
        IORING_OP_NOP,
@@ -143,6 +144,7 @@ enum {
        IORING_OP_MKDIRAT,
        IORING_OP_SYMLINKAT,
        IORING_OP_LINKAT,
+       IORING_OP_MSG_RING,
 
        /* this goes last, obviously */
        IORING_OP_LAST,
@@ -257,10 +259,11 @@ struct io_cqring_offsets {
 /*
  * io_uring_enter(2) flags
  */
-#define IORING_ENTER_GETEVENTS (1U << 0)
-#define IORING_ENTER_SQ_WAKEUP (1U << 1)
-#define IORING_ENTER_SQ_WAIT   (1U << 2)
-#define IORING_ENTER_EXT_ARG   (1U << 3)
+#define IORING_ENTER_GETEVENTS         (1U << 0)
+#define IORING_ENTER_SQ_WAKEUP         (1U << 1)
+#define IORING_ENTER_SQ_WAIT           (1U << 2)
+#define IORING_ENTER_EXT_ARG           (1U << 3)
+#define IORING_ENTER_REGISTERED_RING   (1U << 4)
 
 /*
  * Passed in for io_uring_setup(2). Copied back with updated info on success
@@ -293,6 +296,7 @@ struct io_uring_params {
 #define IORING_FEAT_NATIVE_WORKERS     (1U << 9)
 #define IORING_FEAT_RSRC_TAGS          (1U << 10)
 #define IORING_FEAT_CQE_SKIP           (1U << 11)
+#define IORING_FEAT_LINKED_FILE                (1U << 12)
 
 /*
  * io_uring_register(2) opcodes and arguments
@@ -325,6 +329,10 @@ enum {
        /* set/get max number of io-wq workers */
        IORING_REGISTER_IOWQ_MAX_WORKERS        = 19,
 
+       /* register/unregister io_uring fd with the ring */
+       IORING_REGISTER_RING_FDS                = 20,
+       IORING_UNREGISTER_RING_FDS              = 21,
+
        /* this goes last */
        IORING_REGISTER_LAST
 };