[RFC PATCH v2 0/1] fuse: restructure requests extensions handling

Luis Henriques posted 1 patch 2 weeks, 3 days ago
fs/fuse/dev.c    |  35 ++++++++++++++-
fs/fuse/dir.c    | 108 ++++++++++++++++++++++-------------------------
fs/fuse/fuse_i.h |  11 ++++-
3 files changed, 93 insertions(+), 61 deletions(-)
[RFC PATCH v2 0/1] fuse: restructure requests extensions handling
Posted by Luis Henriques 2 weeks, 3 days ago
Hi!

I'm sending v2 of this patch after finding an issue with function
fuse_free_ext().  The issue was that this function was freeing the ->value
for all the ext args, which isn't what I wanted -- now it only frees it for
FUSE_EXT_GROUPS extentions.  While there, I've also added back the
immediate return if there are no extensions.

And for reference, here's the origin text from v1:

This patch was going to be included in the lookup_handle patchset.  But
since it is self-contained and it can eventually be picked independently,
I've decided to send it as a separate RFC.
 
It basically re-implements the idea of extensions, making it easier to add
new ones: a extension can be simply added to the 'ext_args' array in
fuse_args.


Luis Henriques (1):
  fuse: restructure requests extensions handling

 fs/fuse/dev.c    |  35 ++++++++++++++-
 fs/fuse/dir.c    | 108 ++++++++++++++++++++++-------------------------
 fs/fuse/fuse_i.h |  11 ++++-
 3 files changed, 93 insertions(+), 61 deletions(-)