Re: [PATCH v1 09/18] KVM: selftests/steal_time: vcpu related code consolidation and cleanup

From: Sean Christopherson
Date: Wed Oct 26 2022 - 20:17:52 EST


On Mon, Oct 24, 2022, Wei Wang wrote:
> Remove the unnecessary definition of array of the vcpu pointers and
> re-use the one from the kvm_vm struct (i.e. vm->vcpus[]). Use the helper
> function to create the time stealing thread with name.

One thing per patch.

> Also add a check of the pthread_join return value.
>
> Signed-off-by: Wei Wang <wei.w.wang@xxxxxxxxx>
> ---
> tools/testing/selftests/kvm/steal_time.c | 15 +++++++++------
> 1 file changed, 9 insertions(+), 6 deletions(-)
>
> diff --git a/tools/testing/selftests/kvm/steal_time.c b/tools/testing/selftests/kvm/steal_time.c
> index db8967f1a17b..857ed2c073fc 100644
> --- a/tools/testing/selftests/kvm/steal_time.c
> +++ b/tools/testing/selftests/kvm/steal_time.c
> @@ -8,7 +8,6 @@
> #include <stdio.h>
> #include <time.h>
> #include <sched.h>
> -#include <pthread.h>
> #include <linux/kernel.h>
> #include <asm/kvm.h>
> #include <asm/kvm_para.h>
> @@ -241,7 +240,7 @@ static void run_vcpu(struct kvm_vcpu *vcpu)
>
> int main(int ac, char **av)
> {
> - struct kvm_vcpu *vcpus[NR_VCPUS];
> + struct kvm_vcpu **vcpus;
> struct kvm_vm *vm;
> pthread_attr_t attr;
> pthread_t thread;
> @@ -250,7 +249,7 @@ int main(int ac, char **av)
> long stolen_time;
> long run_delay;
> bool verbose;
> - int i;
> + int i, r;
>
> verbose = ac > 1 && (!strncmp(av[1], "-v", 3) || !strncmp(av[1], "--verbose", 10));
>
> @@ -262,7 +261,8 @@ int main(int ac, char **av)
> pthread_setaffinity_np(pthread_self(), sizeof(cpu_set_t), &cpuset);
>
> /* Create a VM and an identity mapped memslot for the steal time structure */
> - vm = vm_create_with_vcpus(NR_VCPUS, guest_code, vcpus);
> + vm = vm_create_with_vcpus(NR_VCPUS, guest_code, NULL);
> + vcpus = vm->vcpus;

Just use vm->vcpus directly and drop the local variable, it's not that much more
churn and this looks quite odd.