Thanks for the review, my v5 changes are described in the cover letter.

In contrast (what is not changed):
- no patch is suitable for backporting
- NULL checks was just imagination of AI I think
- 64 ports ought to be enough for anybody -> reworked,
  imho much cleaner code now

My reaction to Claude:
- AI is quiet good for commit messages generated from context
  when I'm stuck (1/8) as well for doc (8/8).
- Memory leak is in patch 4/8, not in 2/8. But yes,
  it was here and it was my fault.
- RTE_EXPORT_INTERNAL_SYMBOL seems necessary (sym_chk fails without it)
  and the __rte_internal was already there.
- Prefixing in the TAILQ_HEAD(pmd_internals_head, pmd_internals):
  it is bit misleading to me as it just defines struct
  inside .cfile, anyway, I added the nfb_ prefix.
- Went through the rte_mallocs and they are used in
  process-shared contexts, changed to calloc just in one case.

My reaction to Grok:
- I think just the Code duplication hint was relevant,
- as well as the Port selection logic.


On Thu, 2026-01-22 at 17:14 -0800, Stephen Hemminger wrote:
> On Thu, 22 Jan 2026 08:27:11 +0100
> [email protected] wrote:
> 
> > From: Martin Spinler <[email protected]>
> > 
> > This series implements real multiport for better user experience.
> > 
> > The existing driver creates one ethdev/port for one PCI device.
> > As the CESNET-NDK based cards aren't capable to represent each
> > Ethernet port by own PCI device, new driver implementation
> > processes real port configuration from firmware/card and switches
> > from rte_eth_dev_pci_generic_probe to multiple rte_eth_dev_create calls.
> > 
> > ---
> 
> Wading through all the AI review...
> 
> Things you should fix:
> - make sure all calls to snprintf() have overflow checks
> - clarity about what should be backported (Fixes/stable)
> - make sure all calls to rte_malloc et al have checks for NULL
> 
> Things you could fix:
> - using malloc vs rte_malloc for data structures not shared
>   not a big issue; but feel free to change.
> - avoiding code duplication
> - check prefix of global variables
> - mark driver only API's as __rte_internal
> 
> Things I can fix when merging:
> - am willing to reword commit messages for readability as needed
> 
> Things I don't care about:
> - release notes only have to be right after series, no need for per-patch
> - looks like all new functions are internal only, not sure why review wants 
> tests.
> - assume 64 bit port mask is a hardware limit, you won't go over in future.
> - driver internal structures do not need doxygen comments
> - don't care about any AI warnings like "if you change X in the future it 
> will break"
> 
> 

Reply via email to