public inbox for linux-ext4@vger.kernel.org
 help / color / mirror / Atom feed
From: Dave Dykstra <dwd@cern.ch>
To: "Darrick J. Wong" <djwong@kernel.org>
Cc: linux-ext4@vger.kernel.org
Subject: Re: [PATCH] fuse2fs: updates for message reporting journal is not supported
Date: Tue, 21 Oct 2025 17:33:35 -0500	[thread overview]
Message-ID: <aPgKP-wUhhfwqKke@cern.ch> (raw)
In-Reply-To: <20251017232521.GI6170@frogsfrogsfrogs>

On Fri, Oct 17, 2025 at 04:25:21PM -0700, Darrick J. Wong wrote:
> On Fri, Oct 17, 2025 at 03:09:57PM -0500, Dave Dykstra wrote:
> > On Fri, Oct 17, 2025 at 12:18:00PM -0700, Darrick J. Wong wrote:
...
> > > > -	if (global_fs->flags & EXT2_FLAG_RW) {
> > > > +	if (!fctx.ro) {
> > > 
> > > Again, rw != EXT2_FLAG_RW.
> > > 
> > > The ro and rw mount options specify if the filesystem mount is writable.
> > > You can mount a filesystem in multiple places, and some of the mounts
> > > can be ro and some can be rw.
> > > 
> > > EXT2_FLAG_RW specifies that the filesystem driver can write to the block
> > > device.  fuse2fs should warn about incomplete journal support any time
> > > the **filesystem** is writable, independent of the write state of the
> > > mount.
> > 
> > Are you saying that is indeed possible for a read-only mount to cause
> > file corruption or data loss if there's not a graceful unmount?  If so,
> 
> No, I'm saying that filesystem drivers can *themselves* write metadata
> to a filesystem mounted ro.  ro means that user programs can't write to
> the files under a particular mountpoint.  This has long been the case
> for the kernel implementations of ext*, XFS, btrfs, etc.

I understood that, but does the filesystem actually write metadata after
the journal is recovered, such that if the fuse2fs process dies without
a clean unmount there might be file corruption or data loss?  That is,
in the case of ro when there is write access, does the warning message
really apply?

> I've said this three times now, and this is the last time I'm going to
> say it.

I understood what you said but I'm asking about the implications.

...
> Are you running fstests QA on these patches before you send them out?

I had not heard of them, and do not see them documented anywhere in
e2fsprogs, so I don't know how I was supposed to have known they were
needed.  Ideally there would be an automated CI test suite.  The patches
have passed the github CI checks (which don't show up in the standard
pull request place, but I found them in my own repo's Actions tab).

Are you talking about the tests at https://github.com/btrfs/fstests?
If so, it looks like there are a ton of options.  Is there a standard
way to run them with fuse2fs?

Dave


  reply	other threads:[~2025-10-21 22:33 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-16 20:09 [PATCH] fuse2fs: updates for message reporting journal is not supported Dave Dykstra
2025-10-17 19:18 ` Darrick J. Wong
2025-10-17 20:09   ` Dave Dykstra
2025-10-17 23:25     ` Darrick J. Wong
2025-10-21 22:33       ` Dave Dykstra [this message]
2025-10-22  1:25         ` Darrick J. Wong
2025-10-22  1:36         ` Theodore Tso
2025-10-23  0:21           ` Darrick J. Wong

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=aPgKP-wUhhfwqKke@cern.ch \
    --to=dwd@cern.ch \
    --cc=djwong@kernel.org \
    --cc=linux-ext4@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox