From: Dave Chinner <david@fromorbit.com> To: Dan Williams <dan.j.williams@intel.com> Cc: Ross Zwisler <ross.zwisler@linux.intel.com>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, Alexander Viro <viro@zeniv.linux.org.uk>, Matthew Wilcox <willy@linux.intel.com>, linux-fsdevel <linux-fsdevel@vger.kernel.org>, Andrew Morton <akpm@linux-foundation.org>, "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>, "linux-nvdimm@lists.01.org" <linux-nvdimm@lists.01.org>, Jan Kara <jack@suse.cz> Subject: Re: [PATCH] dax: fix deadlock in __dax_fault Date: Tue, 29 Sep 2015 07:35:48 +1000 [thread overview] Message-ID: <20150928213548.GX3902@dastard> (raw) In-Reply-To: <CAPcyv4jfT2fvYPGFBgxynNAvJ4KoKX=_TZbpB4ieTQV25mmFkQ@mail.gmail.com> On Mon, Sep 28, 2015 at 05:13:50AM -0700, Dan Williams wrote: > On Sun, Sep 27, 2015 at 5:59 PM, Dave Chinner <david@fromorbit.com> wrote: > > On Fri, Sep 25, 2015 at 09:17:45PM -0600, Ross Zwisler wrote: > >> On Fri, Sep 25, 2015 at 12:53:57PM +1000, Dave Chinner wrote: > [..] > >> Does this sound like a reasonable path forward for v4.3? Dave, and Jan, can > >> you guys can provide guidance and code reviews for the XFS and ext4 bits? > > > > IMO, it's way too much to get into 4.3. I'd much prefer we revert > > the bad changes in 4.3, and then work towards fixing this for the > > 4.4 merge window. If someone needs this for 4.3, then they can > > backport the 4.4 code to 4.3-stable. > > > > If the proposal is to step back and get a running start at these fixes > for 4.4, then it is worth considering what the state of allocating > pages for DAX mappings will be in 4.4. Oh, do tell. I haven't seen any published design, code, etc, and I certainly haven't planned any time in the 4.4 window to do a complete audit, rework and test of the XFS DAX code. So if you want a working DAX implementation in the short term, we need to fix what we have and not do wholesale changes to infrastructure that put us back to square 1. And, quite frankly, I'm not enabling any new DAX behaviour/subsystem in XFS until I've had time to review, test and fix it so it works without deadlocking or corrupting data. > It's already that case that > allocating struct page for DAX mappings is the only solution on the > horizon for enabling a get_user_pages() solution for persistent > memory. We of course need to get the page-less DAX path fixed up, but > the near-term path to full functionality and safety is when struct > page is available to enable the typical synchronization mechanics. And we do so at the expense of medium to long term complexity and maintenance. I'm no fan of using struct pages to track terabytes to petabytes of persistent memory, and I'm even less of a fan of having to simultaneously support both struct page and pfn based DAX subsystems... > That said, it's not clear that saves us any work given the axonram and > dcssblk DAX drivers do not currently allocate struct page, and pmem > optionally allocates struct page. Precisely my point. Cheers, Dave. -- Dave Chinner david@fromorbit.com
WARNING: multiple messages have this Message-ID (diff)
From: Dave Chinner <david@fromorbit.com> To: Dan Williams <dan.j.williams@intel.com> Cc: Ross Zwisler <ross.zwisler@linux.intel.com>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, Alexander Viro <viro@zeniv.linux.org.uk>, Matthew Wilcox <willy@linux.intel.com>, linux-fsdevel <linux-fsdevel@vger.kernel.org>, Andrew Morton <akpm@linux-foundation.org>, "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>, "linux-nvdimm@lists.01.org" <linux-nvdimm@ml01.01.org>, Jan Kara <jack@suse.cz> Subject: Re: [PATCH] dax: fix deadlock in __dax_fault Date: Tue, 29 Sep 2015 07:35:48 +1000 [thread overview] Message-ID: <20150928213548.GX3902@dastard> (raw) In-Reply-To: <CAPcyv4jfT2fvYPGFBgxynNAvJ4KoKX=_TZbpB4ieTQV25mmFkQ@mail.gmail.com> On Mon, Sep 28, 2015 at 05:13:50AM -0700, Dan Williams wrote: > On Sun, Sep 27, 2015 at 5:59 PM, Dave Chinner <david@fromorbit.com> wrote: > > On Fri, Sep 25, 2015 at 09:17:45PM -0600, Ross Zwisler wrote: > >> On Fri, Sep 25, 2015 at 12:53:57PM +1000, Dave Chinner wrote: > [..] > >> Does this sound like a reasonable path forward for v4.3? Dave, and Jan, can > >> you guys can provide guidance and code reviews for the XFS and ext4 bits? > > > > IMO, it's way too much to get into 4.3. I'd much prefer we revert > > the bad changes in 4.3, and then work towards fixing this for the > > 4.4 merge window. If someone needs this for 4.3, then they can > > backport the 4.4 code to 4.3-stable. > > > > If the proposal is to step back and get a running start at these fixes > for 4.4, then it is worth considering what the state of allocating > pages for DAX mappings will be in 4.4. Oh, do tell. I haven't seen any published design, code, etc, and I certainly haven't planned any time in the 4.4 window to do a complete audit, rework and test of the XFS DAX code. So if you want a working DAX implementation in the short term, we need to fix what we have and not do wholesale changes to infrastructure that put us back to square 1. And, quite frankly, I'm not enabling any new DAX behaviour/subsystem in XFS until I've had time to review, test and fix it so it works without deadlocking or corrupting data. > It's already that case that > allocating struct page for DAX mappings is the only solution on the > horizon for enabling a get_user_pages() solution for persistent > memory. We of course need to get the page-less DAX path fixed up, but > the near-term path to full functionality and safety is when struct > page is available to enable the typical synchronization mechanics. And we do so at the expense of medium to long term complexity and maintenance. I'm no fan of using struct pages to track terabytes to petabytes of persistent memory, and I'm even less of a fan of having to simultaneously support both struct page and pfn based DAX subsystems... > That said, it's not clear that saves us any work given the axonram and > dcssblk DAX drivers do not currently allocate struct page, and pmem > optionally allocates struct page. Precisely my point. Cheers, Dave. -- Dave Chinner david@fromorbit.com
next prev parent reply other threads:[~2015-09-28 21:35 UTC|newest] Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top 2015-09-23 20:40 [PATCH] dax: fix deadlock in __dax_fault Ross Zwisler 2015-09-23 20:40 ` Ross Zwisler 2015-09-24 2:52 ` Dave Chinner 2015-09-24 2:52 ` Dave Chinner 2015-09-24 9:03 ` Boaz Harrosh 2015-09-24 9:03 ` Boaz Harrosh 2015-09-24 15:50 ` Ross Zwisler 2015-09-24 15:50 ` Ross Zwisler 2015-09-25 2:53 ` Dave Chinner 2015-09-25 2:53 ` Dave Chinner 2015-09-25 18:23 ` Ross Zwisler 2015-09-25 18:23 ` Ross Zwisler 2015-09-25 23:30 ` Dave Chinner 2015-09-25 23:30 ` Dave Chinner 2015-09-26 3:17 ` Ross Zwisler 2015-09-26 3:17 ` Ross Zwisler 2015-09-28 0:59 ` Dave Chinner 2015-09-28 0:59 ` Dave Chinner 2015-09-28 10:12 ` Dave Chinner 2015-09-28 10:12 ` Dave Chinner 2015-09-28 10:23 ` kbuild test robot 2015-09-28 10:23 ` kbuild test robot 2015-09-28 10:23 ` kbuild test robot 2015-09-28 10:23 ` kbuild test robot 2015-09-28 12:13 ` Dan Williams 2015-09-28 12:13 ` Dan Williams 2015-09-28 21:35 ` Dave Chinner [this message] 2015-09-28 21:35 ` Dave Chinner 2015-09-28 22:57 ` Dan Williams 2015-09-28 22:57 ` Dan Williams 2015-09-29 2:18 ` Dave Chinner 2015-09-29 2:18 ` Dave Chinner 2015-09-29 3:08 ` Dan Williams 2015-09-29 3:08 ` Dan Williams 2015-09-29 4:19 ` Dave Chinner 2015-09-29 4:19 ` Dave Chinner 2015-09-28 22:40 ` Ross Zwisler 2015-09-28 22:40 ` Ross Zwisler 2015-09-29 2:44 ` Dave Chinner 2015-09-29 2:44 ` Dave Chinner 2015-09-30 1:57 ` Dave Chinner 2015-09-30 1:57 ` Dave Chinner 2015-09-30 2:04 ` Ross Zwisler 2015-09-30 2:04 ` Ross Zwisler 2015-09-30 2:04 ` Ross Zwisler 2015-09-30 3:22 ` Dave Chinner 2015-09-30 3:22 ` Dave Chinner 2015-10-02 12:55 ` Jan Kara 2015-10-02 12:55 ` Jan Kara
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=20150928213548.GX3902@dastard \ --to=david@fromorbit.com \ --cc=akpm@linux-foundation.org \ --cc=dan.j.williams@intel.com \ --cc=jack@suse.cz \ --cc=kirill.shutemov@linux.intel.com \ --cc=linux-fsdevel@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-nvdimm@lists.01.org \ --cc=ross.zwisler@linux.intel.com \ --cc=viro@zeniv.linux.org.uk \ --cc=willy@linux.intel.com \ /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: linkBe 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.