diff --git a/sysdeps/linux/ChangeLog b/sysdeps/linux/ChangeLog index a3820660..aeb3bb6c 100644 --- a/sysdeps/linux/ChangeLog +++ b/sysdeps/linux/ChangeLog @@ -1,3 +1,10 @@ +2005-12-14 Benoît Dejean + + * open.c: (glibtop_open_s): + + Implemented server->real_ncpu. + Add a warning to display ncpu and real_ncpu on open. + 2005-12-13 Benoît Dejean * cpu.c: (glibtop_get_cpu_s): diff --git a/sysdeps/linux/open.c b/sysdeps/linux/open.c index a947b12c..37fcb793 100644 --- a/sysdeps/linux/open.c +++ b/sysdeps/linux/open.c @@ -79,17 +79,21 @@ glibtop_open_s (glibtop *server, const char *program_name, p = skip_line(p); /* cpu */ - for (server->ncpu = 0; server->ncpu < GLIBTOP_NCPU; server->ncpu++) { + for (server->real_ncpu = 0; /* nop */; server->real_ncpu++) { - if (!check_cpu_line(server, p, server->ncpu)) { - server->ncpu--; + if (!check_cpu_line(server, p, server->real_ncpu)) { + server->real_ncpu--; break; } p = skip_line(p); } -#ifdef DEBUG - printf ("\nThis machine has %d CPUs.\n\n", server->ncpu); -#endif + server->ncpu = MIN(GLIBTOP_NCPU - 1, server->real_ncpu); + + glibtop_warn_r(server, + "This machine has %d CPUs, " + "%d are being monitored.", + server->real_ncpu + 1, + server->ncpu + 1); }