* |WARNING| pw133833-133831 [PATCH] [v5, 3/3] net/hns3: report maximum buffer size
@ 2023-11-03 12:07 dpdklab
0 siblings, 0 replies; only message in thread
From: dpdklab @ 2023-11-03 12:07 UTC (permalink / raw)
To: test-report; +Cc: dpdk-test-reports
Test-Label: iol-testing
Test-Status: WARNING
http://dpdk.org/patch/133833
_apply patch failure_
Submitter: Huisong Li <lihuisong@huawei.com>
Date: Friday, November 03 2023 10:27:59
Applied on: CommitID:75e885b117bb6313d6de7082946e22203fff2e7e
Apply patch set 133833-133831 failed:
Checking patch doc/guides/rel_notes/release_23_11.rst...
error: while searching for:
a group's miss actions, which are the actions to be performed on packets
that didn't match any of the flow rules in the group.
* **Updated Amazon ena (Elastic Network Adapter) net driver.**
* Upgraded ENA HAL to latest version.
error: patch failed: doc/guides/rel_notes/release_23_11.rst:122
Checking patch lib/ethdev/rte_ethdev.c...
error: while searching for:
struct rte_eth_dev *dev;
struct rte_eth_dev_info dev_info;
struct rte_eth_rxconf local_conf;
RTE_ETH_VALID_PORTID_OR_ERR_RET(port_id, -ENODEV);
dev = &rte_eth_devices[port_id];
error: patch failed: lib/ethdev/rte_ethdev.c:2112
error: while searching for:
return ret;
mbp_buf_size = rte_pktmbuf_data_room_size(mp);
} else if (rx_conf != NULL && rx_conf->rx_nseg > 0) {
const struct rte_eth_rxseg_split *rx_seg;
uint16_t n_seg;
error: patch failed: lib/ethdev/rte_ethdev.c:2158
error: while searching for:
dev_info->min_mtu = RTE_ETHER_MIN_LEN - RTE_ETHER_HDR_LEN -
RTE_ETHER_CRC_LEN;
dev_info->max_mtu = UINT16_MAX;
if (*dev->dev_ops->dev_infos_get == NULL)
return -ENOTSUP;
error: patch failed: lib/ethdev/rte_ethdev.c:3757
Checking patch lib/ethdev/rte_ethdev.h...
error: while searching for:
uint16_t min_mtu; /**< Minimum MTU allowed */
uint16_t max_mtu; /**< Maximum MTU allowed */
const uint32_t *dev_flags; /**< Device flags */
uint32_t min_rx_bufsize; /**< Minimum size of Rx buffer. */
uint32_t max_rx_pktlen; /**< Maximum configurable length of Rx pkt. */
/** Maximum configurable size of LRO aggregated packet. */
uint32_t max_lro_pkt_size;
error: patch failed: lib/ethdev/rte_ethdev.h:1723
Applying patch doc/guides/rel_notes/release_23_11.rst with 1 reject...
Rejected hunk #1.
Applying patch lib/ethdev/rte_ethdev.c with 3 rejects...
Rejected hunk #1.
Rejected hunk #2.
Rejected hunk #3.
Applying patch lib/ethdev/rte_ethdev.h with 1 reject...
Rejected hunk #1.
hint: Use 'git am --show-current-patch' to see the failed patch
diff a/doc/guides/rel_notes/release_23_11.rst b/doc/guides/rel_notes/release_23_11.rst (rejected hunks)
@@ -122,6 +122,13 @@ New Features
a group's miss actions, which are the actions to be performed on packets
that didn't match any of the flow rules in the group.
+* **Added maximum Rx buffer size to report.**
+
+ Introduced the ``max_rx_bufsize`` field representing the maximum Rx
+ buffer size per descriptor supported by HW in structure ``rte_eth_dev_info``
+ to report user and to avoid wasting space of mempool.
+ Its value is UINT32_MAX if driver doesn't report it.
+
* **Updated Amazon ena (Elastic Network Adapter) net driver.**
* Upgraded ENA HAL to latest version.
diff a/lib/ethdev/rte_ethdev.c b/lib/ethdev/rte_ethdev.c (rejected hunks)
@@ -2112,6 +2112,7 @@ rte_eth_rx_queue_setup(uint16_t port_id, uint16_t rx_queue_id,
struct rte_eth_dev *dev;
struct rte_eth_dev_info dev_info;
struct rte_eth_rxconf local_conf;
+ uint32_t buf_data_size;
RTE_ETH_VALID_PORTID_OR_ERR_RET(port_id, -ENODEV);
dev = &rte_eth_devices[port_id];
@@ -2158,6 +2159,12 @@ rte_eth_rx_queue_setup(uint16_t port_id, uint16_t rx_queue_id,
return ret;
mbp_buf_size = rte_pktmbuf_data_room_size(mp);
+ buf_data_size = mbp_buf_size - RTE_PKTMBUF_HEADROOM;
+ if (buf_data_size > dev_info.max_rx_bufsize)
+ RTE_ETHDEV_LOG(DEBUG,
+ "For port_id=%u, the mbuf data buffer size (%u) is bigger than "
+ "max buffer size (%u) device can utilize, so mbuf size can be reduced.\n",
+ port_id, buf_data_size, dev_info.max_rx_bufsize);
} else if (rx_conf != NULL && rx_conf->rx_nseg > 0) {
const struct rte_eth_rxseg_split *rx_seg;
uint16_t n_seg;
@@ -3757,6 +3764,7 @@ rte_eth_dev_info_get(uint16_t port_id, struct rte_eth_dev_info *dev_info)
dev_info->min_mtu = RTE_ETHER_MIN_LEN - RTE_ETHER_HDR_LEN -
RTE_ETHER_CRC_LEN;
dev_info->max_mtu = UINT16_MAX;
+ dev_info->max_rx_bufsize = UINT32_MAX;
if (*dev->dev_ops->dev_infos_get == NULL)
return -ENOTSUP;
diff a/lib/ethdev/rte_ethdev.h b/lib/ethdev/rte_ethdev.h (rejected hunks)
@@ -1723,7 +1723,15 @@ struct rte_eth_dev_info {
uint16_t min_mtu; /**< Minimum MTU allowed */
uint16_t max_mtu; /**< Maximum MTU allowed */
const uint32_t *dev_flags; /**< Device flags */
- uint32_t min_rx_bufsize; /**< Minimum size of Rx buffer. */
+ /** Minimum Rx buffer size per descriptor supported by HW. */
+ uint32_t min_rx_bufsize;
+ /**
+ * Maximum Rx buffer size per descriptor supported by HW.
+ * The value is not enforced, information only to application to
+ * optimize mbuf size. Its value is UINT32_MAX when not specified
+ * by the driver.
+ */
+ uint32_t max_rx_bufsize;
uint32_t max_rx_pktlen; /**< Maximum configurable length of Rx pkt. */
/** Maximum configurable size of LRO aggregated packet. */
uint32_t max_lro_pkt_size;
Checking patch app/test-pmd/config.c...
error: while searching for:
}
printf("Minimum size of RX buffer: %u\n", dev_info.min_rx_bufsize);
printf("Maximum configurable length of RX packet: %u\n",
dev_info.max_rx_pktlen);
printf("Maximum configurable size of LRO aggregated packet: %u\n",
error: patch failed: app/test-pmd/config.c:881
Applying patch app/test-pmd/config.c with 1 reject...
Rejected hunk #1.
hint: Use 'git am --show-current-patch' to see the failed patch
diff a/app/test-pmd/config.c b/app/test-pmd/config.c (rejected hunks)
@@ -881,6 +881,8 @@ port_infos_display(portid_t port_id)
}
printf("Minimum size of RX buffer: %u\n", dev_info.min_rx_bufsize);
+ if (dev_info.max_rx_bufsize != UINT32_MAX)
+ printf("Maximum size of RX buffer: %u\n", dev_info.max_rx_bufsize);
printf("Maximum configurable length of RX packet: %u\n",
dev_info.max_rx_pktlen);
printf("Maximum configurable size of LRO aggregated packet: %u\n",
Checking patch drivers/net/hns3/hns3_common.c...
error: while searching for:
info->max_tx_queues = hw->tqps_num;
info->max_rx_pktlen = HNS3_MAX_FRAME_LEN; /* CRC included */
info->min_rx_bufsize = HNS3_MIN_BD_BUF_SIZE;
info->max_mtu = info->max_rx_pktlen - HNS3_ETH_OVERHEAD;
info->max_lro_pkt_size = HNS3_MAX_LRO_SIZE;
info->rx_offload_capa = (RTE_ETH_RX_OFFLOAD_IPV4_CKSUM |
error: patch failed: drivers/net/hns3/hns3_common.c:59
Applying patch drivers/net/hns3/hns3_common.c with 1 reject...
Rejected hunk #1.
hint: Use 'git am --show-current-patch' to see the failed patch
diff a/drivers/net/hns3/hns3_common.c b/drivers/net/hns3/hns3_common.c (rejected hunks)
@@ -59,6 +59,7 @@ hns3_dev_infos_get(struct rte_eth_dev *eth_dev, struct rte_eth_dev_info *info)
info->max_tx_queues = hw->tqps_num;
info->max_rx_pktlen = HNS3_MAX_FRAME_LEN; /* CRC included */
info->min_rx_bufsize = HNS3_MIN_BD_BUF_SIZE;
+ info->max_rx_bufsize = HNS3_MAX_BD_BUF_SIZE;
info->max_mtu = info->max_rx_pktlen - HNS3_ETH_OVERHEAD;
info->max_lro_pkt_size = HNS3_MAX_LRO_SIZE;
info->rx_offload_capa = (RTE_ETH_RX_OFFLOAD_IPV4_CKSUM |
https://lab.dpdk.org/results/dashboard/patchsets/28219/
UNH-IOL DPDK Community Lab
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2023-11-03 12:07 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-11-03 12:07 |WARNING| pw133833-133831 [PATCH] [v5, 3/3] net/hns3: report maximum buffer size dpdklab
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).