All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anushree Mathur <anushree.mathur2@ibm.com>
To: "Ritesh Harjani (IBM)" <ritesh.list@gmail.com>, kvm@vger.kernel.org
Cc: Sean Christopherson <seanjc@google.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	linuxppc-dev@lists.ozlabs.org,
	Michael Ellerman <mpe@ellerman.id.au>,
	Christophe Leroy <chleroy@kernel.org>,
	Anushree Mathur <anushree.mathur@linux.ibm.com>,
	Venkat Rao Bagalkote <venkat88@linux.ibm.com>,
	Harsh Prateek Bora <harshpb@linux.ibm.com>,
	Madhavan Srinivasan <maddy@linux.ibm.com>,
	Shrikanth Hegde <sshegde@linux.ibm.com>,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v5 0/9] KVM: selftests: add powerpc support
Date: Tue, 29 Sep 2026 11:19:34 +0530	[thread overview]
Message-ID: <a911b4fa-0127-4e0c-b75f-faa4fcd4bb87@ibm.com> (raw)
In-Reply-To: <cover.1790101179.git.ritesh.list@gmail.com>


On 22/09/26 11:58 PM, Ritesh Harjani (IBM) wrote:
> Patch v4 -> v5:
> ==============
> - Fixed the issues reported by Anushree while running on kvm on powervm
>    (nested).
> - Fixed memslot_perf_test on powerpc.
>
> PATCH v3 -> PATCH v4:
> ==================
> - Rebased on top of Sean's new page allocator patch series v2 [1]
>    This allowed to drop and patch-2 since it will now come from Sean's
>    v2.
> - Addressed review comments from Sean - squashed patches 6-10 in patch-1 of
>    this.
> - Dropped patch-5 to print vcpu_id when KVM_CREATE_VCPU ioctl fails.
> - Added additional patch-3 to this series to allow dirty_log_test to run on all
>    big-endian machines.
>
> [1]: https://lore.kernel.org/kvm/20260902164123.2546762-1-seanjc@google.com/
> [v3]: https://lore.kernel.org/linuxppc-dev/2d2c46be7f051c7f1c645afaec67f57067d37a81.1781093720.git.ritesh.list@gmail.com/
>
> Testing updates:
> ================
> I have done some fair amount of testing of the selftests both on real HW and
> using various combinations on qemu (powernv+LE (default), pseries+cap-nested-hv,
> pseries+cap-nested-papr, powernv+BE). There were few powerpc kvm kernel fixes
> which were identified as part of this work. I will send those patches separately
> as those anyway needs to go in separately.
>
> <pasted snippet of cover letter from previous versions>
> =======================================================
>
> Hi All,
>
> This series primarly adds KVM selftests support for powerpc (64-bit, BookS,
> radix MMU).
>
> This patch series is originally Nick's work. I have mainly only rebased it on
> the latest upstream tree. Since the rebase required few changes to all the four
> patches (Patch 1-4), I have dropped the earlier Acked-by from Michael Ellerman.
>
> Since the last series was posted three years ago [1], I am resetting the version
> to RFC. This rebase was done as part of a larger effort to improve the selftests
> infrastructure for Linux on PowerPC tree. Thanks to Harsh and Maddy for their
> help on this.
>
>
> Nicholas Piggin (1):
>    KVM: PPC: selftests: add support for powerpc
>
> Ritesh Harjani (IBM) (8):
>    KVM: selftests: Enable kvm_create_max_vcpus test for powerpc
>    KVM: selftests: Don't limit LE dirty-bitmap bitops to s390x
>    KVM: selftests: Split out a KVM_CREATE_VCPU helper that can fail
>    KVM: selftests: Make kvm_create_max_vcpus tolerate ENOMEM
>    KVM: selftests: Limit the number of VM creates in hardware_disable_test
>    KVM: PPC: selftests: Make nested case on pseries LPARs as resource constrained
>    KVM: PPC: selftests: Skip idle-page check when running nested on pseries LPAR
>    KVM: selftests: Move memslot_perf_test off the 256M ELF load address
>
>   MAINTAINERS                                   |   2 +
>   tools/testing/selftests/kvm/Makefile          |   2 +-
>   tools/testing/selftests/kvm/Makefile.kvm      |  10 +
>   .../selftests/kvm/access_tracking_perf_test.c |  11 +
>   tools/testing/selftests/kvm/dirty_log_test.c  |  12 +-
>   .../selftests/kvm/hardware_disable_test.c     |   7 +-
>   .../testing/selftests/kvm/include/kvm_util.h  |  13 +
>   .../selftests/kvm/include/powerpc/hcall.h     |  17 +
>   .../kvm/include/powerpc/kvm_util_arch.h       |  22 +
>   .../selftests/kvm/include/powerpc/ppc_asm.h   |  32 ++
>   .../selftests/kvm/include/powerpc/processor.h |  46 ++
>   .../selftests/kvm/include/powerpc/ucall.h     |  21 +
>   .../selftests/kvm/kvm_create_max_vcpus.c      |  29 +-
>   tools/testing/selftests/kvm/lib/guest_modes.c |  20 +-
>   tools/testing/selftests/kvm/lib/kvm_util.c    |  39 +-
>   .../selftests/kvm/lib/powerpc/handlers.S      |  93 ++++
>   .../testing/selftests/kvm/lib/powerpc/hcall.c |  45 ++
>   .../selftests/kvm/lib/powerpc/processor.c     | 522 ++++++++++++++++++
>   .../testing/selftests/kvm/lib/powerpc/ucall.c |  22 +
>   .../testing/selftests/kvm/memslot_perf_test.c |   2 +-
>   20 files changed, 942 insertions(+), 25 deletions(-)
>   create mode 100644 tools/testing/selftests/kvm/include/powerpc/hcall.h
>   create mode 100644 tools/testing/selftests/kvm/include/powerpc/kvm_util_arch.h
>   create mode 100644 tools/testing/selftests/kvm/include/powerpc/ppc_asm.h
>   create mode 100644 tools/testing/selftests/kvm/include/powerpc/processor.h
>   create mode 100644 tools/testing/selftests/kvm/include/powerpc/ucall.h
>   create mode 100644 tools/testing/selftests/kvm/lib/powerpc/handlers.S
>   create mode 100644 tools/testing/selftests/kvm/lib/powerpc/hcall.c
>   create mode 100644 tools/testing/selftests/kvm/lib/powerpc/processor.c
>   create mode 100644 tools/testing/selftests/kvm/lib/powerpc/ucall.c
>
> --
> 2.39.5
>
>
Hi Ritesh,
Thanks for working on the fixes, I tested this series (v5) on top of 
Sean's pre-enabling series (v2) [1]
on two real PowerPC systems. All patches applied cleanly and the tests
work correctly on both PowerVM LPAR and PowerNV bare-metal.

[1]: https://lore.kernel.org/kvm/20260902164123.2546762-1-seanjc@google.com/



Full test suite summary (make run_tests):
-----------------------------------------
                                    LPAR    bare-metal
   demand_paging_test               PASS      PASS
   dirty_log_test                   PASS      PASS
   dirty_log_perf_test              PASS      PASS
   guest_print_test                 PASS      PASS
   hardware_disable_test            PASS      PASS
   kvm_binary_stats_test            PASS      PASS
   kvm_create_max_vcpus             PASS      PASS
   kvm_page_table_test              PASS      PASS
   set_memory_region_test           PASS      PASS
   memslot_modification_stress_test PASS      PASS
   memslot_perf_test                PASS      PASS
   access_tracking_perf_test        PASS      PASS
   irqfd_test                       SKIP      SKIP
   vm_types_test                    SKIP      SKIP
   --------------------------------------------------
   Total                         12 PASS   12 PASS
                                  2 SKIP    2 SKIP


Per-patch validation:
---------------------
Patch 1 [KVM: PPC: selftests: add support for powerpc]
   All 14 tests built and ran successfully on PowerPC — the core
   infrastructure (lib/powerpc/processor.c, handlers.S, ucall.c,
   hcall.c) works correctly on both systems.

Patch 2 [KVM: selftests: Enable kvm_create_max_vcpus test for powerpc]
   kvm_create_max_vcpus ran successfully on both systems.

Patch 3 [KVM: selftests: Don't limit LE dirty-bitmap bitops to s390x]
   dirty_log_test ran successfully on both systems for both 4K and
   64K page modes (big-endian dirty-bitmap bitops working correctly).

Patch 4 [KVM: selftests: Split out a KVM_CREATE_VCPU helper that can fail]
   KVM_CREATE_VCPU helper exercised by kvm_create_max_vcpus on both
   systems — clean failure path confirmed on LPAR (ENOMEM at vCPU 72).

Patch 5 [KVM: selftests: Make kvm_create_max_vcpus tolerate ENOMEM]
   LPAR:       Created 72 vCPUs before ENOMEM at id 72 — test
               completed gracefully without crash or assert.
   bare-metal: Successfully created all 2048 vCPUs — no ENOMEM hit.

Patch 6 [KVM: selftests: Limit the number of VM creates in 
hardware_disable_test]
   hardware_disable_test ran successfully on both systems without
   hitting OOM — VM create limiting working correctly on LPAR.

Patch 7 [KVM: PPC: selftests: Make nested case on pseries LPARs as 
resource constrained]
   access_tracking_perf_test correctly identified the LPAR as a
   resource-constrained nested environment and adjusted accordingly.

Patch 8 [KVM: PPC: selftests: Skip idle-page check when running nested 
on pseries LPAR]
   LPAR:
     Skipping idle page count sanity check, because the test is run nested
     [idle-page check correctly skipped on nested pseries LPAR]
   bare-metal:
     [No skip message — idle-page sanity check ran in full on PowerNV]

Patch 9 [KVM: selftests: Move memslot_perf_test off the 256M ELF load 
address]
   memslot_perf_test ran successfully on both systems — ELF load
   address conflict with PPC's 256M region resolved correctly.

Notes on SKIPs:
---------------
   - irqfd_test:   PowerPC has no in-kernel irqchip.
                   1..0 # SKIP - Requirement not met: 
kvm_arch_has_default_irqchip()
                   Pre-existing, unrelated to this series.

   - vm_types_test: KVM_CAP_VM_TYPES is x86-only (SEV-SNP/TDX).
                   1..0 # SKIP - Requirement not met: 
kvm_has_cap(KVM_CAP_VM_TYPES)
                   Pre-existing, unrelated to this series.


Please feel free to add :

Tested-by: Anushree Mathur <anushree.mathur@linux.ibm.com>

Thank you,
Anushree Mathur


      parent reply	other threads:[~2026-09-29  8:37 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-22 18:28 [PATCH v5 0/9] KVM: selftests: add powerpc support Ritesh Harjani (IBM)
2026-09-22 18:28 ` [PATCH v5 1/9] KVM: PPC: selftests: add support for powerpc Ritesh Harjani (IBM)
2026-09-22 18:43   ` sashiko-bot
2026-09-29  1:11     ` Ritesh Harjani
2026-10-02 22:12   ` Sean Christopherson
2026-10-03  4:37     ` Ritesh Harjani
2026-09-22 18:28 ` [PATCH v5 2/9] KVM: selftests: Enable kvm_create_max_vcpus test " Ritesh Harjani (IBM)
2026-09-22 18:28 ` [PATCH v5 3/9] KVM: selftests: Don't limit LE dirty-bitmap bitops to s390x Ritesh Harjani (IBM)
2026-09-22 18:28 ` [PATCH v5 4/9] KVM: selftests: Split out a KVM_CREATE_VCPU helper that can fail Ritesh Harjani (IBM)
2026-09-22 18:28 ` [PATCH v5 5/9] KVM: selftests: Make kvm_create_max_vcpus tolerate ENOMEM Ritesh Harjani (IBM)
2026-10-02 22:16   ` Sean Christopherson
2026-10-03  5:45     ` Ritesh Harjani
2026-09-22 18:28 ` [PATCH v5 6/9] KVM: selftests: Limit the number of VM creates in hardware_disable_test Ritesh Harjani (IBM)
2026-10-02 22:19   ` Sean Christopherson
2026-10-03  6:01     ` Ritesh Harjani
2026-09-22 18:28 ` [PATCH v5 7/9] KVM: PPC: selftests: Make nested case on pseries LPARs as resource constrained Ritesh Harjani (IBM)
2026-09-22 18:28 ` [PATCH v5 8/9] KVM: PPC: selftests: Skip idle-page check when running nested on pseries LPAR Ritesh Harjani (IBM)
2026-09-22 18:28 ` [PATCH v5 9/9] KVM: selftests: Move memslot_perf_test off the 256M ELF load address Ritesh Harjani (IBM)
2026-10-02 22:28   ` Sean Christopherson
2026-09-29  1:35 ` [PATCH v5 0/9] KVM: selftests: add powerpc support Ritesh Harjani
2026-10-02 22:38   ` Sean Christopherson
2026-10-03  6:46     ` Ritesh Harjani
2026-10-05  2:39       ` Sean Christopherson
2026-10-05  4:25         ` Ritesh Harjani
2026-10-05  6:08           ` Sean Christopherson
2026-10-06  2:43             ` Ritesh Harjani
2026-09-29  5:49 ` Anushree Mathur [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a911b4fa-0127-4e0c-b75f-faa4fcd4bb87@ibm.com \
    --to=anushree.mathur2@ibm.com \
    --cc=anushree.mathur@linux.ibm.com \
    --cc=chleroy@kernel.org \
    --cc=harshpb@linux.ibm.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=maddy@linux.ibm.com \
    --cc=mpe@ellerman.id.au \
    --cc=pbonzini@redhat.com \
    --cc=ritesh.list@gmail.com \
    --cc=seanjc@google.com \
    --cc=sshegde@linux.ibm.com \
    --cc=venkat88@linux.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.