Details
-
Bug
-
Resolution: Fixed
-
Critical
-
Lustre 2.7.0, Lustre 2.5.3
-
Any 2.x version of Lustre. Client crash.
-
3
-
16316
Description
When a group lock with GID=0 is released (put_grouplock is called), an assertion in cl_put_grouplock is hit.
There are two assertions at the start of cl_put_grouplock:
LASSERT(cg->cg_env);
LASSERT(cg->cg_gid);
cg_env is a pointer, so this assertion is valid, but cg_gid is just an integer so this is not a valid assertion. There are no other checks to make sure the GID is not zero, so a zero a GID is otherwise valid.
Since there doesn't appear to be any reason a '0' GID shouldn't be allowed, the solution is to remove this assertion. I'll make a patch shortly.
Attachments
Issue Links
- is duplicated by
-
LU-5918 (lcommon_misc.c:194:cl_put_grouplock()) ASSERTION( cg->cg_gid ) failed
- Resolved