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

remove old protocol compatibility

    XMLWordPrintable

Details

    • 3
    • 17771

    Description

      It seems that there are some old protocol compatibility workarounds that are still present in master that should have been removed when LUSTRE_MSG_MAGIC_V1 was removed.

      In particular, the process for upgrading LUSTRE_MSG_MAGIC_V1 to LUSTRE_MSG_MAGIC_V2 required the client to connect to the server using the V1 protocol first with the MSG_CONNECT_NEXT_VER op_flag set, and if the server supported the V2 protocol it would reply with LUSTRE_MSG_MAGIC_V2. However, even with V1 protocol support removed, the 2.x clients are still always connecting with NEXT_VER set. In b1_8 this flag was contingent on LUSTRE_MSG_MAGIC_V1 being used.

      A few other cleanups can be done at the same time:

      • disallow 1.8 clients (or at least those that don't understand OBD_CONNECT_FULL20 features so we can remove workarounds for those old clients
      • remove support for pre-2.1 DLM flock lock handling
      • don't workaround the lack of MDS_ATTR_xTIME_SET flags in setattr
      • always set MSGHDR_CKSUM_INCOMPAT18 (it can eventually be removed)

      There are also a lot of places that pretend to allow LUSTRE_MSG_MAGIC_V1 RPCs, but they don't do anything but print an error. They can be cleaned up in a second patch, but i don't want them mixed in with the MSG_CONNECT_NEXT_VER cleanup, since that is important and would prevent us from using this functionality again in the future should we need to upgrade the protocol again.

      Attachments

        Issue Links

          Activity

            People

              adilger Andreas Dilger
              adilger Andreas Dilger
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: