Add some missing fields which may be parsed by userspace
applications.
Signed-off-by: Helge Deller <deller@gmx.de>
v2:
- fixed cpu name and type depending on currently active CPU
diff --git a/linux-user/sparc/target_proc.h b/linux-user/sparc/target_proc.h
index 3bb3134a47..744fa10730 100644
--- a/linux-user/sparc/target_proc.h
+++ b/linux-user/sparc/target_proc.h
@@ -8,7 +8,25 @@
static int open_cpuinfo(CPUArchState *cpu_env, int fd)
{
- dprintf(fd, "type\t\t: sun4u\n");
+ int i, num_cpus;
+ const char *cpu_type;
+
+ num_cpus = sysconf(_SC_NPROCESSORS_ONLN);
+ if (cpu_env->def.features & CPU_FEATURE_HYPV) {
+ cpu_type = "sun4v";
+ } else {
+ cpu_type = "sun4u";
+ }
+
+ dprintf(fd, "cpu\t\t: %s (QEMU)\n", cpu_env->def.name);
+ dprintf(fd, "type\t\t: %s\n", cpu_type);
+ dprintf(fd, "ncpus probed\t: %d\n", num_cpus);
+ dprintf(fd, "ncpus active\t: %d\n", num_cpus);
+ dprintf(fd, "State:\n");
+ for (i = 0; i < num_cpus; i++) {
+ dprintf(fd, "CPU%d:\t\t: online\n", i);
+ }
+
return 0;
}
#define HAVE_ARCH_PROC_CPUINFO
On 1/8/25 19:26, Helge Deller wrote: > Add some missing fields which may be parsed by userspace > applications. > > Signed-off-by: Helge Deller <deller@gmx.de> > > v2: > - fixed cpu name and type depending on currently active CPU Queued, thanks r~
On 1/8/25 19:26, Helge Deller wrote:
> Add some missing fields which may be parsed by userspace
> applications.
>
> Signed-off-by: Helge Deller <deller@gmx.de>
>
> v2:
> - fixed cpu name and type depending on currently active CPU
>
> diff --git a/linux-user/sparc/target_proc.h b/linux-user/sparc/target_proc.h
> index 3bb3134a47..744fa10730 100644
> --- a/linux-user/sparc/target_proc.h
> +++ b/linux-user/sparc/target_proc.h
> @@ -8,7 +8,25 @@
>
> static int open_cpuinfo(CPUArchState *cpu_env, int fd)
> {
> - dprintf(fd, "type\t\t: sun4u\n");
> + int i, num_cpus;
> + const char *cpu_type;
> +
> + num_cpus = sysconf(_SC_NPROCESSORS_ONLN);
> + if (cpu_env->def.features & CPU_FEATURE_HYPV) {
> + cpu_type = "sun4v";
> + } else {
> + cpu_type = "sun4u";
> + }
Maybe
#ifdef CONFIG_SPARC64
...
#else
cpu_type = "sun4m";
#endif
?
Anyway, considering we always printed v4 before,
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
r~
> +
> + dprintf(fd, "cpu\t\t: %s (QEMU)\n", cpu_env->def.name);
> + dprintf(fd, "type\t\t: %s\n", cpu_type);
> + dprintf(fd, "ncpus probed\t: %d\n", num_cpus);
> + dprintf(fd, "ncpus active\t: %d\n", num_cpus);
> + dprintf(fd, "State:\n");
> + for (i = 0; i < num_cpus; i++) {
> + dprintf(fd, "CPU%d:\t\t: online\n", i);
> + }
> +
> return 0;
> }
> #define HAVE_ARCH_PROC_CPUINFO
© 2016 - 2025 Red Hat, Inc.