summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Teigland <teigland@redhat.com>2008-12-08 17:14:10 -0600
committerDavid Teigland <teigland@redhat.com>2008-12-23 10:16:32 -0600
commit03339696314fffb95dafb349b84243358e945ce6 (patch)
tree4fcdacf43dbe0adaeba79374d54395b5b4f0c035
parentd61e9aac96317a43c192f1faabfa95d4d675b7ce (diff)
dlm: remove extra blocking callback check
Just before delivering a blocking callback (bast), the dlm_astd thread checks again that the granted mode of the lkb actually blocks the mode requested by the bast. The idea behind this was originally that the granted mode may have changed since the bast was queued, making the callback now unnecessary. Reasons for removing this extra check are: - dlm_astd doesn't lock the rsb before reading the lkb grmode, so it's not technically safe (this removes the long standing FIXME) - after running some tests, it doesn't appear the check ever actually eliminates a bast - delivering an unnecessary blocking callback isn't a bad thing and can happen anyway Signed-off-by: David Teigland <teigland@redhat.com>
-rw-r--r--fs/dlm/ast.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/fs/dlm/ast.c b/fs/dlm/ast.c
index 30c11f3855b..09b167df790 100644
--- a/fs/dlm/ast.c
+++ b/fs/dlm/ast.c
@@ -89,13 +89,8 @@ static void process_asts(void)
if ((type & AST_COMP) && cast)
cast(lkb->lkb_astparam);
- /* FIXME: Is it safe to look at lkb_grmode here
- without doing a lock_rsb() ?
- Look at other checks in v1 to avoid basts. */
-
if ((type & AST_BAST) && bast)
- if (!dlm_modes_compat(lkb->lkb_grmode, bmode))
- bast(lkb->lkb_astparam, bmode);
+ bast(lkb->lkb_astparam, bmode);
/* this removes the reference added by dlm_add_ast
and may result in the lkb being freed */