Re: common RODATA in vmlinux.lds.h (2.5.59)

From: Kai Germaschewski (kai@tp1.ruhr-uni-bochum.de)
Date: Tue Jan 21 2003 - 21:49:17 EST


On Wed, 22 Jan 2003, Greg Ungerer wrote:

> The new common definition of RODATA for linker scripts
> (in include/asm-generic/vmlinux.lds.h) is causing me some
> amount of pain, at least on the m68knommu architecture.
>
> The problem is that on the m68knommu arch linker script
> it fundamentaly groups everything into 2 memory regions,
> one for flash and one for ram. Each section is then
> directed to the appropriate memory region, eg:
>
> .text : {
> *(.text)
> } > flash
>
> With the way the RODATA define is setup I cannot do this.
> It contains definitions for a number of complete sections.
>
> Anyone got any ideas on the best way to fix this?

First of all, asm-generic/vmlinux.lds.h is there to share common code
where possible, so if it's not possible, you still have the option of
having your own special code in arch/$(ARCH)/vmlinux.lds.S

Having said that, you could add

        #define TEXT_MEM > flash

at the beginning of arch/m68knommu/vmlinux.lds.S

and

        #ifndef TEXT_MEM
        #define TEXT_MEM
        #endif

at the beginning of include/asm-generic/vmlinux.lds.h and then change

        .text : {
                *(.text)
- }
+ } TEXT_MEM

Would that work for you?

--Kai

-
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/



This archive was generated by hypermail 2b29 : Thu Jan 23 2003 - 22:00:28 EST