[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4A800B08.4020708@mlbassoc.com>
Date: Mon, 10 Aug 2009 05:56:56 -0600
From: Gary Thomas <gary@...assoc.com>
To: michael@...erman.id.au
CC: Wolfram Sang <w.sang@...gutronix.de>, linuxppc-dev@...abs.org,
Paul Mackerras <paulus@...ba.org>,
Marcin Slusarz <marcin.slusarz@...il.com>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 03/14] powerpc: use printk_once
Michael Ellerman wrote:
> On Mon, 2009-08-10 at 10:00 +0200, Wolfram Sang wrote:
>> On Sun, Aug 09, 2009 at 09:53:58PM +0200, Marcin Slusarz wrote:
>>> Signed-off-by: Marcin Slusarz <marcin.slusarz@...il.com>
>>> Cc: Benjamin Herrenschmidt <benh@...nel.crashing.org>
>>> Cc: Paul Mackerras <paulus@...ba.org>
>>> Cc: linuxppc-dev@...abs.org
>>> ---
>>> arch/powerpc/kernel/iommu.c | 6 +-----
>>> arch/powerpc/kernel/irq.c | 5 ++---
>>> arch/powerpc/sysdev/ppc4xx_pci.c | 9 ++-------
>>> 3 files changed, 5 insertions(+), 15 deletions(-)
>>>
>>> diff --git a/arch/powerpc/kernel/iommu.c b/arch/powerpc/kernel/iommu.c
>>> index fd51578..c7fa258 100644
>>> --- a/arch/powerpc/kernel/iommu.c
>>> +++ b/arch/powerpc/kernel/iommu.c
>>> @@ -502,7 +502,6 @@ static void iommu_table_clear(struct iommu_table *tbl)
>>> struct iommu_table *iommu_init_table(struct iommu_table *tbl, int nid)
>>> {
>>> unsigned long sz;
>>> - static int welcomed = 0;
>>> struct page *page;
>>>
>>> /* Set aside 1/4 of the table for large allocations. */
>>> @@ -523,11 +522,8 @@ struct iommu_table *iommu_init_table(struct iommu_table *tbl, int nid)
>>>
>>> iommu_table_clear(tbl);
>>>
>>> - if (!welcomed) {
>>> - printk(KERN_INFO "IOMMU table initialized, virtual merging %s\n",
>>> + printk_once(KERN_INFO "IOMMU table initialized, virtual merging %s\n",
>>> novmerge ? "disabled" : "enabled");
>>> - welcomed = 1;
>>> - }
>>>
>>> return tbl;
>>> }
>>> diff --git a/arch/powerpc/kernel/irq.c b/arch/powerpc/kernel/irq.c
>>> index f7f376e..05ebd21 100644
>>> --- a/arch/powerpc/kernel/irq.c
>>> +++ b/arch/powerpc/kernel/irq.c
>>> @@ -231,7 +231,6 @@ skip:
>>> void fixup_irqs(cpumask_t map)
>>> {
>>> unsigned int irq;
>>> - static int warned;
>>>
>>> for_each_irq(irq) {
>>> cpumask_t mask;
>>> @@ -246,8 +245,8 @@ void fixup_irqs(cpumask_t map)
>>> }
>>> if (irq_desc[irq].chip->set_affinity)
>>> irq_desc[irq].chip->set_affinity(irq, &mask);
>>> - else if (irq_desc[irq].action && !(warned++))
>>> - printk("Cannot set affinity for irq %i\n", irq);
>>> + else if (irq_desc[irq].action)
>>> + printk_once("Cannot set affinity for irq %i\n", irq);
>> Maybe we should add a loglevel to this printk (and the other one in fix_irqs)
>> while we are here?
>
> I think you should drop it, it's stupid. If we actually care about irqs
> that don't have a set affinity we should keep a count and report that at
> the end of the loop.
In addition, this change would prevent reporting missing
affinity on more than one IRQ if there were such.
--
------------------------------------------------------------
Gary Thomas | Consulting for the
MLB Associates | Embedded world
------------------------------------------------------------
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists