Lines Matching defs:dist

54 	struct vgic_dist *dist = &kvm->arch.vgic;
56 INIT_LIST_HEAD(&dist->lpi_translation_cache);
57 raw_spin_lock_init(&dist->lpi_list_lock);
58 xa_init_flags(&dist->lpi_xa, XA_FLAGS_LOCK_IRQ);
136 * kvm_vgic_dist_init: initialize the dist data structures
142 struct vgic_dist *dist = &kvm->arch.vgic;
146 dist->spis = kcalloc(nr_spis, sizeof(struct vgic_irq), GFP_KERNEL_ACCOUNT);
147 if (!dist->spis)
159 struct vgic_irq *irq = &dist->spis[i];
167 switch (dist->vgic_model) {
177 kfree(dist->spis);
178 dist->spis = NULL;
197 struct vgic_dist *dist = &vcpu->kvm->arch.vgic;
237 if (dist->vgic_model == KVM_DEV_TYPE_ARM_VGIC_V3) {
254 * vgic_init: allocates and initializes dist and vcpu data structures
264 struct vgic_dist *dist = &kvm->arch.vgic;
279 if (!dist->nr_spis)
280 dist->nr_spis = VGIC_NR_IRQS_LEGACY - VGIC_NR_PRIVATE_IRQS;
282 ret = kvm_vgic_dist_init(kvm, dist->nr_spis);
292 switch (dist->vgic_model) {
335 if (!dist->implementation_rev)
336 dist->implementation_rev = KVM_VGIC_IMP_REV_LATEST;
337 dist->initialized = true;
345 struct vgic_dist *dist = &kvm->arch.vgic;
348 dist->ready = false;
349 dist->initialized = false;
351 kfree(dist->spis);
352 dist->spis = NULL;
353 dist->nr_spis = 0;
354 dist->vgic_dist_base = VGIC_ADDR_UNDEF;
356 if (dist->vgic_model == KVM_DEV_TYPE_ARM_VGIC_V3) {
357 list_for_each_entry_safe(rdreg, next, &dist->rd_regions, list)
359 INIT_LIST_HEAD(&dist->rd_regions);
361 dist->vgic_cpu_base = VGIC_ADDR_UNDEF;
370 xa_destroy(&dist->lpi_xa);
462 struct vgic_dist *dist = &kvm->arch.vgic;
478 if (dist->vgic_model == KVM_DEV_TYPE_ARM_VGIC_V2) {
489 dist->ready = true;
490 dist_base = dist->vgic_dist_base;
495 kvm_err("Unable to register VGIC dist MMIO regions\n");