diff options
author | Andreas Gruenbacher <agruenba@redhat.com> | 2017-10-01 17:56:54 -0400 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2017-10-01 17:56:54 -0400 |
commit | 9ca250a5137f3df7ffac58b49660beadd5926ace (patch) | |
tree | 4680883fd9cc5a7d8a369d4537e87b33aadf8c4b | |
parent | 19fe5f643f89f29c1a16bc474d91506b0e9a6232 (diff) |
iomap: Add IOMAP_F_DATA_INLINE flag
Add a new IOMAP_F_DATA_INLINE flag to indicate that a mapping is in a
disk area that contains data as well as metadata. In iomap_fiemap, map
this flag to FIEMAP_EXTENT_DATA_INLINE.
Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Reviewed-by: Jan Kara <jack@suse.cz>
-rw-r--r-- | fs/iomap.c | 2 | ||||
-rw-r--r-- | include/linux/iomap.h | 5 |
2 files changed, 5 insertions, 2 deletions
diff --git a/fs/iomap.c b/fs/iomap.c index d25db039ee13..379eb9896093 100644 --- a/fs/iomap.c +++ b/fs/iomap.c | |||
@@ -510,6 +510,8 @@ static int iomap_to_fiemap(struct fiemap_extent_info *fi, | |||
510 | flags |= FIEMAP_EXTENT_MERGED; | 510 | flags |= FIEMAP_EXTENT_MERGED; |
511 | if (iomap->flags & IOMAP_F_SHARED) | 511 | if (iomap->flags & IOMAP_F_SHARED) |
512 | flags |= FIEMAP_EXTENT_SHARED; | 512 | flags |= FIEMAP_EXTENT_SHARED; |
513 | if (iomap->flags & IOMAP_F_DATA_INLINE) | ||
514 | flags |= FIEMAP_EXTENT_DATA_INLINE; | ||
513 | 515 | ||
514 | return fiemap_fill_next_extent(fi, iomap->offset, | 516 | return fiemap_fill_next_extent(fi, iomap->offset, |
515 | iomap->addr != IOMAP_NULL_ADDR ? iomap->addr : 0, | 517 | iomap->addr != IOMAP_NULL_ADDR ? iomap->addr : 0, |
diff --git a/include/linux/iomap.h b/include/linux/iomap.h index 7b8a615fa021..2b0790dbd6ea 100644 --- a/include/linux/iomap.h +++ b/include/linux/iomap.h | |||
@@ -26,8 +26,9 @@ struct vm_fault; | |||
26 | /* | 26 | /* |
27 | * Flags that only need to be reported for IOMAP_REPORT requests: | 27 | * Flags that only need to be reported for IOMAP_REPORT requests: |
28 | */ | 28 | */ |
29 | #define IOMAP_F_MERGED 0x10 /* contains multiple blocks/extents */ | 29 | #define IOMAP_F_MERGED 0x10 /* contains multiple blocks/extents */ |
30 | #define IOMAP_F_SHARED 0x20 /* block shared with another file */ | 30 | #define IOMAP_F_SHARED 0x20 /* block shared with another file */ |
31 | #define IOMAP_F_DATA_INLINE 0x40 /* data inline in the inode */ | ||
31 | 32 | ||
32 | /* | 33 | /* |
33 | * Magic value for addr: | 34 | * Magic value for addr: |