* [Qemu-devel] [PATCH] apic: Make APIC ID limit error message clearer
@ 2018-11-26 22:56 Eduardo Habkost
2018-12-03 21:07 ` Wainer dos Santos Moschetta
0 siblings, 1 reply; 4+ messages in thread
From: Eduardo Habkost @ 2018-11-26 22:56 UTC (permalink / raw)
To: Markus Armbruster, qemu-devel
Cc: Paolo Bonzini, Eric Blake, Wainer dos Santos Moschetta,
Michael S. Tsirkin
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
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
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(-)
diff --git a/hw/intc/apic.c b/hw/intc/apic.c
index 97ffdd820f..f08006334d 100644
--- a/hw/intc/apic.c
+++ b/hw/intc/apic.c
@@ -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;
}
--
2.18.0.rc1.1.g3f1ff2140
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH] apic: Make APIC ID limit error message clearer
2018-11-26 22:56 [Qemu-devel] [PATCH] apic: Make APIC ID limit error message clearer Eduardo Habkost
@ 2018-12-03 21:07 ` Wainer dos Santos Moschetta
2018-12-04 18:21 ` Eduardo Habkost
0 siblings, 1 reply; 4+ messages in thread
From: Wainer dos Santos Moschetta @ 2018-12-03 21:07 UTC (permalink / raw)
To: Eduardo Habkost, Markus Armbruster, qemu-devel
Cc: Paolo Bonzini, Eric Blake, Michael S. Tsirkin
On 11/26/2018 08:56 PM, Eduardo Habkost wrote:
> 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
I would keep the problem "apic initialization failed" sentence. "APIC ID
255 is too large" is just the cause.
> Possible solutions:
> * Lowering the number of VCPUs on the -smp option
> * Using accel=kvm,kernel-irqchip=on or accel=kvm,kernel-irqchip=split
>
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
> ---
> 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
> ---
> hw/intc/apic.c | 7 +++++--
> 1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/hw/intc/apic.c b/hw/intc/apic.c
> index 97ffdd820f..f08006334d 100644
> --- a/hw/intc/apic.c
> +++ b/hw/intc/apic.c
> @@ -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;
> }
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH] apic: Make APIC ID limit error message clearer
2018-12-03 21:07 ` Wainer dos Santos Moschetta
@ 2018-12-04 18:21 ` Eduardo Habkost
2018-12-05 7:29 ` Markus Armbruster
0 siblings, 1 reply; 4+ messages in thread
From: Eduardo Habkost @ 2018-12-04 18:21 UTC (permalink / raw)
To: Wainer dos Santos Moschetta
Cc: Markus Armbruster, qemu-devel, Paolo Bonzini, Eric Blake,
Michael S. Tsirkin
On Mon, Dec 03, 2018 at 07:07:10PM -0200, Wainer dos Santos Moschetta wrote:
>
> On 11/26/2018 08:56 PM, Eduardo Habkost wrote:
> > 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
>
> I 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?
>
> > Possible solutions:
> > * Lowering the number of VCPUs on the -smp option
> > * Using accel=kvm,kernel-irqchip=on or accel=kvm,kernel-irqchip=split
> >
> > Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
> > ---
> > 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)?
I can't imagine who would be annoyed by them.
>
> - Wainer
>
> > ---
> > hw/intc/apic.c | 7 +++++--
> > 1 file changed, 5 insertions(+), 2 deletions(-)
> >
> > diff --git a/hw/intc/apic.c b/hw/intc/apic.c
> > index 97ffdd820f..f08006334d 100644
> > --- a/hw/intc/apic.c
> > +++ b/hw/intc/apic.c
> > @@ -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;
> > }
>
--
Eduardo
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH] apic: Make APIC ID limit error message clearer
2018-12-04 18:21 ` Eduardo Habkost
@ 2018-12-05 7:29 ` Markus Armbruster
0 siblings, 0 replies; 4+ messages in thread
From: Markus Armbruster @ 2018-12-05 7:29 UTC (permalink / raw)
To: Eduardo Habkost
Cc: Wainer dos Santos Moschetta, Paolo Bonzini, Michael S. Tsirkin,
qemu-devel
Eduardo Habkost <ehabkost@redhat.com> writes:
> On Mon, Dec 03, 2018 at 07:07:10PM -0200, Wainer dos Santos Moschetta wrote:
>>
>> On 11/26/2018 08:56 PM, Eduardo Habkost wrote:
>> > 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
>>
>> I 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.
>> > Possible solutions:
>> > * Lowering the number of VCPUs on the -smp option
>> > * Using accel=kvm,kernel-irqchip=on or accel=kvm,kernel-irqchip=split
>> >
>> > Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
>> > ---
>> > 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)?
>
> 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.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-12-05 7:29 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-11-26 22:56 [Qemu-devel] [PATCH] apic: Make APIC ID limit error message clearer Eduardo Habkost
2018-12-03 21:07 ` Wainer dos Santos Moschetta
2018-12-04 18:21 ` Eduardo Habkost
2018-12-05 7:29 ` Markus Armbruster
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).