- if ((vhiq->vhost_iface_index == (ifq >> 8)) &&
- (VHOST_VRING_IDX_TX (vhiq->qid) == (ifq & 0xff)))
- {
- thread_index = vhc - vum->cpus;
- vm = vlib_mains ? vlib_mains[thread_index] : &vlib_global_main;
- /*
- * Convert RX virtqueue number in the lower byte to vring
- * queue index for the input node process. Top bytes contain
- * the interface, lower byte contains the queue index.
- */
- ifq2 = ((ifq >> 8) << 8) | vhiq->qid;
- vhc->pending_input_bitmap =
- clib_bitmap_set (vhc->pending_input_bitmap, ifq2, 1);
- vlib_node_set_interrupt_pending (vm,
- vhost_user_input_node.index);
- done = 1;
- break;
- }
+ ifq2 = ((ifq >> 8) << 8) | qid / 2;
+ vhc->pending_input_bitmap =
+ clib_bitmap_set (vhc->pending_input_bitmap, ifq2, 1);
+ vlib_node_set_interrupt_pending (vm, vhost_user_input_node.index);