ipc: end multiprocess thread during cleanup
[dpdk.git] / lib / bbdev / rte_bbdev.c
index fc37236..7f353d4 100644 (file)
@@ -138,7 +138,7 @@ rte_bbdev_data_alloc(void)
 }
 
 /*
- * Find data alocated for the device or if not found return first unused bbdev
+ * Find data allocated for the device or if not found return first unused bbdev
  * data. If all structures are in use and none is used by the device return
  * NULL.
  */
@@ -528,9 +528,10 @@ rte_bbdev_queue_configure(uint16_t dev_id, uint16_t queue_id,
        ret = dev->dev_ops->queue_setup(dev, queue_id, (conf != NULL) ?
                        conf : &dev_info.default_queue_conf);
        if (ret < 0) {
-               rte_bbdev_log(ERR,
-                               "Device %u queue %u setup failed", dev_id,
-                               queue_id);
+               /* This may happen when trying different priority levels */
+               rte_bbdev_log(INFO,
+                               "Device %u queue %u setup failed",
+                               dev_id, queue_id);
                return ret;
        }
 
@@ -1093,7 +1094,7 @@ rte_bbdev_queue_intr_ctl(uint16_t dev_id, uint16_t queue_id, int epfd, int op,
        VALID_QUEUE_OR_RET_ERR(queue_id, dev);
 
        intr_handle = dev->intr_handle;
-       if (!intr_handle || !intr_handle->intr_vec) {
+       if (intr_handle == NULL) {
                rte_bbdev_log(ERR, "Device %u intr handle unset\n", dev_id);
                return -ENOTSUP;
        }
@@ -1104,7 +1105,7 @@ rte_bbdev_queue_intr_ctl(uint16_t dev_id, uint16_t queue_id, int epfd, int op,
                return -ENOTSUP;
        }
 
-       vec = intr_handle->intr_vec[queue_id];
+       vec = rte_intr_vec_list_index_get(intr_handle, queue_id);
        ret = rte_intr_rx_ctl(intr_handle, epfd, op, vec, data);
        if (ret && (ret != -EEXIST)) {
                rte_bbdev_log(ERR,