• Dan Williams's avatar
    dax, pmem: introduce an optional 'flush' dax_operation · 3c1cebff
    Dan Williams authored
    Filesystem-DAX flushes caches whenever it writes to the address returned
    through dax_direct_access() and when writing back dirty radix entries.
    That flushing is only required in the pmem case, so add a dax operation
    to allow pmem to take this extra action, but skip it for other dax
    capable devices that do not provide a flush routine.
    
    An example for this differentiation might be a volatile ram disk where
    there is no expectation of persistence. In fact the pmem driver itself might
    front such an address range specified by the NFIT. So, this "no flush"
    property might be something passed down by the bus / libnvdimm.
    
    Cc: Christoph Hellwig <hch@lst.de>
    Cc: Matthew Wilcox <mawilcox@microsoft.com>
    Cc: Ross Zwisler <ross.zwisler@linux.intel.com>
    Reviewed-by: default avatarJan Kara <jack@suse.cz>
    Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
    3c1cebff
pmem.c 12.9 KB