Lines Matching refs:volume

44 status_t publish_overlay_vnode(fs_volume *volume, ino_t inodeNumber,
66 void remove_and_dispose(fs_volume *volume, ino_t directoryInode)
68 notify_entry_removed(volume->id, directoryInode,
70 remove_vnode(volume, inode_number);
75 void dispose_attribute(fs_volume *volume, ino_t fileInode)
77 notify_attribute_changed(volume->id, -1, fileInode,
95 OverlayVolume(fs_volume *volume);
111 OverlayInode(OverlayVolume *volume,
231 OverlayVolume::OverlayVolume(fs_volume *volume)
232 : fVolume(volume),
246 OverlayInode::OverlayInode(OverlayVolume *volume, fs_vnode *superVnode,
249 : fVolume(volume),
1529 return superVnode->ops->op(volume->super_volume, superVnode, params); \
1534 overlay_put_vnode(fs_volume *volume, fs_vnode *vnode, bool reenter)
1547 result = superVnode->ops->put_vnode(volume->super_volume, superVnode,
1557 overlay_remove_vnode(fs_volume *volume, fs_vnode *vnode, bool reenter)
1569 result = superVnode->ops->put_vnode(volume->super_volume, superVnode,
1579 overlay_get_super_vnode(fs_volume *volume, fs_vnode *vnode,
1582 if (volume == superVolume) {
1595 return superVnode->ops->get_super_vnode(volume->super_volume,
1605 overlay_lookup(fs_volume *volume, fs_vnode *vnode, const char *name, ino_t *id)
1613 overlay_get_vnode_name(fs_volume *volume, fs_vnode *vnode, char *buffer,
1621 overlay_can_page(fs_volume *volume, fs_vnode *vnode, void *cookie)
1630 return superVnode->ops->can_page(volume->super_volume, superVnode,
1639 overlay_read_pages(fs_volume *volume, fs_vnode *vnode, void *cookie, off_t pos,
1672 overlay_write_pages(fs_volume *volume, fs_vnode *vnode, void *cookie, off_t pos,
1705 overlay_io(fs_volume *volume, fs_vnode *vnode, void *cookie,
1715 return superVnode->ops->io(volume->super_volume, superVnode,
1725 overlay_cancel_io(fs_volume *volume, fs_vnode *vnode, void *cookie,
1733 overlay_get_file_map(fs_volume *volume, fs_vnode *vnode, off_t offset,
1741 overlay_ioctl(fs_volume *volume, fs_vnode *vnode, void *cookie, uint32 op,
1749 overlay_set_flags(fs_volume *volume, fs_vnode *vnode, void *cookie,
1757 overlay_select(fs_volume *volume, fs_vnode *vnode, void *cookie, uint8 event,
1765 overlay_deselect(fs_volume *volume, fs_vnode *vnode, void *cookie, uint8 event,
1773 overlay_fsync(fs_volume *volume, fs_vnode *vnode)
1780 overlay_read_symlink(fs_volume *volume, fs_vnode *vnode, char *buffer,
1790 overlay_create_symlink(fs_volume *volume, fs_vnode *vnode, const char *name,
1800 overlay_link(fs_volume *volume, fs_vnode *vnode, const char *name,
1808 overlay_unlink(fs_volume *volume, fs_vnode *vnode, const char *name)
1816 overlay_rename(fs_volume *volume, fs_vnode *vnode,
1833 entry->remove_and_dispose(volume, fromNode->InodeNumber());
1843 entry->remove_and_dispose(volume, fromNode->InodeNumber());
1849 result = get_vnode(volume, entry->inode_number, (void **)&node);
1853 put_vnode(volume, entry->inode_number);
1857 notify_entry_moved(volume->id, fromNode->InodeNumber(), fromName,
1864 overlay_access(fs_volume *volume, fs_vnode *vnode, int mode)
1872 overlay_read_stat(fs_volume *volume, fs_vnode *vnode, struct stat *stat)
1880 overlay_write_stat(fs_volume *volume, fs_vnode *vnode, const struct stat *stat,
1889 overlay_create(fs_volume *volume, fs_vnode *vnode, const char *name,
1899 overlay_open(fs_volume *volume, fs_vnode *vnode, int openMode, void **cookie)
1907 overlay_close(fs_volume *volume, fs_vnode *vnode, void *cookie)
1915 overlay_free_cookie(fs_volume *volume, fs_vnode *vnode, void *cookie)
1923 overlay_read(fs_volume *volume, fs_vnode *vnode, void *cookie, off_t pos,
1933 overlay_write(fs_volume *volume, fs_vnode *vnode, void *cookie, off_t pos,
1943 overlay_create_dir(fs_volume *volume, fs_vnode *vnode, const char *name,
1952 overlay_remove_dir(fs_volume *volume, fs_vnode *vnode, const char *name)
1960 overlay_open_dir(fs_volume *volume, fs_vnode *vnode, void **cookie)
1968 overlay_close_dir(fs_volume *volume, fs_vnode *vnode, void *cookie)
1976 overlay_free_dir_cookie(fs_volume *volume, fs_vnode *vnode, void *cookie)
1984 overlay_read_dir(fs_volume *volume, fs_vnode *vnode, void *cookie,
1994 overlay_rewind_dir(fs_volume *volume, fs_vnode *vnode, void *cookie)
2002 overlay_open_attr_dir(fs_volume *volume, fs_vnode *vnode, void **cookie)
2010 overlay_close_attr_dir(fs_volume *volume, fs_vnode *vnode, void *cookie)
2018 overlay_free_attr_dir_cookie(fs_volume *volume, fs_vnode *vnode, void *cookie)
2026 overlay_read_attr_dir(fs_volume *volume, fs_vnode *vnode, void *cookie,
2036 overlay_rewind_attr_dir(fs_volume *volume, fs_vnode *vnode, void *cookie)
2044 overlay_create_attr(fs_volume *volume, fs_vnode *vnode, const char *name,
2054 overlay_open_attr(fs_volume *volume, fs_vnode *vnode, const char *name,
2071 overlay_close_attr(fs_volume *volume, fs_vnode *vnode, void *_cookie)
2080 overlay_free_attr_cookie(fs_volume *volume, fs_vnode *vnode, void *_cookie)
2089 overlay_read_attr(fs_volume *volume, fs_vnode *vnode, void *_cookie, off_t pos,
2099 overlay_write_attr(fs_volume *volume, fs_vnode *vnode, void *_cookie, off_t pos,
2109 overlay_read_attr_stat(fs_volume *volume, fs_vnode *vnode, void *_cookie,
2119 overlay_write_attr_stat(fs_volume *volume, fs_vnode *vnode, void *_cookie,
2129 overlay_rename_attr(fs_volume *volume, fs_vnode *vnode,
2146 entry->dispose_attribute(volume, fromNode->InodeNumber());
2156 entry->dispose_attribute(volume, fromNode->InodeNumber());
2169 notify_attribute_changed(volume->id, -1, fromNode->InodeNumber(), fromName,
2171 notify_attribute_changed(volume->id, -1, toNode->InodeNumber(), toName,
2180 overlay_remove_attr(fs_volume *volume, fs_vnode *vnode, const char *name)
2188 notify_attribute_changed(volume->id, -1, node->InodeNumber(), name,
2195 overlay_create_special_node(fs_volume *volume, fs_vnode *vnode,
2280 // #pragma mark - volume ops
2284 TRACE_VOLUME("relaying volume op: " #op "\n"); \
2285 if (volume->super_volume->ops->op != NULL) \
2286 return volume->super_volume->ops->op(volume->super_volume, params);
2290 overlay_unmount(fs_volume *volume)
2292 TRACE_VOLUME("relaying volume op: unmount\n");
2293 if (volume->super_volume != NULL
2294 && volume->super_volume->ops != NULL
2295 && volume->super_volume->ops->unmount != NULL)
2296 volume->super_volume->ops->unmount(volume->super_volume);
2298 delete (OverlayVolume *)volume->private_volume;
2304 overlay_read_fs_info(fs_volume *volume, struct fs_info *info)
2306 TRACE_VOLUME("relaying volume op: read_fs_info\n");
2308 if (volume->super_volume->ops->read_fs_info != NULL) {
2309 result = volume->super_volume->ops->read_fs_info(volume->super_volume,
2328 overlay_write_fs_info(fs_volume *volume, const struct fs_info *info,
2337 overlay_sync(fs_volume *volume)
2339 TRACE_VOLUME("relaying volume op: sync\n");
2340 if (volume->super_volume->ops->sync != NULL)
2341 return volume->super_volume->ops->sync(volume->super_volume);
2347 overlay_get_vnode(fs_volume *volume, ino_t id, fs_vnode *vnode, int *_type,
2350 TRACE_VOLUME("relaying volume op: get_vnode\n");
2351 if (volume->super_volume->ops->get_vnode != NULL) {
2352 status_t status = volume->super_volume->ops->get_vnode(
2353 volume->super_volume, id, vnode, _type, _flags, reenter);
2358 (OverlayVolume *)volume->private_volume, vnode, id);
2360 vnode->ops->put_vnode(volume->super_volume, vnode, reenter);
2366 vnode->ops->put_vnode(volume->super_volume, vnode, reenter);
2381 overlay_open_index_dir(fs_volume *volume, void **cookie)
2389 overlay_close_index_dir(fs_volume *volume, void *cookie)
2397 overlay_free_index_dir_cookie(fs_volume *volume, void *cookie)
2405 overlay_read_index_dir(fs_volume *volume, void *cookie, struct dirent *buffer,
2414 overlay_rewind_index_dir(fs_volume *volume, void *cookie)
2422 overlay_create_index(fs_volume *volume, const char *name, uint32 type,
2431 overlay_remove_index(fs_volume *volume, const char *name)
2439 overlay_read_index_stat(fs_volume *volume, const char *name, struct stat *stat)
2447 overlay_open_query(fs_volume *volume, const char *query, uint32 flags,
2456 overlay_close_query(fs_volume *volume, void *cookie)
2464 overlay_free_query_cookie(fs_volume *volume, void *cookie)
2472 overlay_read_query(fs_volume *volume, void *cookie, struct dirent *buffer,
2481 overlay_rewind_query(fs_volume *volume, void *cookie)
2489 overlay_all_layers_mounted(fs_volume *volume)
2496 overlay_create_sub_vnode(fs_volume *volume, ino_t id, fs_vnode *vnode)
2499 (OverlayVolume *)volume->private_volume, vnode, id);
2516 overlay_delete_sub_vnode(fs_volume *volume, fs_vnode *vnode)
2557 overlay_mount(fs_volume *volume, const char *device, uint32 flags,
2561 volume->private_volume = new(std::nothrow) OverlayVolume(volume);
2562 if (volume->private_volume == NULL)
2565 volume->ops = &sOverlayVolumeOps;
2627 publish_overlay_vnode(fs_volume *volume, ino_t inodeNumber, void *privateNode,
2630 return publish_vnode(volume, inodeNumber, privateNode, &sOverlayVnodeOps,