From patchwork Mon Sep 26 01:18:37 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Bates X-Patchwork-Id: 9350101 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 21CB8607F0 for ; Mon, 26 Sep 2016 01:41:47 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 0A1F228D03 for ; Mon, 26 Sep 2016 01:41:47 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id F2D6928D0B; Mon, 26 Sep 2016 01:41:46 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=2.0 tests=BAYES_00,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 753E728D03 for ; Mon, 26 Sep 2016 01:41:46 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S941325AbcIZBlo (ORCPT ); Sun, 25 Sep 2016 21:41:44 -0400 Received: from gateway20.websitewelcome.com ([192.185.59.4]:34418 "EHLO gateway20.websitewelcome.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S936362AbcIZBlo (ORCPT ); Sun, 25 Sep 2016 21:41:44 -0400 X-Greylist: delayed 1378 seconds by postgrey-1.27 at vger.kernel.org; Sun, 25 Sep 2016 21:41:44 EDT Received: from cm4.websitewelcome.com (unknown [108.167.139.16]) by gateway20.websitewelcome.com (Postfix) with ESMTP id 5B52A6EBF81A4 for ; Sun, 25 Sep 2016 20:18:42 -0500 (CDT) Received: from estate.websitewelcome.com ([192.185.83.90]) by cm4.websitewelcome.com with id o1Jh1t00N1wvuag011JiCY; Sun, 25 Sep 2016 20:18:42 -0500 Received: from lambic.deltatee.com ([207.54.116.65]:33376 helo=cgy1-donard.priv.deltatee.com) by estate.websitewelcome.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-SHA256:128) (Exim 4.86_1) (envelope-from ) id 1boKZ7-0006dH-21; Sun, 25 Sep 2016 20:18:41 -0500 From: Stephen Bates To: linux-doc@vger.kernel.org, ross.zwisler@linux.intel.com, corbet@lwn.net, linux-fsdevel@vger.kernel.org Cc: Stephen Bates Subject: [PATCH] dax : Fix documentation with respect to struct pages Date: Sun, 25 Sep 2016 19:18:37 -0600 Message-Id: <1474852717-2161-1-git-send-email-sbates@raithlin.com> X-Mailer: git-send-email 2.1.4 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - estate.websitewelcome.com X-AntiAbuse: Original Domain - vger.kernel.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - raithlin.com X-BWhitelist: no X-Source-IP: 207.54.116.65 X-Exim-ID: 1boKZ7-0006dH-21 X-Source: X-Source-Args: X-Source-Dir: X-Source-Sender: lambic.deltatee.com (cgy1-donard.priv.deltatee.com) [207.54.116.65]:33376 X-Source-Auth: sbates@raithlin.com X-Email-Count: 5 X-Source-Cap: cmFpdGhsaW47c2NvdHQ7ZXN0YXRlLndlYnNpdGV3ZWxjb21lLmNvbQ== Sender: linux-fsdevel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-fsdevel@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP 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: Stephen Bates Acked-by: Ross Zwisler --- Documentation/filesystems/dax.txt | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/Documentation/filesystems/dax.txt b/Documentation/filesystems/dax.txt index 0c16a22..23d18b8 100644 --- a/Documentation/filesystems/dax.txt +++ b/Documentation/filesystems/dax.txt @@ -123,9 +123,12 @@ The DAX code does not work correctly on architectures which have virtually mapped caches such as ARM, MIPS and SPARC. 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 -those pages. This problem is being worked on. That means that O_DIRECT -reads/writes to 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 include RDMA, sendfile() and splice(). +from a DAX file will fail when there are no 'struct page' to describe +those pages. This problem has been addressed in some device drivers +by adding optional struct page support for pages under the control of +the driver (see CONFIG_NVDIMM_PFN in drivers/nvdimm for an example of +how to do this). In the non struct page cases O_DIRECT reads/writes to +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().