rem: file_cookie cookie;
add: fs_cookie cookie;
context: open_dir_vnode(struct vnode *vnode, bool kernel){	struct file_descriptor *descriptor;	file_cookie cookie;	int status, fd;		status = FS_CALL(vnode,fs_open_dir)(vnode->mount->cookie, vnode->private_node, &cookie);	if (status < 0)		return status;	// file is opened, create a fd	descriptor = alloc_fd();	if (!descriptor) {		status = ENOMEM;		goto err;	}	descriptor->vnode = vnode;	descriptor->cookie = cookie;	descriptor->ops = &dir_ops;	descriptor->type = FDTYPE_DIR;	fd = new_fd(get_current_io_context(kernel), descriptor);	if (fd >= 0)		return fd;err1:	status = B_NO_MORE_FDS;	kfree(descriptor);err:	FS_CALL(vnode,fs_close_dir)(vnode->mount->cookie, vnode->private_node, cookie);	FS_CALL(vnode,fs_free_dir_cookie)(vnode->mount->cookie, vnode->private_node, cookie);	return status;}