lkml.org 
[lkml]   [2012]   [Apr]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    SubjectRe: [PATCH] iqrdomain: Improve formatting in debugfs.
    Date
    On Mon,  9 Apr 2012 17:06:57 -0700, David Daney <ddaney.cavm@gmail.com> wrote:
    > From: David Daney <david.daney@cavium.com>
    >
    > The irq_domain_mapping file has some interesting output when chip_data
    > contains leading zeros:
    >
    > virq hwirq chip name chip data domain name
    > .
    > .
    > .
    > 103 0x00000 CIU2-W 0x 5e0000000000000 none
    > 104 0x00000 CIU2-W 0x 5f0000000000000 none
    > 105 0x00000 CIU2-M 0x (null) none
    > 113 0x00000 CIU2-E 0x1080000000000000 none
    > .
    > .
    > .
    >
    > I think there should be no space in there between the "0x" and the
    > rest. Also the '(null)' entry doesn't make much sense at all with a
    > "0x".

    Yeah, it doesn't make much sense with the '0x', but I don't want to
    supress the (null) output because it is really important to highlight
    when a domain isn't assigned to an active irq.

    Fixing the zero pad is trivial to fix though. Just remove the
    precision from the %p format. Here's my counter-patch:

    ---

    diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c
    index 9310a8d..eb05e40 100644
    --- a/kernel/irq/irqdomain.c
    +++ b/kernel/irq/irqdomain.c
    @@ -643,8 +643,8 @@ static int virq_debug_show(struct seq_file *m, void *private)
    void *data;
    int i;

    - seq_printf(m, "%-5s %-7s %-15s %-18s %s\n", "virq", "hwirq",
    - "chip name", "chip data", "domain name");
    + seq_printf(m, "%-5s %-7s %-15s %-*s %s\n", "irq", "hwirq",
    + "chip name", 2 * sizeof(void *) + 2, "chip data", "domain name");

    for (i = 1; i < nr_irqs; i++) {
    desc = irq_to_desc(i);
    @@ -667,7 +667,7 @@ static int virq_debug_show(struct seq_file *m, void *private)
    seq_printf(m, "%-15s ", p);

    data = irq_desc_get_chip_data(desc);
    - seq_printf(m, "0x%16p ", data);
    + seq_printf(m, data ? "0x%p " : " %p ", data);

    if (desc->irq_data.domain && desc->irq_data.domain->of_node)
    p = desc->irq_data.domain->of_node->full_name;

    \
     
     \ /
      Last update: 2012-04-11 09:05    [W:3.191 / U:0.548 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site