computing-offload/generic_vdpa/libvirt/Implement-the-method-of-getting-host-info-for-loonga.patch
jiangdongxu 79c4324644 add generic_vdpa basecode
Change-Id: I2d302dda68298877c65c99147f5bf22186a59aac
2024-09-19 17:19:46 +08:00

66 lines
2.2 KiB
Diff

From 4123437e633f05af0ae8091d5db440597394ba36 Mon Sep 17 00:00:00 2001
From: zhaotianrui <zhaotianrui@loongson.cn>
Date: Wed, 11 Jan 2023 14:09:41 -0500
Subject: [PATCH 4/4] Implement the method of getting host info for loongarch
Implement method for loongarch to get host info, such as
cpu frequency, system info, etc.
Signed-off-by: zhaotianrui <zhaotianrui@loongson.cn>
---
src/util/virarch.c | 2 ++
src/util/virhostcpu.c | 2 +-
src/util/virsysinfo.c | 3 ++-
3 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/util/virarch.c b/src/util/virarch.c
index decdbdd7ac..0520a1c80b 100644
--- a/src/util/virarch.c
+++ b/src/util/virarch.c
@@ -227,6 +227,8 @@ virArch virArchFromHost(void)
arch = VIR_ARCH_X86_64;
} else if (STREQ(ut.machine, "sw_64")) {
arch = VIR_ARCH_SW_64;
+ } else if (STREQ(ut.machine, "loongarch64")) {
+ arch = VIR_ARCH_LOONGARCH64;
} else {
/* Otherwise assume the canonical name */
if ((arch = virArchFromString(ut.machine)) == VIR_ARCH_NONE) {
diff --git a/src/util/virhostcpu.c b/src/util/virhostcpu.c
index 5ec98d6016..ce3da7e6ec 100644
--- a/src/util/virhostcpu.c
+++ b/src/util/virhostcpu.c
@@ -577,7 +577,7 @@ virHostCPUParseFrequency(FILE *cpuinfo,
char line[1024];
/* No sensible way to retrieve CPU frequency */
- if (ARCH_IS_ARM(arch))
+ if (ARCH_IS_ARM(arch) || ARCH_IS_LOONGARCH(arch))
return 0;
if (ARCH_IS_X86(arch))
diff --git a/src/util/virsysinfo.c b/src/util/virsysinfo.c
index 8a53702224..6d4778fed7 100644
--- a/src/util/virsysinfo.c
+++ b/src/util/virsysinfo.c
@@ -1190,7 +1190,7 @@ virSysinfoRead(void)
{
#if defined(__powerpc__)
return virSysinfoReadPPC();
-#elif defined(__arm__) || defined(__aarch64__)
+#elif defined(__arm__) || defined(__aarch64__) || defined(__loongarch__)
return virSysinfoReadARM();
#elif defined(__s390__) || defined(__s390x__)
return virSysinfoReadS390();
@@ -1198,6 +1198,7 @@ virSysinfoRead(void)
(defined(__x86_64__) || \
defined(__i386__) || \
defined(__amd64__) || \
+ defined(__loongarch__) || \
defined(__sw_64__))
return virSysinfoReadDMI();
#else /* WIN32 || not supported arch */
--
2.25.1