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

DoM discard callback can lead to recursion and stack corruption

Details

    • Bug
    • Resolution: Fixed
    • Major
    • Lustre 2.17.0
    • None
    • None
    • 3
    • 9223372036854775807

    Description

      the mdt_dom_discard_data() has two problems to resolve:

      1. no protection from multiple calls for the same object. That causes many discard locks to be taken waiting each other, while only one is needed
      2. mdt_dom_discard_cb() may cause another call to cancel callback in the same thread, entering into recursion. With many waiting locks (see #1) that causes stack overflow

      Attachments

        Activity

          [LU-18776] DoM discard callback can lead to recursion and stack corruption
          pjones Peter Jones added a comment -

          Merged for 2.17

          pjones Peter Jones added a comment - Merged for 2.17

          "Oleg Drokin <green@whamcloud.com>" merged in patch https://review.whamcloud.com/c/fs/lustre-release/+/58302/
          Subject: LU-18776 mdt: prevent multiple data discard calls
          Project: fs/lustre-release
          Branch: master
          Current Patch Set:
          Commit: 799b533c34f468b3d094bf10453307beed409214

          gerrit Gerrit Updater added a comment - "Oleg Drokin <green@whamcloud.com>" merged in patch https://review.whamcloud.com/c/fs/lustre-release/+/58302/ Subject: LU-18776 mdt: prevent multiple data discard calls Project: fs/lustre-release Branch: master Current Patch Set: Commit: 799b533c34f468b3d094bf10453307beed409214

          "Mikhail Pershin <mpershin@whamcloud.com>" uploaded a new patch: https://review.whamcloud.com/c/fs/lustre-release/+/58302
          Subject: LU-18776 mdt: prevent multiple data discard calls
          Project: fs/lustre-release
          Branch: master
          Current Patch Set: 1
          Commit: 96f32cf15d7087f20e63ffc1907b93396b47e3f7

          gerrit Gerrit Updater added a comment - "Mikhail Pershin <mpershin@whamcloud.com>" uploaded a new patch: https://review.whamcloud.com/c/fs/lustre-release/+/58302 Subject: LU-18776 mdt: prevent multiple data discard calls Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: 96f32cf15d7087f20e63ffc1907b93396b47e3f7

          People

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

            Dates

              Created:
              Updated:
              Resolved: