Details

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

    Description

      the ocd_ibits_known field contains supported MDS inodebits from the client/server and maintained properly on both sides but not used anywhere. The only case is mdc_lock_match() where it is checked to exclude bits not supported on server.
      Meanwhile the LOV sets ocd_ibits_known to MDS_INODEBITS_UPDATE only, but MDT-MDT locks can be LOOKUP and XATTR at the same time and everything works just fine.
      That makes no sense so cleanup is needed in this area to use ocd_ibits_known properly and check it against enqueued locks.

      Attachments

        Issue Links

          Activity

            [LU-9293] ocd_ibits_known is not checked

            Mike, is this still an issue?

            adilger Andreas Dilger added a comment - Mike, is this still an issue?

            I also see ocd_ibits_known being checked in client_common_fill_super() and mdc_xattr_common() to enable the xattr cache (MDS_INODELOCK_XATTR). The only other new ibits types are:

            • MDS_INODELOCK_LAYOUT but the "interoperability" of that flag has already passed (I don't recall exact details) so all clients and servers are assumed to have this support.
            • MDS_INODELOCK_PERM is masked on the client by mdc_lock_match() so I don't think there needs to be a compatibility check. Older servers and clients don't require this since it is only for DNE.
            adilger Andreas Dilger added a comment - I also see ocd_ibits_known being checked in client_common_fill_super() and mdc_xattr_common() to enable the xattr cache ( MDS_INODELOCK_XATTR ). The only other new ibits types are: MDS_INODELOCK_LAYOUT but the "interoperability" of that flag has already passed (I don't recall exact details) so all clients and servers are assumed to have this support. MDS_INODELOCK_PERM is masked on the client by mdc_lock_match() so I don't think there needs to be a compatibility check. Older servers and clients don't require this since it is only for DNE.

            People

              tappro Mikhail Pershin
              tappro Mikhail Pershin
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: