Lines Matching defs:bond
352 struct arm_smmu_bond *bond;
361 list_for_each_entry(bond, &master->bonds, list) {
362 if (bond->mm == mm) {
363 refcount_inc(&bond->refs);
364 return &bond->sva;
368 bond = kzalloc(sizeof(*bond), GFP_KERNEL);
369 if (!bond)
372 bond->mm = mm;
373 bond->sva.dev = dev;
374 refcount_set(&bond->refs, 1);
376 bond->smmu_mn = arm_smmu_mmu_notifier_get(smmu_domain, mm);
377 if (IS_ERR(bond->smmu_mn)) {
378 ret = PTR_ERR(bond->smmu_mn);
382 list_add(&bond->list, &master->bonds);
383 return &bond->sva;
386 kfree(bond);
542 struct arm_smmu_bond *bond = NULL, *t;
548 bond = t;
553 if (!WARN_ON(!bond) && refcount_dec_and_test(&bond->refs)) {
554 list_del(&bond->list);
555 arm_smmu_mmu_notifier_put(bond->smmu_mn);
556 kfree(bond);