Lines Matching refs:lkb
28 void dlm_del_ast(struct dlm_lkb *lkb)
31 if (lkb->lkb_ast_type & (AST_COMP | AST_BAST))
32 list_del(&lkb->lkb_astqueue);
36 void dlm_add_ast(struct dlm_lkb *lkb, int type)
38 if (lkb->lkb_flags & DLM_IFL_USER) {
39 dlm_user_add_ast(lkb, type);
42 DLM_ASSERT(lkb->lkb_astaddr != DLM_FAKE_USER_AST, dlm_print_lkb(lkb););
45 if (!(lkb->lkb_ast_type & (AST_COMP | AST_BAST))) {
46 kref_get(&lkb->lkb_ref);
47 list_add_tail(&lkb->lkb_astqueue, &ast_queue);
49 lkb->lkb_ast_type |= type;
60 struct dlm_lkb *lkb;
68 list_for_each_entry(lkb, &ast_queue, lkb_astqueue) {
69 r = lkb->lkb_resource;
75 list_del(&lkb->lkb_astqueue);
76 type = lkb->lkb_ast_type;
77 lkb->lkb_ast_type = 0;
86 cast = lkb->lkb_astaddr;
87 bast = lkb->lkb_bastaddr;
88 bmode = lkb->lkb_bastmode;
91 cast(lkb->lkb_astparam);
95 if (!dlm_modes_compat(lkb->lkb_grmode, bmode))
96 bast(lkb->lkb_astparam, bmode);
99 and may result in the lkb being freed */
100 dlm_put_lkb(lkb);