On Sunday 07 September 2008 17:43, Shapor Naghibzadeh wrote:
I completely agree with you on the thrust of this. This is purely
a compression optimization, in other words, it had better cause no
change to semantics. The inheritance can be per inode table block,
that is, each inode table block has a default user/group/mode in its
header, and if an inode exactly matches that, it is not represented,
otherwise the attribute appears in the inode. A slight variation on
that idea is to say that the user/group/mode attribute of each inode
applies to the next one, if the next inode does not have one of its
own. Which requires scanning all inodes in a table block to find out
what the user/group/mode attribute should be, so I think I prefer the
one per table block approach. This is 12 bytes, vs savings of up to
64 * 12 = 768 bytes/inode, which is a big deal.
So yes, I think we should do something very much like this. Later of
course, say after atomic commit and versioning are working, but with
fuse being a reality there is no need to wait for the kernel port.
Yup.
Regards,
Daniel
_______________________________________________
Tux3 mailing list
Tux3@tux3.orghttp://tux3.org/cgi-bin/mailman/listinfo/tux3