Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
[firefly-linux-kernel-4.4.55.git] / include / linux / blk_types.h
index fa1abeb45b7602a4f0c1a4098f05f63d7a075281..238ef0ed62f85f18085b6446bc681d8c18d674dc 100644 (file)
@@ -178,19 +178,20 @@ enum rq_flag_bits {
        __REQ_MIXED_MERGE,      /* merge of different types, fail separately */
        __REQ_KERNEL,           /* direct IO to kernel pages */
        __REQ_PM,               /* runtime pm request */
+       __REQ_END,              /* last of chain of requests */
        __REQ_NR_BITS,          /* stops here */
 };
 
-#define REQ_WRITE              (1 << __REQ_WRITE)
-#define REQ_FAILFAST_DEV       (1 << __REQ_FAILFAST_DEV)
-#define REQ_FAILFAST_TRANSPORT (1 << __REQ_FAILFAST_TRANSPORT)
-#define REQ_FAILFAST_DRIVER    (1 << __REQ_FAILFAST_DRIVER)
-#define REQ_SYNC               (1 << __REQ_SYNC)
-#define REQ_META               (1 << __REQ_META)
-#define REQ_PRIO               (1 << __REQ_PRIO)
-#define REQ_DISCARD            (1 << __REQ_DISCARD)
-#define REQ_WRITE_SAME         (1 << __REQ_WRITE_SAME)
-#define REQ_NOIDLE             (1 << __REQ_NOIDLE)
+#define REQ_WRITE              (1ULL << __REQ_WRITE)
+#define REQ_FAILFAST_DEV       (1ULL << __REQ_FAILFAST_DEV)
+#define REQ_FAILFAST_TRANSPORT (1ULL << __REQ_FAILFAST_TRANSPORT)
+#define REQ_FAILFAST_DRIVER    (1ULL << __REQ_FAILFAST_DRIVER)
+#define REQ_SYNC               (1ULL << __REQ_SYNC)
+#define REQ_META               (1ULL << __REQ_META)
+#define REQ_PRIO               (1ULL << __REQ_PRIO)
+#define REQ_DISCARD            (1ULL << __REQ_DISCARD)
+#define REQ_WRITE_SAME         (1ULL << __REQ_WRITE_SAME)
+#define REQ_NOIDLE             (1ULL << __REQ_NOIDLE)
 
 #define REQ_FAILFAST_MASK \
        (REQ_FAILFAST_DEV | REQ_FAILFAST_TRANSPORT | REQ_FAILFAST_DRIVER)
@@ -206,28 +207,29 @@ enum rq_flag_bits {
 #define REQ_NOMERGE_FLAGS \
        (REQ_NOMERGE | REQ_STARTED | REQ_SOFTBARRIER | REQ_FLUSH | REQ_FUA)
 
-#define REQ_RAHEAD             (1 << __REQ_RAHEAD)
-#define REQ_THROTTLED          (1 << __REQ_THROTTLED)
-
-#define REQ_SORTED             (1 << __REQ_SORTED)
-#define REQ_SOFTBARRIER                (1 << __REQ_SOFTBARRIER)
-#define REQ_FUA                        (1 << __REQ_FUA)
-#define REQ_NOMERGE            (1 << __REQ_NOMERGE)
-#define REQ_STARTED            (1 << __REQ_STARTED)
-#define REQ_DONTPREP           (1 << __REQ_DONTPREP)
-#define REQ_QUEUED             (1 << __REQ_QUEUED)
-#define REQ_ELVPRIV            (1 << __REQ_ELVPRIV)
-#define REQ_FAILED             (1 << __REQ_FAILED)
-#define REQ_QUIET              (1 << __REQ_QUIET)
-#define REQ_PREEMPT            (1 << __REQ_PREEMPT)
-#define REQ_ALLOCED            (1 << __REQ_ALLOCED)
-#define REQ_COPY_USER          (1 << __REQ_COPY_USER)
-#define REQ_FLUSH              (1 << __REQ_FLUSH)
-#define REQ_FLUSH_SEQ          (1 << __REQ_FLUSH_SEQ)
-#define REQ_IO_STAT            (1 << __REQ_IO_STAT)
-#define REQ_MIXED_MERGE                (1 << __REQ_MIXED_MERGE)
-#define REQ_SECURE             (1 << __REQ_SECURE)
-#define REQ_KERNEL             (1 << __REQ_KERNEL)
-#define REQ_PM                 (1 << __REQ_PM)
+#define REQ_RAHEAD             (1ULL << __REQ_RAHEAD)
+#define REQ_THROTTLED          (1ULL << __REQ_THROTTLED)
+
+#define REQ_SORTED             (1ULL << __REQ_SORTED)
+#define REQ_SOFTBARRIER                (1ULL << __REQ_SOFTBARRIER)
+#define REQ_FUA                        (1ULL << __REQ_FUA)
+#define REQ_NOMERGE            (1ULL << __REQ_NOMERGE)
+#define REQ_STARTED            (1ULL << __REQ_STARTED)
+#define REQ_DONTPREP           (1ULL << __REQ_DONTPREP)
+#define REQ_QUEUED             (1ULL << __REQ_QUEUED)
+#define REQ_ELVPRIV            (1ULL << __REQ_ELVPRIV)
+#define REQ_FAILED             (1ULL << __REQ_FAILED)
+#define REQ_QUIET              (1ULL << __REQ_QUIET)
+#define REQ_PREEMPT            (1ULL << __REQ_PREEMPT)
+#define REQ_ALLOCED            (1ULL << __REQ_ALLOCED)
+#define REQ_COPY_USER          (1ULL << __REQ_COPY_USER)
+#define REQ_FLUSH              (1ULL << __REQ_FLUSH)
+#define REQ_FLUSH_SEQ          (1ULL << __REQ_FLUSH_SEQ)
+#define REQ_IO_STAT            (1ULL << __REQ_IO_STAT)
+#define REQ_MIXED_MERGE                (1ULL << __REQ_MIXED_MERGE)
+#define REQ_SECURE             (1ULL << __REQ_SECURE)
+#define REQ_KERNEL             (1ULL << __REQ_KERNEL)
+#define REQ_PM                 (1ULL << __REQ_PM)
+#define REQ_END                        (1ULL << __REQ_END)
 
 #endif /* __LINUX_BLK_TYPES_H */