/fs/ocfs2/dlm/ |
D | dlmdomain.c | 160 static void dlm_unregister_domain_handlers(struct dlm_ctxt *dlm); 162 void __dlm_unhash_lockres(struct dlm_ctxt *dlm, struct dlm_lock_resource *res) in __dlm_unhash_lockres() argument 167 mlog(0, "%s: Unhash res %.*s\n", dlm->name, res->lockname.len, in __dlm_unhash_lockres() 173 void __dlm_insert_lockres(struct dlm_ctxt *dlm, struct dlm_lock_resource *res) in __dlm_insert_lockres() argument 177 assert_spin_locked(&dlm->spinlock); in __dlm_insert_lockres() 179 bucket = dlm_lockres_hash(dlm, res->lockname.hash); in __dlm_insert_lockres() 186 mlog(0, "%s: Hash res %.*s\n", dlm->name, res->lockname.len, in __dlm_insert_lockres() 190 struct dlm_lock_resource * __dlm_lookup_lockres_full(struct dlm_ctxt *dlm, in __dlm_lookup_lockres_full() argument 200 assert_spin_locked(&dlm->spinlock); in __dlm_lookup_lockres_full() 202 bucket = dlm_lockres_hash(dlm, hash); in __dlm_lookup_lockres_full() [all …]
|
D | dlmrecovery.c | 55 static void dlm_do_local_recovery_cleanup(struct dlm_ctxt *dlm, u8 dead_node); 58 static int dlm_do_recovery(struct dlm_ctxt *dlm); 60 static int dlm_pick_recovery_master(struct dlm_ctxt *dlm); 61 static int dlm_remaster_locks(struct dlm_ctxt *dlm, u8 dead_node); 62 static int dlm_init_recovery_area(struct dlm_ctxt *dlm, u8 dead_node); 63 static int dlm_request_all_locks(struct dlm_ctxt *dlm, 65 static void dlm_destroy_recovery_area(struct dlm_ctxt *dlm, u8 dead_node); 72 static int dlm_send_mig_lockres_msg(struct dlm_ctxt *dlm, 77 static int dlm_process_recovery_data(struct dlm_ctxt *dlm, 80 static int dlm_send_finalize_reco_message(struct dlm_ctxt *dlm); [all …]
|
D | dlmmaster.c | 55 static void dlm_mle_node_down(struct dlm_ctxt *dlm, 59 static void dlm_mle_node_up(struct dlm_ctxt *dlm, 65 static int dlm_do_assert_master(struct dlm_ctxt *dlm, 70 static inline int dlm_mle_equal(struct dlm_ctxt *dlm, in dlm_mle_equal() argument 75 if (dlm != mle->dlm) in dlm_mle_equal() 92 struct dlm_ctxt *dlm, 98 static int dlm_find_mle(struct dlm_ctxt *dlm, 106 static int dlm_wait_for_lock_mastery(struct dlm_ctxt *dlm, 110 static int dlm_restart_lock_mastery(struct dlm_ctxt *dlm, 114 static int dlm_add_migration_mle(struct dlm_ctxt *dlm, [all …]
|
D | dlmthread.c | 55 static void dlm_flush_asts(struct dlm_ctxt *dlm); 57 #define dlm_lock_is_remote(dlm, lock) ((lock)->ml.node != (dlm)->node_num) argument 125 void __dlm_lockres_calc_usage(struct dlm_ctxt *dlm, in __dlm_lockres_calc_usage() argument 128 assert_spin_locked(&dlm->spinlock); in __dlm_lockres_calc_usage() 134 dlm->name, res->lockname.len, res->lockname.name); in __dlm_lockres_calc_usage() 138 list_add_tail(&res->purge, &dlm->purge_list); in __dlm_lockres_calc_usage() 139 dlm->purge_count++; in __dlm_lockres_calc_usage() 143 dlm->name, res->lockname.len, res->lockname.name); in __dlm_lockres_calc_usage() 147 dlm->purge_count--; in __dlm_lockres_calc_usage() 151 void dlm_lockres_calc_usage(struct dlm_ctxt *dlm, in dlm_lockres_calc_usage() argument [all …]
|
D | dlmast.c | 51 static void dlm_update_lvb(struct dlm_ctxt *dlm, struct dlm_lock_resource *res, 53 static int dlm_should_cancel_bast(struct dlm_ctxt *dlm, struct dlm_lock *lock); 64 static int dlm_should_cancel_bast(struct dlm_ctxt *dlm, struct dlm_lock *lock) in dlm_should_cancel_bast() argument 66 assert_spin_locked(&dlm->ast_lock); in dlm_should_cancel_bast() 91 void __dlm_queue_ast(struct dlm_ctxt *dlm, struct dlm_lock *lock) in __dlm_queue_ast() argument 95 BUG_ON(!dlm); in __dlm_queue_ast() 100 assert_spin_locked(&dlm->ast_lock); in __dlm_queue_ast() 105 dlm->name, res->lockname.len, res->lockname.name, in __dlm_queue_ast() 113 dlm->name, res->lockname.len, res->lockname.name, in __dlm_queue_ast() 122 if (dlm_should_cancel_bast(dlm, lock)) { in __dlm_queue_ast() [all …]
|
D | dlmdebug.c | 365 static int debug_purgelist_print(struct dlm_ctxt *dlm, char *buf, int len) in debug_purgelist_print() argument 372 "Dumping Purgelist for Domain: %s\n", dlm->name); in debug_purgelist_print() 374 spin_lock(&dlm->spinlock); in debug_purgelist_print() 375 list_for_each_entry(res, &dlm->purge_list, purge) { in debug_purgelist_print() 387 spin_unlock(&dlm->spinlock); in debug_purgelist_print() 396 struct dlm_ctxt *dlm = inode->i_private; in debug_purgelist_open() local 403 i_size_write(inode, debug_purgelist_print(dlm, buf, PAGE_SIZE - 1)); in debug_purgelist_open() 421 static int debug_mle_print(struct dlm_ctxt *dlm, char *buf, int len) in debug_mle_print() argument 429 "Dumping MLEs for Domain: %s\n", dlm->name); in debug_mle_print() 431 spin_lock(&dlm->master_lock); in debug_mle_print() [all …]
|
D | dlmcommon.h | 62 struct dlm_ctxt *dlm; member 190 static inline struct hlist_head *dlm_lockres_hash(struct dlm_ctxt *dlm, unsigned i) in dlm_lockres_hash() argument 192 return dlm->lockres_hash[(i / DLM_BUCKETS_PER_PAGE) % DLM_HASH_PAGES] + (i % DLM_BUCKETS_PER_PAGE); in dlm_lockres_hash() 195 static inline struct hlist_head *dlm_master_hash(struct dlm_ctxt *dlm, in dlm_master_hash() argument 198 return dlm->master_hash[(i / DLM_BUCKETS_PER_PAGE) % DLM_HASH_PAGES] + in dlm_master_hash() 244 struct dlm_ctxt *dlm; member 254 static inline void dlm_init_work_item(struct dlm_ctxt *dlm, in dlm_init_work_item() argument 262 i->dlm = dlm; /* must have already done a dlm_grab on this! */ in dlm_init_work_item() 267 static inline void __dlm_set_joining_node(struct dlm_ctxt *dlm, in __dlm_set_joining_node() argument 270 assert_spin_locked(&dlm->spinlock); in __dlm_set_joining_node() [all …]
|
D | dlmunlock.c | 58 static enum dlm_status dlm_get_cancel_actions(struct dlm_ctxt *dlm, 63 static enum dlm_status dlm_get_unlock_actions(struct dlm_ctxt *dlm, 69 static enum dlm_status dlm_send_remote_unlock_request(struct dlm_ctxt *dlm, 98 static enum dlm_status dlmunlock_common(struct dlm_ctxt *dlm, in dlmunlock_common() argument 115 BUG_ON(res->owner != dlm->node_num); in dlmunlock_common() 117 BUG_ON(res->owner == dlm->node_num); in dlmunlock_common() 119 spin_lock(&dlm->ast_lock); in dlmunlock_common() 123 spin_unlock(&dlm->ast_lock); in dlmunlock_common() 157 status = dlm_get_cancel_actions(dlm, res, lock, lksb, &actions); in dlmunlock_common() 159 status = dlm_get_unlock_actions(dlm, res, lock, lksb, &actions); in dlmunlock_common() [all …]
|
D | dlmlock.c | 60 static enum dlm_status dlm_send_remote_lock_request(struct dlm_ctxt *dlm, 119 static enum dlm_status dlmlock_master(struct dlm_ctxt *dlm, in dlmlock_master() argument 133 lock->ml.node != dlm->node_num) { in dlmlock_master() 161 "node %u for reco lock\n", dlm->name, in dlmlock_master() 172 "node %u for reco lock\n", dlm->name, in dlmlock_master() 188 dlm_queue_ast(dlm, lock); in dlmlock_master() 190 dlm_lockres_release_ast(dlm, res); in dlmlock_master() 192 dlm_lockres_calc_usage(dlm, res); in dlmlock_master() 194 dlm_kick_thread(dlm, res); in dlmlock_master() 215 static enum dlm_status dlmlock_remote(struct dlm_ctxt *dlm, in dlmlock_remote() argument [all …]
|
D | dlmconvert.c | 58 static enum dlm_status __dlmconvert_master(struct dlm_ctxt *dlm, 63 static enum dlm_status dlm_send_remote_convert_request(struct dlm_ctxt *dlm, 76 enum dlm_status dlmconvert_master(struct dlm_ctxt *dlm, in dlmconvert_master() argument 89 status = __dlmconvert_master(dlm, res, lock, flags, type, in dlmconvert_master() 100 dlm_queue_ast(dlm, lock); in dlmconvert_master() 102 dlm_lockres_release_ast(dlm, res); in dlmconvert_master() 105 dlm_kick_thread(dlm, res); in dlmconvert_master() 119 static enum dlm_status __dlmconvert_master(struct dlm_ctxt *dlm, in __dlmconvert_master() argument 209 if (lock->ml.node == dlm->node_num) in __dlmconvert_master() 266 enum dlm_status dlmconvert_remote(struct dlm_ctxt *dlm, in dlmconvert_remote() argument [all …]
|
D | dlmdebug.h | 46 int dlm_debug_init(struct dlm_ctxt *dlm); 47 void dlm_debug_shutdown(struct dlm_ctxt *dlm); 49 int dlm_create_debugfs_subroot(struct dlm_ctxt *dlm); 50 void dlm_destroy_debugfs_subroot(struct dlm_ctxt *dlm); 57 static inline int dlm_debug_init(struct dlm_ctxt *dlm) in dlm_debug_init() argument 61 static inline void dlm_debug_shutdown(struct dlm_ctxt *dlm) in dlm_debug_shutdown() argument 64 static inline int dlm_create_debugfs_subroot(struct dlm_ctxt *dlm) in dlm_create_debugfs_subroot() argument 68 static inline void dlm_destroy_debugfs_subroot(struct dlm_ctxt *dlm) in dlm_destroy_debugfs_subroot() argument
|
D | dlmdomain.h | 31 static inline int dlm_joined(struct dlm_ctxt *dlm) in dlm_joined() argument 36 if (dlm->dlm_state == DLM_CTXT_JOINED) in dlm_joined() 43 static inline int dlm_shutting_down(struct dlm_ctxt *dlm) in dlm_shutting_down() argument 48 if (dlm->dlm_state == DLM_CTXT_IN_SHUTDOWN) in dlm_shutting_down() 55 void dlm_fire_domain_eviction_callbacks(struct dlm_ctxt *dlm,
|
D | dlmapi.h | 180 enum dlm_status dlmlock(struct dlm_ctxt *dlm, 190 enum dlm_status dlmunlock(struct dlm_ctxt *dlm, 203 void dlm_unregister_domain(struct dlm_ctxt *dlm); 216 void dlm_register_eviction_cb(struct dlm_ctxt *dlm,
|
D | dlmconvert.h | 28 enum dlm_status dlmconvert_master(struct dlm_ctxt *dlm, 31 enum dlm_status dlmconvert_remote(struct dlm_ctxt *dlm,
|
/fs/ocfs2/ |
D | stack_o2cb.c | 332 struct dlm_ctxt *dlm; in o2cb_cluster_connect() local 365 dlm = dlm_register_domain(conn->cc_name, dlm_key, &fs_version); in o2cb_cluster_connect() 366 if (IS_ERR(dlm)) { in o2cb_cluster_connect() 367 rc = PTR_ERR(dlm); in o2cb_cluster_connect() 374 conn->cc_lockspace = dlm; in o2cb_cluster_connect() 376 dlm_register_eviction_cb(dlm, &priv->op_eviction_cb); in o2cb_cluster_connect() 388 struct dlm_ctxt *dlm = conn->cc_lockspace; in o2cb_cluster_disconnect() local 395 dlm_unregister_domain(dlm); in o2cb_cluster_disconnect()
|
D | Makefile | 53 obj-$(CONFIG_OCFS2_FS_O2CB) += dlm/
|
D | Kconfig | 45 in conjunction with the DLM in fs/dlm. If you are using a
|
/fs/dlm/ |
D | Makefile | 2 obj-$(CONFIG_DLM) += dlm.o 3 dlm-y := ast.o \ 21 dlm-$(CONFIG_DLM_DEBUG) += debug_fs.o
|
D | Kconfig | 15 appear as a file in the "dlm" directory. The output is the
|
/fs/ |
D | Makefile | 64 obj-$(CONFIG_DLM) += dlm/
|
D | Kconfig | 310 source "fs/dlm/Kconfig"
|