[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJfpegv8X0PY7PvxEF=zEwRbdZ7yZZcwB80iDO+XLverognx+g@mail.gmail.com>
Date: Fri, 8 Mar 2024 08:52:44 +0100
From: Miklos Szeredi <miklos@...redi.hu>
To: David Howells <dhowells@...hat.com>
Cc: Matthew Wilcox <willy@...radead.org>, Trond Myklebust <trond.myklebust@...merspace.com>,
Christoph Hellwig <hch@....de>, Andrew Morton <akpm@...ux-foundation.org>,
Alexander Viro <viro@...iv.linux.org.uk>, Christian Brauner <brauner@...nel.org>,
Jeff Layton <jlayton@...nel.org>, linux-mm@...ck.org, linux-fsdevel@...r.kernel.org,
netfs@...ts.linux.dev, v9fs@...ts.linux.dev, linux-afs@...ts.infradead.org,
ceph-devel@...r.kernel.org, linux-cifs@...r.kernel.org,
linux-nfs@...r.kernel.org, devel@...ts.orangefs.org,
linux-kernel@...r.kernel.org
Subject: Re: [RFC PATCH] mm: Replace ->launder_folio() with flush and wait
On Thu, 7 Mar 2024 at 11:36, David Howells <dhowells@...hat.com> wrote:
> (2) invalidate_inode_pages2() is used in some places to effect invalidation
> of the pagecache in the case where the server tells us that a third party
> modified the server copy of a file. What the right behaviour should be
> here, I'm not sure, but at the moment, any dirty data will get laundered
> back to the server. Possibly it should be simply invalidated locally or
> the user asked how they want to handle the divergence.
Skipping ->launder_page will mean there's a window where the data
*will* be lost, AFAICS.
Of course concurrent cached writes on different hosts against the same
region (the size of which depends on how the caching is done) will
conflict.
But if concurrent writes are to different regions, then they shouldn't
be lost, no? Without the current ->launder_page thing I don't see how
that could be guaranteed.
Thanks,
Miklos
Powered by blists - more mailing lists