virtio_net_hdr_mrg_rxbuf_t *hdr;
u32 hint = 0;
- memset (t, 0, sizeof (*t));
+ clib_memset (t, 0, sizeof (*t));
t->device_index = vui - vum->vhost_user_interfaces;
t->qid = qid;
u32 next_index = VNET_DEVICE_INPUT_NEXT_ETHERNET_INPUT;
u32 n_trace = vlib_get_trace_count (vm, node);
u32 map_hint = 0;
- u16 thread_index = vlib_get_thread_index ();
+ u16 thread_index = vm->thread_index;
u16 copy_len = 0;
+ /* The descriptor table is not ready yet */
+ if (PREDICT_FALSE (txvq->avail == 0))
+ return 0;
+
{
/* do we have pending interrupts ? */
vhost_user_vring_t *rxvq = &vui->vrings[VHOST_VRING_IDX_RX (qid)];
return n_rx_packets;
}
-#ifndef CLIB_MARCH_VARIANT
/* *INDENT-OFF* */
VLIB_REGISTER_NODE (vhost_user_input_node) = {
.type = VLIB_NODE_TYPE_INPUT,
.error_strings = vhost_user_input_func_error_strings,
};
/* *INDENT-ON* */
-#endif
/*
* fd.io coding-style-patch-verification: ON