[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZFqSwegsnsqi3vAu@mit.edu>
Date: Tue, 9 May 2023 14:36:49 -0400
From: "Theodore Ts'o" <tytso@....edu>
To: Eric Biggers <ebiggers@...nel.org>
Cc: youling257 <youling257@...il.com>, jack@...e.cz, hch@...radead.org,
hch@....de, linux-ext4@...r.kernel.org, ritesh.list@...il.com,
keescook@...omium.org
Subject: Re: [PATCH v4 12/13] ext4: Stop providing .writepage hook
On Mon, May 08, 2023 at 10:02:27PM -0700, Eric Biggers wrote:
> On Tue, May 09, 2023 at 01:51:08AM +0800, youling257 wrote:
> > I using linux mainline kernel on android. https://github.com/youling257/android-mainline/commits/6.4 https://github.com/youling257/android-mainline/commits/6.3
> > "ext4: Stop providing .writepage hook" cause some android app unable to read storage/emulated/0 files, i need to say android esdfs file system storage/emulated is ext4 data/media bind mount.
> > I want to ask, why android storage/emulated need .writepage hook?
>
> "esdfs" doesn't exist upstream, so linux-ext4 can't provide support for it.
>
> Also, it doesn't exist in the Android Common Kernels either, so the Android team
> cannot help you either.
The problem with esdfs is that it's based on the old stackable file
system paradigm which is filled with races and is inherently
unreliable (just for fun, try running fsstress on the upper and lower
file systems of a stackable file system simultaneously, and watch the
kernel crash and burn). For that reason, some number of us have been
working for a while to eliminate the need for stacking file systems,
such as sdcardfs. esdfs, etc. from the Android kernel.
The other thing I would add is that upstream has been working[1] on
getting rid of writepage function. So out-of-tree file systems are
going to need to adapt --- or die.
[1] https://lore.kernel.org/all/20221202102644.770505-1-hch@lst.de/
It looks like esdfs is coming from the Chromium kernel? The latest
Chromium kernel I can find is 5.15 based, and it has esdfs in it. I'm
sad to see that esdfs hasn't been removed from the Chromium kernel
yet, and replaced with something more stable and reliable, but maybe
we can find someone who is more familiar with the Chromium kernel to
comment.
Cheers,
- Ted
Powered by blists - more mailing lists