Re: [PATCH] iommu/arm-smmu: Demote error messages to debug in shutdown callback

From: Sai Prakash Ranjan
Date: Tue Mar 31 2020 - 03:53:37 EST


Hi Will,

On 2020-03-31 13:14, Will Deacon wrote:
On Tue, Mar 31, 2020 at 01:06:11PM +0530, Sai Prakash Ranjan wrote:
On 2020-03-30 23:54, Doug Anderson wrote:
> On Sat, Mar 28, 2020 at 12:35 AM Sai Prakash Ranjan
> <saiprakash.ranjan@xxxxxxxxxxxxxx> wrote:
> >
> > > Of course the fact that in practice we'll *always* see the warning
> > > because there's no way to tear down the default DMA domains, and even
> > > if all devices *have* been nicely quiesced there's no way to tell, is
> > > certainly less than ideal. Like I say, it's not entirely clear-cut
> > > either way...
> > >
> >
> > Thanks for these examples, good to know these scenarios in case we
> > come
> > across these.
> > However, if we see these error/warning messages appear everytime then
> > what will be
> > the credibility of these messages? We will just ignore these messages
> > when
> > these issues you mention actually appears because we see them
> > everytime
> > on
> > reboot or shutdown.
>
> I would agree that if these messages are expected to be seen every
> time, there's no way to fix them, and they're not indicative of any
> problem then something should be done. Seeing something printed at
> "dev_error" level with an exclamation point (!) at the end makes me
> feel like this is something that needs immediate action on my part.
>
> If we really can't do better but feel that the messages need to be
> there, at least make them dev_info and less scary like:
>
> arm-smmu 15000000.iommu: turning off; DMA should be quiesced before
> now
>
> ...that would still give you a hint in the logs that if you saw a DMA
> transaction after the message that it was a bug but also wouldn't
> sound scary to someone who wasn't seeing any other problems.
>

We can do this if Robin is OK?

It would be nice if you could figure out which domains are still live when
the SMMU is being shut down in your case and verify that it *is* infact
benign before we start making the message more friendly. As Robin said
earlier, rogue DMA is a real nightmare to debug.


I could see this error message for all the clients of apps_smmu.
I checked manually enabling bypass and removing iommus dt property
for each client of apps_smmu.

Thanks,
Sai

--
QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member
of Code Aurora Forum, hosted by The Linux Foundation