On Thu, Jul 17, 2025 at 4:23 AM hanqi <hanqi@xxxxxxxx> wrote: > > > > 在 2025/7/16 20:14, Amir Goldstein 写道: > > On Wed, Jul 16, 2025 at 1:49 PM Qi Han <hanqi@xxxxxxxx> wrote: > >> Hi, Amir > > Hi Qi, > > > >> In the commit [1], performing read/write operations with DIRECT_IO on > >> a FUSE file path does not trigger FUSE passthrough. I am unclear about > >> the reason behind this behavior. Is it possible to modify the call > >> sequence to support passthrough for files opened with DIRECT_IO? > > Are you talking about files opened by user with O_DIRECT or > > files open by server with FOPEN_DIRECT_IO? > > > > Those are two different things. > > IIRC, O_DIRECT to a backing passthrough file should be possible. > > Hi, Amir > Thank you for your response. I am performing read/write operations on > a file under a FUSE path opened with O_DIRECT, using code similar to [1]. > However, it seems that the FUSE daemon adds FOPEN_DIRECT_IO, as Ed > mentioned. I need to further investigate the FUSE daemon code to confirm > the reason behind this behavior. > > [1] > fd_in = open(src_path, O_RDONLY | O_DIRECT); > fd_out = open(dst_path, O_WRONLY | O_CREAT | O_TRUNC | O_DIRECT, 0644); > Seems like the server should be fixed. Thanks, Amir.