Re: [uClinux-dev] [PATCH] m68k: Merge mmu and non-mmu versions of sys_call_table

Greg Ungerer
2011-04-07T04:14:32Z

Hi Gavin,

On 07/04/11 13:13, Gavin Lambert wrote:
> Quoth Greg Ungerer:
>>> Doesn't that have XIP consequences? .text (and presumably .rodata)
>>> can be stored and executed from ROM, since they can't be changed at
>>> runtime. .data has to be in RAM, since it can be.
>>
>> Yes, but even in the kernel XIP case the very early startup code
>> moves the kernels data to RAM. Well before the system call table
>> will be needed.
>
> But presumably if the syscall table was previously in .text, it was not
> subject to this. And now it will be.
>
> I doubt this would actually break anything (as you've already confirmed),
> since it's only a tiny RAM usage increase, but unless there's some reason
> for the syscall table to be read-write it seems a bit odd.

To be read-write yes, odd, but a data table being in the .text
section is also odd. It really belongs in the .rodata section.
And then it will be packed with the .text in our linkers script,
and wouldn't be copied out to RAM.

So Geert, can we move this to the .rodata section?

I just tried changing the .data section to

.section ".rodata"

It compiled and work on both m68k and m68knommu targets for me.

Regards
Greg

------------------------------------------------------------------------
Greg Ungerer -- Principal Engineer EMAIL: gerg@snapgear.com
SnapGear Group, McAfee PHONE: +61 7 3435 2888
8 Gardner Close FAX: +61 7 3217 5323
Milton, QLD, 4064, Australia WEB: http://www.SnapGear.com