| View previous topic :: View next topic |
| Author |
Message |
Dan
Joined: 07 Jul 2006 Posts: 1
|
Posted: Fri Jul 07, 2006 12:52 am Post subject: Using diagpcpy to read from ppe_vaddr (6.8.9.1) |
|
|
I'm trying to follow the example in Section 6.8.9.1 of retrieving hwPrograms using diagpcpy. In the last step, diagpcpy is used to read from (an offset from) ppe_vaddr. It seems to me that ppe_vaddr is a virtual address, but here it is treated as if it was a physical address. What am I missing?
Incidentally, judging from osfmk/ppc/cpu.c, ppe_paddr should contain the physical address of the first page of the per_proc_info structure (and indeed in the printed example it does). |
|
| Back to top |
|
 |
amit Amit Singh

Joined: 06 Feb 2006 Posts: 76
|
Posted: Fri Jul 07, 2006 1:45 am Post subject: Re: Using diagpcpy to read from ppe_vaddr (6.8.9.1) |
|
|
| Dan wrote: | | I'm trying to follow the example in Section 6.8.9.1 of retrieving hwPrograms using diagpcpy. In the last step, diagpcpy is used to read from (an offset from) ppe_vaddr. It seems to me that ppe_vaddr is a virtual address, but here it is treated as if it was a physical address. What am I missing? |
Sorry about that. PerProcTable is in a specially mapped area in which virtual and physical addresses are equal. I can see that Section 6.8.9.1 is ambiguous because it doesn't clarify this. There's also a typo: the bullet list on page 653 should say ppe_vaddr instead of ppe_addr, which doesn't exist. Better still, the example should just use ppe_paddr.
Amit |
|
| Back to top |
|
 |
|