Re: [PATCH 2/2] xen/scsiback: avoid warnings when adding multiple LUNs to a domain

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 02/05/2016 10:50 AM, Boris Ostrovsky wrote:


@@ -962,33 +973,31 @@ static int scsiback_del_translation_entry(struct vscsibk_info *info,
                        struct ids_tuple *v)
  {
      struct v2p_entry *entry;
-    struct list_head *head = &(info->v2p_entry_lists);
      unsigned long flags;
        spin_lock_irqsave(&info->v2p_lock, flags);
      /* Find out the translation entry specified */
-    list_for_each_entry(entry, head, l) {
-        if ((entry->v.chn == v->chn) &&
-            (entry->v.tgt == v->tgt) &&
-            (entry->v.lun == v->lun)) {
-            goto found;
-        }
-    }
-
-    spin_unlock_irqrestore(&info->v2p_lock, flags);
-    return 1;
-
-found:
-    /* Delete the translation entry specfied */
-    __scsiback_del_translation_entry(entry);
+    entry = scsiback_chk_translation_entry(info, v);
+    if (entry)
+        __scsiback_del_translation_entry(entry);
        spin_unlock_irqrestore(&info->v2p_lock, flags);
-    return 0;
+    return entry == NULL;

Might be better to return -ENOENT instead of 1 above and -EEXISTS if entry!=NULL, given that this returns an int.

Nevermind reference to 1, it's removed. But returning an error code instead of a bool is still better I think.

-boris
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]