* [to-be-updated] dax-disable-filesystem-dax-on-devices-that-do-not-map-pages.patch removed from -mm tree
@ 2017-10-04 21:56 akpm
0 siblings, 0 replies; only message in thread
From: akpm @ 2017-10-04 21:56 UTC (permalink / raw)
To: dan.j.williams, hch, jack, jmoyer, kirill.shutemov, mhocko,
ross.zwisler, mm-commits
The patch titled
Subject: dax: disable filesystem dax on devices that do not map pages
has been removed from the -mm tree. Its filename was
dax-disable-filesystem-dax-on-devices-that-do-not-map-pages.patch
This patch was dropped because an updated version will be merged
------------------------------------------------------
From: Dan Williams <dan.j.williams@intel.com>
Subject: dax: disable filesystem dax on devices that do not map pages
If a dax buffer from a device that does not map pages is passed to read(2)
or write(2) as a target for direct-I/O it triggers SIGBUS. If gdb
attempts to examine the contents of a dax buffer from a device that does
not map pages it triggers SIGBUS. If fork(2) is called on a process with
a dax mapping from a device that does not map pages it triggers SIGBUS.
'struct page' is required otherwise several kernel code paths break in
surprising ways. Disable filesystem-dax on devices that do not map pages.
Link: http://lkml.kernel.org/r/150664807247.36094.11168730579639072446.stgit@dwillia2-desk3.amr.corp.intel.com
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Cc: Jan Kara <jack@suse.cz>
Cc: Jeff Moyer <jmoyer@redhat.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Ross Zwisler <ross.zwisler@linux.intel.com>
Cc: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>
Cc: Michal Hocko <mhocko@suse.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---
drivers/dax/super.c | 7 +++++++
1 file changed, 7 insertions(+)
diff -puN drivers/dax/super.c~dax-disable-filesystem-dax-on-devices-that-do-not-map-pages drivers/dax/super.c
--- a/drivers/dax/super.c~dax-disable-filesystem-dax-on-devices-that-do-not-map-pages
+++ a/drivers/dax/super.c
@@ -15,6 +15,7 @@
#include <linux/mount.h>
#include <linux/magic.h>
#include <linux/genhd.h>
+#include <linux/pfn_t.h>
#include <linux/cdev.h>
#include <linux/hash.h>
#include <linux/slab.h>
@@ -123,6 +124,12 @@ int __bdev_dax_supported(struct super_bl
return len < 0 ? len : -EIO;
}
+ if (!pfn_t_has_page(pfn)) {
+ pr_debug("VFS (%s): error: dax support not enabled\n",
+ sb->s_id);
+ return -EOPNOTSUPP;
+ }
+
return 0;
}
EXPORT_SYMBOL_GPL(__bdev_dax_supported);
_
Patches currently in -mm which might be from dan.j.williams@intel.com are
dax-stop-using-vm_mixedmap-for-dax.patch
dax-stop-using-vm_hugepage-for-dax.patch
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2017-10-04 21:56 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-10-04 21:56 [to-be-updated] dax-disable-filesystem-dax-on-devices-that-do-not-map-pages.patch removed from -mm tree akpm
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).