Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9ff2dc56 authored by Stephen Bates's avatar Stephen Bates Committed by Jonathan Corbet
Browse files

dax : Fix documentation with respect to struct pages



The documentation for dax is not up to date with respect to the struct
page support available in some of the device drivers that utilize
it.

Signed-off-by: default avatarStephen Bates <sbates@raithlin.com>
Acked-by: default avatarRoss Zwisler <ross.zwisler@linux.intel.com>
Signed-off-by: default avatarJonathan Corbet <corbet@lwn.net>
parent 964cce16
Loading
Loading
Loading
Loading
+9 −6
Original line number Original line Diff line number Diff line
@@ -123,9 +123,12 @@ The DAX code does not work correctly on architectures which have virtually
mapped caches such as ARM, MIPS and SPARC.
mapped caches such as ARM, MIPS and SPARC.


Calling get_user_pages() on a range of user memory that has been mmaped
Calling get_user_pages() on a range of user memory that has been mmaped
from a DAX file will fail as there are no 'struct page' to describe
from a DAX file will fail when there are no 'struct page' to describe
those pages.  This problem is being worked on.  That means that O_DIRECT
those pages.  This problem has been addressed in some device drivers
reads/writes to those memory ranges from a non-DAX file will fail (note
by adding optional struct page support for pages under the control of
that O_DIRECT reads/writes _of a DAX file_ do work, it is the memory
the driver (see CONFIG_NVDIMM_PFN in drivers/nvdimm for an example of
that is being accessed that is key here).  Other things that will not
how to do this). In the non struct page cases O_DIRECT reads/writes to
work include RDMA, sendfile() and splice().
those memory ranges from a non-DAX file will fail (note that O_DIRECT
reads/writes _of a DAX file_ do work, it is the memory that is being
accessed that is key here).  Other things that will not work in the
non struct page case include RDMA, sendfile() and splice().