]> err.no Git - linux-2.6/commitdiff
[DLM] don't require FS flag on all nodes
authorDavid Teigland <teigland@redhat.com>
Mon, 11 Jun 2007 15:47:18 +0000 (10:47 -0500)
committerSteven Whitehouse <swhiteho@redhat.com>
Mon, 9 Jul 2007 07:23:38 +0000 (08:23 +0100)
Mask off the recently added DLM_LSFL_FS flag when setting the exflags.
This way all the nodes in the lockspace aren't required to have the FS
flag set, since we later check that exflags matches among all nodes.

Signed-off-by: Patrick Caulfield <pcaulfie@redhat.com>
Signed-off-by: David Teigland <teigland@redhat.com>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
fs/dlm/lockspace.c

index 6802653473d14f2cfb4aca8a24de29ad286246c5..1dc72105ab125171b4bb3356ea0a09577178ec77 100644 (file)
@@ -438,17 +438,18 @@ static int new_lockspace(char *name, int namelen, void **lockspace,
        ls->ls_count = 0;
        ls->ls_flags = 0;
 
-       /* ls_exflags are forced to match among nodes, and we don't
-          need to require all nodes to have TIMEWARN active */
        if (flags & DLM_LSFL_TIMEWARN)
                set_bit(LSFL_TIMEWARN, &ls->ls_flags);
-       ls->ls_exflags = (flags & ~DLM_LSFL_TIMEWARN);
 
        if (flags & DLM_LSFL_FS)
                ls->ls_allocation = GFP_NOFS;
        else
                ls->ls_allocation = GFP_KERNEL;
 
+       /* ls_exflags are forced to match among nodes, and we don't
+          need to require all nodes to have TIMEWARN or FS set */
+       ls->ls_exflags = (flags & ~(DLM_LSFL_TIMEWARN | DLM_LSFL_FS));
+
        size = dlm_config.ci_rsbtbl_size;
        ls->ls_rsbtbl_size = size;