REQ_FSTATFS now operates on the root inode (the inode parameter has been

removed)
This commit is contained in:
Philip Homburg 2007-08-17 11:20:59 +00:00
parent 9c3f85d14f
commit ab3062c8c0
4 changed files with 5 additions and 10 deletions

View file

@ -75,9 +75,8 @@ PUBLIC int fs_fstatfs()
struct inode *rip;
int r;
if ((rip = find_inode(fs_dev, fs_m_in.REQ_FD_INODE_NR))
== NIL_INODE) {
printf("FSfstatfs: couldn't find inode %d\n", fs_m_in.REQ_FD_INODE_NR);
if ((rip = find_inode(fs_dev, ROOT_INODE)) == NIL_INODE) {
printf("mfs:fstatfs: couldn't find inode %d\n", ROOT_INODE);
return EINVAL;
}

View file

@ -151,8 +151,7 @@ _PROTOTYPE( int req_chown, (endpoint_t fs_e, ino_t inode_nr,
_PROTOTYPE( int req_create, (int fs_e, ino_t inode_nr, int omode,
int uid, int gid, char *path, node_details_t *res) );
_PROTOTYPE( int req_flush, (endpoint_t fs_e, Dev_t dev) );
_PROTOTYPE( int req_fstatfs, (int fs_e, ino_t inode_nr, int who_e,
char *buf) );
_PROTOTYPE( int req_fstatfs, (int fs_e, int who_e, char *buf) );
_PROTOTYPE( int req_ftrunc, (endpoint_t fs_e, ino_t inode_nr,
off_t start, off_t end) );
_PROTOTYPE( int req_getdents, (endpoint_t fs_e, ino_t inode_nr,

View file

@ -212,9 +212,8 @@ dev_t dev;
/*===========================================================================*
* req_fstatfs *
*===========================================================================*/
PUBLIC int req_fstatfs(fs_e, inode_nr, who_e, buf)
PUBLIC int req_fstatfs(fs_e, who_e, buf)
int fs_e;
ino_t inode_nr;
int who_e;
char *buf;
{
@ -229,7 +228,6 @@ char *buf;
/* Fill in request message */
m.m_type = REQ_FSTATFS;
m.REQ_INODE_NR = inode_nr;
m.REQ_GRANT = gid;
/* Send/rec request */

View file

@ -230,8 +230,7 @@ PUBLIC int do_fstatfs()
if ( (rfilp = get_filp(m_in.fd)) == NIL_FILP) return(err_code);
/* Issue request */
return req_fstatfs(rfilp->filp_vno->v_fs_e, rfilp->filp_vno->v_inode_nr,
who_e, m_in.buffer);
return req_fstatfs(rfilp->filp_vno->v_fs_e, who_e, m_in.buffer);
}