On Thursday 19 July 2012 09:07:03 Fengguang Wu wrote:
> On Thu, Jul 19, 2012 at 12:40:46PM +0100, David Howells wrote:
> > David Howells <dhowe...@redhat.com> wrote:
> > > +static inline int apply_relocate(Elf_Shdr *sechdrs,
> > > +                          const char *strtab,
> > > +                          unsigned int symindex,
> > > +                          unsigned int relsec,
> > > +                          struct module *me)
> > > +{
> > > + pr_err("module %s: REL relocation unsupported\n", me->name);
> > > + return -ENOEXEC;
> > > +}
> > 
> > Turns out you cannot use pr_err() and friends in a header file, lest it
> > get included in a file that defines pr_fmt() to be something
> > inconvenient.
> > 
> > Thanks to Fengguang and his GIT tree cruncher for finding this in
> > Blackfin with the BF526-EZBRD_defconfig.
> 
> For completeness, here are the error messages and David's comments:
> >> In file included from arch/blackfin/kernel/module.c:9:0:
> >> include/linux/moduleloader.h: In function 'apply_relocate':
> >> include/linux/moduleloader.h:48:2: error: 'mod' undeclared (first use in
> >> this function) include/linux/moduleloader.h:48:2: note: each undeclared
> >> identifier is reported only once for each function it appears in
> >
> >pr_err() is the problem.  If you're in a file that defines pr_fmt then it
> >will
> >
> >use that.  At the top of arch/blackfin/kernel/module.c:
> >        #define pr_fmt(fmt) "module %s: " fmt, mod->name
> >
> >I guess you can't use pr_err() in header files.

if it were "mod" instead of "me" in the variable list, i imagine it'd compile 
OK ;)
-mike

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
Uclinux-dist-devel mailing list
Uclinux-dist-devel@blackfin.uclinux.org
https://blackfin.uclinux.org/mailman/listinfo/uclinux-dist-devel

Reply via email to