… | |
… | |
44 | ssize_t result; /* result of syscall, e.g. result = read (... */ |
44 | ssize_t result; /* result of syscall, e.g. result = read (... */ |
45 | off_t offs; /* read, write, truncate, readahead: file offset; mknod: dev_t */ |
45 | off_t offs; /* read, write, truncate, readahead: file offset; mknod: dev_t */ |
46 | size_t size; /* read, write, readahead, sendfile: length */ |
46 | size_t size; /* read, write, readahead, sendfile: length */ |
47 | void *ptr1; /* all applicable requests: pathname, old name */ |
47 | void *ptr1; /* all applicable requests: pathname, old name */ |
48 | void *ptr2; /* all applicable requests: new name or memory buffer */ |
48 | void *ptr2; /* all applicable requests: new name or memory buffer */ |
49 | eio_tstamp nv1; /* utime, futime: atime; busy: sleep time */ |
49 | eio_tstamp nv1; /* utime, futime: atime; busy: sleep time */ |
50 | eio_tstamp nv2; /* utime, futime: mtime */ |
50 | eio_tstamp nv2; /* utime, futime: mtime */ |
51 | |
51 | |
52 | int type; /* EIO_xxx constant */ |
52 | int type; /* EIO_xxx constant */ |
53 | int int1; /* all applicable requests: file descriptor; sendfile: output fd; open: flags */ |
53 | int int1; /* all applicable requests: file descriptor; sendfile: output fd; open: flags */ |
54 | long int2; /* chown, fchown: uid; sendfile: input fd; open, chmod, mkdir, mknod: file mode */ |
54 | long int2; /* chown, fchown: uid; sendfile: input fd; open, chmod, mkdir, mknod: file mode */ |
55 | long int3; /* chown, fchown: gid */ |
55 | long int3; /* chown, fchown: gid */ |
… | |
… | |
143 | eio_req *eio_busy (eio_tstamp delay, eio_cb cb); /* ties a thread for this long, simulating busyness */ |
143 | eio_req *eio_busy (eio_tstamp delay, eio_cb cb); /* ties a thread for this long, simulating busyness */ |
144 | eio_req *eio_nop (eio_cb cb); /* does nothing except go through the whole process */ |
144 | eio_req *eio_nop (eio_cb cb); /* does nothing except go through the whole process */ |
145 | |
145 | |
146 | /* for groups */ |
146 | /* for groups */ |
147 | eio_req *eio_grp (eio_cb cb); |
147 | eio_req *eio_grp (eio_cb cb); |
148 | void eio_grp_feed (eio_req *grp, int limit, void (*feed)(eio_req *req)); |
148 | void eio_grp_feed (eio_req *grp, void (*feed)(eio_req *req), int limit); |
|
|
149 | void eio_grp_limit (eio_req *grp, int limit); |
149 | void eio_grp_add (eio_req *grp, eio_req *req); |
150 | void eio_grp_add (eio_req *grp, eio_req *req); |
150 | void eio_grp_cancel (eio_req *grp); /* cancels all sub requests but not the group */ |
151 | void eio_grp_cancel (eio_req *grp); /* cancels all sub requests but not the group */ |
151 | |
152 | |
152 | /*****************************************************************************/ |
153 | /*****************************************************************************/ |
153 | /* low-level request API */ |
154 | /* low-level request API */ |