/fs/ceph/ |
D | mds_client.c | 54 static void __wake_requests(struct ceph_mds_client *mdsc, 405 struct ceph_mds_session *__ceph_lookup_mds_session(struct ceph_mds_client *mdsc, in __ceph_lookup_mds_session() argument 410 if (mds >= mdsc->max_sessions || mdsc->sessions[mds] == NULL) in __ceph_lookup_mds_session() 412 session = mdsc->sessions[mds]; in __ceph_lookup_mds_session() 419 static bool __have_session(struct ceph_mds_client *mdsc, int mds) in __have_session() argument 421 if (mds >= mdsc->max_sessions) in __have_session() 423 return mdsc->sessions[mds]; in __have_session() 426 static int __verify_registered_session(struct ceph_mds_client *mdsc, in __verify_registered_session() argument 429 if (s->s_mds >= mdsc->max_sessions || in __verify_registered_session() 430 mdsc->sessions[s->s_mds] != s) in __verify_registered_session() [all …]
|
D | snap.c | 62 void ceph_get_snap_realm(struct ceph_mds_client *mdsc, in ceph_get_snap_realm() argument 74 spin_lock(&mdsc->snap_empty_lock); in ceph_get_snap_realm() 76 spin_unlock(&mdsc->snap_empty_lock); in ceph_get_snap_realm() 108 struct ceph_mds_client *mdsc, in ceph_create_snap_realm() argument 125 __insert_snap_realm(&mdsc->snap_realms, realm); in ceph_create_snap_realm() 135 static struct ceph_snap_realm *__lookup_snap_realm(struct ceph_mds_client *mdsc, in __lookup_snap_realm() argument 138 struct rb_node *n = mdsc->snap_realms.rb_node; in __lookup_snap_realm() 155 struct ceph_snap_realm *ceph_lookup_snap_realm(struct ceph_mds_client *mdsc, in ceph_lookup_snap_realm() argument 159 r = __lookup_snap_realm(mdsc, ino); in ceph_lookup_snap_realm() 161 ceph_get_snap_realm(mdsc, r); in ceph_lookup_snap_realm() [all …]
|
D | caps.c | 43 static u64 __get_oldest_flush_tid(struct ceph_mds_client *mdsc); 44 static void __kick_flushing_caps(struct ceph_mds_client *mdsc, 123 void ceph_caps_init(struct ceph_mds_client *mdsc) in ceph_caps_init() argument 125 INIT_LIST_HEAD(&mdsc->caps_list); in ceph_caps_init() 126 spin_lock_init(&mdsc->caps_list_lock); in ceph_caps_init() 129 void ceph_caps_finalize(struct ceph_mds_client *mdsc) in ceph_caps_finalize() argument 133 spin_lock(&mdsc->caps_list_lock); in ceph_caps_finalize() 134 while (!list_empty(&mdsc->caps_list)) { in ceph_caps_finalize() 135 cap = list_first_entry(&mdsc->caps_list, in ceph_caps_finalize() 140 mdsc->caps_total_count = 0; in ceph_caps_finalize() [all …]
|
D | debugfs.c | 26 if (fsc->mdsc == NULL || fsc->mdsc->mdsmap == NULL) in mdsmap_show() 28 seq_printf(s, "epoch %d\n", fsc->mdsc->mdsmap->m_epoch); in mdsmap_show() 29 seq_printf(s, "root %d\n", fsc->mdsc->mdsmap->m_root); in mdsmap_show() 31 fsc->mdsc->mdsmap->m_session_timeout); in mdsmap_show() 33 fsc->mdsc->mdsmap->m_session_autoclose); in mdsmap_show() 34 for (i = 0; i < fsc->mdsc->mdsmap->m_max_mds; i++) { in mdsmap_show() 36 &fsc->mdsc->mdsmap->m_info[i].addr; in mdsmap_show() 37 int state = fsc->mdsc->mdsmap->m_info[i].state; in mdsmap_show() 52 struct ceph_mds_client *mdsc = fsc->mdsc; in mdsc_show() local 59 mutex_lock(&mdsc->mutex); in mdsc_show() [all …]
|
D | mds_client.h | 179 typedef void (*ceph_mds_request_callback_t) (struct ceph_mds_client *mdsc, 184 typedef int (*ceph_mds_request_wait_callback_t) (struct ceph_mds_client *mdsc, 379 extern int ceph_send_msg_mds(struct ceph_mds_client *mdsc, 383 extern void ceph_mdsc_close_sessions(struct ceph_mds_client *mdsc); 384 extern void ceph_mdsc_force_umount(struct ceph_mds_client *mdsc); 387 extern void ceph_mdsc_sync(struct ceph_mds_client *mdsc); 393 ceph_mdsc_create_request(struct ceph_mds_client *mdsc, int op, int mode); 394 extern void ceph_mdsc_submit_request(struct ceph_mds_client *mdsc, 396 extern int ceph_mdsc_do_request(struct ceph_mds_client *mdsc, 409 extern void ceph_send_cap_releases(struct ceph_mds_client *mdsc, [all …]
|
D | dir.c | 320 struct ceph_mds_client *mdsc = fsc->mdsc; in ceph_readdir() local 391 req = ceph_mdsc_create_request(mdsc, op, USE_AUTH_MDS); in ceph_readdir() 421 err = ceph_mdsc_do_request(mdsc, NULL, req); in ceph_readdir() 738 struct ceph_mds_client *mdsc = fsc->mdsc; in ceph_lookup() local 779 req = ceph_mdsc_create_request(mdsc, op, USE_ANY_MDS); in ceph_lookup() 791 err = ceph_mdsc_do_request(mdsc, NULL, req); in ceph_lookup() 830 struct ceph_mds_client *mdsc = fsc->mdsc; in ceph_mknod() local 844 req = ceph_mdsc_create_request(mdsc, CEPH_MDS_OP_MKNOD, USE_AUTH_MDS); in ceph_mknod() 860 err = ceph_mdsc_do_request(mdsc, dir, req); in ceph_mknod() 883 struct ceph_mds_client *mdsc = fsc->mdsc; in ceph_symlink() local [all …]
|
D | ioctl.c | 36 static long __validate_layout(struct ceph_mds_client *mdsc, in __validate_layout() argument 49 mutex_lock(&mdsc->mutex); in __validate_layout() 51 for (i = 0; i < mdsc->mdsmap->m_num_data_pg_pools; i++) in __validate_layout() 52 if (mdsc->mdsmap->m_data_pg_pools[i] == l->data_pool) { in __validate_layout() 56 mutex_unlock(&mdsc->mutex); in __validate_layout() 66 struct ceph_mds_client *mdsc = ceph_sb_to_client(inode->i_sb)->mdsc; in ceph_ioctl_set_layout() local 102 err = __validate_layout(mdsc, &nl); in ceph_ioctl_set_layout() 106 req = ceph_mdsc_create_request(mdsc, CEPH_MDS_OP_SETLAYOUT, in ceph_ioctl_set_layout() 124 err = ceph_mdsc_do_request(mdsc, NULL, req); in ceph_ioctl_set_layout() 141 struct ceph_mds_client *mdsc = ceph_sb_to_client(inode->i_sb)->mdsc; in ceph_ioctl_set_layout_policy() local [all …]
|
D | export.c | 63 struct ceph_mds_client *mdsc = ceph_sb_to_client(sb)->mdsc; in __fh_to_dentry() local 76 req = ceph_mdsc_create_request(mdsc, CEPH_MDS_OP_LOOKUPINO, in __fh_to_dentry() 88 err = ceph_mdsc_do_request(mdsc, NULL, req); in __fh_to_dentry() 131 struct ceph_mds_client *mdsc = ceph_sb_to_client(sb)->mdsc; in __get_parent() local 138 req = ceph_mdsc_create_request(mdsc, CEPH_MDS_OP_LOOKUPPARENT, in __get_parent() 159 err = ceph_mdsc_do_request(mdsc, NULL, req); in __get_parent() 217 struct ceph_mds_client *mdsc; in ceph_get_name() local 221 mdsc = ceph_inode_to_client(d_inode(child))->mdsc; in ceph_get_name() 222 req = ceph_mdsc_create_request(mdsc, CEPH_MDS_OP_LOOKUPNAME, in ceph_get_name() 234 err = ceph_mdsc_do_request(mdsc, NULL, req); in ceph_get_name()
|
D | super.h | 85 struct ceph_mds_client *mdsc; member 604 extern void ceph_caps_init(struct ceph_mds_client *mdsc); 605 extern void ceph_caps_finalize(struct ceph_mds_client *mdsc); 606 extern void ceph_adjust_min_caps(struct ceph_mds_client *mdsc, int delta); 607 extern void ceph_reserve_caps(struct ceph_mds_client *mdsc, 609 extern int ceph_unreserve_caps(struct ceph_mds_client *mdsc, 719 struct ceph_snap_realm *ceph_lookup_snap_realm(struct ceph_mds_client *mdsc, 721 extern void ceph_get_snap_realm(struct ceph_mds_client *mdsc, 723 extern void ceph_put_snap_realm(struct ceph_mds_client *mdsc, 728 extern void ceph_handle_snap(struct ceph_mds_client *mdsc, [all …]
|
D | locks.c | 12 static int ceph_lock_wait_for_completion(struct ceph_mds_client *mdsc, 39 struct ceph_mds_client *mdsc = ceph_sb_to_client(inode->i_sb)->mdsc; in ceph_lock_message() local 48 req = ceph_mdsc_create_request(mdsc, operation, USE_AUTH_MDS); in ceph_lock_message() 79 err = ceph_mdsc_do_request(mdsc, inode, req); in ceph_lock_message() 107 static int ceph_lock_wait_for_completion(struct ceph_mds_client *mdsc, in ceph_lock_wait_for_completion() argument 130 intr_req = ceph_mdsc_create_request(mdsc, CEPH_MDS_OP_SETFILELOCK, in ceph_lock_wait_for_completion() 143 err = ceph_mdsc_do_request(mdsc, inode, intr_req); in ceph_lock_wait_for_completion()
|
D | super.c | 42 ceph_mdsc_close_sessions(fsc->mdsc); in ceph_put_super() 95 ceph_flush_dirty_caps(fsc->mdsc); in ceph_sync_fs() 102 ceph_mdsc_sync(fsc->mdsc); in ceph_sync_fs() 520 ceph_mdsc_handle_mdsmap(fsc->mdsc, msg); in extra_mon_dispatch() 523 ceph_mdsc_handle_fsmap(fsc->mdsc, msg); in extra_mon_dispatch() 741 ceph_mdsc_force_umount(fsc->mdsc); in ceph_umount_begin() 766 struct ceph_mds_client *mdsc = fsc->mdsc; in open_root_dentry() local 773 req = ceph_mdsc_create_request(mdsc, CEPH_MDS_OP_GETATTR, USE_ANY_MDS); in open_root_dentry() 788 err = ceph_mdsc_do_request(mdsc, NULL, req); in open_root_dentry() 1019 ceph_mdsc_close_sessions(fsc->mdsc); in ceph_mount() [all …]
|
D | xattr.c | 887 struct ceph_mds_client *mdsc = fsc->mdsc; in ceph_sync_setxattr() local 912 req = ceph_mdsc_create_request(mdsc, op, USE_AUTH_MDS); in ceph_sync_setxattr() 937 err = ceph_mdsc_do_request(mdsc, NULL, req); in ceph_sync_setxattr() 952 struct ceph_mds_client *mdsc = ceph_sb_to_client(inode->i_sb)->mdsc; in __ceph_setxattr() local 1004 if (!down_read_trylock(&mdsc->snap_rwsem)) { in __ceph_setxattr() 1006 down_read(&mdsc->snap_rwsem); in __ceph_setxattr() 1045 up_read(&mdsc->snap_rwsem); in __ceph_setxattr() 1055 up_read(&mdsc->snap_rwsem); in __ceph_setxattr()
|
D | addr.c | 1780 struct ceph_mds_client *mdsc = fsc->mdsc; in __ceph_pool_perm_get() local 1788 down_read(&mdsc->pool_perm_rwsem); in __ceph_pool_perm_get() 1789 p = &mdsc->pool_perm_tree.rb_node; in __ceph_pool_perm_get() 1810 up_read(&mdsc->pool_perm_rwsem); in __ceph_pool_perm_get() 1820 down_write(&mdsc->pool_perm_rwsem); in __ceph_pool_perm_get() 1821 p = &mdsc->pool_perm_tree.rb_node; in __ceph_pool_perm_get() 1845 up_write(&mdsc->pool_perm_rwsem); in __ceph_pool_perm_get() 1929 rb_insert_color(&perm->node, &mdsc->pool_perm_tree); in __ceph_pool_perm_get() 1932 up_write(&mdsc->pool_perm_rwsem); in __ceph_pool_perm_get() 2000 void ceph_pool_perm_destroy(struct ceph_mds_client *mdsc) in ceph_pool_perm_destroy() argument [all …]
|
D | inode.c | 546 struct ceph_mds_client *mdsc = in ceph_destroy_inode() local 547 ceph_sb_to_client(ci->vfs_inode.i_sb)->mdsc; in ceph_destroy_inode() 554 ceph_put_snap_realm(mdsc, realm); in ceph_destroy_inode() 738 struct ceph_mds_client *mdsc = ceph_inode_to_client(inode)->mdsc; in fill_inode() local 758 new_cap = ceph_get_cap(mdsc, caps_reservation); in fill_inode() 1006 ceph_put_cap(mdsc, new_cap); in fill_inode() 1895 struct ceph_mds_client *mdsc = ceph_sb_to_client(inode->i_sb)->mdsc; in __ceph_setattr() local 1908 req = ceph_mdsc_create_request(mdsc, CEPH_MDS_OP_SETATTR, in __ceph_setattr() 1921 if (!down_read_trylock(&mdsc->snap_rwsem)) { in __ceph_setattr() 1923 down_read(&mdsc->snap_rwsem); in __ceph_setattr() [all …]
|
D | file.c | 114 struct ceph_mds_client *mdsc = fsc->mdsc; in prepare_open_request() local 122 req = ceph_mdsc_create_request(mdsc, op, want_auth); in prepare_open_request() 187 struct ceph_mds_client *mdsc = ceph_sb_to_client(inode->i_sb)->mdsc; in ceph_renew_caps() local 228 err = ceph_mdsc_do_request(mdsc, NULL, req); in ceph_renew_caps() 245 struct ceph_mds_client *mdsc = fsc->mdsc; in ceph_open() local 321 err = ceph_mdsc_do_request(mdsc, NULL, req); in ceph_open() 340 struct ceph_mds_client *mdsc = fsc->mdsc; in ceph_atomic_open() local 387 err = ceph_mdsc_do_request(mdsc, in ceph_atomic_open()
|