[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20251217002352.GJ6079@nvidia.com>
Date: Tue, 16 Dec 2025 20:23:52 -0400
From: Jason Gunthorpe <jgg@...dia.com>
To: Mostafa Saleh <smostafa@...gle.com>
Cc: Nicolin Chen <nicolinc@...dia.com>, will@...nel.org,
robin.murphy@....com, joro@...tes.org,
linux-arm-kernel@...ts.infradead.org, iommu@...ts.linux.dev,
linux-kernel@...r.kernel.org, skolothumtho@...dia.com,
praan@...gle.com, xueshuai@...ux.alibaba.com
Subject: Re: [PATCH rc v3 1/4] iommu/arm-smmu-v3: Add ignored bits to fix STE
update sequence
On Tue, Dec 16, 2025 at 10:58:33PM +0000, Mostafa Saleh wrote:
> for (i = 0; i != NUM_ENTRY_QWORDS; i++) {
> - /*
> - * Ignored is only used for bits that are used by both entries,
> - * otherwise it is sequenced according to the unused entry.
> - */
> - ignored[i] &= target_used[i] & cur_used[i];
> -
It is not functionally the same thing without this..
> And we only clear the bits from cur_used, there is no need to for the
> other mask ignored (ignored[i] &= target_used[i] & cur_used[i])
> - If an ignored bit is not in cur_used it will not impact
> "cur_used[i] &= ~ignored[i]" as it must be already zero
> - If an ignored bit is not in target_used, it doesn't really matter,
> we can ignore it anyway, as it is safe to do so.
That was an earlier version, it was switched away to this so as to be
less of a change though the reasoning is sound.
Jason
Powered by blists - more mailing lists