From: Bibo Mao <maobibo@loongson.cn>
To: Huacai Chen <chenhuacai@kernel.org>
Cc: Paolo Bonzini <pbonzini@redhat.com>,
Sean Christopherson <seanjc@google.com>,
Shuah Khan <shuah@kernel.org>,
linux-kernel@vger.kernel.org, kvm@vger.kernel.org,
linux-kselftest@vger.kernel.org
Subject: Re: [PATCH v11 0/5] KVM: selftests: Add LoongArch support
Date: Mon, 19 May 2025 17:42:38 +0800 [thread overview]
Message-ID: <2a0f6edc-533f-9384-bd1e-e811310dbf2b@loongson.cn> (raw)
In-Reply-To: <CAAhV-H7XmHcvea-8NvgnSzfg6dVt5wATyDKmDYp31ThYZa+Fgw@mail.gmail.com>
On 2025/5/12 下午2:53, Huacai Chen wrote:
> Hi, Bibo,
>
> On Sun, Apr 27, 2025 at 2:45 PM Bibo Mao <maobibo@loongson.cn> wrote:
>>
>> This patchset adds KVM selftests for LoongArch system, currently only
>> some common test cases are supported and pass to run. These test cases
>> are listed as following:
>> coalesced_io_test
>> demand_paging_test
>> dirty_log_perf_test
>> dirty_log_test
>> guest_print_test
>> hardware_disable_test
>> kvm_binary_stats_test
>> kvm_create_max_vcpus
>> kvm_page_table_test
>> memslot_modification_stress_test
>> memslot_perf_test
>> set_memory_region_test
> I have applied this series [1] but with some modifications (see
> comments in other patches). You can test it to see if everything is
> OK.
>
> And if it's OK, it is better to fetch the patches from [1] and then send V12.
There is error reporting with checkpatch as followings:
ERROR: trailing statements should be on next line
#281: FILE: tools/testing/selftests/kvm/lib/loongarch/processor.c:192:
+ while (1) ;
This is already solved in V9, which patch does [1] come from?
+void route_exception(struct ex_regs *regs)
+{
+ unsigned long pc, estat, badv;
+
+ pc = regs->pc;
+ estat = regs->estat;
+ badv = regs->badv;
+ ucall(UCALL_UNHANDLED, 3, pc, estat, badv);
+ while (1)
+ ;
+}
Regards
Bibo Mao
>
> [1] https://github.com/chenhuacai/linux/commits/loongarch-next
>
>
>
> Huacai
>
>>
>> ---
>> Changes in v11:
>> 1. Fix a typo issue in notes of patch 2, it is kvm_util_arch.h rather than
>> kvm_util_base.h
>>
>> Changes in v10:
>> 1. Add PS_64K and remove PS_8K in file include/loongarch/processor.h
>> 2. Fix a typo issue in file lib/loongarch/processor.c
>> 3. Update file MAINTAINERS about LoongArch KVM selftests
>>
>> Changes in v9:
>> 1. Add vm mode VM_MODE_P47V47_16K, LoongArch VM uses this mode by
>> default, rather than VM_MODE_P36V47_16K.
>> 2. Refresh some spelling issues in changelog.
>>
>> Changes in v8:
>> 1. Porting patch based on the latest version.
>> 2. For macro PC_OFFSET_EXREGS, offsetof() method is used for C header file,
>> still hardcoded definition for assemble language.
>>
>> Changes in v7:
>> 1. Refine code to add LoongArch support in test case
>> set_memory_region_test.
>>
>> Changes in v6:
>> 1. Refresh the patch based on latest kernel 6.8-rc1, add LoongArch
>> support about testcase set_memory_region_test.
>> 2. Add hardware_disable_test test case.
>> 3. Drop modification about macro DEFAULT_GUEST_TEST_MEM, it is problem
>> of LoongArch binutils, this issue is raised to LoongArch binutils owners.
>>
>> Changes in v5:
>> 1. In LoongArch kvm self tests, the DEFAULT_GUEST_TEST_MEM could be
>> 0x130000000, it is different from the default value in memstress.h.
>> So we Move the definition of DEFAULT_GUEST_TEST_MEM into LoongArch
>> ucall.h, and add 'ifndef' condition for DEFAULT_GUEST_TEST_MEM
>> in memstress.h.
>>
>> Changes in v4:
>> 1. Remove the based-on flag, as the LoongArch KVM patch series
>> have been accepted by Linux kernel, so this can be applied directly
>> in kernel.
>>
>> Changes in v3:
>> 1. Improve implementation of LoongArch VM page walk.
>> 2. Add exception handler for LoongArch.
>> 3. Add dirty_log_test, dirty_log_perf_test, guest_print_test
>> test cases for LoongArch.
>> 4. Add __ASSEMBLER__ macro to distinguish asm file and c file.
>> 5. Move ucall_arch_do_ucall to the header file and make it as
>> static inline to avoid function calls.
>> 6. Change the DEFAULT_GUEST_TEST_MEM base addr for LoongArch.
>>
>> Changes in v2:
>> 1. We should use ".balign 4096" to align the assemble code with 4K in
>> exception.S instead of "align 12".
>> 2. LoongArch only supports 3 or 4 levels page tables, so we remove the
>> hanlders for 2-levels page table.
>> 3. Remove the DEFAULT_LOONGARCH_GUEST_STACK_VADDR_MIN and use the common
>> DEFAULT_GUEST_STACK_VADDR_MIN to allocate stack memory in guest.
>> 4. Reorganize the test cases supported by LoongArch.
>> 5. Fix some code comments.
>> 6. Add kvm_binary_stats_test test case into LoongArch KVM selftests.
>> ---
>> Bibo Mao (5):
>> KVM: selftests: Add VM_MODE_P47V47_16K VM mode
>> KVM: selftests: Add KVM selftests header files for LoongArch
>> KVM: selftests: Add core KVM selftests support for LoongArch
>> KVM: selftests: Add ucall test support for LoongArch
>> KVM: selftests: Add test cases for LoongArch
>>
>> MAINTAINERS | 2 +
>> tools/testing/selftests/kvm/Makefile | 2 +-
>> tools/testing/selftests/kvm/Makefile.kvm | 18 +
>> .../testing/selftests/kvm/include/kvm_util.h | 6 +
>> .../kvm/include/loongarch/kvm_util_arch.h | 7 +
>> .../kvm/include/loongarch/processor.h | 141 ++++++++
>> .../selftests/kvm/include/loongarch/ucall.h | 20 +
>> tools/testing/selftests/kvm/lib/kvm_util.c | 3 +
>> .../selftests/kvm/lib/loongarch/exception.S | 59 +++
>> .../selftests/kvm/lib/loongarch/processor.c | 342 ++++++++++++++++++
>> .../selftests/kvm/lib/loongarch/ucall.c | 38 ++
>> .../selftests/kvm/set_memory_region_test.c | 2 +-
>> 12 files changed, 638 insertions(+), 2 deletions(-)
>> create mode 100644 tools/testing/selftests/kvm/include/loongarch/kvm_util_arch.h
>> create mode 100644 tools/testing/selftests/kvm/include/loongarch/processor.h
>> create mode 100644 tools/testing/selftests/kvm/include/loongarch/ucall.h
>> create mode 100644 tools/testing/selftests/kvm/lib/loongarch/exception.S
>> create mode 100644 tools/testing/selftests/kvm/lib/loongarch/processor.c
>> create mode 100644 tools/testing/selftests/kvm/lib/loongarch/ucall.c
>>
>>
>> base-commit: 5bc1018675ec28a8a60d83b378d8c3991faa5a27
>> --
>> 2.39.3
>>
prev parent reply other threads:[~2025-05-19 9:43 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-27 6:45 Bibo Mao
2025-04-27 6:45 ` [PATCH v11 1/5] KVM: selftests: Add VM_MODE_P47V47_16K VM mode Bibo Mao
2025-04-27 6:45 ` [PATCH v11 2/5] KVM: selftests: Add KVM selftests header files for LoongArch Bibo Mao
2025-04-27 6:45 ` [PATCH v11 3/5] KVM: selftests: Add core KVM selftests support " Bibo Mao
2025-05-12 6:53 ` Huacai Chen
2025-04-27 6:45 ` [PATCH v11 4/5] KVM: selftests: Add ucall test " Bibo Mao
2025-04-27 6:45 ` [PATCH v11 5/5] KVM: selftests: Add test cases " Bibo Mao
2025-05-12 6:54 ` Huacai Chen
2025-05-12 6:53 ` [PATCH v11 0/5] KVM: selftests: Add LoongArch support Huacai Chen
2025-05-19 7:50 ` Bibo Mao
2025-05-19 9:42 ` Bibo Mao [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=2a0f6edc-533f-9384-bd1e-e811310dbf2b@loongson.cn \
--to=maobibo@loongson.cn \
--cc=chenhuacai@kernel.org \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=pbonzini@redhat.com \
--cc=seanjc@google.com \
--cc=shuah@kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®