mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-01 01:15:19 +00:00
hostcpu: Implement virHostCPUGetSignature for ppc64
Signed-off-by: Jiri Denemark <jdenemar@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
parent
44f826e4a0
commit
2a68ceaa6e
@ -1429,8 +1429,9 @@ virHostCPUReadSignature(virArch arch,
|
||||
g_autofree char *family = NULL;
|
||||
g_autofree char *model = NULL;
|
||||
g_autofree char *stepping = NULL;
|
||||
g_autofree char *revision = NULL;
|
||||
|
||||
if (!ARCH_IS_X86(arch))
|
||||
if (!ARCH_IS_X86(arch) && !ARCH_IS_PPC64(arch))
|
||||
return 0;
|
||||
|
||||
while (fgets(line, lineLen, cpuinfo)) {
|
||||
@ -1442,27 +1443,42 @@ virHostCPUReadSignature(virArch arch,
|
||||
g_strstrip(parts[0]);
|
||||
g_strstrip(parts[1]);
|
||||
|
||||
if (STREQ(parts[0], "vendor_id")) {
|
||||
if (!vendor)
|
||||
vendor = g_steal_pointer(&parts[1]);
|
||||
} else if (STREQ(parts[0], "model name")) {
|
||||
if (!name)
|
||||
name = g_steal_pointer(&parts[1]);
|
||||
} else if (STREQ(parts[0], "cpu family")) {
|
||||
if (!family)
|
||||
family = g_steal_pointer(&parts[1]);
|
||||
} else if (STREQ(parts[0], "model")) {
|
||||
if (!model)
|
||||
model = g_steal_pointer(&parts[1]);
|
||||
} else if (STREQ(parts[0], "stepping")) {
|
||||
if (!stepping)
|
||||
stepping = g_steal_pointer(&parts[1]);
|
||||
}
|
||||
if (ARCH_IS_X86(arch)) {
|
||||
if (STREQ(parts[0], "vendor_id")) {
|
||||
if (!vendor)
|
||||
vendor = g_steal_pointer(&parts[1]);
|
||||
} else if (STREQ(parts[0], "model name")) {
|
||||
if (!name)
|
||||
name = g_steal_pointer(&parts[1]);
|
||||
} else if (STREQ(parts[0], "cpu family")) {
|
||||
if (!family)
|
||||
family = g_steal_pointer(&parts[1]);
|
||||
} else if (STREQ(parts[0], "model")) {
|
||||
if (!model)
|
||||
model = g_steal_pointer(&parts[1]);
|
||||
} else if (STREQ(parts[0], "stepping")) {
|
||||
if (!stepping)
|
||||
stepping = g_steal_pointer(&parts[1]);
|
||||
}
|
||||
|
||||
if (vendor && name && family && model && stepping) {
|
||||
*signature = g_strdup_printf("%s, %s, family: %s, model: %s, stepping: %s",
|
||||
vendor, name, family, model, stepping);
|
||||
return 0;
|
||||
if (vendor && name && family && model && stepping) {
|
||||
*signature = g_strdup_printf("%s, %s, family: %s, model: %s, stepping: %s",
|
||||
vendor, name, family, model, stepping);
|
||||
return 0;
|
||||
}
|
||||
} else if (ARCH_IS_PPC64(arch)) {
|
||||
if (STREQ(parts[0], "cpu")) {
|
||||
if (!name)
|
||||
name = g_steal_pointer(&parts[1]);
|
||||
} else if (STREQ(parts[0], "revision")) {
|
||||
if (!revision)
|
||||
revision = g_steal_pointer(&parts[1]);
|
||||
}
|
||||
|
||||
if (name && revision) {
|
||||
*signature = g_strdup_printf("%s, rev %s", name, revision);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
1
tests/virhostcpudata/linux-ppc64-deconf-cpus.signature
Normal file
1
tests/virhostcpudata/linux-ppc64-deconf-cpus.signature
Normal file
@ -0,0 +1 @@
|
||||
POWER8E (raw), altivec supported, rev 2.1 (pvr 004b 0201)
|
1
tests/virhostcpudata/linux-ppc64-subcores1.signature
Normal file
1
tests/virhostcpudata/linux-ppc64-subcores1.signature
Normal file
@ -0,0 +1 @@
|
||||
POWER8E (raw), altivec supported, rev 2.1 (pvr 004b 0201)
|
1
tests/virhostcpudata/linux-ppc64-subcores2.signature
Normal file
1
tests/virhostcpudata/linux-ppc64-subcores2.signature
Normal file
@ -0,0 +1 @@
|
||||
POWER8E (raw), altivec supported, rev 2.1 (pvr 004b 0201)
|
1
tests/virhostcpudata/linux-ppc64-subcores3.signature
Normal file
1
tests/virhostcpudata/linux-ppc64-subcores3.signature
Normal file
@ -0,0 +1 @@
|
||||
POWER8E (raw), altivec supported, rev 2.1 (pvr 004b 0201)
|
Loading…
x
Reference in New Issue
Block a user