Re: [REGRESSION] fuse: execve() fails with ETXTBSY due to async fuse_flush

From: Jürg Billeter
Date: Mon Aug 14 2023 - 08:39:42 EST


On Mon, 2023-08-14 at 14:28 +0200, Miklos Szeredi wrote:
> On Mon, 14 Aug 2023 at 14:07, Bernd Schubert
> > fuse: Avoid flush for O_RDONLY
> >
> > From: Bernd Schubert <bschubert@xxxxxxx>
> >
> > A file opened in read-only moded does not have data to be
> > flushed, so no need to send flush at all.
> >
> > This also mitigates -EBUSY for executables, which is due to
> > async flush with commit 5a8bee63b1.
>
> Does it?  If I read the bug report correctly, it's the write case that
> causes EBUSY.

Indeed, I see this when trying to execute a file after a process wrote
to (created) that file. As far as I can tell, `ETXTBSY` can't happen on
exec without the file being opened for writing and thus, I don't see
this patch mitigating this bug.

Jürg