Re: [kvm-unit-tests PATCH v3] runtime: Allow to specify properties for accelerator

Gavin Shan <[email protected]> Tue, 20 Jun 2023 04:14:22 +0000
Newsgroups org.kernel.vger.kvm-ppc,dev.linux.lists.kvmarm,org.kernel.vger.kvm,org.kernel.vger.linux-s390
Message-ID <[email protected]>
Hi Drew,

On 6/19/23 18:44, Andrew Jones wrote:
> On Fri, Jun 16, 2023 at 10:41:29AM +1000, Gavin Shan wrote:
>>
>> On 6/15/23 23:39, Nico Boehr wrote:
>>> Quoting Gavin Shan (2023-06-15 08:21:48)
>>>> There are extra properties for accelerators to enable the specific
>>>> features. For example, the dirty ring for KVM accelerator can be
>>>> enabled by "-accel kvm,dirty-ring-sizee536". Unfortuntely, the
>>>> extra properties for the accelerators aren't supported. It makes
>>>> it's impossible to test the combination of KVM and dirty ring
>>>> as the following error message indicates.
>>>>
>>>>     # cd /home/gavin/sandbox/kvm-unit-tests/tests
>>>>     # QEMU=/home/gavin/sandbox/qemu.main/build/qemu-system-aarch64 \
>>>>       ACCEL=kvm,dirty-ring-sizee536 ./its-migration
>>>>        :
>>>>     BUILD_HEAD/ffb37e
>>>>     timeout -k 1s --foreground 90s /home/gavin/sandbox/qemu.main/build/qemu-system-aarch64 \
>>>>     -nodefaults -machine virt -accel kvm,dirty-ring-sizee536 -cpu cortex-a57             \
>>>>     -device virtio-serial-device -device virtconsole,chardev=ctd -chardev testdev,id=ctd   \
>>>>     -device pci-testdev -display none -serial stdio -kernel _NO_FILE_4Uhere_ -smp 160      \
>>>>     -machine gic-version=3 -append its-pending-migration # -initrd /tmp/tmp.gfDLa1EtWk
>>>>     qemu-system-aarch64: kvm_init_vcpu: kvm_arch_init_vcpu failed (0): Invalid argument
>>>>
>>>> Allow to specify extra properties for accelerators. With this, the
>>>> "its-migration" can be tested for the combination of KVM and dirty
>>>> ring.
>>>>
>>>> Signed-off-by: Gavin Shan <[email protected]>
>>>
>>> Maybe get_qemu_accelerator could be renamed now, since it doesn't actually "get"
>>> anything, so maybe check_qemu_accelerator?
>>>
>>> In any case, I gave it a quick run on s390x with kvm and tcg and nothing seems
>>> to break, hence for the changes in s390x:
>>>
>>> Tested-by: Nico Boehr <[email protected]>
>>> Acked-by: Nico Boehr <[email protected]>
>>>
>>
>> Thanks for a quick try and comment for this. I guess it's fine to keep the
>> function name as get_qemu_accelator() because $ACCEL is split into $ACCEL
>> and $ACCEL_PROPS inside it, even it don't print the accelerator name at
>> return. However, I'm also fine with check_qemu_accelerator(). Lets see
>> what's Drew's comment on this and I can post v4 to have the modified
>> function name, or an followup patch to modify the function name.
> 
> I suggested naming it set_qemu_accelerator() in the v2 review.
> 

My bad, it will be renamed to set_qemu_accelerator() in v4 :)

Thanks,
Gavin