|SUCCESS| [v2] net/ice: fix max number of descriptors for E830
dpdklab at iol.unh.edu
dpdklab at iol.unh.edu
Mon Oct 12 11:44:01 CEST 2026
Test-Label: ai-code-review
Test-Status: SUCCESS
https://dpdk.org/patch/171072
_AI Code Review_
=== Patch Review: series.patch (via Claude) ===
Review date: 2026-10-12
# Review of DPDK Patch: net/ice: fix max number of descriptors for E830
## ERRORS
None.
## WARNINGS
None.
## INFO
**1. Macro evaluation in struct initialization**
Lines: `drivers/net/intel/ice/ice_ethdev.c:4805,4811,4815`
The patch uses `ICE_MAX_NUM_DESC_BY_MAC(hw)` in struct initializer expressions:
```c
dev_info->rx_desc_lim = (struct rte_eth_desc_lim) {
.nb_max = ICE_MAX_NUM_DESC_BY_MAC(hw),
```
This is a ternary expression that depends on `hw->phy_model` being evaluated at runtime. While functionally correct, struct compound literals in DPDK typically use compile-time constants for better readability and optimization. Consider whether these could be set conditionally after the struct initialization if clarity is a concern, though the current form is acceptable.
**2. Comment placement**
Lines: `drivers/net/intel/ice/ice_rxtx.h:25-28`
The comment explaining why `ICE_MAX_NUM_DESC_BY_MAC()` should be used instead of `ICE_MAX_RING_DESC` is helpful. The placement immediately before `ICE_MAX_RING_DESC` makes the relationship clear.
**3. Correctness verification note**
The fix correctly addresses the descriptor overflow issue described in the commit message:
- The macro `ICE_MAX_NUM_DESC_BY_MAC()` properly returns 8096 for E830 and 8160 for other models
- All three usage sites (rx_desc_lim, tx_desc_lim, and queue setup validation) now use the MAC-specific limit
- This matches the existing ring allocation code which already used `ICE_MAX_NUM_DESC_BY_MAC()`
The patch successfully closes the gap between advertised limits and actual hardware capability for E830.
Review-Result: CLEAN
More information about the test-report
mailing list