Messages in this thread | | | Date | Fri, 19 Oct 2007 00:00:48 +0200 | From | Andi Kleen <> | Subject | Re: [patch 1/3] Add BSS to resource tree |
| |
On Thu, Oct 18, 2007 at 11:58:27PM +0200, Sam Ravnborg wrote: > On Thu, Oct 18, 2007 at 11:48:37PM +0200, Andi Kleen wrote: > > > > +extern char _text[], _end[], _etext[], _edata[], _bss[]; > > > > > > These should be in a header file. > > > > Normally the "no externs in .c" rule doesn't apply to assembler or linker > > script defined labels. That's because the point of the header file is to > > type check them, but there is nothing to type check here. > > For linker generated symbols we have sections.h for this purpose. > The above symbols are all available if we do an: > #include <asm/sections.h> > > This is the right fix in this case.
The problem is that they're often the wrong type here. E.g. wrong signedness etc. I ran into problems in the past where using this required ugly casts.
-Andi - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |