Home
last modified time | relevance | path

Searched refs:ls (Results 1 – 25 of 40) sorted by relevance

12

/fs/dlm/
Dlockspace.c37 static ssize_t dlm_control_store(struct dlm_ls *ls, const char *buf, size_t len) in dlm_control_store() argument
45 ls = dlm_find_lockspace_local(ls->ls_local_handle); in dlm_control_store()
46 if (!ls) in dlm_control_store()
51 dlm_ls_stop(ls); in dlm_control_store()
54 dlm_ls_start(ls); in dlm_control_store()
59 dlm_put_lockspace(ls); in dlm_control_store()
63 static ssize_t dlm_event_store(struct dlm_ls *ls, const char *buf, size_t len) in dlm_event_store() argument
65 int rc = kstrtoint(buf, 0, &ls->ls_uevent_result); in dlm_event_store()
69 set_bit(LSFL_UEVENT_WAIT, &ls->ls_flags); in dlm_event_store()
70 wake_up(&ls->ls_uevent_wait); in dlm_event_store()
[all …]
Drecoverd.c33 static int enable_locking(struct dlm_ls *ls, uint64_t seq) in enable_locking() argument
37 down_write(&ls->ls_recv_active); in enable_locking()
39 spin_lock(&ls->ls_recover_lock); in enable_locking()
40 if (ls->ls_recover_seq == seq) { in enable_locking()
41 set_bit(LSFL_RUNNING, &ls->ls_flags); in enable_locking()
43 up_write(&ls->ls_in_recovery); in enable_locking()
44 clear_bit(LSFL_RECOVER_LOCK, &ls->ls_flags); in enable_locking()
47 spin_unlock(&ls->ls_recover_lock); in enable_locking()
49 up_write(&ls->ls_recv_active); in enable_locking()
53 static int ls_recover(struct dlm_ls *ls, struct dlm_recover *rv) in ls_recover() argument
[all …]
Drecover.c44 int dlm_wait_function(struct dlm_ls *ls, int (*testfn) (struct dlm_ls *ls)) in dlm_wait_function() argument
50 rv = wait_event_timeout(ls->ls_wait_general, in dlm_wait_function()
51 testfn(ls) || dlm_recovery_stopped(ls), in dlm_wait_function()
57 if (dlm_recovery_stopped(ls)) { in dlm_wait_function()
58 log_debug(ls, "dlm_wait_function aborted"); in dlm_wait_function()
72 uint32_t dlm_recover_status(struct dlm_ls *ls) in dlm_recover_status() argument
75 spin_lock(&ls->ls_recover_lock); in dlm_recover_status()
76 status = ls->ls_recover_status; in dlm_recover_status()
77 spin_unlock(&ls->ls_recover_lock); in dlm_recover_status()
81 static void _set_recover_status(struct dlm_ls *ls, uint32_t status) in _set_recover_status() argument
[all …]
Dmember.c29 void dlm_slot_save(struct dlm_ls *ls, struct dlm_rcom *rc, in dlm_slot_save() argument
41 void dlm_slots_copy_out(struct dlm_ls *ls, struct dlm_rcom *rc) in dlm_slots_copy_out() argument
51 for (i = 0; i < ls->ls_slots_size; i++) { in dlm_slots_copy_out()
52 slot = &ls->ls_slots[i]; in dlm_slots_copy_out()
63 static void log_slots(struct dlm_ls *ls, uint32_t gen, int num_slots, in log_slots() argument
95 log_rinfo(ls, "generation %u slots %d%s", gen, num_slots, line); in log_slots()
98 int dlm_slots_copy_in(struct dlm_ls *ls) in dlm_slots_copy_in() argument
101 struct dlm_rcom *rc = ls->ls_recover_buf; in dlm_slots_copy_in()
112 if (gen <= ls->ls_generation) { in dlm_slots_copy_in()
113 log_error(ls, "dlm_slots_copy_in gen %u old %u", in dlm_slots_copy_in()
[all …]
Drcom.c27 static int rcom_response(struct dlm_ls *ls) in rcom_response() argument
29 return test_bit(LSFL_RCOM_READY, &ls->ls_flags); in rcom_response()
32 static int create_rcom(struct dlm_ls *ls, int to_nodeid, int type, int len, in create_rcom() argument
51 rc->rc_header.h_lockspace = ls->ls_global_id; in create_rcom()
58 spin_lock(&ls->ls_recover_lock); in create_rcom()
59 rc->rc_seq = ls->ls_recover_seq; in create_rcom()
60 spin_unlock(&ls->ls_recover_lock); in create_rcom()
67 static void send_rcom(struct dlm_ls *ls, struct dlm_mhandle *mh, in send_rcom() argument
74 static void set_rcom_status(struct dlm_ls *ls, struct rcom_status *rs, in set_rcom_status() argument
84 static void set_rcom_config(struct dlm_ls *ls, struct rcom_config *rf, in set_rcom_config() argument
[all …]
Drequestqueue.c34 void dlm_add_requestqueue(struct dlm_ls *ls, int nodeid, struct dlm_message *ms) in dlm_add_requestqueue() argument
45 e->recover_seq = ls->ls_recover_seq & 0xFFFFFFFF; in dlm_add_requestqueue()
49 mutex_lock(&ls->ls_requestqueue_mutex); in dlm_add_requestqueue()
50 list_add_tail(&e->list, &ls->ls_requestqueue); in dlm_add_requestqueue()
51 mutex_unlock(&ls->ls_requestqueue_mutex); in dlm_add_requestqueue()
65 int dlm_process_requestqueue(struct dlm_ls *ls) in dlm_process_requestqueue() argument
71 mutex_lock(&ls->ls_requestqueue_mutex); in dlm_process_requestqueue()
74 if (list_empty(&ls->ls_requestqueue)) { in dlm_process_requestqueue()
75 mutex_unlock(&ls->ls_requestqueue_mutex); in dlm_process_requestqueue()
79 e = list_entry(ls->ls_requestqueue.next, struct rq_entry, list); in dlm_process_requestqueue()
[all …]
Ddir.c35 int dlm_hash2nodeid(struct dlm_ls *ls, uint32_t hash) in dlm_hash2nodeid() argument
39 if (ls->ls_num_nodes == 1) in dlm_hash2nodeid()
42 node = (hash >> 16) % ls->ls_total_weight; in dlm_hash2nodeid()
43 return ls->ls_node_array[node]; in dlm_hash2nodeid()
52 void dlm_recover_dir_nodeid(struct dlm_ls *ls) in dlm_recover_dir_nodeid() argument
56 down_read(&ls->ls_root_sem); in dlm_recover_dir_nodeid()
57 list_for_each_entry(r, &ls->ls_root_list, res_root_list) { in dlm_recover_dir_nodeid()
58 r->res_dir_nodeid = dlm_hash2nodeid(ls, r->res_hash); in dlm_recover_dir_nodeid()
60 up_read(&ls->ls_root_sem); in dlm_recover_dir_nodeid()
63 int dlm_recover_directory(struct dlm_ls *ls) in dlm_recover_directory() argument
[all …]
Dlock.c91 static void do_purge(struct dlm_ls *ls, int nodeid, int pid);
205 static inline void dlm_lock_recovery(struct dlm_ls *ls) in dlm_lock_recovery() argument
207 down_read(&ls->ls_in_recovery); in dlm_lock_recovery()
210 void dlm_unlock_recovery(struct dlm_ls *ls) in dlm_unlock_recovery() argument
212 up_read(&ls->ls_in_recovery); in dlm_unlock_recovery()
215 int dlm_lock_recovery_try(struct dlm_ls *ls) in dlm_lock_recovery_try() argument
217 return down_read_trylock(&ls->ls_in_recovery); in dlm_lock_recovery_try()
351 struct dlm_ls *ls = r->res_ls; in put_rsb() local
354 spin_lock(&ls->ls_rsbtbl[bucket].lock); in put_rsb()
356 spin_unlock(&ls->ls_rsbtbl[bucket].lock); in put_rsb()
[all …]
Dlock.h17 void dlm_dump_rsb_name(struct dlm_ls *ls, char *name, int len);
19 void dlm_receive_message_saved(struct dlm_ls *ls, struct dlm_message *ms,
26 void dlm_scan_rsbs(struct dlm_ls *ls);
27 int dlm_lock_recovery_try(struct dlm_ls *ls);
28 void dlm_unlock_recovery(struct dlm_ls *ls);
29 void dlm_scan_waiters(struct dlm_ls *ls);
30 void dlm_scan_timeout(struct dlm_ls *ls);
31 void dlm_adjust_timeouts(struct dlm_ls *ls);
32 int dlm_master_lookup(struct dlm_ls *ls, int nodeid, char *name, int len,
38 void dlm_recover_purge(struct dlm_ls *ls);
[all …]
Drecover.h17 int dlm_wait_function(struct dlm_ls *ls, int (*testfn) (struct dlm_ls *ls));
18 uint32_t dlm_recover_status(struct dlm_ls *ls);
19 void dlm_set_recover_status(struct dlm_ls *ls, uint32_t status);
20 int dlm_recover_members_wait(struct dlm_ls *ls);
21 int dlm_recover_directory_wait(struct dlm_ls *ls);
22 int dlm_recover_locks_wait(struct dlm_ls *ls);
23 int dlm_recover_done_wait(struct dlm_ls *ls);
24 int dlm_recover_masters(struct dlm_ls *ls);
25 int dlm_recover_master_reply(struct dlm_ls *ls, struct dlm_rcom *rc);
26 int dlm_recover_locks(struct dlm_ls *ls);
[all …]
Dast.c56 struct dlm_ls *ls = lkb->lkb_resource->res_ls; in dlm_add_lkb_callback() local
81 log_debug(ls, "skip %x add bast %llu mode %d " in dlm_add_lkb_callback()
103 log_error(ls, "no callbacks %x %llu flags %x mode %d sb %d %x", in dlm_add_lkb_callback()
114 int dlm_rem_lkb_callback(struct dlm_ls *ls, struct dlm_lkb *lkb, in dlm_rem_lkb_callback() argument
149 log_debug(ls, "skip %x bast %llu mode %d " in dlm_rem_lkb_callback()
178 struct dlm_ls *ls = lkb->lkb_resource->res_ls; in dlm_add_cb() local
201 if (test_bit(LSFL_CB_DELAY, &ls->ls_flags)) { in dlm_add_cb()
202 mutex_lock(&ls->ls_cb_mutex); in dlm_add_cb()
203 list_add(&lkb->lkb_cb_list, &ls->ls_cb_delay); in dlm_add_cb()
204 mutex_unlock(&ls->ls_cb_mutex); in dlm_add_cb()
[all …]
Ddebug_fs.c425 struct dlm_ls *ls = seq->private; in table_seq_start() local
435 if (bucket >= ls->ls_rsbtbl_size) in table_seq_start()
452 tree = toss ? &ls->ls_rsbtbl[bucket].toss : &ls->ls_rsbtbl[bucket].keep; in table_seq_start()
454 spin_lock(&ls->ls_rsbtbl[bucket].lock); in table_seq_start()
462 spin_unlock(&ls->ls_rsbtbl[bucket].lock); in table_seq_start()
467 spin_unlock(&ls->ls_rsbtbl[bucket].lock); in table_seq_start()
480 if (bucket >= ls->ls_rsbtbl_size) { in table_seq_start()
484 tree = toss ? &ls->ls_rsbtbl[bucket].toss : &ls->ls_rsbtbl[bucket].keep; in table_seq_start()
486 spin_lock(&ls->ls_rsbtbl[bucket].lock); in table_seq_start()
493 spin_unlock(&ls->ls_rsbtbl[bucket].lock); in table_seq_start()
[all …]
Duser.c181 struct dlm_ls *ls; in dlm_user_add_ast() local
189 ls = lkb->lkb_resource->res_ls; in dlm_user_add_ast()
190 mutex_lock(&ls->ls_clear_proc_locks); in dlm_user_add_ast()
236 mutex_unlock(&ls->ls_clear_proc_locks); in dlm_user_add_ast()
242 struct dlm_ls *ls; in device_user_lock() local
247 ls = dlm_find_lockspace_local(proc->lockspace); in device_user_lock()
248 if (!ls) in device_user_lock()
268 error = dlm_user_convert(ls, ua, in device_user_lock()
273 error = dlm_user_adopt_orphan(ls, ua, in device_user_lock()
281 error = dlm_user_request(ls, ua, in device_user_lock()
[all …]
Dmember.h16 int dlm_ls_stop(struct dlm_ls *ls);
17 int dlm_ls_start(struct dlm_ls *ls);
18 void dlm_clear_members(struct dlm_ls *ls);
19 void dlm_clear_members_gone(struct dlm_ls *ls);
20 int dlm_recover_members(struct dlm_ls *ls, struct dlm_recover *rv,int *neg_out);
21 int dlm_is_removed(struct dlm_ls *ls, int nodeid);
22 int dlm_is_member(struct dlm_ls *ls, int nodeid);
24 void dlm_slot_save(struct dlm_ls *ls, struct dlm_rcom *rc,
26 void dlm_slots_copy_out(struct dlm_ls *ls, struct dlm_rcom *rc);
27 int dlm_slots_copy_in(struct dlm_ls *ls);
[all …]
Dplock.c80 static void do_unlock_close(struct dlm_ls *ls, u64 number, in do_unlock_close() argument
91 op->info.fsid = ls->ls_global_id; in do_unlock_close()
107 struct dlm_ls *ls; in dlm_posix_lock() local
112 ls = dlm_find_lockspace_local(lockspace); in dlm_posix_lock()
113 if (!ls) in dlm_posix_lock()
127 op->info.fsid = ls->ls_global_id; in dlm_posix_lock()
150 log_debug(ls, "dlm_posix_lock: wait killed %llx", in dlm_posix_lock()
156 do_unlock_close(ls, number, file, fl); in dlm_posix_lock()
166 log_error(ls, "dlm_posix_lock: op on list %llx", in dlm_posix_lock()
176 log_error(ls, "dlm_posix_lock: vfs lock error %llx", in dlm_posix_lock()
[all …]
Ddlm_internal.h65 #define log_error(ls, fmt, args...) \ argument
66 printk(KERN_ERR "dlm: %s: " fmt "\n", (ls)->ls_name , ##args)
68 #define log_rinfo(ls, fmt, args...) \ argument
72 (ls)->ls_name, ##args); \
75 (ls)->ls_name , ##args); \
78 #define log_debug(ls, fmt, args...) \ argument
82 (ls)->ls_name , ##args); \
85 #define log_limit(ls, fmt, args...) \ argument
89 (ls)->ls_name , ##args); \
702 static inline int dlm_locking_stopped(struct dlm_ls *ls) in dlm_locking_stopped() argument
[all …]
Dast.h19 int dlm_rem_lkb_callback(struct dlm_ls *ls, struct dlm_lkb *lkb,
25 int dlm_callback_start(struct dlm_ls *ls);
26 void dlm_callback_stop(struct dlm_ls *ls);
27 void dlm_callback_suspend(struct dlm_ls *ls);
28 void dlm_callback_resume(struct dlm_ls *ls);
Drecoverd.h17 void dlm_recoverd_stop(struct dlm_ls *ls);
18 int dlm_recoverd_start(struct dlm_ls *ls);
19 void dlm_recoverd_suspend(struct dlm_ls *ls);
20 void dlm_recoverd_resume(struct dlm_ls *ls);
Drequestqueue.h16 void dlm_add_requestqueue(struct dlm_ls *ls, int nodeid, struct dlm_message *ms);
17 int dlm_process_requestqueue(struct dlm_ls *ls);
18 void dlm_wait_requestqueue(struct dlm_ls *ls);
19 void dlm_purge_requestqueue(struct dlm_ls *ls);
Ddir.h18 int dlm_hash2nodeid(struct dlm_ls *ls, uint32_t hash);
19 void dlm_recover_dir_nodeid(struct dlm_ls *ls);
20 int dlm_recover_directory(struct dlm_ls *ls);
21 void dlm_copy_master_names(struct dlm_ls *ls, char *inbuf, int inlen,
Dmemory.c45 char *dlm_allocate_lvb(struct dlm_ls *ls) in dlm_allocate_lvb() argument
49 p = kzalloc(ls->ls_lvblen, GFP_NOFS); in dlm_allocate_lvb()
58 struct dlm_rsb *dlm_allocate_rsb(struct dlm_ls *ls) in dlm_allocate_rsb() argument
73 struct dlm_lkb *dlm_allocate_lkb(struct dlm_ls *ls) in dlm_allocate_lkb() argument
Dmemory.h19 struct dlm_rsb *dlm_allocate_rsb(struct dlm_ls *ls);
21 struct dlm_lkb *dlm_allocate_lkb(struct dlm_ls *ls);
23 char *dlm_allocate_lvb(struct dlm_ls *ls);
/fs/gfs2/
Dlock_dlm.c256 struct lm_lockstruct *ls = &gl->gl_name.ln_sbd->sd_lockstruct; in gdlm_lock() local
278 return dlm_lock(ls->ls_dlm, req, &gl->gl_lksb, lkf, strname, in gdlm_lock()
285 struct lm_lockstruct *ls = &sdp->sd_lockstruct; in gdlm_put_lock() local
310 error = dlm_unlock(ls->ls_dlm, gl->gl_lksb.sb_lkid, DLM_LKF_VALBLK, in gdlm_put_lock()
322 struct lm_lockstruct *ls = &gl->gl_name.ln_sbd->sd_lockstruct; in gdlm_cancel() local
323 dlm_unlock(ls->ls_dlm, gl->gl_lksb.sb_lkid, DLM_LKF_CANCEL, NULL, gl); in gdlm_cancel()
468 static void control_lvb_read(struct lm_lockstruct *ls, uint32_t *lvb_gen, in control_lvb_read() argument
472 memcpy(lvb_bits, ls->ls_control_lvb, GDLM_LVB_SIZE); in control_lvb_read()
477 static void control_lvb_write(struct lm_lockstruct *ls, uint32_t lvb_gen, in control_lvb_write() argument
481 memcpy(ls->ls_control_lvb, lvb_bits, GDLM_LVB_SIZE); in control_lvb_write()
[all …]
Dsys.c329 struct lm_lockstruct *ls = &sdp->sd_lockstruct; in block_show() local
333 if (test_bit(DFL_BLOCK_LOCKS, &ls->ls_recover_flags)) in block_show()
341 struct lm_lockstruct *ls = &sdp->sd_lockstruct; in block_store() local
349 set_bit(DFL_BLOCK_LOCKS, &ls->ls_recover_flags); in block_store()
351 clear_bit(DFL_BLOCK_LOCKS, &ls->ls_recover_flags); in block_store()
385 struct lm_lockstruct *ls = &sdp->sd_lockstruct; in lkfirst_show() local
386 return sprintf(buf, "%d\n", ls->ls_first); in lkfirst_show()
418 struct lm_lockstruct *ls = &sdp->sd_lockstruct; in first_done_show() local
419 return sprintf(buf, "%d\n", !!test_bit(DFL_FIRST_MOUNT_DONE, &ls->ls_recover_flags)); in first_done_show()
467 struct lm_lockstruct *ls = &sdp->sd_lockstruct; in recover_done_show() local
[all …]
/fs/nfsd/
Dnfs4layouts.c164 struct nfs4_layout_stateid *ls = layoutstateid(stid); in nfsd4_free_layout_stateid() local
165 struct nfs4_client *clp = ls->ls_stid.sc_client; in nfsd4_free_layout_stateid()
166 struct nfs4_file *fp = ls->ls_stid.sc_file; in nfsd4_free_layout_stateid()
168 trace_layoutstate_free(&ls->ls_stid.sc_stateid); in nfsd4_free_layout_stateid()
171 list_del_init(&ls->ls_perclnt); in nfsd4_free_layout_stateid()
175 list_del_init(&ls->ls_perfile); in nfsd4_free_layout_stateid()
178 if (!nfsd4_layout_ops[ls->ls_layout_type]->disable_recalls) in nfsd4_free_layout_stateid()
179 vfs_setlease(ls->ls_file, F_UNLCK, NULL, (void **)&ls); in nfsd4_free_layout_stateid()
180 fput(ls->ls_file); in nfsd4_free_layout_stateid()
182 if (ls->ls_recalled) in nfsd4_free_layout_stateid()
[all …]

12