|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