On Fri, Jun 07, 2024 at 03:47:01PM +0800, Xiaoyao Li wrote:
> Date: Fri, 7 Jun 2024 15:47:01 +0800
> From: Xiaoyao Li <xiaoyao...@intel.com>
> Subject: Re: [PATCH] i386/apic: Add hint on boot failure because of
>  disabling x2APIC
> 
> On 6/7/2024 3:46 PM, Zhao Liu wrote:
> > Hi Philippe,
> > 
> > On Fri, Jun 07, 2024 at 08:17:36AM +0200, Philippe Mathieu-Daudé wrote:
> > > Date: Fri, 7 Jun 2024 08:17:36 +0200
> > > From: Philippe Mathieu-Daudé <phi...@linaro.org>
> > > Subject: Re: [PATCH] i386/apic: Add hint on boot failure because of
> > >   disabling x2APIC
> > > 
> > > On 6/6/24 16:08, Zhao Liu wrote:
> > > > Currently, the Q35 supports up to 4096 vCPUs (since v9.0), but for TCG
> > > > cases, if x2APIC is not actively enabled to boot more than 255 vCPUs (
> 
> why bother mentioning TCG case?

I'm restating the problem scenario for this error message. This is a
common use case, which is enough to support adding a simple hint.

> you below example is not for TCG. 

Not?

> And the issue is not caused by TCG but
> default cpu model doesn't have X2APIC enabled.

This is not an issue, and it is normal to report an error in current QEMU.

> > > > e.g., qemu-system-i386 -M pc-q35-9.0 -smp 666), the following error is
> > > > reported:
> > > > 
> > > > Unexpected error in apic_common_set_id() at 
> > > > ../hw/intc/apic_common.c:449:
> > > > qemu-system-i386: APIC ID 255 requires x2APIC feature in CPU
> > > > Aborted (core dumped)
> > > > 
> > > > This error can be resolved by setting x2apic=on in -cpu. In order to
> > > > better help users deal with this scenario, add the error hint to
> > > > instruct users on how to enable the x2apic feature.
> > > 
> > > Why not automatically set x2apic=on in this case instead?
> > 
> > The default CPU model is qemu64 without x2APIC. I think it might be
> > necessary to update the version to add x2APIC in qemu64, and I'd like to
> > look into it again for any other potential issues.
> > 
> > In addition to adding x2APIC directly to the qemu64, this hint can also
> > help some users who want a large number of vCPUs based on other older
> > CPU models. Though, it's not very common but this hint would be helpful.
> > 
> > > > Then, the error
> > > > report becomes the following:
> > > > 
> > > > Unexpected error in apic_common_set_id() at 
> > > > ../hw/intc/apic_common.c:448:
> > > > qemu-system-i386: APIC ID 255 requires x2APIC feature in CPU
> > > > Try x2apic=on in -cpu.
> > > > Aborted (core dumped)
> > > > 
> > > > Note since @errp is &error_abort, error_append_hint() can't be applied
> > > > on @errp. And in order to separate the exact error message from the
> > > > (perhaps effectively) hint, adding a hint via error_append_hint() is
> > > > also necessary. Therefore, introduce @local_error in
> > > > apic_common_set_id() to handle both the error message and the error
> > > > hint.
> > > > 
> > > > Suggested-by: Philippe Mathieu-Daudé <phi...@linaro.org>
> > > > Signed-off-by: Zhao Liu <zhao1....@intel.com>
> > > > ---
> > > >    hw/intc/apic_common.c | 7 ++++++-
> > > >    1 file changed, 6 insertions(+), 1 deletion(-)
> > > 
> > > Reviewed-by: Philippe Mathieu-Daudé <phi...@linaro.org>
> > 
> > Thanks!
> > 
> > 
> 

Reply via email to