storage/posix translator
Notes
SET_FS_ID
This is so that all filesystem checks are done with the user's uid/gid and not GlusterFS's uid/gid.
MAKE_REAL_PATH
This macro concatenates the base directory of the posix volume ('option directory') with the given path.
need_xattr
in lookup
If this flag is passed, lookup returns a xattr dictionary that contains the file's create time, the file's contents, and the version number of the file.
This is a hack to increase small file performance. If an application wants to read a small file, it can finish its job with just a lookup call instead of a lookup followed by read.
getdents
/setdents
These are used by unify to set and get directory entries.
ALIGN_BUF
Macro to align an address to a page boundary (4K).
priv->export_statfs
In some cases, two exported volumes may reside on the same partition on the server. Sending statvfs info for both the volumes will lead to erroneous df output at the client, since free space on the partition will be counted twice.
In such cases, user can disable exporting statvfs info on one of the volumes by setting this option.
xattrop
This fop is used by replicate to set version numbers on files.
getxattr
/setxattr
hack to read/write files
A key, GLUSTERFS_FILE_CONTENT_STRING
, is handled in a special way by
getxattr
/setxattr
. A getxattr with the key will return the entire
content of the file as the value. A setxattr
with the key will write
the value as the entire content of the file.
posix_checksum
This calculates a simple XOR checksum on all entry names in a directory that is used by unify to compare directory contents.