diff options
author | kaashoek <kaashoek> | 2006-08-10 01:28:57 +0000 |
---|---|---|
committer | kaashoek <kaashoek> | 2006-08-10 01:28:57 +0000 |
commit | 28d9ef04ddaa4cf32f3c63c976afdc535a36db98 (patch) | |
tree | 3ffd0e079e8fd5dab4e00a37fb657087ed7da720 /fd.c | |
parent | 939f9edeac042b2678bd2943a32822fb2eed75b4 (diff) | |
download | xv6-labs-28d9ef04ddaa4cf32f3c63c976afdc535a36db98.tar.gz xv6-labs-28d9ef04ddaa4cf32f3c63c976afdc535a36db98.tar.bz2 xv6-labs-28d9ef04ddaa4cf32f3c63c976afdc535a36db98.zip |
printf
convert userfs to use printf
bfree
ifree
writei
start on unlink
Diffstat (limited to 'fd.c')
-rw-r--r-- | fd.c | 8 |
1 files changed, 7 insertions, 1 deletions
@@ -59,7 +59,13 @@ fd_write(struct fd *fd, char *addr, int n) if(fd->type == FD_PIPE){ return pipe_write(fd->pipe, addr, n); } else if (fd->type == FD_FILE) { - return writei (fd->ip, addr, n); + ilock(fd->ip); + int r = writei (fd->ip, addr, fd->off, n); + if (r > 0) { + fd->off += r; + } + iunlock(fd->ip); + return r; } else { panic("fd_write"); return -1; |