On ബുധന് 18 ജനുവരി 2012 08:11 വൈകു, Dave Anderson wrote:
----- Original Message -----
> (2012/01/16 14:15), Suzuki K. Poulose wrote:
>> This patch fixes the vmalloc address translation for BookE.This
>> patch is based on the PPC44x definitions and may not work fine for
>> other systems.
>>
>> crash> mod
>> mod: cannot access vmalloc'd module memory
>> crash>
>>
>>
>> After the patch :
>>
>> crash> mod
>> MODULE NAME SIZE OBJECT FILE
>> d1018fd8 mbcache 6023 (not loaded) [CONFIG_KALLSYMS]
>> d1077190 jbd 58360 (not loaded) [CONFIG_KALLSYMS]
>> d107ca98 llc 4525 (not loaded) [CONFIG_KALLSYMS]
>> d1130de4 ext3 203186 (not loaded) [CONFIG_KALLSYMS]
>> d114bbac squashfs 26129 (not loaded) [CONFIG_KALLSYMS]
>>
>>
>> On ppc44x, the virtual-address is split as below :
>>
>> Bits |0 10|11 19|20 31|
>> -----------------------------------
>> | PGD | PMD | PAGE_OFFSET |
>> -----------------------------------
>>
>> The PAGE_BASE_ADDR is a 64bit value(of type phys_addr_t).
>>
>> Note : I am not sure how do we distinguish the different values (PGDIR_SHIFT
etc)
>> for different PPC32 systems. Since there are a lot of different platforms
>> under PPC32, we need some mechanism to dynamically determine the PGDIR, PTE
>> shift values. One option is to put the information in the VMCOREINFO.
>
> Hi Suzuki,
>
> How about using powerpc_base_platform symbol?
>
> *PTRRELOC(&powerpc_base_platform) = t->platform;
>
> $ grep -rIw platform arch/powerpc/kernel/cputable.c
> /* The platform string corresponding to the real PVR */
> .platform = "power3",
> .platform = "power3",
> .platform = "rs64",
> .platform = "rs64",
> .platform = "rs64",
> .platform = "rs64",
> .platform = "power4",
> .platform = "power4",
> :
> :
>
> This kconfig based platform string data can be read
> base_platform = symbol_value("powerpc_base_platform symbols");
> read_string(base_platform, buf, buffer-size);
> at ppc_init(POST_GDB).
>
> I think platform can be distinguished with following naming rules.
> - CONFIG_40x=y: platform is "ppc403"
> - CONFIG_44x=y: platform is "ppc440"
>
> Thanks,
> Toshi
That makes good sense. Suzuki, are you re-working the patch
with Toshi's suggestion?
I will take a look at this. Sorry, have been a bit busy.
Thanks
Suzuki