Extended attributes are stored using the same schemes as data.
Small ones often go in the inode, larger ones are stored in
data blocks.
> Do you pick up
> the attributes of all the files in a directory in one disk read?
No. Attributes are associated with the file, not the containing
directory.
> Do
> you use this attribute system to store permission bits and the like?
No. "Traditional" attributes are stored in the inode.
> O/S:
> What is the interface to read an arbitrarily-sized attribute?
attr_get(2)
> Do you use the same interface to read permission bits?
Nope. The stat family does that.
> NFS:
> Do you always transfer an attribute in one syscall, or do you have an
> open/read/close model?
One syscall.
> How does the buffer space to store an
> arbitrarily-sized attribute get allocated in user space? (The real
> question here is: does it take two round trips -- one to get the
> attribute size, and the next to do the read?)
Buffer allocation is left to the caller. The attr_list(2) call
will tell you what attributes there are, and what their sizes are.
--Casey Schaufler voice: (650) 933-1634 casey@sgi.com fax: (650) 933-0170
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/