D. Hugh Redelmeier wrote:
Now that the irq command appears to work, I notice that it is too verbose. On my machine (AMD Athlon x2), it unconditionally prints 2304 structs, each taking 27 lines. Of those, only 23 appear to have been used in the day that the machine had been up. Is there a simple way to print only the used entries or perhaps only print an entry if it is different from the one before it? Does that kind of logic exist for printing other tables? If not, would it be useful?
Wow -- until fairly recently the NR_IRQS definition has been a relatively small number, and on most architectures it still is. I don't think there are any other commands that print such verbose output for a table containing that many structures where most of them are unused. I suppose if it's obvious that an IRQ index is not in use, it's output could be shortened, or maybe a new option could be added that only prints out "used" entries. I await your patch suggestion...
I wonder why the kernel allocates so many irq_desc entries. According to "nm -f sysv vmlinux", irq_desc is 294912 bytes -- more than the whole RAM on the first UNIX machine I used.
Amazing isn't it?
I was looking at x86_64.c: x86_64_dump_irq. Its last line says: error(FATAL, "ia64_dump_irq: irq_desc[] does not exist?\n"); It should say: error(FATAL, "x86_64_dump_irq: irq_desc[] does not exist?\n");
Thanks -- I'll fix that... Dave -- Crash-utility mailing list Crash-utility@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/crash-utility