]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - fs/dlm/ast.c
atomic.h: add atomic64 cmpxchg, xchg and add_unless to x86_64
[linux-2.6-omap-h63xx.git] / fs / dlm / ast.c
index 57bdf09b520a8a7a23ae907825004861497489cb..6308122890cae1c2ae6cd03ad5b5452b03581532 100644 (file)
@@ -13,6 +13,7 @@
 
 #include "dlm_internal.h"
 #include "lock.h"
+#include "user.h"
 #include "ast.h"
 
 #define WAKE_ASTS  0
@@ -34,6 +35,12 @@ void dlm_del_ast(struct dlm_lkb *lkb)
 
 void dlm_add_ast(struct dlm_lkb *lkb, int type)
 {
+       if (lkb->lkb_flags & DLM_IFL_USER) {
+               dlm_user_add_ast(lkb, type);
+               return;
+       }
+       DLM_ASSERT(lkb->lkb_astaddr != DLM_FAKE_USER_AST, dlm_print_lkb(lkb););
+
        spin_lock(&ast_queue_lock);
        if (!(lkb->lkb_ast_type & (AST_COMP | AST_BAST))) {
                kref_get(&lkb->lkb_ref);