Hi Eric,

> On 17 Jun 2025, at 15:41, Eric Auger <eric.au...@redhat.com> wrote:
> 
> 
> 
> On 6/17/25 5:23 PM, Miguel Luis wrote:
>> Hi Alyssa,
>> 
>>> On 17 Jun 2025, at 14:17, Alyssa Ross <h...@alyssa.is> wrote:
>>> 
>>> Eric Auger <eric.au...@redhat.com> writes:
>>> 
>>>> From: Haibo Xu <haibo...@linaro.org>
>>>> 
>>>> Up to now virt support on guest has been only supported with TCG.
>>>> Now it becomes feasible to use it with KVM acceleration.
>>>> 
>>>> Also check only in-kernel GICv3 is used along with KVM EL2.
>>>> 
>>>> Signed-off-by: Haibo Xu <haibo...@linaro.org>
>>>> Signed-off-by: Miguel Luis <miguel.l...@oracle.com>
>>>> Signed-off-by: Eric Auger <eric.au...@redhat.com>
>>>> Reviewed-by: Richard Henderson <richard.hender...@linaro.org>
>>> Hi!  From what I can tell, this will produce an error on hosts that
>>> don't support nested virtualization when QEMU is invoked with -accel
>>> kvm:tcg
>> I didn’t know '-acell kvm:tcg’ could be used as a fallback mechanism between
>> acceleration modes. May I ask whether do you manage the ‘-cpu’ type for 
>> ‘-accel
>> kvm:tcg’ with cpu ‘max’ ?
> Does it exist?
> qemu-system-aarch64: -accel kvm:tcg: invalid accelerator kvm:tcg

Maybe Alyssa is referring to ‘-M 
virt,accel=kvm:tcg,virtualization=on,gic-version=3’ ?

The above didn’t triggered any error. Anyhow if the above does what Alyssa’s 
saying 
we would just be missing the check for || !tcg_enabled() in this patch, I 
believe.

Miguel

> 
> Alyssa, didn't you mean -accel kvm or --accel tcg
>> 
>> But more importantly, is this what you’re referring to?
>> 
>> Although,
>> 
>>> -machine virtualization=on,
>> should work for both '-accel kvm’ and ‘-accel tcg’.
>> 
>>> but I don't think that's the ideal
>>> behaviour.  It would make more sense for it to fall back to the first
>>> permitted accel option that does support running the machine as
>>> configured, so if hardware nested virtualization is not supported, it
>>> should fall back to TCG.
>>> 
>>> I maintain an OS development environment that includes scripts for
>>> running images in QEMU, where running KVM on those images is a
>>> requirement.  Currently, those scripts simply force TCG on aarch64.
>>> With this change, to take advantage of KVM NV support, I'd have to try
>>> to identify in the script whether NV would be supported.  QEMU would be
>>> in a much better position to determine this and fall back to TCG if it's
>>> unsupported, like how the -accel option with multiple values usually
>>> works.
>> Thanks,
>> Miguel


Reply via email to