diff options
author | Dan Williams <dan.j.williams@intel.com> | 2018-02-04 10:34:02 -0800 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2018-03-02 18:00:04 -0800 |
commit | 94db151dc89262bfa82922c44e8320cea2334667 (patch) | |
tree | e7127df00533f4fcead7c879e897fba33838740e /drivers/nvdimm | |
parent | 230f5a8969d8345fc9bbe3683f068246cf1be4b8 (diff) | |
download | op-kernel-dev-94db151dc89262bfa82922c44e8320cea2334667.zip op-kernel-dev-94db151dc89262bfa82922c44e8320cea2334667.tar.gz |
vfio: disable filesystem-dax page pinning
Filesystem-DAX is incompatible with 'longterm' page pinning. Without
page cache indirection a DAX mapping maps filesystem blocks directly.
This means that the filesystem must not modify a file's block map while
any page in a mapping is pinned. In order to prevent the situation of
userspace holding of filesystem operations indefinitely, disallow
'longterm' Filesystem-DAX mappings.
RDMA has the same conflict and the plan there is to add a 'with lease'
mechanism to allow the kernel to notify userspace that the mapping is
being torn down for block-map maintenance. Perhaps something similar can
be put in place for vfio.
Note that xfs and ext4 still report:
"DAX enabled. Warning: EXPERIMENTAL, use at your own risk"
...at mount time, and resolving the dax-dma-vs-truncate problem is one
of the last hurdles to remove that designation.
Acked-by: Alex Williamson <alex.williamson@redhat.com>
Cc: Michal Hocko <mhocko@suse.com>
Cc: kvm@vger.kernel.org
Cc: <stable@vger.kernel.org>
Reported-by: Haozhong Zhang <haozhong.zhang@intel.com>
Tested-by: Haozhong Zhang <haozhong.zhang@intel.com>
Fixes: d475c6346a38 ("dax,ext2: replace XIP read and write with DAX I/O")
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/nvdimm')
0 files changed, 0 insertions, 0 deletions