On 11/17/2025 4:00 PM, Alexander Lobakin wrote:
idpf_compl_queue uses a union for comp, comp_4b, and desc_ring.
The release path should check complq->desc_ring to determine whether the
DMA descriptor ring was allocated. The existing check against
complq->comp is incorrect, as only desc_ring reliably reflects the
allocation status.
How can it be "incorrect" if these 3 are in the same union and have the
same size of 1 pointer? Any of them reflects the allocation status.

While your change improves readability, it doesn't fixes anything at
all. You can compare the object code to see there's no difference
before/after.

C unions are not the same as C++ unions, but even if the kernel had
`-fstrict-aliasing` enabled (and it's always disabled), the result would
be same. And C unions definitely don't work like std::variant.

So this could only go to -next as a cosmetic change if you really want this.


Thanks, Alex.
Agreed the check is functionally identical. I’ll mark it for net-next.


Thanks,
Alok

Reply via email to