Thread (12 messages) 12 messages, 3 authors, 2012-10-23

online, possible and disabled cpus

From: Srivatsa Bhat <hidden>
Date: 2012-10-23 07:09:00

Hi,

On Tue, Oct 23, 2012 at 3:03 AM, Robert P. J. Day [off-list ref] wrote:
On Mon, 22 Oct 2012, Srivatsa Bhat wrote:
quoted
Hi,

You might want to take a look at Documentation/cpu-hotplug.txt for
some details regarding online/possible CPUs...
  i'll do one more post on this, even though i never imagined it was
going to get this complicated.  to recap, what i'm trying to
understand is this output from dmesg:
...
and at that point, i think i'm just going to let it go.  but that
still brings me back to my original question regarding the code for
/proc/softirqs in fs/proc/softirqs.c -- why iterate through all
*possible* CPUs when some of them will clearly be disabled and not
represent actual CPUs?
I don't think we should worry too much about this.. I can think of a simple
reason why one would want to iterate through all possible CPUs.. :
IIUC, this function prints, for each softirq, the number of times it ran on a
particular CPU. So if a CPU was online for a while and then was taken offline,
in order to print the softirq stats properly (including how many times it ran on
that CPU when it was online), we will have to iterate through all
possible CPUs..
That is a simple and valid reason, IMHO.

Regards,
Srivatsa S. Bhat
static int show_softirqs(struct seq_file *p, void *v)
{
        int i, j;

        seq_puts(p, "                    ");
        for_each_possible_cpu(i)
                seq_printf(p, "CPU%-8d", i);
        seq_putc(p, '\n');

        for (i = 0; i < NR_SOFTIRQS; i++) {
                seq_printf(p, "%12s:", softirq_to_name[i]);
                for_each_possible_cpu(j)
                        seq_printf(p, " %10u", kstat_softirqs_cpu(i, j));
                seq_putc(p, '\n');
        }
        return 0;
}

  anyway, i think i've flogged this enough.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help