Message types for VFS putnode

Change-Id: I0802ccaaaa6ee1b4eb96d62b08f9795c790ce39b
This commit is contained in:
2014-04-28 19:12:06 +02:00
parent afcde4d208
commit 6a94be7e63
9 changed files with 32 additions and 23 deletions

View File

@@ -37,8 +37,8 @@ int fs_putnode(void)
* Release unused pnode.
*/
struct puffs_node *pn;
int count = fs_m_in.REQ_COUNT;
pino_t inum = fs_m_in.REQ_INODE_NR;
int count = fs_m_in.m_vfs_fs_putnode.count;
ino_t inum = fs_m_in.m_vfs_fs_putnode.inode;
if ((pn = puffs_pn_nodewalk(global_pu, 0, &inum)) == NULL) {
/* XXX Probably removed from the list, see puffs_pn_remove() */

View File

@@ -280,10 +280,10 @@ int do_putnode(void)
struct inode *ino;
int count;
if ((ino = find_inode(m_in.REQ_INODE_NR)) == NULL)
if ((ino = find_inode(m_in.m_vfs_fs_putnode.inode)) == NULL)
return EINVAL;
count = m_in.REQ_COUNT;
count = m_in.m_vfs_fs_putnode.count;
if (count <= 0 || count > ino->i_ref) return EINVAL;

View File

@@ -589,11 +589,11 @@ int fs_putnode(void)
struct inode *node;
/* Get the inode specified by its number. */
if ((node = find_inode(fs_m_in.REQ_INODE_NR)) == NULL)
if ((node = find_inode(fs_m_in.m_vfs_fs_putnode.inode)) == NULL)
return EINVAL;
/* Decrease the reference count. */
node->i_count -= fs_m_in.REQ_COUNT - 1;
node->i_count -= fs_m_in.m_vfs_fs_putnode.count - 1;
assert(node->i_count > 0);