lkml.org 
[lkml]   [2021]   [Jan]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    Subject[PATCH 4/6] KVM: selftests: Fix population stage in dirty_log_perf_test
    From
    Currently the population stage in the dirty_log_perf_test does nothing
    as the per-vCPU iteration counters are not initialized and the loop does
    not wait for each vCPU. Remedy those errors.

    Reviewed-by: Jacob Xu <jacobhxu@google.com>
    Reviewed-by: Makarand Sonare <makarandsonare@google.com>

    Signed-off-by: Ben Gardon <bgardon@google.com>
    ---
    tools/testing/selftests/kvm/dirty_log_perf_test.c | 11 ++++++++---
    1 file changed, 8 insertions(+), 3 deletions(-)

    diff --git a/tools/testing/selftests/kvm/dirty_log_perf_test.c b/tools/testing/selftests/kvm/dirty_log_perf_test.c
    index 3875f22d7283..fb6eb7fa0b45 100644
    --- a/tools/testing/selftests/kvm/dirty_log_perf_test.c
    +++ b/tools/testing/selftests/kvm/dirty_log_perf_test.c
    @@ -139,14 +139,19 @@ static void run_test(enum vm_guest_mode mode, void *arg)

    clock_gettime(CLOCK_MONOTONIC, &start);
    for (vcpu_id = 0; vcpu_id < nr_vcpus; vcpu_id++) {
    + vcpu_last_completed_iteration[vcpu_id] = -1;
    +
    pthread_create(&vcpu_threads[vcpu_id], NULL, vcpu_worker,
    &perf_test_args.vcpu_args[vcpu_id]);
    }

    - /* Allow the vCPU to populate memory */
    + /* Allow the vCPUs to populate memory */
    pr_debug("Starting iteration %d - Populating\n", iteration);
    - while (READ_ONCE(vcpu_last_completed_iteration[vcpu_id]) != iteration)
    - ;
    + for (vcpu_id = 0; vcpu_id < nr_vcpus; vcpu_id++) {
    + while (READ_ONCE(vcpu_last_completed_iteration[vcpu_id]) !=
    + iteration)
    + ;
    + }

    ts_diff = timespec_elapsed(start);
    pr_info("Populate memory time: %ld.%.9lds\n",
    --
    2.30.0.284.gd98b1dd5eaa7-goog
    \
     
     \ /
      Last update: 2021-01-12 22:48    [W:6.596 / U:0.012 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site