Patchwork Revert "powerpc: 52xx: provide a default in mpc52xx_irqhost_map()"

login
register
mail settings
Submitter Wolfram Sang
Date Oct. 1, 2013, 7:03 p.m.
Message ID <20131001190344.GA3006@katana>
Download mbox | patch
Permalink /patch/279558/
State Superseded
Delegated to: Anatolij Gustschin
Headers show

Comments

Wolfram Sang - Oct. 1, 2013, 7:03 p.m.
> > So people can compile with -Werror (RT patchset).
> 
> Why do you mention the RT patch set here? Doesn't the vanila tree gets
> compiled with -Werror as well?

Not for me.

> > irq_chip *irqchip = NULL; /* pet old compilers */
> 
> That would probably work, too. I would drop that comment but then
> someone might clean that up :P

Yup. But I just remembered a better solution:

From: Wolfram Sang <wsa@the-dreams.de>
Subject: [PATCH] ppc: mpc52xx: silence false positive from old GCC

So people can compile with -Werror.

Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
---
 arch/powerpc/platforms/52xx/mpc52xx_pic.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)



uninitialized_var was created for exactly that purpose IIRC.

> > People not realizing 'default' is a no-op might wonder why unknown 
> > levels are mapped to critical.
> 
> I see. And what would you suggest as default in case we would have an
> additional bit?

-Esome or a different error message. But let's postpone that until that
case happens ;)

> Hmmm. I assumed that critical / SDMA / … are interrupt numbers but they
> are seem not be. In that case I guess l2 is more important. l1 kinda
> looks important since it is the value in the switch case which failed
> but since it can only hold one possible value, I guess your info is
> better :)

Thanks,

   Wolfram
Sebastian Siewior - Oct. 2, 2013, 7:12 a.m.
On 10/01/2013 09:03 PM, Wolfram Sang wrote:
> 
> Yup. But I just remembered a better solution:
> 
> From: Wolfram Sang <wsa@the-dreams.de> Subject: [PATCH] ppc:
> mpc52xx: silence false positive from old GCC
> 
> So people can compile with -Werror.
> 
> Signed-off-by: Wolfram Sang <wsa@the-dreams.de> --- 
> arch/powerpc/platforms/52xx/mpc52xx_pic.c |    2 +- 1 file changed,
> 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/powerpc/platforms/52xx/mpc52xx_pic.c
> b/arch/powerpc/platforms/52xx/mpc52xx_pic.c index b89ef65..2898b73
> 100644 --- a/arch/powerpc/platforms/52xx/mpc52xx_pic.c +++
> b/arch/powerpc/platforms/52xx/mpc52xx_pic.c @@ -340,7 +340,7 @@
> static int mpc52xx_irqhost_map(struct irq_domain *h, unsigned int
> virq, { int l1irq; int l2irq; -	struct irq_chip *irqchip; +	struct
> irq_chip *uninitialized_var(irqchip); void *hndlr; int type; u32
> reg;
> 
> 
> uninitialized_var was created for exactly that purpose IIRC.

Yup, looks good, thanks.

> 
> Thanks,
> 
> Wolfram
> 

Sebastian

Patch

diff --git a/arch/powerpc/platforms/52xx/mpc52xx_pic.c b/arch/powerpc/platforms/52xx/mpc52xx_pic.c
index b89ef65..2898b73 100644
--- a/arch/powerpc/platforms/52xx/mpc52xx_pic.c
+++ b/arch/powerpc/platforms/52xx/mpc52xx_pic.c
@@ -340,7 +340,7 @@  static int mpc52xx_irqhost_map(struct irq_domain *h, unsigned int virq,
 {
 	int l1irq;
 	int l2irq;
-	struct irq_chip *irqchip;
+	struct irq_chip *uninitialized_var(irqchip);
 	void *hndlr;
 	int type;
 	u32 reg;