[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <70949c17-5ed4-189c-3e7a-47848a27684c@loongson.cn>
Date: Mon, 19 May 2025 15:50:01 +0800
From: Bibo Mao <maobibo@...ngson.cn>
To: Huacai Chen <chenhuacai@...nel.org>
Cc: Paolo Bonzini <pbonzini@...hat.com>,
Sean Christopherson <seanjc@...gle.com>, Shuah Khan <shuah@...nel.org>,
linux-kernel@...r.kernel.org, kvm@...r.kernel.org,
linux-kselftest@...r.kernel.org
Subject: Re: [PATCH v11 0/5] KVM: selftests: Add LoongArch support
On 2025/5/12 下午2:53, Huacai Chen wrote:
> Hi, Bibo,
>
> On Sun, Apr 27, 2025 at 2:45 PM Bibo Mao <maobibo@...ngson.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.
>
> [1] https://github.com/chenhuacai/linux/commits/loongarch-next
That is ok for me. Will send V12 soon.
Regards
Bibo Mao
>
>
>
> 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
>>
Powered by blists - more mailing lists