Re: [PATCH] net: aquantia: Add missing descriptor cache invalidation on ATL2

From: Simon Horman
Date: Mon Nov 10 2025 - 12:48:29 EST


On Fri, Nov 07, 2025 at 01:20:48PM +0800, Kai-Heng Feng wrote:
> ATL2 hardware was missing descriptor cache invalidation in hw_stop(),
> causing SMMU translation faults during device shutdown and module removal.
>
> Commit 7a1bb49461b1 ("net: aquantia: fix potential IOMMU fault after
> driver unbind") and commit ed4d81c4b3f2 ("net: aquantia: when cleaning
> hw cache it should be toggled") fixed cache invalidation for ATL B0, but
> ATL2 was left with only interrupt disabling. This allowed hardware to
> write to cached descriptors after DMA memory was unmapped, triggering
> SMMU faults.
>
> Add shared aq_hw_invalidate_descriptor_cache() helper and use it in both
> ATL B0 and ATL2 hw_stop() implementations for consistent behavior.

I think it would be useful to mention how this bug was found.
And what sort of testing has been conducted: compilation only,
exercised on real hardware, ...

As a bug fix I think this should have a Fixes tag denoting
the commit that introduced the problem. In this case, perhaps:

Fixes: e54dcf4bba3e ("net: atlantic: basic A2 init/deinit hw_ops")

The fixes tag should go immediately above your signed-off-by line,
with no blank lines in between.

> Signed-off-by: Kai-Heng Feng <kaihengf@xxxxxxxxxx>

And lastly, for reference: as a fix for code present in the net tree, this
should be targeted at that tree, which should be denoted in the Subject
like this:

Subject: [PATCH net] ...

You can see more on process for Networking patches here:
https://docs.kernel.org/process/maintainer-netdev.html

...