[Top] [All Lists]

Re: conflicting declaration of prom_getcmdline()

To: Ralf Baechle <>
Subject: Re: conflicting declaration of prom_getcmdline()
From: Geert Uytterhoeven <>
Date: Mon, 4 Apr 2005 13:20:15 +0200 (CEST)
Cc: Ulrich Eckhardt <>, Linux/MIPS Development <>
In-reply-to: <>
Original-recipient: rfc822;
References: <> <>
On Mon, 4 Apr 2005, Ralf Baechle wrote:
> On Fri, Apr 01, 2005 at 10:28:04AM +0200, Ulrich Eckhardt wrote:
> > I just stumbled over arch/mips/au1000/common/prom.c, which contains a 
> > function 
> > defined like this:
> >   char* prom_getcmdline(void);
> >   EXPORT_SYMBOL(prom_getcmdline);
> > while there are implementations that define the function as
> >   char* __init prom_getcmdline();
> > Further, there are several declarations throughout sourcefiles and in 
> > include/asm-mips/mips-boards/prom.h and include/asm-mips/sgialib.h. Just 
> > grep 
> > for it and you'll see the mess.
> > 
> > If anyone tells me which one is right and cares to explain why I hereby 
> > volunteer to create a patch. ;)
> __init was introduced long after prom_getcmdline() and not all definitions
> ever got updated.  For prototypes where __init doesn't server any useful
> purpose other than for the human reader so we generally don't use it.

IIRC, there are architectures (alpha?) where __init does matter for prototypes
because a different jump type is used depending on the sections of the caller
and callee.



Geert Uytterhoeven -- There's lots of Linux beyond ia32 --

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                                            -- Linus Torvalds

<Prev in Thread] Current Thread [Next in Thread>