From: Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>
To: Jan Kara <jack-AlSwsSmVLrQ@public.gmane.org>
Cc: Theodore Ts'o <tytso-3s7WtUTddSA@public.gmane.org>,
Andrew Morton
<akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>,
"Darrick J. Wong"
<darrick.wong-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>,
Dave Chinner <david-FqsqvQoI3Ljby3iVrkZq2A@public.gmane.org>,
Jonathan Corbet <corbet-T1hC0tSOHrs@public.gmane.org>,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Steven Rostedt <rostedt-nx8X9YLhiw1AfugRpC6u6w@public.gmane.org>,
linux-doc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-xfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org,
Ingo Molnar <mingo-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
Andreas Dilger
<adilger.kernel-m1MBpc4rdrD3fQ9qLvQP4Q@public.gmane.org>,
Alexander Viro
<viro-RmSDqhL/yNMiFSDQTTA3OLVCufUGDwFn@public.gmane.org>,
linux-fsdevel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
"Kirill A. Shutemov"
<kirill-oKw7cIdHH8eLwutG50LtGA@public.gmane.org>,
linux-ext4-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Christoph Hellwig <hch-jcswGhMUV9g@public.gmane.org>,
Matthew Wilcox <mawilcox-0li6OtcxBFHby3iVrkZq2A@public.gmane.org>,
linux-nvdimm-hn68Rpc1hR1g9hUCZPvPmw@public.gmane.org
Subject: Re: [PATCH v5 1/5] mm: add vm_insert_mixed_mkwrite()
Date: Tue, 25 Jul 2017 14:15:22 +0200 [thread overview]
Message-ID: <20170725121522.GA13457@lst.de> (raw)
In-Reply-To: <20170725093508.GA19943-4I4JzKEfoa/jFM9bn6wA6Q@public.gmane.org>
On Tue, Jul 25, 2017 at 11:35:08AM +0200, Jan Kara wrote:
> On Tue 25-07-17 10:01:58, Christoph Hellwig wrote:
> > On Tue, Jul 25, 2017 at 01:14:00AM +0300, Kirill A. Shutemov wrote:
> > > I guess it's up to filesystem if it wants to reuse the same spot to write
> > > data or not. I think your assumptions works for ext4 and xfs. I wouldn't
> > > be that sure for btrfs or other filesystems with CoW support.
> >
> > Or XFS with reflinks for that matter. Which currently can't be
> > combined with DAX, but I had a somewhat working version a few month
> > ago.
>
> But in cases like COW when the block mapping changes, the process
> must run unmap_mapping_range() before installing the new PTE so that all
> processes mapping this file offset actually refault and see the new
> mapping. So this would go through pte_none() case. Am I missing something?
Yes, for DAX COW mappings we'd probably need something like this, unlike
the pagecache COW handling for which only the underlying block change,
but not the page.
WARNING: multiple messages have this Message-ID (diff)
From: Christoph Hellwig <hch@lst.de>
To: Jan Kara <jack@suse.cz>
Cc: Theodore Ts'o <tytso@mit.edu>,
Andrew Morton <akpm@linux-foundation.org>,
"Darrick J. Wong" <darrick.wong@oracle.com>,
Dave Chinner <david@fromorbit.com>,
Jonathan Corbet <corbet@lwn.net>,
linux-kernel@vger.kernel.org,
Steven Rostedt <rostedt@goodmis.org>,
linux-doc@vger.kernel.org, linux-xfs@vger.kernel.org,
linux-mm@kvack.org, Ingo Molnar <mingo@redhat.com>,
Andreas Dilger <adilger.kernel@dilger.ca>,
Alexander Viro <viro@zeniv.linux.org.uk>,
linux-fsdevel@vger.kernel.org,
"Kirill A. Shutemov" <kirill@shutemov.name>,
linux-ext4@vger.kernel.org, Christoph Hellwig <hch@lst.de>,
Matthew Wilcox <mawilcox@microsoft.com>,
linux-nvdimm@lists.01.org
Subject: Re: [PATCH v5 1/5] mm: add vm_insert_mixed_mkwrite()
Date: Tue, 25 Jul 2017 14:15:22 +0200 [thread overview]
Message-ID: <20170725121522.GA13457@lst.de> (raw)
In-Reply-To: <20170725093508.GA19943@quack2.suse.cz>
On Tue, Jul 25, 2017 at 11:35:08AM +0200, Jan Kara wrote:
> On Tue 25-07-17 10:01:58, Christoph Hellwig wrote:
> > On Tue, Jul 25, 2017 at 01:14:00AM +0300, Kirill A. Shutemov wrote:
> > > I guess it's up to filesystem if it wants to reuse the same spot to write
> > > data or not. I think your assumptions works for ext4 and xfs. I wouldn't
> > > be that sure for btrfs or other filesystems with CoW support.
> >
> > Or XFS with reflinks for that matter. Which currently can't be
> > combined with DAX, but I had a somewhat working version a few month
> > ago.
>
> But in cases like COW when the block mapping changes, the process
> must run unmap_mapping_range() before installing the new PTE so that all
> processes mapping this file offset actually refault and see the new
> mapping. So this would go through pte_none() case. Am I missing something?
Yes, for DAX COW mappings we'd probably need something like this, unlike
the pagecache COW handling for which only the underlying block change,
but not the page.
_______________________________________________
Linux-nvdimm mailing list
Linux-nvdimm@lists.01.org
https://lists.01.org/mailman/listinfo/linux-nvdimm
WARNING: multiple messages have this Message-ID (diff)
From: Christoph Hellwig <hch@lst.de>
To: Jan Kara <jack@suse.cz>
Cc: Christoph Hellwig <hch@lst.de>,
"Kirill A. Shutemov" <kirill@shutemov.name>,
Ross Zwisler <ross.zwisler@linux.intel.com>,
Andrew Morton <akpm@linux-foundation.org>,
linux-kernel@vger.kernel.org,
"Darrick J. Wong" <darrick.wong@oracle.com>,
Theodore Ts'o <tytso@mit.edu>,
Alexander Viro <viro@zeniv.linux.org.uk>,
Andreas Dilger <adilger.kernel@dilger.ca>,
Dan Williams <dan.j.williams@intel.com>,
Dave Chinner <david@fromorbit.com>,
Ingo Molnar <mingo@redhat.com>, Jonathan Corbet <corbet@lwn.net>,
Matthew Wilcox <mawilcox@microsoft.com>,
Steven Rostedt <rostedt@goodmis.org>,
linux-doc@vger.kernel.org, linux-ext4@vger.kernel.org,
linux-fsdevel@vger.kernel.org, linux-mm@kvack.org,
linux-nvdimm@lists.01.org, linux-xfs@vger.kernel.org
Subject: Re: [PATCH v5 1/5] mm: add vm_insert_mixed_mkwrite()
Date: Tue, 25 Jul 2017 14:15:22 +0200 [thread overview]
Message-ID: <20170725121522.GA13457@lst.de> (raw)
In-Reply-To: <20170725093508.GA19943@quack2.suse.cz>
On Tue, Jul 25, 2017 at 11:35:08AM +0200, Jan Kara wrote:
> On Tue 25-07-17 10:01:58, Christoph Hellwig wrote:
> > On Tue, Jul 25, 2017 at 01:14:00AM +0300, Kirill A. Shutemov wrote:
> > > I guess it's up to filesystem if it wants to reuse the same spot to write
> > > data or not. I think your assumptions works for ext4 and xfs. I wouldn't
> > > be that sure for btrfs or other filesystems with CoW support.
> >
> > Or XFS with reflinks for that matter. Which currently can't be
> > combined with DAX, but I had a somewhat working version a few month
> > ago.
>
> But in cases like COW when the block mapping changes, the process
> must run unmap_mapping_range() before installing the new PTE so that all
> processes mapping this file offset actually refault and see the new
> mapping. So this would go through pte_none() case. Am I missing something?
Yes, for DAX COW mappings we'd probably need something like this, unlike
the pagecache COW handling for which only the underlying block change,
but not the page.
WARNING: multiple messages have this Message-ID (diff)
From: Christoph Hellwig <hch@lst.de>
To: Jan Kara <jack@suse.cz>
Cc: Christoph Hellwig <hch@lst.de>,
"Kirill A. Shutemov" <kirill@shutemov.name>,
Ross Zwisler <ross.zwisler@linux.intel.com>,
Andrew Morton <akpm@linux-foundation.org>,
linux-kernel@vger.kernel.org,
"Darrick J. Wong" <darrick.wong@oracle.com>,
Theodore Ts'o <tytso@mit.edu>,
Alexander Viro <viro@zeniv.linux.org.uk>,
Andreas Dilger <adilger.kernel@dilger.ca>,
Dan Williams <dan.j.williams@intel.com>,
Dave Chinner <david@fromorbit.com>,
Ingo Molnar <mingo@redhat.com>, Jonathan Corbet <corbet@lwn.net>,
Matthew Wilcox <mawilcox@microsoft.com>,
Steven Rostedt <rostedt@goodmis.org>,
linux-doc@vger.kernel.org, linux-ext4@vger.kernel.org,
linux-fsdevel@vger.kernel.org, linux-mm@kvack.org,
linux-nvdimm@lists.01.org, linux-xfs@vger.kernel.org
Subject: Re: [PATCH v5 1/5] mm: add vm_insert_mixed_mkwrite()
Date: Tue, 25 Jul 2017 14:15:22 +0200 [thread overview]
Message-ID: <20170725121522.GA13457@lst.de> (raw)
In-Reply-To: <20170725093508.GA19943@quack2.suse.cz>
On Tue, Jul 25, 2017 at 11:35:08AM +0200, Jan Kara wrote:
> On Tue 25-07-17 10:01:58, Christoph Hellwig wrote:
> > On Tue, Jul 25, 2017 at 01:14:00AM +0300, Kirill A. Shutemov wrote:
> > > I guess it's up to filesystem if it wants to reuse the same spot to write
> > > data or not. I think your assumptions works for ext4 and xfs. I wouldn't
> > > be that sure for btrfs or other filesystems with CoW support.
> >
> > Or XFS with reflinks for that matter. Which currently can't be
> > combined with DAX, but I had a somewhat working version a few month
> > ago.
>
> But in cases like COW when the block mapping changes, the process
> must run unmap_mapping_range() before installing the new PTE so that all
> processes mapping this file offset actually refault and see the new
> mapping. So this would go through pte_none() case. Am I missing something?
Yes, for DAX COW mappings we'd probably need something like this, unlike
the pagecache COW handling for which only the underlying block change,
but not the page.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2017-07-25 12:15 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-07-24 17:06 [PATCH v5 0/5] DAX common 4k zero page Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
[not found] ` <20170724170616.25810-1-ross.zwisler-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2017-07-24 17:06 ` [PATCH v5 1/5] mm: add vm_insert_mixed_mkwrite() Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
2017-07-24 22:14 ` Kirill A. Shutemov
2017-07-24 22:14 ` Kirill A. Shutemov
2017-07-24 22:14 ` Kirill A. Shutemov
2017-07-25 8:01 ` Christoph Hellwig
2017-07-25 8:01 ` Christoph Hellwig
2017-07-25 8:01 ` Christoph Hellwig
2017-07-25 9:35 ` Jan Kara
2017-07-25 9:35 ` Jan Kara
[not found] ` <20170725093508.GA19943-4I4JzKEfoa/jFM9bn6wA6Q@public.gmane.org>
2017-07-25 12:15 ` Christoph Hellwig [this message]
2017-07-25 12:15 ` Christoph Hellwig
2017-07-25 12:15 ` Christoph Hellwig
2017-07-25 12:15 ` Christoph Hellwig
[not found] ` <20170725121522.GA13457-jcswGhMUV9g@public.gmane.org>
2017-07-25 12:50 ` Jan Kara
2017-07-25 12:50 ` Jan Kara
2017-07-25 12:50 ` Jan Kara
2017-07-25 12:50 ` Jan Kara
2017-07-25 14:31 ` Kirill A. Shutemov
2017-07-25 14:31 ` Kirill A. Shutemov
2017-07-25 14:31 ` Kirill A. Shutemov
2017-07-24 17:06 ` [PATCH v5 2/5] dax: relocate some dax functions Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
2017-07-24 17:06 ` [PATCH v5 3/5] dax: use common 4k zero page for dax mmap reads Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
2017-07-24 17:06 ` [PATCH v5 5/5] dax: move all DAX radix tree defs to fs/dax.c Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
2017-07-24 17:06 ` [PATCH v5 4/5] dax: remove DAX code from page_cache_tree_insert() Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
2017-07-24 17:06 ` Ross Zwisler
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170725121522.GA13457@lst.de \
--to=hch-jcswghmuv9g@public.gmane.org \
--cc=adilger.kernel-m1MBpc4rdrD3fQ9qLvQP4Q@public.gmane.org \
--cc=akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org \
--cc=corbet-T1hC0tSOHrs@public.gmane.org \
--cc=darrick.wong-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org \
--cc=david-FqsqvQoI3Ljby3iVrkZq2A@public.gmane.org \
--cc=jack-AlSwsSmVLrQ@public.gmane.org \
--cc=kirill-oKw7cIdHH8eLwutG50LtGA@public.gmane.org \
--cc=linux-doc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-ext4-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-fsdevel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org \
--cc=linux-nvdimm-hn68Rpc1hR1g9hUCZPvPmw@public.gmane.org \
--cc=linux-xfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=mawilcox-0li6OtcxBFHby3iVrkZq2A@public.gmane.org \
--cc=mingo-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=rostedt-nx8X9YLhiw1AfugRpC6u6w@public.gmane.org \
--cc=tytso-3s7WtUTddSA@public.gmane.org \
--cc=viro-RmSDqhL/yNMiFSDQTTA3OLVCufUGDwFn@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.