/fs/afs/ |
D | vnode.c | 23 struct afs_vnode *vnode; 32 vnode = rb_entry(node, struct afs_vnode, cb_promise); 36 vnode, vnode->cb_expires_at); 59 static void afs_install_vnode(struct afs_vnode *vnode, in afs_install_vnode() argument 62 struct afs_server *old_server = vnode->server; in afs_install_vnode() 66 _enter("%p,%p", vnode, server); in afs_install_vnode() 70 rb_erase(&vnode->server_rb, &old_server->fs_vnodes); in afs_install_vnode() 75 vnode->server = server; in afs_install_vnode() 86 if (vnode->fid.vid < xvnode->fid.vid) in afs_install_vnode() 88 else if (vnode->fid.vid > xvnode->fid.vid) in afs_install_vnode() [all …]
|
D | inode.c | 34 static int afs_inode_map_status(struct afs_vnode *vnode, struct key *key) in afs_inode_map_status() argument 36 struct inode *inode = AFS_VNODE_TO_I(vnode); in afs_inode_map_status() 39 vnode->status.type, in afs_inode_map_status() 40 vnode->status.nlink, in afs_inode_map_status() 41 (unsigned long long) vnode->status.size, in afs_inode_map_status() 42 vnode->status.data_version, in afs_inode_map_status() 43 vnode->status.mode); in afs_inode_map_status() 45 switch (vnode->status.type) { in afs_inode_map_status() 47 inode->i_mode = S_IFREG | vnode->status.mode; in afs_inode_map_status() 52 inode->i_mode = S_IFDIR | vnode->status.mode; in afs_inode_map_status() [all …]
|
D | flock.c | 61 void afs_lock_may_be_available(struct afs_vnode *vnode) in afs_lock_may_be_available() argument 63 _enter("{%x:%u}", vnode->fid.vid, vnode->fid.vnode); in afs_lock_may_be_available() 65 queue_delayed_work(afs_lock_manager, &vnode->lock_work, 0); in afs_lock_may_be_available() 72 static void afs_schedule_lock_extension(struct afs_vnode *vnode) in afs_schedule_lock_extension() argument 74 queue_delayed_work(afs_lock_manager, &vnode->lock_work, in afs_schedule_lock_extension() 83 static void afs_grant_locks(struct afs_vnode *vnode, struct file_lock *fl) in afs_grant_locks() argument 87 list_move_tail(&fl->fl_u.afs.link, &vnode->granted_locks); in afs_grant_locks() 89 list_for_each_entry_safe(p, _p, &vnode->pending_locks, in afs_grant_locks() 94 &vnode->granted_locks); in afs_grant_locks() 108 struct afs_vnode *vnode = in afs_lock_work() local [all …]
|
D | callback.c | 40 struct afs_vnode *vnode; in afs_init_callback_state() local 48 vnode = rb_entry(server->cb_promises.rb_node, in afs_init_callback_state() 51 vnode->fid.vid, vnode->fid.vnode, vnode->fid.unique); in afs_init_callback_state() 52 rb_erase(&vnode->cb_promise, &server->cb_promises); in afs_init_callback_state() 53 vnode->cb_promised = false; in afs_init_callback_state() 65 struct afs_vnode *vnode = in afs_broken_callback_work() local 70 if (test_bit(AFS_VNODE_DELETED, &vnode->flags)) in afs_broken_callback_work() 75 if (!mutex_trylock(&vnode->validate_lock)) in afs_broken_callback_work() 78 if (test_bit(AFS_VNODE_CB_BROKEN, &vnode->flags)) { in afs_broken_callback_work() 79 if (S_ISDIR(vnode->vfs_inode.i_mode)) in afs_broken_callback_work() [all …]
|
D | fsclient.c | 27 fid->vnode = ntohl(*bp++); in xdr_decode_AFSFid() 37 struct afs_vnode *vnode, in xdr_decode_AFSFetchStatus() argument 67 EXTRACT(status->parent.vnode); in xdr_decode_AFSFetchStatus() 91 if (vnode) { in xdr_decode_AFSFetchStatus() 92 status->parent.vid = vnode->fid.vid; in xdr_decode_AFSFetchStatus() 93 if (changed && !test_bit(AFS_VNODE_UNSET, &vnode->flags)) { in xdr_decode_AFSFetchStatus() 95 i_size_write(&vnode->vfs_inode, size); in xdr_decode_AFSFetchStatus() 96 vnode->vfs_inode.i_uid = status->owner; in xdr_decode_AFSFetchStatus() 97 vnode->vfs_inode.i_gid = status->group; in xdr_decode_AFSFetchStatus() 98 vnode->vfs_inode.i_generation = vnode->fid.unique; in xdr_decode_AFSFetchStatus() [all …]
|
D | cache.c | 253 const struct afs_vnode *vnode = cookie_netfs_data; in afs_vnode_cache_get_key() local 257 vnode->fid.vnode, vnode->fid.unique, vnode->status.data_version, in afs_vnode_cache_get_key() 260 klen = sizeof(vnode->fid.vnode); in afs_vnode_cache_get_key() 264 memcpy(buffer, &vnode->fid.vnode, sizeof(vnode->fid.vnode)); in afs_vnode_cache_get_key() 276 const struct afs_vnode *vnode = cookie_netfs_data; in afs_vnode_cache_get_attr() local 279 vnode->fid.vnode, vnode->fid.unique, in afs_vnode_cache_get_attr() 280 vnode->status.data_version); in afs_vnode_cache_get_attr() 282 *size = vnode->status.size; in afs_vnode_cache_get_attr() 291 const struct afs_vnode *vnode = cookie_netfs_data; in afs_vnode_cache_get_aux() local 295 vnode->fid.vnode, vnode->fid.unique, vnode->status.data_version, in afs_vnode_cache_get_aux() [all …]
|
D | write.c | 38 struct afs_vnode *vnode = wb->vnode; in afs_unlink_writeback() local 41 if (!list_empty(&vnode->writebacks)) { in afs_unlink_writeback() 44 front = list_entry(vnode->writebacks.next, in afs_unlink_writeback() 69 struct afs_vnode *vnode = wb->vnode; in afs_put_writeback() local 73 spin_lock(&vnode->writeback_lock); in afs_put_writeback() 78 spin_unlock(&vnode->writeback_lock); in afs_put_writeback() 86 static int afs_fill_page(struct afs_vnode *vnode, struct key *key, in afs_fill_page() argument 95 i_size = i_size_read(&vnode->vfs_inode); in afs_fill_page() 101 ret = afs_vnode_fetch_data(vnode, key, pos, len, page); in afs_fill_page() 106 set_bit(AFS_VNODE_DELETED, &vnode->flags); in afs_fill_page() [all …]
|
D | security.c | 83 static struct afs_vnode *afs_get_auth_inode(struct afs_vnode *vnode, in afs_get_auth_inode() argument 91 if (S_ISDIR(vnode->vfs_inode.i_mode)) { in afs_get_auth_inode() 92 auth_inode = igrab(&vnode->vfs_inode); in afs_get_auth_inode() 95 auth_inode = afs_iget(vnode->vfs_inode.i_sb, key, in afs_get_auth_inode() 96 &vnode->status.parent, NULL, NULL); in afs_get_auth_inode() 102 _leave(" = {%x}", auth_vnode->fid.vnode); in afs_get_auth_inode() 109 void afs_clear_permits(struct afs_vnode *vnode) in afs_clear_permits() argument 113 _enter("{%x:%u}", vnode->fid.vid, vnode->fid.vnode); in afs_clear_permits() 115 mutex_lock(&vnode->permits_lock); in afs_clear_permits() 116 permits = vnode->permits; in afs_clear_permits() [all …]
|
D | dir.c | 82 __be32 vnode; member 305 ntohl(dire->u.vnode), in afs_dir_iterate_block() 415 cookie->fid.vnode = ino; in afs_lookup_filldir() 454 _leave(" = 0 { vn=%u u=%u }", fid->vnode, fid->unique); in afs_do_lookup() 467 struct afs_vnode *vnode = AFS_FS_I(dir); in afs_try_auto_mntpt() local 471 ret, dentry, dentry, vnode->fid.vid, vnode->fid.vnode, key); in afs_try_auto_mntpt() 474 !test_bit(AFS_VNODE_AUTOCELL, &vnode->flags)) in afs_try_auto_mntpt() 498 struct afs_vnode *vnode; in afs_lookup() local 504 vnode = AFS_FS_I(dir); in afs_lookup() 507 vnode->fid.vid, vnode->fid.vnode, dentry, dentry); in afs_lookup() [all …]
|
D | file.c | 68 struct afs_vnode *vnode = AFS_FS_I(inode); in afs_open() local 72 _enter("{%x:%u},", vnode->fid.vid, vnode->fid.vnode); in afs_open() 74 key = afs_request_key(vnode->volume->cell); in afs_open() 80 ret = afs_validate(vnode, key); in afs_open() 96 struct afs_vnode *vnode = AFS_FS_I(inode); in afs_release() local 98 _enter("{%x:%u},", vnode->fid.vid, vnode->fid.vnode); in afs_release() 129 struct afs_vnode *vnode = AFS_FS_I(inode); in __afs_page_filler() local 139 if (test_bit(AFS_VNODE_DELETED, &vnode->flags)) in __afs_page_filler() 144 ret = fscache_read_or_alloc_page(vnode->cache, in __afs_page_filler() 172 ret = afs_vnode_fetch_data(vnode, key, offset, len, page); in __afs_page_filler() [all …]
|
D | super.c | 327 fid.vnode = 1; in afs_fill_super() 461 struct afs_vnode *vnode = _vnode; in afs_i_init_once() local 463 memset(vnode, 0, sizeof(*vnode)); in afs_i_init_once() 464 inode_init_once(&vnode->vfs_inode); in afs_i_init_once() 465 init_waitqueue_head(&vnode->update_waitq); in afs_i_init_once() 466 mutex_init(&vnode->permits_lock); in afs_i_init_once() 467 mutex_init(&vnode->validate_lock); in afs_i_init_once() 468 spin_lock_init(&vnode->writeback_lock); in afs_i_init_once() 469 spin_lock_init(&vnode->lock); in afs_i_init_once() 470 INIT_LIST_HEAD(&vnode->writebacks); in afs_i_init_once() [all …]
|
D | mntpt.c | 53 int afs_mntpt_check_symlink(struct afs_vnode *vnode, struct key *key) in afs_mntpt_check_symlink() argument 61 vnode->fid.vid, vnode->fid.vnode, vnode->fid.unique); in afs_mntpt_check_symlink() 64 page = read_cache_page(AFS_VNODE_TO_I(vnode)->i_mapping, 0, in afs_mntpt_check_symlink() 78 size = vnode->status.size; in afs_mntpt_check_symlink() 86 spin_lock(&vnode->lock); in afs_mntpt_check_symlink() 87 set_bit(AFS_VNODE_MOUNTPOINT, &vnode->flags); in afs_mntpt_check_symlink() 88 vnode->vfs_inode.i_flags |= S_AUTOMOUNT; in afs_mntpt_check_symlink() 89 spin_unlock(&vnode->lock); in afs_mntpt_check_symlink() 129 struct afs_vnode *vnode; in afs_mntpt_do_automount() local 148 vnode = AFS_FS_I(d_inode(mntpt)); in afs_mntpt_do_automount() [all …]
|
D | volume.c | 219 struct afs_server *afs_volume_pick_fileserver(struct afs_vnode *vnode) in afs_volume_pick_fileserver() argument 221 struct afs_volume *volume = vnode->volume; in afs_volume_pick_fileserver() 228 if (vnode->server && vnode->server->fs_state == 0) { in afs_volume_pick_fileserver() 229 afs_get_server(vnode->server); in afs_volume_pick_fileserver() 230 _leave(" = %p [current]", vnode->server); in afs_volume_pick_fileserver() 231 return vnode->server; in afs_volume_pick_fileserver() 306 int afs_volume_release_fileserver(struct afs_vnode *vnode, in afs_volume_release_fileserver() argument 310 struct afs_volume *volume = vnode->volume; in afs_volume_release_fileserver()
|
D | Makefile | 28 vnode.o \
|
D | afs.h | 52 afs_vnodeid_t vnode; /* file index within volume */ member
|
D | internal.h | 146 struct afs_vnode *vnode; /* vnode to which this write applies */ member 696 static inline struct inode *AFS_VNODE_TO_I(struct afs_vnode *vnode) in AFS_VNODE_TO_I() argument 698 return &vnode->vfs_inode; in AFS_VNODE_TO_I()
|
D | cmservice.c | 217 cb->fid.vnode = ntohl(*bp++); in afs_deliver_cb_callback()
|