Lines Matching refs:block

100 	struct nlm_wait *block;  in nlmclnt_prepare_block()  local
102 block = kmalloc(sizeof(*block), GFP_KERNEL); in nlmclnt_prepare_block()
103 if (block != NULL) { in nlmclnt_prepare_block()
104 block->b_host = host; in nlmclnt_prepare_block()
105 block->b_lock = fl; in nlmclnt_prepare_block()
106 init_waitqueue_head(&block->b_wait); in nlmclnt_prepare_block()
107 block->b_status = nlm_lck_blocked; in nlmclnt_prepare_block()
110 list_add(&block->b_list, &nlm_blocked); in nlmclnt_prepare_block()
113 return block; in nlmclnt_prepare_block()
116 void nlmclnt_finish_block(struct nlm_wait *block) in nlmclnt_finish_block() argument
118 if (block == NULL) in nlmclnt_finish_block()
121 list_del(&block->b_list); in nlmclnt_finish_block()
123 kfree(block); in nlmclnt_finish_block()
129 int nlmclnt_block(struct nlm_wait *block, struct nlm_rqst *req, long timeout) in nlmclnt_block() argument
136 if (block == NULL) in nlmclnt_block()
147 ret = wait_event_interruptible_timeout(block->b_wait, in nlmclnt_block()
148 block->b_status != nlm_lck_blocked, in nlmclnt_block()
153 if (block->b_status == nlm_lck_denied_grace_period) in nlmclnt_block()
154 block->b_status = nlm_lck_blocked; in nlmclnt_block()
155 req->a_res.status = block->b_status; in nlmclnt_block()
166 struct nlm_wait *block; in nlmclnt_grant() local
174 list_for_each_entry(block, &nlm_blocked, b_list) { in nlmclnt_grant()
175 struct file_lock *fl_blocked = block->b_lock; in nlmclnt_grant()
187 if (!rpc_cmp_addr(nlm_addr(block->b_host), addr)) in nlmclnt_grant()
194 block->b_status = nlm_granted; in nlmclnt_grant()
195 wake_up(&block->b_wait); in nlmclnt_grant()
230 struct nlm_wait *block; in reclaimer() local
288 list_for_each_entry(block, &nlm_blocked, b_list) { in reclaimer()
289 if (block->b_host == host) { in reclaimer()
290 block->b_status = nlm_lck_denied_grace_period; in reclaimer()
291 wake_up(&block->b_wait); in reclaimer()