[kata-dev] [Announce] virtio-fs released with Kata Containers support
Dr. David Alan Gilbert
dgilbert at redhat.com
Wed Jan 16 17:25:11 UTC 2019
* jiangyiwen (jiangyiwen at huawei.com) wrote:
> On 2019/1/10 23:57, Vivek Goyal wrote:
> > On Thu, Dec 27, 2018 at 10:57:21AM +0800, jiangyiwen wrote:
> >
> > [..]
> >> what do I mean by "I filter O_DIRECT flag in libfuse-daemon"?
> >>
> >> I modify passthrough_ll.c code and ignore O_DIRECT flag when opening file,
> >> then it return success. The codes as follows:
> >> diff --git a/example/passthrough_ll.c b/example/passthrough_ll.c
> >> index 3e37dbd..9edb5bb 100644
> >> --- a/example/passthrough_ll.c
> >> +++ b/example/passthrough_ll.c
> >> @@ -1234,7 +1234,7 @@ static void lo_open(fuse_req_t req, fuse_ino_t ino, struct fuse_file_info *fi)
> >> fi->flags &= ~O_APPEND;
> >>
> >> sprintf(buf, "/proc/self/fd/%i", lo_fd(req, ino));
> >> - fd = open(buf, fi->flags & ~O_NOFOLLOW);
> >> + fd = open(buf, fi->flags & ~(O_NOFOLLOW | O_DIRECT));
> >> if (fd == -1)
> >> return (void) fuse_reply_err(req, errno);
> >
> > Hi Yiwen,
> >
> > Ok, this issue is now fixed. We still do not ignore O_DIRECT flag on host.
> > I think if file is opened with O_DIRECT in guest, then it makes sense to
> > open with O_DIRECT on host as well.
> >
> > We were getting -EINVAL (-22) due to misaligned buffers. We were creating
> > extra data copy in libfuse daemon and that copy created misalignment.
> >
> > David Gilbert has now fixed it. He has got rid of that extra copy and
> > that means if guest hands over aligned buffers, I/O should succeed. This
> > should also result in some speed up on write path as one extra copy has
> > been avoided.
> >
> > These fixes are still internal. David might push these externally soon.
> >
> > Thanks
> > Vivek
> >
> > .
> >
>
> Hi Vivek,
>
> Great, I am glad to test it if this patch is pushed.
Hi Yiwen,
That's now pushed to the 'dev' branch, here:
https://gitlab.com/virtio-fs/libfuse/commits/dev
it's only lightly tested and has a few rough edges, but seems to work!
Dave
> Thanks,
> Yiwen.
>
--
Dr. David Alan Gilbert / dgilbert at redhat.com / Manchester, UK
More information about the kata-dev
mailing list