| /linux/fs/ocfs2/dlm/ ! |
| H A D | dlmdomain.c | 143 static void dlm_unregister_domain_handlers(struct dlm_ctxt *dlm); 145 void __dlm_unhash_lockres(struct dlm_ctxt *dlm, struct dlm_lock_resource *res) in __dlm_unhash_lockres() argument 150 mlog(0, "%s: Unhash res %.*s\n", dlm->name, res->lockname.len, in __dlm_unhash_lockres() 156 void __dlm_insert_lockres(struct dlm_ctxt *dlm, struct dlm_lock_resource *res) in __dlm_insert_lockres() argument 160 assert_spin_locked(&dlm->spinlock); in __dlm_insert_lockres() 162 bucket = dlm_lockres_hash(dlm, res->lockname.hash); in __dlm_insert_lockres() 169 mlog(0, "%s: Hash res %.*s\n", dlm->name, res->lockname.len, in __dlm_insert_lockres() 173 struct dlm_lock_resource * __dlm_lookup_lockres_full(struct dlm_ctxt *dlm, in __dlm_lookup_lockres_full() argument 183 assert_spin_locked(&dlm->spinlock); in __dlm_lookup_lockres_full() 185 bucket = dlm_lockres_hash(dlm, hash); in __dlm_lookup_lockres_full() [all …]
|
| H A D | dlmrecovery.c | 38 static void dlm_do_local_recovery_cleanup(struct dlm_ctxt *dlm, u8 dead_node); 41 static int dlm_do_recovery(struct dlm_ctxt *dlm); 43 static int dlm_pick_recovery_master(struct dlm_ctxt *dlm); 44 static int dlm_remaster_locks(struct dlm_ctxt *dlm, u8 dead_node); 45 static int dlm_init_recovery_area(struct dlm_ctxt *dlm, u8 dead_node); 46 static int dlm_request_all_locks(struct dlm_ctxt *dlm, 48 static void dlm_destroy_recovery_area(struct dlm_ctxt *dlm); 55 static int dlm_send_mig_lockres_msg(struct dlm_ctxt *dlm, 60 static int dlm_process_recovery_data(struct dlm_ctxt *dlm, 63 static int dlm_send_finalize_reco_message(struct dlm_ctxt *dlm); [all …]
|
| H A D | dlmmaster.c | 38 static void dlm_mle_node_down(struct dlm_ctxt *dlm, 42 static void dlm_mle_node_up(struct dlm_ctxt *dlm, 48 static int dlm_do_assert_master(struct dlm_ctxt *dlm, 53 static inline int dlm_mle_equal(struct dlm_ctxt *dlm, in dlm_mle_equal() argument 58 if (dlm != mle->dlm) in dlm_mle_equal() 75 struct dlm_ctxt *dlm, 81 static int dlm_find_mle(struct dlm_ctxt *dlm, 89 static int dlm_wait_for_lock_mastery(struct dlm_ctxt *dlm, 93 static int dlm_restart_lock_mastery(struct dlm_ctxt *dlm, 97 static int dlm_add_migration_mle(struct dlm_ctxt *dlm, [all …]
|
| H A D | dlmthread.c | 38 static void dlm_flush_asts(struct dlm_ctxt *dlm); 106 void __dlm_lockres_calc_usage(struct dlm_ctxt *dlm, in __dlm_lockres_calc_usage() argument 109 assert_spin_locked(&dlm->spinlock); in __dlm_lockres_calc_usage() 115 dlm->name, res->lockname.len, res->lockname.name); in __dlm_lockres_calc_usage() 119 list_add_tail(&res->purge, &dlm->purge_list); in __dlm_lockres_calc_usage() 120 dlm->purge_count++; in __dlm_lockres_calc_usage() 124 dlm->name, res->lockname.len, res->lockname.name); in __dlm_lockres_calc_usage() 128 dlm->purge_count--; in __dlm_lockres_calc_usage() 132 void dlm_lockres_calc_usage(struct dlm_ctxt *dlm, in dlm_lockres_calc_usage() argument 135 spin_lock(&dlm->spinlock); in dlm_lockres_calc_usage() [all …]
|
| H A D | dlmast.c | 34 static void dlm_update_lvb(struct dlm_ctxt *dlm, struct dlm_lock_resource *res, 36 static int dlm_should_cancel_bast(struct dlm_ctxt *dlm, struct dlm_lock *lock); 47 static int dlm_should_cancel_bast(struct dlm_ctxt *dlm, struct dlm_lock *lock) in dlm_should_cancel_bast() argument 49 assert_spin_locked(&dlm->ast_lock); in dlm_should_cancel_bast() 74 void __dlm_queue_ast(struct dlm_ctxt *dlm, struct dlm_lock *lock) in __dlm_queue_ast() argument 78 BUG_ON(!dlm); in __dlm_queue_ast() 83 assert_spin_locked(&dlm->ast_lock); in __dlm_queue_ast() 88 dlm->name, res->lockname.len, res->lockname.name, in __dlm_queue_ast() 96 dlm->name, res->lockname.len, res->lockname.name, in __dlm_queue_ast() 105 if (dlm_should_cancel_bast(dlm, lock)) { in __dlm_queue_ast() [all …]
|
| H A D | dlmdebug.c | 296 static int debug_purgelist_print(struct dlm_ctxt *dlm, char *buf, int len) in debug_purgelist_print() argument 303 "Dumping Purgelist for Domain: %s\n", dlm->name); in debug_purgelist_print() 305 spin_lock(&dlm->spinlock); in debug_purgelist_print() 306 list_for_each_entry(res, &dlm->purge_list, purge) { in debug_purgelist_print() 318 spin_unlock(&dlm->spinlock); in debug_purgelist_print() 327 struct dlm_ctxt *dlm = inode->i_private; in debug_purgelist_open() local 334 i_size_write(inode, debug_purgelist_print(dlm, buf, PAGE_SIZE - 1)); in debug_purgelist_open() 352 static int debug_mle_print(struct dlm_ctxt *dlm, char *buf, int len) in debug_mle_print() argument 360 "Dumping MLEs for Domain: %s\n", dlm->name); in debug_mle_print() 362 spin_lock(&dlm->master_lock); in debug_mle_print() [all …]
|
| H A D | dlmcommon.h | 42 struct dlm_ctxt *dlm; member 170 static inline struct hlist_head *dlm_lockres_hash(struct dlm_ctxt *dlm, unsigned i) in dlm_lockres_hash() argument 172 return dlm->lockres_hash[(i / DLM_BUCKETS_PER_PAGE) % DLM_HASH_PAGES] + (i % DLM_BUCKETS_PER_PAGE); in dlm_lockres_hash() 175 static inline struct hlist_head *dlm_master_hash(struct dlm_ctxt *dlm, in dlm_master_hash() argument 178 return dlm->master_hash[(i / DLM_BUCKETS_PER_PAGE) % DLM_HASH_PAGES] + in dlm_master_hash() 224 struct dlm_ctxt *dlm; member 234 static inline void dlm_init_work_item(struct dlm_ctxt *dlm, in dlm_init_work_item() argument 242 i->dlm = dlm; /* must have already done a dlm_grab on this! */ in dlm_init_work_item() 247 static inline void __dlm_set_joining_node(struct dlm_ctxt *dlm, in __dlm_set_joining_node() argument 250 assert_spin_locked(&dlm->spinlock); in __dlm_set_joining_node() [all …]
|
| H A D | dlmunlock.c | 41 static enum dlm_status dlm_get_cancel_actions(struct dlm_ctxt *dlm, 46 static enum dlm_status dlm_get_unlock_actions(struct dlm_ctxt *dlm, 52 static enum dlm_status dlm_send_remote_unlock_request(struct dlm_ctxt *dlm, 81 static enum dlm_status dlmunlock_common(struct dlm_ctxt *dlm, in dlmunlock_common() argument 98 BUG_ON(res->owner != dlm->node_num); in dlmunlock_common() 100 BUG_ON(res->owner == dlm->node_num); in dlmunlock_common() 102 spin_lock(&dlm->ast_lock); in dlmunlock_common() 106 spin_unlock(&dlm->ast_lock); in dlmunlock_common() 140 status = dlm_get_cancel_actions(dlm, res, lock, lksb, &actions); in dlmunlock_common() 142 status = dlm_get_unlock_actions(dlm, res, lock, lksb, &actions); in dlmunlock_common() [all …]
|
| H A D | dlmlock.c | 43 static enum dlm_status dlm_send_remote_lock_request(struct dlm_ctxt *dlm, 101 static enum dlm_status dlmlock_master(struct dlm_ctxt *dlm, in dlmlock_master() argument 115 lock->ml.node != dlm->node_num) { in dlmlock_master() 143 "node %u for reco lock\n", dlm->name, in dlmlock_master() 154 "node %u for reco lock\n", dlm->name, in dlmlock_master() 170 dlm_queue_ast(dlm, lock); in dlmlock_master() 172 dlm_lockres_release_ast(dlm, res); in dlmlock_master() 174 dlm_lockres_calc_usage(dlm, res); in dlmlock_master() 176 dlm_kick_thread(dlm, res); in dlmlock_master() 197 static enum dlm_status dlmlock_remote(struct dlm_ctxt *dlm, in dlmlock_remote() argument [all …]
|
| H A D | dlmconvert.c | 41 static enum dlm_status __dlmconvert_master(struct dlm_ctxt *dlm, 46 static enum dlm_status dlm_send_remote_convert_request(struct dlm_ctxt *dlm, 59 enum dlm_status dlmconvert_master(struct dlm_ctxt *dlm, in dlmconvert_master() argument 72 status = __dlmconvert_master(dlm, res, lock, flags, type, in dlmconvert_master() 83 dlm_queue_ast(dlm, lock); in dlmconvert_master() 85 dlm_lockres_release_ast(dlm, res); in dlmconvert_master() 88 dlm_kick_thread(dlm, res); in dlmconvert_master() 102 static enum dlm_status __dlmconvert_master(struct dlm_ctxt *dlm, in __dlmconvert_master() argument 192 if (lock->ml.node == dlm->node_num) in __dlmconvert_master() 249 enum dlm_status dlmconvert_remote(struct dlm_ctxt *dlm, in dlmconvert_remote() argument [all …]
|
| H A D | dlmdebug.h | 22 void dlm_debug_init(struct dlm_ctxt *dlm); 24 void dlm_create_debugfs_subroot(struct dlm_ctxt *dlm); 25 void dlm_destroy_debugfs_subroot(struct dlm_ctxt *dlm); 32 static inline void dlm_debug_init(struct dlm_ctxt *dlm) in dlm_debug_init() argument 35 static inline void dlm_create_debugfs_subroot(struct dlm_ctxt *dlm) in dlm_create_debugfs_subroot() argument 38 static inline void dlm_destroy_debugfs_subroot(struct dlm_ctxt *dlm) in dlm_destroy_debugfs_subroot() argument
|
| H A D | dlmdomain.h | 14 static inline int dlm_joined(struct dlm_ctxt *dlm) in dlm_joined() argument 19 if (dlm->dlm_state == DLM_CTXT_JOINED) in dlm_joined() 26 static inline int dlm_shutting_down(struct dlm_ctxt *dlm) in dlm_shutting_down() argument 31 if (dlm->dlm_state == DLM_CTXT_IN_SHUTDOWN) in dlm_shutting_down() 38 void dlm_fire_domain_eviction_callbacks(struct dlm_ctxt *dlm,
|
| H A D | dlmapi.h | 161 enum dlm_status dlmlock(struct dlm_ctxt *dlm, 171 enum dlm_status dlmunlock(struct dlm_ctxt *dlm, 184 void dlm_unregister_domain(struct dlm_ctxt *dlm); 197 void dlm_register_eviction_cb(struct dlm_ctxt *dlm,
|
| H A D | dlmconvert.h | 11 enum dlm_status dlmconvert_master(struct dlm_ctxt *dlm, 14 enum dlm_status dlmconvert_remote(struct dlm_ctxt *dlm,
|
| /linux/drivers/media/platform/renesas/vsp1/ ! |
| H A D | vsp1_dl.c | 187 struct vsp1_dl_manager *dlm; member 541 struct vsp1_dl_manager *dlm = dl->dlm; in vsp1_dl_get_pre_cmd() local 546 dl->pre_cmd = vsp1_dl_ext_cmd_get(dlm->cmdpool); in vsp1_dl_get_pre_cmd() 555 static struct vsp1_dl_list *vsp1_dl_list_alloc(struct vsp1_dl_manager *dlm) in vsp1_dl_list_alloc() argument 565 dl->dlm = dlm; in vsp1_dl_list_alloc() 568 dl->body0 = vsp1_dl_body_get(dlm->pool); in vsp1_dl_list_alloc() 611 struct vsp1_dl_list *vsp1_dl_list_get(struct vsp1_dl_manager *dlm) in vsp1_dl_list_get() argument 616 lockdep_assert_not_held(&dlm->lock); in vsp1_dl_list_get() 618 spin_lock_irqsave(&dlm->lock, flags); in vsp1_dl_list_get() 620 if (!list_empty(&dlm->free)) { in vsp1_dl_list_get() [all …]
|
| H A D | vsp1_dl.h | 57 void vsp1_dlm_destroy(struct vsp1_dl_manager *dlm); 58 void vsp1_dlm_reset(struct vsp1_dl_manager *dlm); 59 unsigned int vsp1_dlm_irq_frame_end(struct vsp1_dl_manager *dlm); 60 struct vsp1_dl_body *vsp1_dlm_dl_body_get(struct vsp1_dl_manager *dlm); 62 struct vsp1_dl_list *vsp1_dl_list_get(struct vsp1_dl_manager *dlm);
|
| H A D | vsp1_wpf.c | 207 vsp1_dlm_destroy(wpf->dlm); in vsp1_wpf_destroy() 217 dl_next = vsp1_dl_list_get(wpf->dlm); in wpf_configure_writeback_chain() 589 wpf->dlm = vsp1_dlm_create(vsp1, index, 64); in vsp1_wpf_create() 590 if (!wpf->dlm) { in vsp1_wpf_create()
|
| H A D | vsp1_vspx.c | 391 vsp1_dlm_reset(pipe->output->dlm); in vsp1_isp_stop_streaming() 427 job->dl = vsp1_dl_list_get(pipe->output->dlm); in vsp1_isp_job_prepare() 469 second_dl = vsp1_dl_list_get(pipe->output->dlm); in vsp1_isp_job_prepare()
|
| /linux/Documentation/translations/zh_CN/filesystems/ ! |
| H A D | gfs2.rst | 31 - 使用分布式锁管理器 (dlm) 进行节点间锁定。 32 该 dlm 位于 linux/fs/dlm/ 42 照文档配置 dlm 和 corosync 用户空间工具。
|
| H A D | gfs2-glocks.rst | 194 dlm DLM 请求数(glstats 文件中的 dcnt) 203 值,并附带每次接收到的dlm响应附加信息:
|
| /linux/fs/ocfs2/ ! |
| H A D | stack_o2cb.c | 322 struct dlm_ctxt *dlm; in o2cb_cluster_connect() local 355 dlm = dlm_register_domain(conn->cc_name, dlm_key, &fs_version); in o2cb_cluster_connect() 356 if (IS_ERR(dlm)) { in o2cb_cluster_connect() 357 rc = PTR_ERR(dlm); in o2cb_cluster_connect() 364 conn->cc_lockspace = dlm; in o2cb_cluster_connect() 366 dlm_register_eviction_cb(dlm, &priv->op_eviction_cb); in o2cb_cluster_connect() 378 struct dlm_ctxt *dlm = conn->cc_lockspace; in o2cb_cluster_disconnect() local 385 dlm_unregister_domain(dlm); in o2cb_cluster_disconnect()
|
| /linux/fs/dlm/ ! |
| H A D | Makefile | 2 obj-$(CONFIG_DLM) += dlm.o 3 dlm-y := ast.o \ 20 dlm-$(CONFIG_DLM_DEBUG) += debug_fs.o
|
| /linux/Documentation/filesystems/gfs2/ ! |
| H A D | index.rst | 25 - uses the distributed lock manager (dlm) for inter-node locking. 26 The dlm is found at linux/fs/dlm/ 38 will also need the dlm and corosync user space utilities configured as per the
|
| H A D | glocks.rst | 177 of dlm lock requests issued. 222 srtt Smoothed round trip time for non blocking dlm requests 224 srttb Smoothed round trip time for (potentially) blocking dlm requests 226 sirt Smoothed inter request time (for dlm requests) 228 dlm Number of dlm requests made (dcnt in glstats file) 238 for the glock in question, along with some addition information on each dlm 242 status The status of the dlm request 243 flags The dlm request flags
|
| /linux/arch/powerpc/kernel/ ! |
| H A D | udbg_16550.c | 126 unsigned int dll, dlm, divisor, prescaler, speed; in udbg_probe_uart_speed() local 136 dlm = udbg_uart_in(UART_DLM); in udbg_probe_uart_speed() 137 divisor = dlm << 8 | dll; in udbg_probe_uart_speed()
|