|WARNING| [v1] crypto/qat: fix IPsec MB header include for ARM

dpdklab at iol.unh.edu dpdklab at iol.unh.edu
Tue Jun 30 16:14:35 CEST 2026


Test-Label: ai-code-review
Test-Status: WARNING
https://dpdk.org/patch/166406

_AI Code Review_

=== Patch Review: series.patch (via Claude) ===
Review date: 2026-06-30

# DPDK Patch Review

## Summary
This patch updates the IPsec MB header include logic in the QAT driver to fix ARM platform builds. The change simplifies conditional compilation by always including the appropriate platform-specific IPsec MB header.

## Findings

### Errors
None identified.

### Warnings

**1. Missing release notes update**

The patch fixes a build issue but does not update the release notes. Build fixes that affect users should be documented in `doc/guides/rel_notes/release_26_03.rst` (or the appropriate current release notes file).

**Suggested action:** Add a brief entry to the "Fixed Issues" section of the release notes describing the ARM build fix.

### Info

**1. Consider verifying ARM and x86 build paths**

The change restructures the conditional includes from:
```c
#ifndef RTE_QAT_OPENSSL
#ifndef RTE_ARCH_ARM
#include <intel-ipsec-mb.h>
#endif
#endif
```

To:
```c
#ifdef RTE_ARCH_ARM
#include <ipsec-mb.h>
#else
#include <intel-ipsec-mb.h>
#endif
```

This removes the `RTE_QAT_OPENSSL` guard entirely. Ensure that:
- When `RTE_QAT_OPENSSL` is defined, neither header is actually used by the code
- Both ARM and x86 builds have been tested with this change
- The IPsec MB library is properly detected by the build system on both platforms

**2. Commit message clarity**

The commit message says "Update the header file to always include the platform-specific IPsec MB header" but doesn't explain:
- What the original problem was (ARM builds failing? Wrong header on ARM?)
- Why the `RTE_QAT_OPENSSL` guard was removed
- Whether this changes behavior when `RTE_QAT_OPENSSL` is defined

Consider expanding the commit message to explain the specific issue being fixed.

## Code Quality Assessment

**Style compliance:**  Pass
- Indentation and formatting are correct
- Header guard logic follows DPDK conventions
- No forbidden tokens or style violations

**Correctness:**  Pass
- No resource leaks, use-after-free, or race conditions
- The conditional logic is sound (ARM gets `ipsec-mb.h`, others get `intel-ipsec-mb.h`)
- No null pointer dereferences or missing error checks

**API compliance:**  Pass
- No API changes
- Internal driver header modification only

## Recommendation

The code change itself is correct. Address the missing release notes (Warning #1) before merging. Consider clarifying the commit message per Info items to help future maintainers understand the context.


More information about the test-report mailing list