[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <583b1769-0f35-8f77-8570-2cc41612e4d4@redhat.com>
Date: Mon, 18 Jan 2021 19:18:45 +0100
From: Paolo Bonzini <pbonzini@...hat.com>
To: Ben Gardon <bgardon@...gle.com>, linux-kernel@...r.kernel.org,
kvm@...r.kernel.org, linux-kselftest@...r.kernel.org
Cc: Peter Xu <peterx@...hat.com>, Andrew Jones <drjones@...hat.com>,
Peter Shier <pshier@...gle.com>,
Sean Christopherson <sean.j.christopherson@...el.com>,
Thomas Huth <thuth@...hat.com>, Jacob Xu <jacobhxu@...gle.com>,
Makarand Sonare <makarandsonare@...gle.com>
Subject: Re: [PATCH 0/6] KVM: selftests: Perf test cleanups and memslot
modification test
On 12/01/21 22:42, Ben Gardon wrote:
> This series contains a few cleanups that didn't make it into previous
> series, including some cosmetic changes and small bug fixes. The series
> also lays the groundwork for a memslot modification test which stresses
> the memslot update and page fault code paths in an attempt to expose races.
>
> Tested: dirty_log_perf_test, memslot_modification_stress_test, and
> demand_paging_test were run, with all the patches in this series
> applied, on an Intel Skylake machine.
>
> echo Y > /sys/module/kvm/parameters/tdp_mmu; \
> ./memslot_modification_stress_test -i 1000 -v 64 -b 1G; \
> ./memslot_modification_stress_test -i 1000 -v 64 -b 64M -o; \
> ./dirty_log_perf_test -v 64 -b 1G; \
> ./dirty_log_perf_test -v 64 -b 64M -o; \
> ./demand_paging_test -v 64 -b 1G; \
> ./demand_paging_test -v 64 -b 64M -o; \
> echo N > /sys/module/kvm/parameters/tdp_mmu; \
> ./memslot_modification_stress_test -i 1000 -v 64 -b 1G; \
> ./memslot_modification_stress_test -i 1000 -v 64 -b 64M -o; \
> ./dirty_log_perf_test -v 64 -b 1G; \
> ./dirty_log_perf_test -v 64 -b 64M -o; \
> ./demand_paging_test -v 64 -b 1G; \
> ./demand_paging_test -v 64 -b 64M -o
>
> The tests behaved as expected, and fixed the problem of the
> population stage being skipped in dirty_log_perf_test. This can be
> seen in the output, with the population stage taking about the time
> dirty pass 1 took and dirty pass 1 falling closer to the times for
> the other passes.
>
> Note that when running these tests, the -o option causes the test to take
> much longer as the work each vCPU must do increases proportional to the
> number of vCPUs.
>
> You can view this series in Gerrit at:
> https://linux-review.googlesource.com/c/linux/kernel/git/torvalds/linux/+/7216
>
> Ben Gardon (6):
> KVM: selftests: Rename timespec_diff_now to timespec_elapsed
> KVM: selftests: Avoid flooding debug log while populating memory
> KVM: selftests: Convert iterations to int in dirty_log_perf_test
> KVM: selftests: Fix population stage in dirty_log_perf_test
> KVM: selftests: Add option to overlap vCPU memory access
> KVM: selftests: Add memslot modification stress test
>
> tools/testing/selftests/kvm/.gitignore | 1 +
> tools/testing/selftests/kvm/Makefile | 1 +
> .../selftests/kvm/demand_paging_test.c | 40 +++-
> .../selftests/kvm/dirty_log_perf_test.c | 72 +++---
> .../selftests/kvm/include/perf_test_util.h | 4 +-
> .../testing/selftests/kvm/include/test_util.h | 2 +-
> .../selftests/kvm/lib/perf_test_util.c | 25 ++-
> tools/testing/selftests/kvm/lib/test_util.c | 2 +-
> .../kvm/memslot_modification_stress_test.c | 211 ++++++++++++++++++
> 9 files changed, 307 insertions(+), 51 deletions(-)
> create mode 100644 tools/testing/selftests/kvm/memslot_modification_stress_test.c
>
Queued, thanks.
Paolo
Powered by blists - more mailing lists