linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Fuse fgetattr() Not Being Called By fstat()
@ 2016-07-18 12:34 Alex Richman
  2016-07-18 13:17 ` Stef Bon
  0 siblings, 1 reply; 3+ messages in thread
From: Alex Richman @ 2016-07-18 12:34 UTC (permalink / raw)
  To: linux-fsdevel, fuse-devel

(Resending because linux-fsdevel rejected non-text/plain content?)

Hi all,

I'm running into an issue with Fuse and fstat().

If I call fstat() on a file within a fuse file system I only see an
fgetattr() when the file is first created by the open call. If I call
fstat() on an existing file, it uses getattr() instead.

I initially thought that this was a libfuse issue, but after some
debugging I believe it is an issue with the kernel module.  I created
an issue on the libfuse project here:
https://github.com/libfuse/libfuse/issues/62 which has all the
information I've gathered so far.  If you want I can copy the contents
of the issue into an email here, but I figured there was no need to
duplicate it.

Any ideas? :)

Cheers,
- Alex.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Fuse fgetattr() Not Being Called By fstat()
  2016-07-18 12:34 Fuse fgetattr() Not Being Called By fstat() Alex Richman
@ 2016-07-18 13:17 ` Stef Bon
  2016-07-18 16:15   ` Alex Richman
  0 siblings, 1 reply; 3+ messages in thread
From: Stef Bon @ 2016-07-18 13:17 UTC (permalink / raw)
  To: Alex Richman; +Cc: linux-fsdevel, fuse-devel

Hi,

as far as I can see is that the fgetattr is not implemented yet.
The flag FUSE_GETATTR_FH has to be set.
I've been looking to the page you've written, and I do not know why
this is not set, the file has to be set.

I will look into this a bit deeper.
Stef

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Fuse fgetattr() Not Being Called By fstat()
  2016-07-18 13:17 ` Stef Bon
@ 2016-07-18 16:15   ` Alex Richman
  0 siblings, 0 replies; 3+ messages in thread
From: Alex Richman @ 2016-07-18 16:15 UTC (permalink / raw)
  To: Stef Bon, miklos; +Cc: linux-fsdevel

Hi Stef,

Thanks for the reply.

I think you might be right about it not being implemented - I did a
little googling and found some _old_ (2007) threads about adding it:
https://lwn.net/Articles/251228/
http://lkml.iu.edu/hypermail/linux/kernel/0710.3/0183.html
It looks like those patches never went anywhere for various reasons,
and fgetattr isn't in the kernel, but libfuse does have the interfaces
and the FUSE_GETATTR_FH flag is mentioned in both the kernel and
libfuse?

I've added Miklos, who was the creator of those threads and I believe
a maintainer of libfuse.  Hope you don't mind the email Miklos, maybe
you could shed some light on this? :)

Cheers,
- Alex.

On 18 July 2016 at 14:17, Stef Bon <stefbon@gmail.com> wrote:
> Hi,
>
> as far as I can see is that the fgetattr is not implemented yet.
> The flag FUSE_GETATTR_FH has to be set.
> I've been looking to the page you've written, and I do not know why
> this is not set, the file has to be set.
>
> I will look into this a bit deeper.
> Stef

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-07-18 16:15 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-07-18 12:34 Fuse fgetattr() Not Being Called By fstat() Alex Richman
2016-07-18 13:17 ` Stef Bon
2016-07-18 16:15   ` Alex Richman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).