Skip to contentSkip to conversation

xfstests: set umask to avoid spurious generic/314 test failures

PATCH In review Eric Whitney 4 participants 4 messages Sep 21, 2013 – Dec 17, 2013

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 xfstests: set umask to avoid spurious generic/314 test failures

Generic/314 can fail when the group write file mode bit for "subdir" does not match that found in the golden output, as has been seen in ext4 regression testing. It appears that the golden output for generic/314 was taken on a system where the $qa_user's umask cleared that mode bit - most likely, where the umask was 022. Depending upon the distro, it's not uncommon for a user's default umask to have a different value, such as 002. When that's the case, we get a false negative failure when the group write mode bit for "subdir" is not cleared. This failure is unrelated to the value of the SGID mode bit that is the object of this test.

We could either require that $qa_user's account be configured in advance with a umask of 022, or explicitly set a umask value compatible with the golden output when creating "subdir". The latter option is more robust.

---
 tests/generic/314 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
 mode change 100644 => 100755 tests/generic/314
tests/generic/314 +1 -1
old mode 100644
new mode 100755
index 0dd98a3..f430b82
@@ -57,7 +57,7 @@ chown $qa_user:12345 $TEST_DIR/$seq-dir
 chmod 2775 $TEST_DIR/$seq-dir
 
 # Make subdirs before & after acl set
-su $qa_user -c "mkdir $TEST_DIR/$seq-dir/subdir"
+su $qa_user -c "umask 022; mkdir $TEST_DIR/$seq-dir/subdir"
 su $qa_user -c "setfacl -m u:$qa_user:rwx,d:u:$qa_user:rwx $TEST_DIR/$seq-dir"
 su $qa_user -c "mkdir $TEST_DIR/$seq-dir/subdir2"
 
Signature · 1 line
1.8.1.2
#1 lore raw

Hi Folks,

We missed this patch from Eric for a few months, I observed the same false alarm while analyzing xfstests logs against our next tree...

Eric's fix works fine to me.

Thanks,
-Jeff

Quoted 36 lines · Eric Whitney

Generic/314 can fail when the group write file mode bit for "subdir" does not match that found in the golden output, as has been seen in ext4 regression testing. It appears that the golden output for generic/314 was taken on a system where the $qa_user's umask cleared that mode bit - most likely, where the umask was 022. Depending upon the distro, it's not uncommon for a user's default umask to have a different value, such as 002. When that's the case, we get a false negative failure when the group write mode bit for "subdir" is not cleared. This failure is unrelated to the value of the SGID mode bit that is the object of this test.

We could either require that $qa_user's account be configured in advance with a umask of 022, or explicitly set a umask value compatible with the golden output when creating "subdir". The latter option is more robust.

---
 tests/generic/314 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
 mode change 100644 => 100755 tests/generic/314
tests/generic/314 +1 -1
old mode 100644
new mode 100755
index 0dd98a3..f430b82
@@ -57,7 +57,7 @@ chown $qa_user:12345 $TEST_DIR/$seq-dir
 chmod 2775 $TEST_DIR/$seq-dir
 
 # Make subdirs before & after acl set
-su $qa_user -c "mkdir $TEST_DIR/$seq-dir/subdir"
+su $qa_user -c "umask 022; mkdir $TEST_DIR/$seq-dir/subdir"
 su $qa_user -c "setfacl -m u:$qa_user:rwx,d:u:$qa_user:rwx $TEST_DIR/$seq-dir"
 su $qa_user -c "mkdir $TEST_DIR/$seq-dir/subdir2"