提交 fad59c13 编写于 作者: D David Teigland 提交者: Steven Whitehouse

[DLM] don't require FS flag on all nodes

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: NPatrick Caulfield <pcaulfie@redhat.com>
Signed-off-by: NDavid Teigland <teigland@redhat.com>
Signed-off-by: NSteven Whitehouse <swhiteho@redhat.com>
上级 d93cfa98
...@@ -438,17 +438,18 @@ static int new_lockspace(char *name, int namelen, void **lockspace, ...@@ -438,17 +438,18 @@ static int new_lockspace(char *name, int namelen, void **lockspace,
ls->ls_count = 0; ls->ls_count = 0;
ls->ls_flags = 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) if (flags & DLM_LSFL_TIMEWARN)
set_bit(LSFL_TIMEWARN, &ls->ls_flags); set_bit(LSFL_TIMEWARN, &ls->ls_flags);
ls->ls_exflags = (flags & ~DLM_LSFL_TIMEWARN);
if (flags & DLM_LSFL_FS) if (flags & DLM_LSFL_FS)
ls->ls_allocation = GFP_NOFS; ls->ls_allocation = GFP_NOFS;
else else
ls->ls_allocation = GFP_KERNEL; 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; size = dlm_config.ci_rsbtbl_size;
ls->ls_rsbtbl_size = size; ls->ls_rsbtbl_size = size;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册