Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754177AbbDMNgl (ORCPT ); Mon, 13 Apr 2015 09:36:41 -0400 Received: from mail-wg0-f48.google.com ([74.125.82.48]:36095 "EHLO mail-wg0-f48.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754149AbbDMNgg (ORCPT ); Mon, 13 Apr 2015 09:36:36 -0400 Message-ID: <552BC660.4000202@plexistor.com> Date: Mon, 13 Apr 2015 16:36:32 +0300 From: Boaz Harrosh User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.5.0 MIME-Version: 1.0 To: Ingo Molnar CC: Christoph Hellwig , Linus Torvalds , linux-kernel@vger.kernel.org, linux-nvdimm@ml01.01.org, Ross Zwisler , Dan Williams , Matthew Wilcox Subject: Re: [GIT PULL] PMEM driver for v4.1 References: <20150413093309.GA30219@gmail.com> <20150413093541.GA5147@lst.de> <20150413104531.GB30556@gmail.com> <552BB4CA.6060808@plexistor.com> <20150413123535.GA2666@gmail.com> In-Reply-To: <20150413123535.GA2666@gmail.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1644 Lines: 53 On 04/13/2015 03:35 PM, Ingo Molnar wrote: > <> > > How does splice work with DAX files? AFAICS vmsplice() won't work, as > it uses get_user_pages(), which needs struct page backing. Also, how > will f_op->sendpage() work? That too needs page backing. > I'm not sure about f_op->sendpage(). I do not see it in ext4 so I assumed it works through f_op->splice_read/write. The way f_op->splice_XX works is through the read/write_iter system and this one is fully supported with DAX. It will do an extra copy. [You can see this patch in linux-next: 8b22559 dax: unify ext2/4_{dax,}_file_operations that explains a bit about this issue ] >>> - zero copy O_DIRECT into DAX areas. >> >> DAX is always O_DIRECT. >> >> What does not work is mmap of DAX file and use that pointer in an >> O_DIRECT operation of another device. (unless it is a DAX device) > > That is what I meant: O_DIRECT into (or from) DAX mmap()-ed areas, > from a different device. > Yes. For me the one missing the most is RDMA to/from pmem copy-less. Is why I'm pushing for my page-struct patches. But so far people rejected it. I hope to resend it soon, once the dust settles and see if people might change their mind. > I'm not promoting the use of these APIs, some of them are quirky, just > wanted to list the known limitations. The pmem driver is already > useful as-is. > > Thanks, > Ingo > Thanks Boaz -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/