+ else if (hi)
+ {
+ vmxnet3_device_t *vd =
+ vec_elt_at_index (vmxm->devices, hi->dev_instance);
+
+ if (unformat (input, "rx-comp"))
+ {
+ show_one_table = 1;
+ which = VMXNET3_SHOW_RX_COMP;
+ if (unformat (input, "%u", &slot))
+ {
+ vmxnet3_rxq_t *rxq = vec_elt_at_index (vd->rxqs, 0);
+
+ if (slot >= rxq->size)
+ {
+ error = clib_error_return (0,
+ "slot size must be < rx queue "
+ "size %u", rxq->size);
+ goto done;
+ }
+ show_one_slot = 1;
+ }
+ }
+ else if (unformat (input, "rx-desc-0"))
+ {
+ show_one_table = 1;
+ which = VMXNET3_SHOW_RX_DESC0;
+ if (unformat (input, "%u", &slot))
+ {
+ vmxnet3_rxq_t *rxq = vec_elt_at_index (vd->rxqs, 0);
+
+ if (slot >= rxq->size)
+ {
+ error = clib_error_return (0,
+ "slot size must be < rx queue "
+ "size %u", rxq->size);
+ goto done;
+ }
+ show_one_slot = 1;
+ }
+ }
+ else if (unformat (input, "rx-desc-1"))
+ {
+ show_one_table = 1;
+ which = VMXNET3_SHOW_RX_DESC1;
+ if (unformat (input, "%u", &slot))
+ {
+ vmxnet3_rxq_t *rxq = vec_elt_at_index (vd->rxqs, 0);
+
+ if (slot >= rxq->size)
+ {
+ error = clib_error_return (0,
+ "slot size must be < rx queue "
+ "size %u", rxq->size);
+ goto done;
+ }
+ show_one_slot = 1;
+ }
+ }
+ else if (unformat (input, "tx-comp"))
+ {
+ show_one_table = 1;
+ which = VMXNET3_SHOW_TX_COMP;
+ if (unformat (input, "%u", &slot))
+ {
+ vmxnet3_txq_t *txq = vec_elt_at_index (vd->txqs, 0);
+
+ if (slot >= txq->size)
+ {
+ error = clib_error_return (0,
+ "slot size must be < tx queue "
+ "size %u", txq->size);
+ goto done;
+ }
+ show_one_slot = 1;
+ }
+ }
+ else if (unformat (input, "tx-desc"))
+ {
+ show_one_table = 1;
+ which = VMXNET3_SHOW_TX_DESC;
+ if (unformat (input, "%u", &slot))
+ {
+ vmxnet3_txq_t *txq = vec_elt_at_index (vd->txqs, 0);
+
+ if (slot >= txq->size)
+ {
+ error = clib_error_return (0,
+ "slot size must be < tx queue "
+ "size %u", txq->size);
+ goto done;
+ }
+ show_one_slot = 1;
+ }
+ }
+ else
+ {
+ error = clib_error_return (0, "unknown input `%U'",
+ format_unformat_error, input);
+ goto done;
+ }
+ }