Home
last modified time | relevance | path

Searched refs:dlm (Results 1 – 22 of 22) sorted by relevance

/linux-4.19.296/fs/ocfs2/dlm/
Ddlmdomain.c160 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 …]
Ddlmrecovery.c55 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);
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 …]
Ddlmthread.c55 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 …]
Ddlmmaster.c55 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 …]
Ddlmast.c51 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 …]
Ddlmdebug.c365 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 …]
Ddlmcommon.h62 struct dlm_ctxt *dlm; member
191 static inline struct hlist_head *dlm_lockres_hash(struct dlm_ctxt *dlm, unsigned i) in dlm_lockres_hash() argument
193 return dlm->lockres_hash[(i / DLM_BUCKETS_PER_PAGE) % DLM_HASH_PAGES] + (i % DLM_BUCKETS_PER_PAGE); in dlm_lockres_hash()
196 static inline struct hlist_head *dlm_master_hash(struct dlm_ctxt *dlm, in dlm_master_hash() argument
199 return dlm->master_hash[(i / DLM_BUCKETS_PER_PAGE) % DLM_HASH_PAGES] + in dlm_master_hash()
245 struct dlm_ctxt *dlm; member
255 static inline void dlm_init_work_item(struct dlm_ctxt *dlm, in dlm_init_work_item() argument
263 i->dlm = dlm; /* must have already done a dlm_grab on this! */ in dlm_init_work_item()
268 static inline void __dlm_set_joining_node(struct dlm_ctxt *dlm, in __dlm_set_joining_node() argument
271 assert_spin_locked(&dlm->spinlock); in __dlm_set_joining_node()
[all …]
Ddlmunlock.c58 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 …]
Ddlmlock.c60 static enum dlm_status dlm_send_remote_lock_request(struct dlm_ctxt *dlm,
118 static enum dlm_status dlmlock_master(struct dlm_ctxt *dlm, in dlmlock_master() argument
132 lock->ml.node != dlm->node_num) { in dlmlock_master()
160 "node %u for reco lock\n", dlm->name, in dlmlock_master()
171 "node %u for reco lock\n", dlm->name, in dlmlock_master()
187 dlm_queue_ast(dlm, lock); in dlmlock_master()
189 dlm_lockres_release_ast(dlm, res); in dlmlock_master()
191 dlm_lockres_calc_usage(dlm, res); in dlmlock_master()
193 dlm_kick_thread(dlm, res); in dlmlock_master()
214 static enum dlm_status dlmlock_remote(struct dlm_ctxt *dlm, in dlmlock_remote() argument
[all …]
Ddlmdebug.h46 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
Ddlmconvert.c58 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 …]
Ddlmdomain.h31 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,
Ddlmapi.h180 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,
Ddlmconvert.h28 enum dlm_status dlmconvert_master(struct dlm_ctxt *dlm,
31 enum dlm_status dlmconvert_remote(struct dlm_ctxt *dlm,
/linux-4.19.296/fs/dlm/
DMakefile2 obj-$(CONFIG_DLM) += dlm.o
3 dlm-y := ast.o \
21 dlm-$(CONFIG_DLM_DEBUG) += debug_fs.o
DKconfig15 appear as a file in the "dlm" directory. The output is the
/linux-4.19.296/fs/ocfs2/
Dstack_o2cb.c332 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()
DMakefile53 obj-$(CONFIG_OCFS2_FS_O2CB) += dlm/
DKconfig45 in conjunction with the DLM in fs/dlm. If you are using a
/linux-4.19.296/fs/
DMakefile64 obj-$(CONFIG_DLM) += dlm/
DKconfig315 source "fs/dlm/Kconfig"
/linux-4.19.296/
DMAINTAINERS4438 T: git git://git.kernel.org/pub/scm/linux/kernel/git/teigland/linux-dlm.git
4440 F: fs/dlm/