On Sat, Aug 27, 2016 at 4:42 AM, Martin Natano <[email protected]> wrote: > In struct fusebuf the attributes (used for getattr/setattr and to return > the ino/mode of a newly created file) are stored in a struct vattr. The > problem with this is, that using struct vattr in userspace is suboptimal > as some related helpers are not available, e.g. VATTR_NULL() and IFTOVT(). > > What happens on getattr is this: fusefs requests the attributes for a > file from the userland process. libfuse calls the getattr fuse > operation, which fills in a struct stat. This struct is than converted > to a partial struct vattr, which is passed back to the kernel where > "fixup" takes place. > > Following diff simplifies that process by replacing the struct vattr in > fusebuf with a struct stat. The conversion is moved to the kernel where > it belongs. As a side effect the <sys/vnode.h> include can be removed > from libfuse. > > Ok? Objections?
ok guenther@ Please delete the #include <sys/time.h> I added to fuse_private.h while you're there, as it was only needed for vnode.h Philip Guenther
