Lines Matching +full:non +full:- +full:overlapping

1 // SPDX-License-Identifier: GPL-2.0
71 return __vcpu_run(vcpu) ? -errno : 0;
101 close(v->gic_fd);
102 kvm_vm_free(v->vm);
137 * ARM_VGIC (GICv2 or GICv3) device gets created with an overlapping
150 rdist = VGIC_DEV_IS_V3(v->gic_dev_type) ? gic_v3_redist_region
152 dist = VGIC_DEV_IS_V3(v->gic_dev_type) ? gic_v3_dist_region
156 kvm_has_device_attr(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR, dist.attr);
158 kvm_has_device_attr(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR, rdist.attr);
160 /* check non existing attribute */
161 ret = __kvm_has_device_attr(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR, -1);
166 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
171 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
177 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
181 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
186 addr = max_phys_size - dist.alignment;
187 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
194 kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
199 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
203 ret = __kvm_has_device_attr(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
208 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
215 * Set overlapping DIST / REDIST, cannot be detected here. Will be detected
218 addr = rdist.size - rdist.alignment;
219 kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
229 ret = __kvm_has_device_attr(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
234 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
239 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
244 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
250 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
255 kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
259 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
264 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
267 "register an rdist region overlapping with another one");
270 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
275 kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
279 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
285 addr = REDIST_REGION_ATTR_ADDR(2, max_phys_size - 0x30000, 0, 2);
286 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
292 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
306 ret = __kvm_device_attr_get(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
312 ret = __kvm_device_attr_get(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
317 ret = __kvm_device_attr_get(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
319 TEST_ASSERT(ret && errno == ENOENT, "read characteristics of non existing region");
322 kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
326 ret = __kvm_device_attr_set(v->gic_fd, KVM_DEV_ARM_VGIC_GRP_ADDR,
350 TEST_ASSERT(ret == -EINVAL, "dist/rdist overlap detected on 1st vcpu run");
367 TEST_ASSERT(ret == -EINVAL, "dist/rdist overlap detected on 1st vcpu run");
390 "accessed non-existent CPU interface, want errno: %i",
395 "accessed non-existent CPU interface, want errno: %i",
400 "accessed non-existent CPU interface, want errno: %i",
420 TEST_ASSERT(ret == -ENXIO, "running without sufficient number of rdists");
433 TEST_ASSERT(ret == -EBUSY, "running without vgic explicit init");
474 "attempting to read GICR_TYPER of non created vcpu");
614 addr = max_phys_size - (3 * 2 * 0x10000);
659 addr = max_phys_size - 0x10000;
729 /* try to create a non existing KVM device */
838 * ICC_APnR{1,2,3}_EL1 are examples of such non-sense, and
876 switch (sr->encoding) {
880 return -EINVAL;
890 return -EINVAL;
893 pr_info("SKIP %s for %s\n", sr->name, what);
915 switch (sr->encoding) {
919 return -EINVAL;
926 return -EINVAL;
929 return -EINVAL;
932 pr_info("SKIP %s for %s\n", sr->name, what);