apic: Make APIC ID limit error message clearer
PATCH 1/1 apic: Make APIC ID limit error message clearer
Remove the "apic initialization failed" prefix (it conveys no useful information), replace "invalid" with "too large", and add an error hint with two possible solutions for the problem.
Before:
$ qemu-system-x86_64 -machine q35 -smp 256 qemu-system-x86_64: apic initialization failed. APIC ID 255 is invalid
After:
$ qemu-system-x86_64 -machine q35 -smp 256 -display none qemu-system-x86_64: APIC ID 255 is too large Possible solutions: * Lowering the number of VCPUs on the -smp option * Using accel=kvm,kernel-irqchip=on or accel=kvm,kernel-irqchip=split
---
I'm not sure this is the best way to provide usage hints to the user. Any suggestions?
--- hw/intc/apic.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)
hw/intc/apic.c +5 -2
@@ -886,8 +886,11 @@ static void apic_realize(DeviceState *dev, Error **errp)APICCommonState *s =APIC (dev);if (s->id >=MAX_APICS ) { -error_setg (errp,"%s initialization failed. APIC ID %d is invalid" , -object_get_typename (OBJECT (dev)), s->id); +error_setg (errp,"APIC ID %d is too large" , s->id); +error_append_hint (errp, +"Possible solutions:\n" +"* Lowering the number of VCPUs on the -smp option\n" +"* Using accel=kvm,kernel-irqchip=on or accel=kvm,kernel-irqchip=split\n" );return ; }
Signature · 1 line
2.18.0.rc1.1.g3f1ff2140
Quoted 6 lines · Eduardo Habkost
Remove the "apic initialization failed" prefix (it conveys no useful information), replace "invalid" with "too large", and add an error hint with two possible solutions for the problem.
Before:
Quoted 7 lines
$ qemu-system-x86_64 -machine q35 -smp 256 qemu-system-x86_64: apic initialization failed. APIC ID 255 is invalidAfter:
$ qemu-system-x86_64 -machine q35 -smp 256 -display none qemu-system-x86_64: APIC ID 255 is too large
I would keep the problem "apic initialization failed" sentence. "APIC ID 255 is too large" is just the cause.
Quoted 8 lines
Possible solutions:
* Lowering the number of VCPUs on the -smp option
* Using accel=kvm,kernel-irqchip=on or accel=kvm,kernel-irqchip=splitSigned-off-by Eduardo Habkost <[email protected]>---
I'm not sure this is the best way to provide usage hints to the user. Any suggestions?
As a noob, I can testify that this kind of suggestion is very useful although there seems to not have many on QEMU. On the other hand, I understand it can make qemu verbose and so annoy people. Thus, maybe those suggestions could be enabled/disabled via options (e.g. -show-hints)?
- Wainer
Quoted 22 lines
--- hw/intc/apic.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)hw/intc/apic.c +5
-2@@ -886,8 +886,11 @@ static void apic_realize(DeviceState *dev, Error **errp)APICCommonState *s =APIC (dev);if (s->id >=MAX_APICS ) { -error_setg (errp,"%s initialization failed. APIC ID %d is invalid" , -object_get_typename (OBJECT (dev)), s->id); +error_setg (errp,"APIC ID %d is too large" , s->id); +error_append_hint (errp, +"Possible solutions:\n" +"* Lowering the number of VCPUs on the -smp option\n" +"* Using accel=kvm,kernel-irqchip=on or accel=kvm,kernel-irqchip=split\n" );return ; }
Quoted 11 lines · Wainer dos Santos Moschetta
Quoted 9 lines · Eduardo Habkost
Remove the "apic initialization failed" prefix (it conveys no useful information), replace "invalid" with "too large", and add an error hint with two possible solutions for the problem.
Before:
$ qemu-system-x86_64 -machine q35 -smp 256 qemu-system-x86_64: apic initialization failed. APIC ID 255 is invalid
Quoted 7 lines
Quoted 4 lines
After:
$ qemu-system-x86_64 -machine q35 -smp 256 -display none qemu-system-x86_64: APIC ID 255 is too largeI would keep the problem "apic initialization failed" sentence. "APIC ID 255 is too large" is just the cause.
I'm not sure I agree. "APIC initialization failed" doesn't convey any useful information to the user, does it?
Quoted 10 lines
Quoted 9 lines
Possible solutions:
* Lowering the number of VCPUs on the -smp option
* Using accel=kvm,kernel-irqchip=on or accel=kvm,kernel-irqchip=splitSigned-off-by Eduardo Habkost <[email protected]>---
I'm not sure this is the best way to provide usage hints to the user. Any suggestions?
Quoted 4 lines
As a noob, I can testify that this kind of suggestion is very useful although there seems to not have many on QEMU. On the other hand, I understand it can make qemu verbose and so annoy people. Thus, maybe those suggestions could be enabled/disabled via options (e.g. -show-hints)?
I can't imagine who would be annoyed by them.
Quoted 24 lines
- Wainer
Quoted 20 lines
--- hw/intc/apic.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)hw/intc/apic.c +5
-2@@ -886,8 +886,11 @@ static void apic_realize(DeviceState *dev, Error **errp)APICCommonState *s =APIC (dev);if (s->id >=MAX_APICS ) { -error_setg (errp,"%s initialization failed. APIC ID %d is invalid" , -object_get_typename (OBJECT (dev)), s->id); +error_setg (errp,"APIC ID %d is too large" , s->id); +error_append_hint (errp, +"Possible solutions:\n" +"* Lowering the number of VCPUs on the -smp option\n" +"* Using accel=kvm,kernel-irqchip=on or accel=kvm,kernel-irqchip=split\n" );return ; }
Signature · 1 line
Eduardo
Quoted 14 lines · Eduardo Habkost
Quoted 13 lines · Wainer dos Santos Moschetta
Quoted 11 lines · Eduardo Habkost
Remove the "apic initialization failed" prefix (it conveys no useful information), replace "invalid" with "too large", and add an error hint with two possible solutions for the problem.
Before:
$ qemu-system-x86_64 -machine q35 -smp 256 qemu-system-x86_64: apic initialization failed. APIC ID 255 is invalidAfter:
Quoted 8 lines
Quoted 5 lines
Quoted 2 lines
$ qemu-system-x86_64 -machine q35 -smp 256 -display none qemu-system-x86_64: APIC ID 255 is too largeI would keep the problem "apic initialization failed" sentence. "APIC ID 255 is too large" is just the cause.
I'm not sure I agree. "APIC initialization failed" doesn't convey any useful information to the user, does it?
Concur.
Quoted 9 lines
Quoted 9 lines
Quoted 8 lines
Possible solutions:
* Lowering the number of VCPUs on the -smp option
* Using accel=kvm,kernel-irqchip=on or accel=kvm,kernel-irqchip=splitSigned-off-by Eduardo Habkost <[email protected]>---
I'm not sure this is the best way to provide usage hints to the user. Any suggestions?
Quoted 6 lines
Quoted 4 lines
As a noob, I can testify that this kind of suggestion is very useful although there seems to not have many on QEMU. On the other hand, I understand it can make qemu verbose and so annoy people. Thus, maybe those suggestions could be enabled/disabled via options (e.g. -show-hints)?
I can't imagine who would be annoyed by them.
A few lines of hints are fine. Longer than that and the error becomes hard to spot among the hints.