Searched refs:invs (Results 1 – 3 of 3) sorted by relevance
| /linux/drivers/iommu/arm/arm-smmu-v3/ |
| H A D | arm-smmu-v3.c | 1033 arm_smmu_invs_iter_next(struct arm_smmu_invs *invs, size_t next, size_t *idx) in arm_smmu_invs_iter_next() argument 1036 if (next >= invs->num_invs) { in arm_smmu_invs_iter_next() 1040 if (!READ_ONCE(invs->inv[next].users)) { in arm_smmu_invs_iter_next() 1045 return &invs->inv[next]; in arm_smmu_invs_iter_next() 1055 #define arm_smmu_invs_for_each_entry(invs, idx, cur) \ argument 1056 for (cur = arm_smmu_invs_iter_next(invs, 0, &(idx)); cur; \ 1057 cur = arm_smmu_invs_iter_next(invs, idx + 1, &(idx))) 1137 struct arm_smmu_invs *arm_smmu_invs_merge(struct arm_smmu_invs *invs, in arm_smmu_invs_merge() argument 1146 arm_smmu_invs_for_each_cmp(invs, i, to_merge, j, cmp) in arm_smmu_invs_merge() 1154 arm_smmu_invs_for_each_cmp(invs, i, to_merge, j, cmp) { in arm_smmu_invs_merge() [all …]
|
| H A D | arm-smmu-v3-test.c | 641 struct arm_smmu_invs *invs, in arm_smmu_v3_invs_test_verify() argument 646 KUNIT_EXPECT_EQ(test, invs->num_invs, num_invs); in arm_smmu_v3_invs_test_verify() 647 KUNIT_EXPECT_EQ(test, invs->num_trashes, num_trashes); in arm_smmu_v3_invs_test_verify() 649 KUNIT_EXPECT_EQ(test, invs->inv[num_invs].id, ids[num_invs]); in arm_smmu_v3_invs_test_verify() 650 KUNIT_EXPECT_EQ(test, READ_ONCE(invs->inv[num_invs].users), in arm_smmu_v3_invs_test_verify() 652 KUNIT_EXPECT_EQ(test, invs->inv[num_invs].ssid, ssids[num_invs]); in arm_smmu_v3_invs_test_verify()
|
| H A D | arm-smmu-v3.h | 971 struct arm_smmu_invs __rcu *invs; member 1026 struct arm_smmu_invs *arm_smmu_invs_merge(struct arm_smmu_invs *invs, 1028 void arm_smmu_invs_unref(struct arm_smmu_invs *invs, 1030 struct arm_smmu_invs *arm_smmu_invs_purge(struct arm_smmu_invs *invs); 1065 kfree(rcu_dereference_protected(smmu_domain->invs, true)); in arm_smmu_domain_free()
|