report-basic: also report confidential computing tech

This commit is contained in:
Lennart Poettering
2026-05-22 12:24:29 +02:00
parent 80b5207d01
commit ef9cc58dfa
+23
View File
@@ -9,6 +9,7 @@
#include "alloc-util.h"
#include "architecture.h"
#include "confidential-virt.h"
#include "cpu-set-util.h"
#include "env-file.h"
#include "errno-util.h"
@@ -351,6 +352,22 @@ static int smbios_generate(const MetricFamily *mf, sd_varlink *link, void *userd
return 0;
}
static int confidential_virtualization_generate(const MetricFamily *mf, sd_varlink *link, void *userdata) {
assert(mf && mf->name);
assert(link);
ConfidentialVirtualization cv = detect_confidential_virtualization();
if (cv < 0)
return cv;
return metric_build_send_string(
mf,
link,
/* object= */ NULL,
confidential_virtualization_to_string(cv),
/* fields= */ NULL);
}
static int virtualization_generate(const MetricFamily *mf, sd_varlink *link, void *userdata) {
assert(mf && mf->name);
assert(link);
@@ -405,6 +422,12 @@ static const MetricFamily metric_family_table[] = {
METRIC_FAMILY_TYPE_STRING,
.generate = boot_id_generate,
},
{
METRIC_IO_SYSTEMD_BASIC_PREFIX "ConfidentialVirtualization",
"Confidential computing technology",
METRIC_FAMILY_TYPE_STRING,
.generate = confidential_virtualization_generate,
},
{
METRIC_IO_SYSTEMD_BASIC_PREFIX "CPUsOnline",
"Number of CPUs currently online",