> It is expected that a single SMMU instance is highly likely to have more > than one device behind it, and therefore more than one StreamID to keep > track of. Thanks for your explanation. I now understand the role of the `mutex_lock` statement. However, I have a new question that I hope you can help me with: I noticed that the function `arm_smmu_insert_master`, which includes the `mutex_lock` statement, was introduced in Linux version 5.13. For kernel code before version 5.13, how do we ensure that there's no resource contention when multiple devices are loaded behind a single SMMU instance? Currently, we're indeed encountering resource contention issues when loading multiple device drivers on the 5.10 kernel. Do you have any suggestions on how to resolve this issue? Thanks.