On Tue, May 02, 2006 at 01:02:59PM -0700, Maury Markowitz wrote:
> The "problem" with Mac support is that the Mac stored all of its
> display-related information in the directory itself.

As you've mentioned, performance considerations mean that extended
attributes may not be the best solution for storing this information.
Unfortunately, embedding the extended attributes in the znode_phys_t (as
you suggest) is not really practical.  The extended attributes are
full-fledged files, with all the associated metadata (permissions,
dates, etc).  There simply isn't enough space in the znode_phys_t to
store even a single extended attribute.

Even if you invented a new interface for name-value extended properties
on files, it would be tough to fit many properties in the unused space
in the znode_phys_t.  But such an interface might be worth considering,
if there are important uses for it (the Mac windowing information may be
one).

One way to store this information would be to simply add it to the
znode_phys_t (by using a couple words of the padding).  This would
result in very good performance, since you wouldn't even have to find
the attribute with the matching name.

Keep in mind that the whole idea of storing this windowing information
with the file presumes that there are not multiple (hard) links to a
file.  If there are multiple names for the file (ie. it exists in
multiple directories), it probably makes more sense to store the
windowing information with the directory entry.  That change would be
fairly straightforward:  use the ZAP to store a larger value in the
directory entry, adding words that describe the window information.

--matt
_______________________________________________
zfs-discuss mailing list
[EMAIL PROTECTED]
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to