diff options
author | NeilBrown <neilb@suse.com> | 2016-05-11 11:58:47 +0200 |
---|---|---|
committer | Vishal Verma <vishal.l.verma@intel.com> | 2016-05-17 02:11:51 +0200 |
commit | e4b2749158631e6d74bf14d2ef3804d780e2f770 (patch) | |
tree | a2d9e143be1ea66694cc52c8b5e205d95adb7c55 /fs | |
parent | ext4: pre-zero allocated blocks for DAX IO (diff) | |
download | linux-e4b2749158631e6d74bf14d2ef3804d780e2f770.tar.xz linux-e4b2749158631e6d74bf14d2ef3804d780e2f770.zip |
DAX: move RADIX_DAX_ definitions to dax.c
These don't belong in radix-tree.c any more than PAGECACHE_TAG_* do.
Let's try to maintain the idea that radix-tree simply implements an
abstract data type.
Acked-by: Ross Zwisler <ross.zwisler@linux.intel.com>
Reviewed-by: Matthew Wilcox <willy@linux.intel.com>
Signed-off-by: NeilBrown <neilb@suse.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Vishal Verma <vishal.l.verma@intel.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/dax.c | 9 |
1 files changed, 9 insertions, 0 deletions
@@ -32,6 +32,15 @@ #include <linux/pfn_t.h> #include <linux/sizes.h> +#define RADIX_DAX_MASK 0xf +#define RADIX_DAX_SHIFT 4 +#define RADIX_DAX_PTE (0x4 | RADIX_TREE_EXCEPTIONAL_ENTRY) +#define RADIX_DAX_PMD (0x8 | RADIX_TREE_EXCEPTIONAL_ENTRY) +#define RADIX_DAX_TYPE(entry) ((unsigned long)entry & RADIX_DAX_MASK) +#define RADIX_DAX_SECTOR(entry) (((unsigned long)entry >> RADIX_DAX_SHIFT)) +#define RADIX_DAX_ENTRY(sector, pmd) ((void *)((unsigned long)sector << \ + RADIX_DAX_SHIFT | (pmd ? RADIX_DAX_PMD : RADIX_DAX_PTE))) + static long dax_map_atomic(struct block_device *bdev, struct blk_dax_ctl *dax) { struct request_queue *q = bdev->bd_queue; |