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

chlg_obd_get() does not unlock semaphore on error path

Details

    • Bug
    • Resolution: Unresolved
    • Minor
    • Lustre 2.17.0
    • Lustre 2.17.0
    • 3
    • 9223372036854775807

    Description

      High;ighted by smatch, introduced in https://review.whamcloud.com/35784

      static inline struct obd_device* chlg_obd_get(struct chlg_registered_dev *dev)
      {
              struct obd_device *obd;
              mutex_lock(&chlg_registered_dev_lock);
              if (list_empty(&dev->ced_obds))
                      return NULL;
              obd = list_first_entry(&dev->ced_obds, struct obd_device,
                                     u.cli.cl_chg_dev_linkage);
              class_incref(obd, "changelog", dev);
              mutex_unlock(&chlg_registered_dev_lock);
              return obd;
      }
      

      Looks like we need to unlock that semaphore.

       

      Attachments

        Issue Links

          Activity

            People

              wc-triage WC Triage
              green Oleg Drokin
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: