Use vfs_lookup_vnode() instead of vfs_get_vnode() when creating a file
cache, so we don't run into a "vnode ... is not becoming unbusy" problem. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20879 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -1729,7 +1729,7 @@ fssh_file_cache_create(fssh_mount_id mountID, fssh_vnode_id vnodeID,
|
||||
ref->virtual_size = size;
|
||||
|
||||
// get vnode
|
||||
fssh_status_t error = vfs_get_vnode(mountID, vnodeID, &ref->node);
|
||||
fssh_status_t error = vfs_lookup_vnode(mountID, vnodeID, &ref->node);
|
||||
if (error != FSSH_B_OK) {
|
||||
fssh_dprintf("file_cache_create(): Failed get vnode %d:%lld: %s\n",
|
||||
mountID, vnodeID, fssh_strerror(error));
|
||||
@@ -1772,8 +1772,6 @@ fssh_file_cache_delete(void *_cacheRef)
|
||||
|
||||
mutex_destroy(&ref->lock);
|
||||
|
||||
vfs_put_vnode(ref->node);
|
||||
|
||||
delete ref;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user