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

missing unlock in error path of ll_lov_setstripe_ea_info()

Details

    • Bug
    • Resolution: Fixed
    • Critical
    • Lustre 2.7.0
    • Lustre 2.7.0
    • 3
    • 16873

    Description

      In ll_lov_setstripe_ea_info() we forget to call ll_inode_size_unlock() in the out_req_free error path:

              ll_inode_size_lock(inode);
              oit.it_flags |= MDS_OPEN_BY_FID;
              rc = ll_intent_file_open(file, lum, lum_size, &oit);
              if (rc)
                      GOTO(out_unlock, rc);
              rc = oit.d.lustre.it_status;
              if (rc < 0)
                      GOTO(out_req_free, rc);
      
              ll_release_openhandle(file->f_dentry, &oit);
      
      out_unlock:
              ll_inode_size_unlock(inode);
              ll_intent_release(&oit);
              ccc_inode_lsm_put(inode, lsm);
      out:
              cl_lov_delay_create_clear(&file->f_flags);
              RETURN(rc);
      out_req_free:
              ptlrpc_req_finished((struct ptlrpc_request *) oit.d.lustre.it_data);
              goto out;
      }
      

      This was found via code inspection. I didn't check if this path is reachable.

      Attachments

        Activity

          [LU-6059] missing unlock in error path of ll_lov_setstripe_ea_info()
          jhammond John Hammond added a comment -

          Patch landed to master for 2.7.

          jhammond John Hammond added a comment - Patch landed to master for 2.7.

          Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/13167/
          Subject: LU-6059 llite: unlock inode size in ll_lov_setstripe_ea_info()
          Project: fs/lustre-release
          Branch: master
          Current Patch Set:
          Commit: 90cad4dad6c3e5607fa91f830959da4df4a5d434

          gerrit Gerrit Updater added a comment - Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/13167/ Subject: LU-6059 llite: unlock inode size in ll_lov_setstripe_ea_info() Project: fs/lustre-release Branch: master Current Patch Set: Commit: 90cad4dad6c3e5607fa91f830959da4df4a5d434

          John L. Hammond (john.hammond@intel.com) uploaded a new patch: http://review.whamcloud.com/13167
          Subject: LU-6059 llite: unlock inode size in ll_lov_setstripe_ea_info()
          Project: fs/lustre-release
          Branch: master
          Current Patch Set: 1
          Commit: 459f3f024eea4f39c4931da09acc2af6c1fa6deb

          gerrit Gerrit Updater added a comment - John L. Hammond (john.hammond@intel.com) uploaded a new patch: http://review.whamcloud.com/13167 Subject: LU-6059 llite: unlock inode size in ll_lov_setstripe_ea_info() Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: 459f3f024eea4f39c4931da09acc2af6c1fa6deb

          People

            jhammond John Hammond
            jhammond John Hammond
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: