[Libsysio-commit] HEAD: libsysio/include inode.h
Brought to you by:
lward
From: Lee W. <lw...@us...> - 2004-05-28 12:48:37
|
Update of /cvsroot/libsysio/libsysio/include In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12502/include Modified Files: inode.h Log Message: Accounting mods required for Red Storm require us to track the requested IO operation through the life of that operation. Most importantly, the ioctx record has a new field, ioctx_write. If set, the operation is/was a write. Otherwise a read. Index: inode.h =================================================================== RCS file: /cvsroot/libsysio/libsysio/include/inode.h,v retrieving revision 1.17 retrieving revision 1.18 diff -u -w -b -B -p -r1.17 -r1.18 --- inode.h 28 Apr 2004 12:23:19 -0000 1.17 +++ inode.h 28 May 2004 12:48:26 -0000 1.18 @@ -368,7 +368,8 @@ struct ioctx { LIST_ENTRY(ioctx) ioctx_link; /* AIO list link */ unsigned ioctx_fast : 1, /* from stack space */ - ioctx_done : 1; /* transfer complete */ + ioctx_done : 1, /* transfer complete */ + ioctx_write : 1; /* op is a write */ ioid_t ioctx_id; /* unique ident */ struct inode *ioctx_ino; /* i-node */ const struct iovec *ioctx_iov; /* scatter/gather vec */ @@ -384,10 +385,11 @@ struct ioctx { /* * Init IO context record. */ -#define IOCTX_INIT(ioctx, fast, id, ino, iov, iovlen, xtv, xtvlen) \ +#define IOCTX_INIT(ioctx, fast, id, wr, ino, iov, iovlen, xtv, xtvlen) \ do { \ (ioctx)->ioctx_fast = (fast); \ (ioctx)->ioctx_done = 0; \ + (ioctx)->ioctx_write = (wr) ? 1 : 0; \ (ioctx)->ioctx_id = (id); \ (ioctx)->ioctx_ino = (ino); \ (ioctx)->ioctx_iov = (iov); \ @@ -474,6 +476,7 @@ extern int _sysio_p_chdir(struct pnode * extern int _sysio_ioctx_init(void); extern void _sysio_ioctx_enter(struct ioctx *ioctx); extern struct ioctx *_sysio_ioctx_new(struct inode *ino, + int wr, const struct iovec *iov, size_t iovlen, const struct intnl_xtvec *xtv, |