kvm: don't use perror() without useful errno

perror() is designed to append the decoded errno value to a
string. This, however, only makes sense if we called something that
actually sets errno prior to that.

For the callers that check for split irqchip support that is not the
case, and we end up with confusing error messages that end in
"success". Use error_report() instead.

Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Message-Id: <20220728142446.438177-1-cohuck@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
master
Cornelia Huck 2022-07-28 16:24:46 +02:00 committed by Paolo Bonzini
parent 705c881f7d
commit 47c182fe8b
2 changed files with 2 additions and 2 deletions

View File

@ -2265,7 +2265,7 @@ static void kvm_irqchip_create(KVMState *s)
ret = kvm_arch_irqchip_create(s);
if (ret == 0) {
if (s->kernel_irqchip_split == ON_OFF_AUTO_ON) {
perror("Split IRQ chip mode not supported.");
error_report("Split IRQ chip mode not supported.");
exit(1);
} else {
ret = kvm_vm_ioctl(s, KVM_CREATE_IRQCHIP);

View File

@ -959,7 +959,7 @@ void kvm_arch_init_irq_routing(KVMState *s)
int kvm_arch_irqchip_create(KVMState *s)
{
if (kvm_kernel_irqchip_split()) {
perror("-machine kernel_irqchip=split is not supported on ARM.");
error_report("-machine kernel_irqchip=split is not supported on ARM.");
exit(1);
}