Re: [PATCH v2 2/5] ext4: call dax_get_unmapped_area() for DAX pmd mappings
From: Matthew Wilcox
Date: Wed Apr 13 2016 - 14:23:05 EST
On Wed, Apr 13, 2016 at 09:08:36AM -0600, Toshi Kani wrote:
> > Could you do something like:
> >
> > #ifdef CONFIG_FS_DAX
> > struct page *read_dax_sector(struct block_device *bdev, sector_t n);
> > +unsigned long dax_get_unmapped_area(struct file *filp, unsigned long
> > addr,
> > + unsigned long len, unsigned long pgoff, unsigned long
> > flags);
> > #else
> > static inline struct page *read_dax_sector(struct block_device *bdev,
> > sector_t n)
> > {
> > return ERR_PTR(-ENXIO);
> > }
> > +#define dax_get_unmapped_area NULL
> > #endif
> >
> > in patch 1/5. Then there's no need for the ifdefs in each filesystem.
>
> I thought about it, but I do not think we can use an inline function to an
> entry point.
That's not an inline function. It's just NULL. So after the preprocessor
is done with it, it just looks like:
.get_unmapped_area = NULL,
and it won't be called by get_unmapped_area().