[PATCH] iommu/arm-smmu-v3: Fix L1 stream table index calculation for AmpereOne
Yang Shi
yang at os.amperecomputing.com
Tue Oct 1 12:38:56 PDT 2024
On 10/1/24 12:18 PM, Jason Gunthorpe wrote:
> On Tue, Oct 01, 2024 at 12:09:03PM -0700, Yang Shi wrote:
>>> Also, there are other places doing "1 << smmu->sid_bits", e.g.
>>> arm_smmu_init_strtab_linear().
>> The disassembly shows it uses "sbfiz x21, x20, 6, 32" instead of lsl. 1UL
>> should be used if we want to take extra caution and don't prefer rely on
>> compiler.
> Still, we should be fixing them all if sid_bits == 32, all those
> shifts should be throwing a UBSAN error. It would be crazy to have a
OK, will cover this is v2.
> 32 bit linear table but I guess it is allowed?
I'm not smmu expert, but if sid_bits is 32, it looks like the linear
table will consume 256GB IIUC? That is crazy.
>
> Jason
More information about the linux-arm-kernel
mailing list