Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-14826

enable striped directory as NFS export

Details

    • Bug
    • Resolution: Fixed
    • Minor
    • Lustre 2.15.0
    • None
    • None
    • 3
    • 9223372036854775807

    Description

      Striped directory as NFS export is not supported, because ".." lookup for subdir under striped directory returns stripe FID back, other than the directory master object FID, while ll_get_parent() needs the latter for NFS.

      Attachments

        Issue Links

          Activity

            [LU-14826] enable striped directory as NFS export

            "Oleg Drokin <green@whamcloud.com>" merged in patch https://review.whamcloud.com/46693/
            Subject: LU-14826 tests: fix sanityn.sh test_102 version check
            Project: fs/lustre-release
            Branch: master
            Current Patch Set:
            Commit: b9d93dc33e24718c316b84baa89282bebe05a546

            gerrit Gerrit Updater added a comment - "Oleg Drokin <green@whamcloud.com>" merged in patch https://review.whamcloud.com/46693/ Subject: LU-14826 tests: fix sanityn.sh test_102 version check Project: fs/lustre-release Branch: master Current Patch Set: Commit: b9d93dc33e24718c316b84baa89282bebe05a546

            "Andreas Dilger <adilger@whamcloud.com>" uploaded a new patch: https://review.whamcloud.com/46693
            Subject: LU-14826 tests: fix sanityn.sh test_102 version check
            Project: fs/lustre-release
            Branch: master
            Current Patch Set: 1
            Commit: 32768318819952b670ac778bfba14e3fdb82c04e

            gerrit Gerrit Updater added a comment - "Andreas Dilger <adilger@whamcloud.com>" uploaded a new patch: https://review.whamcloud.com/46693 Subject: LU-14826 tests: fix sanityn.sh test_102 version check Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: 32768318819952b670ac778bfba14e3fdb82c04e
            pjones Peter Jones added a comment -

            Landed for 2.15

            pjones Peter Jones added a comment - Landed for 2.15

            Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/44168/
            Subject: LU-14826 mdt: getattr_name("..") under striped directory
            Project: fs/lustre-release
            Branch: master
            Current Patch Set:
            Commit: cbc62b0b829afdceaa01820996e567b5bdeb281c

            gerrit Gerrit Updater added a comment - Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/44168/ Subject: LU-14826 mdt: getattr_name("..") under striped directory Project: fs/lustre-release Branch: master Current Patch Set: Commit: cbc62b0b829afdceaa01820996e567b5bdeb281c
            laisiyao Lai Siyao added a comment -

            It's not lookup("master/substripe/.."), but lookup("master/substripe/subdir/.."), herein if "subdir" is a plain directory, it will fail too.

            laisiyao Lai Siyao added a comment - It's not lookup("master/substripe/.."), but lookup("master/substripe/subdir/.."), herein if "subdir" is a plain directory, it will fail too.

            I was just coming to the same conclusion. What happens is that the client finds the directory X layout is striped, hashes "..", and finds the sub-stripe of the directory, and does a lookup of ".." in the sub-stripe directory. That ends up returning the FID of directory X again, since it is the parent of the sub-stripe.

            Rather than adding complexity to the MDS to handle this case, what about having the client check for lookup of ".." and not do the sub-stripe lookup, but rather do the ".." lookup in the master object FID? That should return the proper parent FID, rather than looking up master/substripe/.. == master?

            adilger Andreas Dilger added a comment - I was just coming to the same conclusion. What happens is that the client finds the directory X layout is striped, hashes " .. ", and finds the sub-stripe of the directory, and does a lookup of " .. " in the sub-stripe directory. That ends up returning the FID of directory X again, since it is the parent of the sub-stripe. Rather than adding complexity to the MDS to handle this case, what about having the client check for lookup of " .. " and not do the sub-stripe lookup, but rather do the " .. " lookup in the master object FID? That should return the proper parent FID, rather than looking up master/substripe/.. == master ?

            Lai Siyao (lai.siyao@whamcloud.com) uploaded a new patch: https://review.whamcloud.com/44168
            Subject: LU-14826 mdt: lookup("..") under striped directory
            Project: fs/lustre-release
            Branch: master
            Current Patch Set: 1
            Commit: b798c073281f4e20f955fefaf8109920f9d5b75c

            gerrit Gerrit Updater added a comment - Lai Siyao (lai.siyao@whamcloud.com) uploaded a new patch: https://review.whamcloud.com/44168 Subject: LU-14826 mdt: lookup("..") under striped directory Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: b798c073281f4e20f955fefaf8109920f9d5b75c

            People

              laisiyao Lai Siyao
              laisiyao Lai Siyao
              Votes:
              0 Vote for this issue
              Watchers:
              10 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: