2022-06-03 07:24:23

by Sean Christopherson

[permalink] [raw]
Subject: [PATCH v2 038/144] KVM: selftests: Push vm_adjust_num_guest_pages() into "w/o vCPUs" helper

Move the call to vm_adjust_num_guest_pages() from vm_create_with_vcpus()
down into vm_create_without_vcpus(). This will allow a future patch to
make the "w/o vCPUs" variant the common inner helper, e.g. so that the
"with_vcpus" helper calls the "without_vcpus" helper, instead of having
them be separate paths.

Signed-off-by: Sean Christopherson <[email protected]>
---
tools/testing/selftests/kvm/lib/kvm_util.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/testing/selftests/kvm/lib/kvm_util.c b/tools/testing/selftests/kvm/lib/kvm_util.c
index 1c5caf2ddca4..6b0b65c26d4d 100644
--- a/tools/testing/selftests/kvm/lib/kvm_util.c
+++ b/tools/testing/selftests/kvm/lib/kvm_util.c
@@ -282,6 +282,8 @@ struct kvm_vm *vm_create_without_vcpus(enum vm_guest_mode mode, uint64_t pages)
{
struct kvm_vm *vm;

+ pages = vm_adjust_num_guest_pages(VM_MODE_DEFAULT, pages);
+
vm = __vm_create(mode, pages);

kvm_vm_elf_load(vm, program_invocation_name);
@@ -341,8 +343,6 @@ struct kvm_vm *vm_create_with_vcpus(enum vm_guest_mode mode, uint32_t nr_vcpus,
"nr_vcpus = %d too large for host, max-vcpus = %d",
nr_vcpus, kvm_check_cap(KVM_CAP_MAX_VCPUS));

- pages = vm_adjust_num_guest_pages(mode, pages);
-
vm = vm_create_without_vcpus(mode, pages);

for (i = 0; i < nr_vcpus; ++i) {
--
2.36.1.255.ge46751e96f-goog



2022-06-08 15:07:21

by Andrew Jones

[permalink] [raw]
Subject: Re: [PATCH v2 038/144] KVM: selftests: Push vm_adjust_num_guest_pages() into "w/o vCPUs" helper

On Fri, Jun 03, 2022 at 12:41:45AM +0000, Sean Christopherson wrote:
> Move the call to vm_adjust_num_guest_pages() from vm_create_with_vcpus()
> down into vm_create_without_vcpus(). This will allow a future patch to
> make the "w/o vCPUs" variant the common inner helper, e.g. so that the
> "with_vcpus" helper calls the "without_vcpus" helper, instead of having
> them be separate paths.
>
> Signed-off-by: Sean Christopherson <[email protected]>
> ---
> tools/testing/selftests/kvm/lib/kvm_util.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/tools/testing/selftests/kvm/lib/kvm_util.c b/tools/testing/selftests/kvm/lib/kvm_util.c
> index 1c5caf2ddca4..6b0b65c26d4d 100644
> --- a/tools/testing/selftests/kvm/lib/kvm_util.c
> +++ b/tools/testing/selftests/kvm/lib/kvm_util.c
> @@ -282,6 +282,8 @@ struct kvm_vm *vm_create_without_vcpus(enum vm_guest_mode mode, uint64_t pages)
> {
> struct kvm_vm *vm;
>
> + pages = vm_adjust_num_guest_pages(VM_MODE_DEFAULT, pages);

Hi Sean,

We should pass 'mode' here.

Thanks,
drew

> +
> vm = __vm_create(mode, pages);
>
> kvm_vm_elf_load(vm, program_invocation_name);
> @@ -341,8 +343,6 @@ struct kvm_vm *vm_create_with_vcpus(enum vm_guest_mode mode, uint32_t nr_vcpus,
> "nr_vcpus = %d too large for host, max-vcpus = %d",
> nr_vcpus, kvm_check_cap(KVM_CAP_MAX_VCPUS));
>
> - pages = vm_adjust_num_guest_pages(mode, pages);
> -
> vm = vm_create_without_vcpus(mode, pages);
>
> for (i = 0; i < nr_vcpus; ++i) {
> --
> 2.36.1.255.ge46751e96f-goog
>

2022-06-08 20:04:43

by Sean Christopherson

[permalink] [raw]
Subject: Re: [PATCH v2 038/144] KVM: selftests: Push vm_adjust_num_guest_pages() into "w/o vCPUs" helper

On Wed, Jun 08, 2022, Andrew Jones wrote:
> On Fri, Jun 03, 2022 at 12:41:45AM +0000, Sean Christopherson wrote:
> > Move the call to vm_adjust_num_guest_pages() from vm_create_with_vcpus()
> > down into vm_create_without_vcpus(). This will allow a future patch to
> > make the "w/o vCPUs" variant the common inner helper, e.g. so that the
> > "with_vcpus" helper calls the "without_vcpus" helper, instead of having
> > them be separate paths.
> >
> > Signed-off-by: Sean Christopherson <[email protected]>
> > ---
> > tools/testing/selftests/kvm/lib/kvm_util.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/tools/testing/selftests/kvm/lib/kvm_util.c b/tools/testing/selftests/kvm/lib/kvm_util.c
> > index 1c5caf2ddca4..6b0b65c26d4d 100644
> > --- a/tools/testing/selftests/kvm/lib/kvm_util.c
> > +++ b/tools/testing/selftests/kvm/lib/kvm_util.c
> > @@ -282,6 +282,8 @@ struct kvm_vm *vm_create_without_vcpus(enum vm_guest_mode mode, uint64_t pages)
> > {
> > struct kvm_vm *vm;
> >
> > + pages = vm_adjust_num_guest_pages(VM_MODE_DEFAULT, pages);
>
> Hi Sean,
>
> We should pass 'mode' here.

Ouch. Very nice catch! Lucky for me, the resulting conflicts later in the series
are obvious and straightfoward.

Thanks much!