perf stat: Replace aggregation ID with a struct
[linux-2.6-microblaze.git] / fs / io-wq.h
index ddaf961..069496c 100644 (file)
@@ -1,6 +1,8 @@
 #ifndef INTERNAL_IO_WQ_H
 #define INTERNAL_IO_WQ_H
 
+#include <linux/io_uring.h>
+
 struct io_wq;
 
 enum {
@@ -10,6 +12,13 @@ enum {
        IO_WQ_WORK_NO_CANCEL    = 8,
        IO_WQ_WORK_CONCURRENT   = 16,
 
+       IO_WQ_WORK_FILES        = 32,
+       IO_WQ_WORK_FS           = 64,
+       IO_WQ_WORK_MM           = 128,
+       IO_WQ_WORK_CREDS        = 256,
+       IO_WQ_WORK_BLKCG        = 512,
+       IO_WQ_WORK_FSIZE        = 1024,
+
        IO_WQ_HASH_SHIFT        = 24,   /* upper 8 bits are used for hash key */
 };
 
@@ -85,11 +94,7 @@ static inline void wq_list_del(struct io_wq_work_list *list,
 
 struct io_wq_work {
        struct io_wq_work_node list;
-       struct files_struct *files;
-       struct mm_struct *mm;
-       const struct cred *creds;
-       struct fs_struct *fs;
-       unsigned long fsize;
+       struct io_identity *identity;
        unsigned flags;
 };
 
@@ -124,7 +129,6 @@ static inline bool io_wq_is_hashed(struct io_wq_work *work)
 }
 
 void io_wq_cancel_all(struct io_wq *wq);
-enum io_wq_cancel io_wq_cancel_work(struct io_wq *wq, struct io_wq_work *cwork);
 
 typedef bool (work_cancel_fn)(struct io_wq_work *, void *);