diff --git a/src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp b/src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp index 0b9ccba587..56854b5a70 100644 --- a/src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp +++ b/src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp @@ -24,9 +24,6 @@ struct identify_cookie { disk_super_block super_block; }; -static status_t bfs_get_file_map(fs_volume *_volume, fs_vnode *_node, - off_t offset, size_t size, struct file_io_vec *vecs, size_t *_count); - extern void fill_stat_buffer(Inode *inode, struct stat &stat); @@ -427,18 +424,15 @@ static status_t bfs_iterative_io_get_vecs(void* cookie, io_request *request, off_t offset, size_t size, struct file_io_vec *vecs, size_t *_count) { - fs_vnode *node = (fs_vnode*)cookie; - - return bfs_get_file_map(volume_for_vnode(node), node, offset, size, vecs, - _count); + Inode *inode = (Inode*)cookie; + return file_map_translate(inode->Map(), offset, size, vecs, _count); } static status_t bfs_iterative_io_finished(void *cookie, io_request *request, status_t status) { - fs_vnode *_node = (fs_vnode*)cookie; - Inode *inode = (Inode *)_node->private_node; + Inode *inode = (Inode*)cookie; rw_lock_read_unlock(&inode->Lock()); @@ -462,7 +456,7 @@ bfs_io(fs_volume *_volume, fs_vnode *_node, void *_cookie, io_request *request) rw_lock_read_lock(&inode->Lock()); return do_iterative_fd_io(volume->Device(), request, - bfs_iterative_io_get_vecs, bfs_iterative_io_finished, _node); + bfs_iterative_io_get_vecs, bfs_iterative_io_finished, inode); }