+++ /dev/null
-
-http://www.usenix.org/events/fast05/wips/slides/welch.pdf
-
-
-
--- STATLITE
- statlite(const char *filename, struct statlite *buf);
- fstatlite(int fd, struct statlite *buf);
- lstatlite(const char *filename, struct statlite *buf);
-
- * file size, mtime are optionally not guaranteed to be correct
- * mask field to specify which fields you need to be correct
-
-
--- READDIR+
-
- struct dirent_plus *readdirplus(DIR *dirp);
- int readdirplus_r(DIR *dirp, struct dirent_plus *entry, struct dirent_plus **result);
- struct dirent_lite *readdirlite(DIR *dirp);
- int readdirlite_r(DIR *dirp, struct dirent_lite *entry, struct dirent_lite **result);
-
- * plus returns lstat
- * lite returns lstatlite
-
-
--- lazy i/o integrity
-
- FIXME: currently missing call to flag an Fd/file has lazy. used to be O_LAZY on open, but no more.
-
- * relax data coherency
- * writes may not be visible until lazyio_propagate, fsync, close
-
- lazyio_propagate(int fd, off_t offset, size_t count);
- * my writes are safe
-
- lazyio_synchronize(int fd, off_t offset, size_t count);
- * i will see everyone else's propagated writes
-
--- read/write non-serial vectors
-
- ssize_t readx(int fd, const struct iovec *iov, size_t iov_count, struct xtvec *xtv, size_t xtv_count);
- ssize_t writex(int fd, const struct iovec *iov, size_t iov_count, struct xtvec *xtv, size_t xtv_count);
-
- * like readv/writev, but serial
- *
-
-
-int lockg(int fd, int cmd, lgid_t *lgid)
- group locks
-
-int openg(char *path, int mode, fh_t *handle);
- portable file handle
-int sutoc(fh_t *fh);