int McAccess::size(int fd) { int res, size; WaitSema(_sema); mcSeek(fd, 0, SEEK_END); mcSync(0, NULL, &size); mcSeek(fd, 0, SEEK_SET); mcSync(0, NULL, &res); SignalSema(_sema); assert(res == 0); return size; }
int mcIO::lseek(int fd, int offset, int whence) { int rv; #ifdef AIOMC_DEBUG printf("mcIO lseek\n"); #endif mcSeek(fd, offset, whence); mcSync(MC_WAIT, NULL, &rv); return rv; }