]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - fs/proc/stat.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6
[linux-2.6-omap-h63xx.git] / fs / proc / stat.c
index 81904f07679d43635cbc6241162d9b45d9a9db62..3bb1cf1e742552ad2f97b6b6206474937ffb0f07 100644 (file)
@@ -44,10 +44,13 @@ static int show_stat(struct seq_file *p, void *v)
                softirq = cputime64_add(softirq, kstat_cpu(i).cpustat.softirq);
                steal = cputime64_add(steal, kstat_cpu(i).cpustat.steal);
                guest = cputime64_add(guest, kstat_cpu(i).cpustat.guest);
-
-               for_each_irq_nr(j)
+               for_each_irq_nr(j) {
+#ifdef CONFIG_SPARSE_IRQ
+                       if (!irq_to_desc(j))
+                               continue;
+#endif
                        sum += kstat_irqs_cpu(j, i);
-
+               }
                sum += arch_irq_stat_cpu(i);
        }
        sum += arch_irq_stat();
@@ -92,7 +95,12 @@ static int show_stat(struct seq_file *p, void *v)
        /* sum again ? it could be updated? */
        for_each_irq_nr(j) {
                per_irq_sum = 0;
-
+#ifdef CONFIG_SPARSE_IRQ
+               if (!irq_to_desc(j)) {
+                       seq_printf(p, " %u", per_irq_sum);
+                       continue;
+               }
+#endif
                for_each_possible_cpu(i)
                        per_irq_sum += kstat_irqs_cpu(j, i);