Whamcloud - gitweb
LU-6027 mdd: Don't list "trusted.link" for orphans
[fs/lustre-release.git] / lustre / tests / sanityn.sh
index 4246365..0c20a69 100644 (file)
@@ -2878,6 +2878,27 @@ test_81() {
 }
 run_test 81 "rename and stat under striped directory"
 
+test_82() {
+       # Client 1 creates a file.
+       multiop_bg_pause $DIR1/$tfile O_ac || error "multiop_bg_pause 1"
+       pid1=$!
+       # Client 2 opens the file.
+       multiop_bg_pause $DIR2/$tfile o_Ac || error "multiop_bg_pause 2"
+       pid2=$!
+       # Client 1 makes the file an orphan.
+       rm $DIR1/$tfile || error "rm"
+       # Client 2 sets EA "user.multiop".
+       kill -s USR1 $pid2
+       wait $pid2 || error "multiop 2"
+       # Client 1 gets EA "user.multiop".  This used to fail because the EA
+       # cache refill would get "trusted.link" from mdd_xattr_list() but
+       # -ENOENT when trying to get "trusted.link"'s value.  See also sanity
+       # 102q.
+       kill -s USR1 $pid1
+       wait $pid1 || error "multiop 1"
+}
+run_test 82 "fsetxattr and fgetxattr on orphan files"
+
 log "cleanup: ======================================================"
 
 [ "$(mount | grep $MOUNT2)" ] && umount $MOUNT2