#include <9pm/u.h> #include <9pm/libc.h> #include <9pm/fcall.h> #include <9pm/ns.h> long pwrite(int fd, void *a, long n, vlong o) { volatile Chan *c; volatile long m; checkerrstack(); m = -1; c = nil; if(!waserror()){ c = fd2chan(fd, OWRITE); m = (*c->mnt->dev->_pwrite)(c, a, n, o); poperror(); } if(c) cclose(c); checkerrstack(); return m; }