fuse: add lookupx support#152
Conversation
|
I'm really hesitant about this ... why do we need another LOOKUP call? |
|
@cding-ddn Can you please explain in the commit message or anywhere else what is the purpose? I think we need a generic discussion here - just extending the fuse protocol with things that can never go upstream a really not a good idea. I would suggest to first explain the problem the problem somewhere and then we find a solution that can go at some point upstream. |
aa81b47 to
a130b3f
Compare
hbirth
left a comment
There was a problem hiding this comment.
If it solves our current problem ... I'm fine with it
It makes lookup somewhat weird, but we have to do, what has to be done
This is an extended version of lookup that supports additional flags and returns attributes with valid masks via fuse_reply_lookupx.
a130b3f to
f6f266d
Compare
hbirth
left a comment
There was a problem hiding this comment.
restricting to revalidate makes it better
| ATTR_TIMEOUT(&ext_out.entry), | ||
| attr_version); | ||
| fuse_change_entry_timeout(entry, &outarg); | ||
| fuse_change_entry_timeout(entry, &ext_out.entry); |
There was a problem hiding this comment.
Doesn't this need the same logic as in my PR - when fuse-server does not reply all attr, the timeout must not be extended?
This is an extended version of lookup that supports additional flags and returns attributes with valid masks via fuse_reply_lookupx.
This allows the fuse server to use a weaker locking mode for lookup operations and helps with the mdtest hard write benchmark.