Project

General

Profile

Feature #1236

Updated by Sage Weil over 11 years ago

Apparently there actually is support in cfuse for ioctls, although it's hairy. Given that, we should support them in cfuse so that tools like cephfs will work even if you aren't using the kernel client. 

 Instead, get and set layouts via virtual xattrs.    The idea would be to get/set the whole thing using some simple key/value syntax, or get/set individual fields. 

  ceph.dir.layout: "stripe_unit = 123, stripe_count = 456, ..." 
  ceph.dir.layout.stripe_unit: "123" 
  ceph.dir.layout.stripe_count: "456" 

 etc. 

 The goal is then to support the same set of attributes on both the fuse and kernel clients.    The client can either interpret the semantics of these attributes, or use a generic interface to communicate virtual xattrs to the MDS and implement it there once. 

Back