On 04/01/13 20:31, Blue Swirl wrote:
Reading the comments for SPARC in arch/sparc32/entry.S, it looks as if the pages are marked writeable in the MMU and there is some kind of relocation into RAM occurring - Blue, can you comment on this?
At first, I tried to use ROM for .text and .rodata, eliminate all .data and only put .bss in RAM, but because of some problems it was easier to copy the whole ROM to RAM. It wastes some guest RAM but IIRC Linux wanted to patch some areas.
I'd copy the ROM to RAM for PPC also. On Sparc, MMU is always enabled and guests take care to preserve our mappings, but maybe this is not the case for PPC. Then fully relocatable code would make sense there.
Yes, I think this is the same approach as PPC (see my previous email). The trick being used is to ensure that the the virtual addresses containing the OpenBIOS ROM image are remapped to the RAM copy once the MMU is enabled.
ATB,
Mark.