From: Chen Pei <cp0613@linux.alibaba.com>
To: pjw@kernel.org, palmer@dabbelt.com, alex@ghiti.fr,
rppt@kernel.org, pasha.tatashin@soleen.com, pratyush@kernel.org,
graf@amazon.com, shuah@kernel.org
Cc: guoren@kernel.org, linux-riscv@lists.infradead.org,
linux-kernel@vger.kernel.org, linux-mm@kvack.org,
linux-kselftest@vger.kernel.org, kexec@lists.infradead.org
Subject: [PATCH v2 4/5] selftests: kho: Add riscv support
Date: Tue, 3 Nov 2026 16:09:25 +0800 [thread overview]
Message-ID: <20261103080926.2079-5-cp0613@linux.alibaba.com> (raw)
In-Reply-To: <20261103080926.2079-1-cp0613@linux.alibaba.com>
Teach the KHO vmtest runner about riscv64: map the target to ARCH
riscv and describe the QEMU virt machine, the kernel image and its
console -- a 16550A port probed from the device tree on virt, hence
the SERIAL_8250{,_CONSOLE} and SERIAL_OF_PLATFORM symbols. Also
select CONFIG_SPARSEMEM_MANUAL: the runner requires
CONFIG_DEFERRED_STRUCT_PAGE_INIT, which depends on SPARSEMEM, while
riscv falls back to FLATMEM (no ARCH_SPARSEMEM_DEFAULT), so without
it the test would just be skipped.
Signed-off-by: Chen Pei <cp0613@linux.alibaba.com>
---
Test: qemu-system-riscv64 (virt, -cpu max, TCG), in-tree runner
"tools/testing/selftests/kho/vmtest.sh -t riscv64" (boots the Image
and kexec'es into the same Image).
KHO: found kexec handover data.
KHO: exec from: 7.4.0-rc1-next-20261102-00005-gfca49e548231 (count 1)
test_kho: KHO restore succeeded
ok 1 KHO succeeded
# Totals: pass:1 fail:0 xfail:0 xpass:0 skip:0 error:0
tools/testing/selftests/kho/riscv.conf | 9 +++++++++
tools/testing/selftests/kho/vmtest.sh | 3 ++-
2 files changed, 11 insertions(+), 1 deletion(-)
create mode 100644 tools/testing/selftests/kho/riscv.conf
diff --git a/tools/testing/selftests/kho/riscv.conf b/tools/testing/selftests/kho/riscv.conf
new file mode 100644
index 000000000000..ec2a46cd45d5
--- /dev/null
+++ b/tools/testing/selftests/kho/riscv.conf
@@ -0,0 +1,9 @@
+QEMU_CMD="qemu-system-riscv64 -M virt -cpu max"
+QEMU_KCONFIG="
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_OF_PLATFORM=y
+CONFIG_SPARSEMEM_MANUAL=y
+"
+KERNEL_IMAGE="Image"
+KERNEL_CMDLINE="console=ttyS0"
diff --git a/tools/testing/selftests/kho/vmtest.sh b/tools/testing/selftests/kho/vmtest.sh
index 1e86ffcc3a79..56cac6ae3cf9 100755
--- a/tools/testing/selftests/kho/vmtest.sh
+++ b/tools/testing/selftests/kho/vmtest.sh
@@ -21,7 +21,7 @@ Options:
-d) path to the kernel build directory
-j) number of jobs for compilation, similar to -j in make
-t) run test for target_arch, requires CROSS_COMPILE set
- supported targets: aarch64, x86_64
+ supported targets: aarch64, x86_64, riscv64
-h) display this help
EOF
}
@@ -127,6 +127,7 @@ function target_to_arch() {
case $target in
aarch64) echo "arm64" ;;
x86_64) echo "x86" ;;
+ riscv64) echo "riscv" ;;
*) skip "architecture $target is not supported"
esac
}
--
2.50.1
WARNING: multiple messages have this Message-ID (diff)
From: Chen Pei <cp0613@linux.alibaba.com>
To: pjw@kernel.org, palmer@dabbelt.com, alex@ghiti.fr,
rppt@kernel.org, pasha.tatashin@soleen.com, pratyush@kernel.org,
graf@amazon.com, shuah@kernel.org
Cc: guoren@kernel.org, linux-riscv@lists.infradead.org,
linux-kernel@vger.kernel.org, linux-mm@kvack.org,
linux-kselftest@vger.kernel.org, kexec@lists.infradead.org
Subject: [PATCH v2 4/5] selftests: kho: Add riscv support
Date: Tue, 3 Nov 2026 16:09:25 +0800 [thread overview]
Message-ID: <20261103080926.2079-5-cp0613@linux.alibaba.com> (raw)
In-Reply-To: <20261103080926.2079-1-cp0613@linux.alibaba.com>
Teach the KHO vmtest runner about riscv64: map the target to ARCH
riscv and describe the QEMU virt machine, the kernel image and its
console -- a 16550A port probed from the device tree on virt, hence
the SERIAL_8250{,_CONSOLE} and SERIAL_OF_PLATFORM symbols. Also
select CONFIG_SPARSEMEM_MANUAL: the runner requires
CONFIG_DEFERRED_STRUCT_PAGE_INIT, which depends on SPARSEMEM, while
riscv falls back to FLATMEM (no ARCH_SPARSEMEM_DEFAULT), so without
it the test would just be skipped.
Signed-off-by: Chen Pei <cp0613@linux.alibaba.com>
---
Test: qemu-system-riscv64 (virt, -cpu max, TCG), in-tree runner
"tools/testing/selftests/kho/vmtest.sh -t riscv64" (boots the Image
and kexec'es into the same Image).
KHO: found kexec handover data.
KHO: exec from: 7.4.0-rc1-next-20261102-00005-gfca49e548231 (count 1)
test_kho: KHO restore succeeded
ok 1 KHO succeeded
# Totals: pass:1 fail:0 xfail:0 xpass:0 skip:0 error:0
tools/testing/selftests/kho/riscv.conf | 9 +++++++++
tools/testing/selftests/kho/vmtest.sh | 3 ++-
2 files changed, 11 insertions(+), 1 deletion(-)
create mode 100644 tools/testing/selftests/kho/riscv.conf
diff --git a/tools/testing/selftests/kho/riscv.conf b/tools/testing/selftests/kho/riscv.conf
new file mode 100644
index 000000000000..ec2a46cd45d5
--- /dev/null
+++ b/tools/testing/selftests/kho/riscv.conf
@@ -0,0 +1,9 @@
+QEMU_CMD="qemu-system-riscv64 -M virt -cpu max"
+QEMU_KCONFIG="
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_OF_PLATFORM=y
+CONFIG_SPARSEMEM_MANUAL=y
+"
+KERNEL_IMAGE="Image"
+KERNEL_CMDLINE="console=ttyS0"
diff --git a/tools/testing/selftests/kho/vmtest.sh b/tools/testing/selftests/kho/vmtest.sh
index 1e86ffcc3a79..56cac6ae3cf9 100755
--- a/tools/testing/selftests/kho/vmtest.sh
+++ b/tools/testing/selftests/kho/vmtest.sh
@@ -21,7 +21,7 @@ Options:
-d) path to the kernel build directory
-j) number of jobs for compilation, similar to -j in make
-t) run test for target_arch, requires CROSS_COMPILE set
- supported targets: aarch64, x86_64
+ supported targets: aarch64, x86_64, riscv64
-h) display this help
EOF
}
@@ -127,6 +127,7 @@ function target_to_arch() {
case $target in
aarch64) echo "arm64" ;;
x86_64) echo "x86" ;;
+ riscv64) echo "riscv" ;;
*) skip "architecture $target is not supported"
esac
}
--
2.50.1
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
next prev parent reply other threads:[~2026-11-03 8:09 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-03 8:09 [PATCH v2 0/5] riscv: Enable kexec handover and live update Chen Pei
2026-11-03 8:09 ` Chen Pei
2026-11-03 8:09 ` [PATCH v2 1/5] kho: Do not translate the handover FDT address in is_kho_boot() Chen Pei
2026-11-03 8:09 ` Chen Pei
2026-11-04 8:10 ` sashiko-bot
2026-11-05 13:07 ` Mike Rapoport
2026-11-05 13:07 ` Mike Rapoport
2026-11-06 3:41 ` Chen Pei
2026-11-06 3:41 ` Chen Pei
2026-11-03 8:09 ` [PATCH v2 2/5] riscv: Call early_ioremap_setup() before parsing the DTB Chen Pei
2026-11-03 8:09 ` Chen Pei
2026-11-04 8:10 ` sashiko-bot
2026-11-03 8:09 ` [PATCH v2 3/5] riscv: Add support for kexec handover (KHO) Chen Pei
2026-11-03 8:09 ` Chen Pei
2026-11-04 8:10 ` sashiko-bot
2026-11-04 13:45 ` Chen Pei
2026-11-03 8:09 ` Chen Pei [this message]
2026-11-03 8:09 ` [PATCH v2 4/5] selftests: kho: Add riscv support Chen Pei
2026-11-04 8:10 ` sashiko-bot
2026-11-05 13:08 ` Mike Rapoport
2026-11-05 13:08 ` Mike Rapoport
2026-11-03 8:09 ` [PATCH v2 5/5] selftests: liveupdate: " Chen Pei
2026-11-03 8:09 ` Chen Pei
2026-11-04 8:10 ` sashiko-bot
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=20261103080926.2079-5-cp0613@linux.alibaba.com \
--to=cp0613@linux.alibaba.com \
--cc=alex@ghiti.fr \
--cc=graf@amazon.com \
--cc=guoren@kernel.org \
--cc=kexec@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-riscv@lists.infradead.org \
--cc=palmer@dabbelt.com \
--cc=pasha.tatashin@soleen.com \
--cc=pjw@kernel.org \
--cc=pratyush@kernel.org \
--cc=rppt@kernel.org \
--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 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.