aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/iomap.h
diff options
context:
space:
mode:
authorDave Chinner <david@fromorbit.com>2016-11-30 12:49:38 +1100
committerDave Chinner <david@fromorbit.com>2016-11-30 12:49:38 +1100
commite3df41f97847f60c3808b39dee1adcb72b3d4646 (patch)
treee146ce6480868f74bb1fdf31ac522ae1aece648d /include/linux/iomap.h
parentdax: Introduce IOMAP_FAULT flag (diff)
parentxfs: pass post-eof speculative prealloc blocks to bmapi (diff)
downloadlinux-dev-e3df41f97847f60c3808b39dee1adcb72b3d4646.tar.xz
linux-dev-e3df41f97847f60c3808b39dee1adcb72b3d4646.zip
Merge branch 'xfs-4.10-misc-fixes-2' into iomap-4.10-directio
Diffstat (limited to 'include/linux/iomap.h')
-rw-r--r--include/linux/iomap.h17
1 files changed, 11 insertions, 6 deletions
diff --git a/include/linux/iomap.h b/include/linux/iomap.h
index b9e7b8ec8c1d..f185156de74d 100644
--- a/include/linux/iomap.h
+++ b/include/linux/iomap.h
@@ -19,11 +19,15 @@ struct vm_fault;
#define IOMAP_UNWRITTEN 0x04 /* blocks allocated @blkno in unwritten state */
/*
- * Flags for iomap mappings:
+ * Flags for all iomap mappings:
*/
-#define IOMAP_F_MERGED 0x01 /* contains multiple blocks/extents */
-#define IOMAP_F_SHARED 0x02 /* block shared with another file */
-#define IOMAP_F_NEW 0x04 /* blocks have been newly allocated */
+#define IOMAP_F_NEW 0x01 /* blocks have been newly allocated */
+
+/*
+ * Flags that only need to be reported for IOMAP_REPORT requests:
+ */
+#define IOMAP_F_MERGED 0x10 /* contains multiple blocks/extents */
+#define IOMAP_F_SHARED 0x20 /* block shared with another file */
/*
* Magic value for blkno:
@@ -42,8 +46,9 @@ struct iomap {
/*
* Flags for iomap_begin / iomap_end. No flag implies a read.
*/
-#define IOMAP_WRITE (1 << 0)
-#define IOMAP_ZERO (1 << 1)
+#define IOMAP_WRITE (1 << 0) /* writing, must allocate blocks */
+#define IOMAP_ZERO (1 << 1) /* zeroing operation, may skip holes */
+#define IOMAP_REPORT (1 << 2) /* report extent status, e.g. FIEMAP */
#define IOMAP_FAULT (1 << 3) /* mapping for page fault */
struct iomap_ops {