[LU-13486] tests sanity/32* fail Created: 24/Apr/20 Updated: 17/Feb/21 Resolved: 14/May/20 |
|
| Status: | Resolved |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | Upstream, Lustre 2.14.0 |
| Type: | Bug | Priority: | Minor |
| Reporter: | Alex Zhuravlev | Assignee: | Andreas Dilger |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Environment: |
linux-4.18.0-32.el8 |
||
| Issue Links: |
|
||||||||
| Severity: | 3 | ||||||||
| Rank (Obsolete): | 9223372036854775807 | ||||||||
| Description |
Lustre: DEBUG MARKER: == sanity test 32c: stat d32c/ext2-mountpoint/../d2/test_dir ========================================= 12:58:57 (1587715137) striped dir -i0 -c2 -H fnv_1a_64 /mnt/lustre/d32c.sanity/ext2-mountpoint EXT2-fs (loop4): warning: mounting ext3 filesystem as ext2 striped dir -i0 -c2 -H all_char /mnt/lustre/d32c.sanity/d2/test_dir /mnt/lustre/d32c.sanity/ext2-mountpoint/../d2/test_dir has type dir OK umount: /mnt/lustre/d32c.sanity/ext2-mountpoint: not mounted. losetup: option requires an argument -- 'd' Try 'losetup --help' for more information. sanity test_32c: @@@@@@ FAIL: test_32c failed with 32 this is because any access to ext2-mountpoint denty causes denty invalidation and umount introduced with: a36d9c3911 2020-04-02 | LU-9868 llite: Get rid of ll_dcompare |
| Comments |
| Comment by Andreas Dilger [ 25/Apr/20 ] |
|
James or Neil, could you please take a look at this? It looks like a regression from patch https://review.whamcloud.com/24175 "LU-9868 llite: Get rid of ll_dcompare". |
| Comment by Neil Brown [ 27/Apr/20 ] |
|
The problem here is the parent of ext2-mountpoint gets invalidated. e.g. 'd32c.sanity' in the root lustre directory. When that gets invalidated, it isn't a mountpoint so ll_revalidate_dentry can return 0, and then the whole directory tree from there down is invalidated. ll_revalidate_dentry needs to actually test if the dentry is valid or not. It cannot just return "Maybe it is invalid, maybe not". I suspect that if it finds lld_invalid to be true, it needs to talk to the MDS - do a 'lookup' and get the relevant lock. But probably we need to revert that patch for now.
|
| Comment by Gerrit Updater [ 05/May/20 ] |
|
Andreas Dilger (adilger@whamcloud.com) uploaded a new patch: https://review.whamcloud.com/38498 |
| Comment by Gerrit Updater [ 14/May/20 ] |
|
Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/38498/ |
| Comment by Peter Jones [ 14/May/20 ] |
|
Landed for 2.14 |