LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Chris Mason <clm@fb.com>
To: James Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Theodore Ts'o <tytso@mit.edu>,
	Johannes Weiner <hannes@cmpxchg.org>,
	"Kent Overstreet" <kent.overstreet@gmail.com>,
	Matthew Wilcox <willy@infradead.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	"linux-mm@kvack.org" <linux-mm@kvack.org>,
	linux-fsdevel <linux-fsdevel@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	"Darrick J. Wong" <djwong@kernel.org>,
	"Christoph Hellwig" <hch@infradead.org>,
	David Howells <dhowells@redhat.com>,
	"ksummit@lists.linux.dev" <ksummit@lists.linux.dev>
Subject: Re: [MAINTAINER SUMMIT] Folios as a potential Kernel/Maintainers Summit topic?
Date: Thu, 16 Sep 2021 16:46:25 +0000	[thread overview]
Message-ID: <E655F510-14EB-4F40-BCF8-C5266C07443F@fb.com> (raw)
In-Reply-To: <f066615c0e2c6fe990fa5c19dd1c17d649bcb03a.camel@HansenPartnership.com>


> On Sep 15, 2021, at 3:15 PM, James Bottomley <James.Bottomley@HansenPartnership.com> wrote:
> 
> On Wed, 2021-09-15 at 18:41 +0000, Chris Mason wrote:
>>> On Sep 15, 2021, at 2:20 PM, Theodore Ts'o <tytso@mit.edu> wrote:
>>> 
>>> On Wed, Sep 15, 2021 at 02:03:46PM -0400, James Bottomley wrote:
>>>> On Wed, 2021-09-15 at 13:42 -0400, Theodore Ts'o wrote:
>>>> [...]
>>>>> Would this be helpful?  (Or Linus could pull either the folio
>>>>> or pageset branch, and make this proposal obsolete, which would
>>>>> be great.  :-)
>>>> 
>>>> This is a technical rather than process issue isn't it?  You
>>>> don't have enough technical people at the Maintainer summit to
>>>> help meaningfully.  The ideal location, of course, was LSF/MM
>>>> which is now not happening.
>>>> 
>>>> However, we did offer the Plumbers BBB infrastructure to willy
>>>> for a MM gathering which could be expanded to include this.
>>> 
>>> Well, that's why I was suggesting doing this as a LPC BOF, and
>>> using an LPC BOF session on Friday --- I'm very much aware we don't
>>> have the right tehcnical people at the Maintainer Summit.
>>> 
>>> It's not clear we will have enough MM folks at the LPC, and I agree
>>> LSF/MM would be a better venue --- but as you say, it's not
>>> happening. We could also use the BBB infrastructure after the LPC
>>> as well, if we can't get everyone lined up and available on short
>>> notice.  There are a lot of different possibilities; I'm for
>>> anything where all of the stakeholders agree will work, so we can
>>> make forward progress.
>> 
>> I think the two different questions are:
>> 
>> * What work is left for merging folios?
> 
> My reading of the email threads is that they're iterating to an actual
> conclusion (I admit, I'm surprised) ... or at least the disagreements
> are getting less.  Since the merge window closed this is now a 5.16
> thing, so there's no huge urgency to getting it resolved next week.
> 

I think the urgency is mostly around clarity for others with out of tree work, or who are depending on folios in some other way.  Setting up a clear set of conditions for the path forward should also be part of saying not-yet to merging them.

>> * What process should we use to make the overall development of folio
>> sized changes more predictable and rewarding for everyone involved?
> 
> Well, the current one seems to be working (admittedly eventually, so
> achieving faster resolution next time might be good) ... but I'm sure
> you could propose alternatives ... especially in the time to resolution
> department.

It feels like these patches are moving forward, but with a pretty heavy emotional cost for the people involved.  I'll definitely agree this has been our process for a long time, but I'm struggling to understand why we'd call it working.

In general, we've all come to terms with huge changes being a slog through  consensus building, design compromise, the actual technical work, and the rebase/test/fix iteration cycle.  It's stressful, both because of technical difficulty and because the whole process is filled with uncertainty.

With folios, we don't have general consensus on:

* Which problems are being solved?  Kent's writeup makes it pretty clear filesystems and memory management developers have diverging opinions on this.  Our process in general is to put this into patch 0.  It mostly works, but there's an intermediate step between patch 0 and the full lwn article that would be really nice to have.

* Who is responsible for accepting the design, and which acks must be obtained before it goes upstream?  Our process here is pretty similar to waiting for answers to messages in bottles.  We consistently leave it implicit and poorly defined.

* What work is left before it can go upstream?  Our process could be effectively modeled by postit notes on one person's monitor, which they may or may not share with the group.  Also, since we don't have agreement on which acks are required, there's no way to have any certainty about what work is left.  It leaves authors feeling derailed when discussion shifts and reviewers feeling frustrated and ignored.

* How do we divide up the long term future direction into individual steps that we can merge?  This also goes back to consensus on the design.  We can't decide which parts are going to get layered in future merge windows until we know if we're building a car or a banana stand.

* What tests will we use to validate it all?  Work this spread out is too big for one developer to test alone.  We need ways for people sign up and agree on which tests/benchmarks provide meaningful results.

The end result of all of this is that missing a merge window isn't just about a time delay.  You add N months of total uncertainty, where every new email could result in having to start over from scratch.  Willy's do-whatever-the-fuck-you-want-I'm-going-on-vacation email is probably the least surprising part of the whole thread.

Internally, we tend to use a simple shared document to nail all of this down.  A two page google doc for folios could probably have avoided a lot of pain here, especially if we’re able to agree on stakeholders.

-chris

  parent reply	other threads:[~2021-09-16 16:51 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-15 17:42 Theodore Ts'o
2021-09-15 18:03 ` James Bottomley
2021-09-15 18:20   ` Theodore Ts'o
2021-09-15 18:41     ` Chris Mason
2021-09-15 19:15       ` James Bottomley
2021-09-15 20:48         ` Theodore Ts'o
2021-09-16 14:55           ` Kent Overstreet
2021-09-16 13:51         ` David Howells
2021-09-16 16:46         ` Chris Mason [this message]
2021-09-16 17:11           ` James Bottomley
2021-09-16 19:15             ` Theodore Ts'o
2021-09-16 19:26               ` Andrew Morton
2021-09-16 20:16               ` Kent Overstreet
2021-09-17  1:42                 ` Theodore Ts'o
2021-09-17  4:58                   ` Kent Overstreet
2021-09-16 20:38             ` Chris Mason
2021-09-16 21:00               ` Konstantin Ryabitsev
2021-09-17 11:14                 ` James Bottomley
2021-09-17 12:36                   ` Konstantin Ryabitsev
2021-09-17 13:00                     ` James Bottomley
2021-09-17 14:36                       ` Chris Mason
2021-09-16 17:15           ` Kent Overstreet
2021-09-16 22:27             ` Chris Mason

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=E655F510-14EB-4F40-BCF8-C5266C07443F@fb.com \
    --to=clm@fb.com \
    --cc=James.Bottomley@HansenPartnership.com \
    --cc=akpm@linux-foundation.org \
    --cc=dhowells@redhat.com \
    --cc=djwong@kernel.org \
    --cc=hannes@cmpxchg.org \
    --cc=hch@infradead.org \
    --cc=kent.overstreet@gmail.com \
    --cc=ksummit@lists.linux.dev \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=torvalds@linux-foundation.org \
    --cc=tytso@mit.edu \
    --cc=willy@infradead.org \
    --subject='Re: [MAINTAINER SUMMIT] Folios as a potential Kernel/Maintainers Summit topic?' \
    /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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).