Re: [PATCH net v2] net: atl1c: free the RX buffer when the descriptor reports an error
From: Federico Musto
Date: Tue Nov 03 2026 - 17:54:06 EST
Thank you for the detailed review. The findings on endian decoding,
multi-RFD error handling, stale RRDs after reset and missing error-path
work accounting were valid and have been addressed in v3.
The v3 now:
- decodes rrs->word0 once in CPU byte order and passes the decoded RFD
index to both the unmap and cleanup paths;
- unmaps, frees and recycles every RFD of an errored multi-RFD frame,
with ring wrap;
- counts errored descriptors as work so the RX refill runs;
- clears the RRD ring on reset, preventing stale error descriptors from
freeing newly reposted buffers.
The memory-ordering and link-reset/NAPI issues are pre-existing and are
left to separate patches rather than expanding this fix.
Validation on netdev/net:
- scripts/checkpatch.pl: 0 errors, 0 warnings, 0 checks;
- baseline and patched W=1 + Sparse builds both succeeded;
- no new warnings; three endian-related Sparse warnings removed;
- git apply --check and git diff --check passed.
The issues were found by code inspection; no hardware test has been
performed.
pw-bot: cr