[dpdk-test-report] |WARNING| pw99064-99067 [PATCH] [v2, 4/4] examples/vhost: support vhost async dequeue data path

dpdklab at iol.unh.edu dpdklab at iol.unh.edu
Fri Sep 17 17:53:21 CEST 2021


Test-Label: iol-testing
Test-Status: WARNING
http://dpdk.org/patch/99064

_apply patch failure_

Submitter: Wenwu Ma <wenwux.ma at intel.com>
Date: Friday, September 17 2021 19:27:03 
Applied on: CommitID:4777674c4428f528fa2890d8afab551f6dd54c24
Apply patch set 99064-99067 failed:

Checking patch examples/vhost/main.c...
error: while searching for:
	uint16_t nr_xmit = vhost_txbuff[buff_idx]->len;
	struct rte_mbuf **m = vhost_txbuff[buff_idx]->m_table;

	if (builtin_net_driver) {
		ret = vs_enqueue_pkts(vdev, VIRTIO_RXQ, m, nr_xmit);
	} else if (async_vhost_driver) {
		uint16_t enqueue_fail = 0;

		complete_async_pkts(vdev);
		ret = rte_vhost_submit_enqueue_burst(vdev->vid, VIRTIO_RXQ, m, nr_xmit);
		__atomic_add_fetch(&vdev->pkts_inflight, ret, __ATOMIC_SEQ_CST);

		enqueue_fail = nr_xmit - ret;
		if (enqueue_fail)
			free_pkts(&m[ret], nr_xmit - ret);
	} else {
		ret = rte_vhost_enqueue_burst(vdev->vid, VIRTIO_RXQ,
						m, nr_xmit);
	}

	if (enable_stats) {
		__atomic_add_fetch(&vdev->stats.rx_total_atomic, nr_xmit,

error: patch failed: examples/vhost/main.c:879
Hunk #3 succeeded at 1181 (offset 20 lines).
error: while searching for:
		}
	}

	if (builtin_net_driver) {
		enqueue_count = vs_enqueue_pkts(vdev, VIRTIO_RXQ,
						pkts, rx_count);
	} else if (async_vhost_driver) {
		uint16_t enqueue_fail = 0;

		complete_async_pkts(vdev);
		enqueue_count = rte_vhost_submit_enqueue_burst(vdev->vid,
					VIRTIO_RXQ, pkts, rx_count);
		__atomic_add_fetch(&vdev->pkts_inflight, enqueue_count, __ATOMIC_SEQ_CST);

		enqueue_fail = rx_count - enqueue_count;
		if (enqueue_fail)
			free_pkts(&pkts[enqueue_count], enqueue_fail);

	} else {
		enqueue_count = rte_vhost_enqueue_burst(vdev->vid, VIRTIO_RXQ,
						pkts, rx_count);
	}

	if (enable_stats) {
		__atomic_add_fetch(&vdev->stats.rx_total_atomic, rx_count,

error: patch failed: examples/vhost/main.c:1203
Hunk #5 succeeded at 1276 (offset 44 lines).
Hunk #6 succeeded at 1291 (offset 44 lines).
Hunk #7 succeeded at 1477 (offset 44 lines).
Checking patch examples/vhost/main.h...
Checking patch examples/vhost/virtio_net.c...
Applying patch examples/vhost/main.c with 2 rejects...
Hunk #1 applied cleanly.
Rejected hunk #2.
Hunk #3 applied cleanly.
Rejected hunk #4.
Hunk #5 applied cleanly.
Hunk #6 applied cleanly.
Hunk #7 applied cleanly.
Applied patch examples/vhost/main.h cleanly.
Applied patch examples/vhost/virtio_net.c cleanly.
diff a/examples/vhost/main.c b/examples/vhost/main.c	(rejected hunks)
@@ -879,22 +881,8 @@ drain_vhost(struct vhost_dev *vdev)
 	uint16_t nr_xmit = vhost_txbuff[buff_idx]->len;
 	struct rte_mbuf **m = vhost_txbuff[buff_idx]->m_table;
 
-	if (builtin_net_driver) {
-		ret = vs_enqueue_pkts(vdev, VIRTIO_RXQ, m, nr_xmit);
-	} else if (async_vhost_driver) {
-		uint16_t enqueue_fail = 0;
-
-		complete_async_pkts(vdev);
-		ret = rte_vhost_submit_enqueue_burst(vdev->vid, VIRTIO_RXQ, m, nr_xmit);
-		__atomic_add_fetch(&vdev->pkts_inflight, ret, __ATOMIC_SEQ_CST);
-
-		enqueue_fail = nr_xmit - ret;
-		if (enqueue_fail)
-			free_pkts(&m[ret], nr_xmit - ret);
-	} else {
-		ret = rte_vhost_enqueue_burst(vdev->vid, VIRTIO_RXQ,
-						m, nr_xmit);
-	}
+	ret = vdev_queue_ops[vdev->vid].enqueue_pkt_burst(vdev,
+					VIRTIO_RXQ, m, nr_xmit);
 
 	if (enable_stats) {
 		__atomic_add_fetch(&vdev->stats.rx_total_atomic, nr_xmit,
@@ -1203,25 +1218,8 @@ drain_eth_rx(struct vhost_dev *vdev)
 		}
 	}
 
-	if (builtin_net_driver) {
-		enqueue_count = vs_enqueue_pkts(vdev, VIRTIO_RXQ,
-						pkts, rx_count);
-	} else if (async_vhost_driver) {
-		uint16_t enqueue_fail = 0;
-
-		complete_async_pkts(vdev);
-		enqueue_count = rte_vhost_submit_enqueue_burst(vdev->vid,
-					VIRTIO_RXQ, pkts, rx_count);
-		__atomic_add_fetch(&vdev->pkts_inflight, enqueue_count, __ATOMIC_SEQ_CST);
-
-		enqueue_fail = rx_count - enqueue_count;
-		if (enqueue_fail)
-			free_pkts(&pkts[enqueue_count], enqueue_fail);
-
-	} else {
-		enqueue_count = rte_vhost_enqueue_burst(vdev->vid, VIRTIO_RXQ,
-						pkts, rx_count);
-	}
+	enqueue_count = vdev_queue_ops[vdev->vid].enqueue_pkt_burst(vdev,
+						VIRTIO_RXQ, pkts, rx_count);
 
 	if (enable_stats) {
 		__atomic_add_fetch(&vdev->stats.rx_total_atomic, rx_count,
Checking patch doc/guides/sample_app_ug/vhost.rst...
Checking patch examples/vhost/ioat.c...
Checking patch examples/vhost/ioat.h...
Checking patch examples/vhost/main.c...
error: examples/vhost/main.c: does not match index
Checking patch examples/vhost/main.h...
error: examples/vhost/main.h: does not match index
Applied patch doc/guides/sample_app_ug/vhost.rst cleanly.
Applied patch examples/vhost/ioat.c cleanly.
Applied patch examples/vhost/ioat.h cleanly.

https://lab.dpdk.org/results/dashboard/patchsets/18820/

UNH-IOL DPDK Community Lab


More information about the test-report mailing list