Re: Re: Re: Re: [PATCH v5 1/3] fuse: add compound command to combine multiple requests

From: Horst Birthelmer

Date: Tue Feb 17 2026 - 02:26:23 EST


On Mon, Feb 16, 2026 at 04:22:13PM +0100, Miklos Szeredi wrote:
> On Mon, 16 Feb 2026 at 12:43, Miklos Szeredi <miklos@xxxxxxxxxx> wrote:
> >
> > On Sat, 14 Feb 2026 at 18:51, Horst Birthelmer <horst@xxxxxxxxxxxxx> wrote:
> >
> > > Which part would process those interdependencies?
>
> Another interesting question is which entity is responsible for
> undoing a partial success?
>
> E.g. if in a compound mknod succeeds while statx fails, then the
> creation needs to be undone. Since this sort of partial failure
> should be rare, my feeling is that this should be done by the kernel
> to avoid adding complexity to all layers.
>
> This could be a problem in a distributed fs, where the ephemeral
> object might cause side effects. So in these cases the server needs
> to deal with partial failures for maximum correctness.

I completely agree, that the kernel has to handle this.
And I think that the implementation of the particular compound
(like the function fuse_open_and_getattr() in the current example
has to deal with this)
These are the cases where we cannot have an automatic decoding deal
with the error since we don't have the information and data of the
actual semantics.

>
> Thanks,
> Miklos
>