Details

    • Bug
    • Resolution: Fixed
    • Minor
    • Upstream, Lustre 2.14.0
    • None
    • None
    • linux-4.18.0-32.el8
    • 3
    • 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

      Attachments

        Issue Links

          Activity

            [LU-13486] tests sanity/32* fail
            pjones Peter Jones added a comment -

            Landed for 2.14

            pjones Peter Jones added a comment - Landed for 2.14

            Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/38498/
            Subject: LU-13486 llite: restore ll_dcompare()
            Project: fs/lustre-release
            Branch: master
            Current Patch Set:
            Commit: 00fa5e8ef45592fbf2a783a1985dc9fd989f419b

            gerrit Gerrit Updater added a comment - Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/38498/ Subject: LU-13486 llite: restore ll_dcompare() Project: fs/lustre-release Branch: master Current Patch Set: Commit: 00fa5e8ef45592fbf2a783a1985dc9fd989f419b

            Andreas Dilger (adilger@whamcloud.com) uploaded a new patch: https://review.whamcloud.com/38498
            Subject: LU-13486 llite: restore ll_dcompare()
            Project: fs/lustre-release
            Branch: master
            Current Patch Set: 1
            Commit: 291725afbdb6afc0f1fcbe2c655543ed62ffbc00

            gerrit Gerrit Updater added a comment - Andreas Dilger (adilger@whamcloud.com) uploaded a new patch: https://review.whamcloud.com/38498 Subject: LU-13486 llite: restore ll_dcompare() Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: 291725afbdb6afc0f1fcbe2c655543ed62ffbc00
            neilb Neil Brown added a comment -

            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.

             

            neilb Neil Brown added a comment - 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.  
            adilger Andreas Dilger added a comment - - edited

            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".

            adilger Andreas Dilger added a comment - - edited 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 ".

            People

              adilger Andreas Dilger
              bzzz Alex Zhuravlev
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: