[ Bottom of Page | Previous Page | Next Page | Contents | Index | Library Home | Legal | Search ]

Kernel Extensions and Device Support Programming Concepts

Address Translation Subcommands

tr and tv Subcommands

The tr and tv subcommands can be used to display address translation information. The tr subcommand provides a short format; the tv subcommand a detailed format.

Syntax

 

tr Address

tv Address

For the tv subcommand, all double hashed entries are dumped, when the entry matches the specified effective address, corresponding physical address and protections are displayed. Page protection (K and PP bits) is displayed according to the current segment register and machine state register values.

Example

   KDB(0)> tr @iar physical address of current instruction
   Physical Address = 001C5BA0
   KDB(0)> tv @iar physical mapping of current instruction
   vaddr 1C5BA0 sid 0 vpage 1C5 hash1 1C5
   pte_cur_addr B0007140 valid 1 vsid 0 hsel 0 avpi 0
   rpn 1C5 refbit 1 modbit 1 wim 1 key 0
   ____ 001C5BA0 ____ K = 0 PP = 00 ==> read/write
   pte_cur_addr B0007148 valid 1 vsid 101 hsel 0 avpi 0
   rpn 3C4 refbit 0 modbit 0 wim 1 key 0
   
   vaddr 1C5BA0 sid 0 vpage 1C5 hash2 1E3A
   Physical Address = 001C5BA0
   KDB(0)> tv __ublock physical mapping of current U block
   vaddr 2FF3B400 sid 9BC vpage FF3B hash1 687 
   ppcpte_cur_addr B001A1C0 valid 1 sid 300 hsel 0 avpi 1
   rpn 13F4 refbit 1 modbit 1 wimg 2 key 1
   ppcpte_cur_addr B001A1C8 valid 1 sid 9BC hsel 0 avpi 3F
   rpn BFD refbit 1 modbit 1 wimg 2 key 0
   ____ 00BFD400 ____ K = 0 PP = 00 ==> read/write
   
   vaddr 2FF3B400 sid 9BC vpage FF3B hash2 978 
   ppcpte_cur_addr B0025E08 valid 1 sid 643 hsel 0 avpi 3F
   rpn 18D3 refbit 1 modbit 1 wimg 2 key 0
   Physical Address = 00BFD400
   KDB(0)> tv fffc1960 physical mapping thru BATs
   BAT mapping for FFFC1960
   DBAT0 FFC0003A FFC0005F
    bepi 7FE0 brpn 7FE0 bl 001F v 1 wim 3 ks 1 kp 0 pp 2 s 0
    eaddr = FFC00000, paddr = FFC00000 size = 4096 KBytes
   KDB(0)> tv abcdef00 invalid mapping
   Invalid Sid = 007FFFFF
   KDB(0)> tv eeee0000 invalid mapping
   vaddr EEEE0000 sid 505 vpage EEE0 hash1 BE5
   
   vaddr EEEE0000 sid 505 vpage EEE0 hash2 141A
   Invalid Address EEEE0000 !!!

   On 620 machine
   KDB(0)> set 11 64 bits printing
   64_bit is true
   KDB(0)> tv 2FF3AC88  physical mapping of a stack address
   eaddr 2FF3AC88 sid F9F vpage FF3A hash1 A5 
   p64pte_cur_addr B0005280 sid_h 0 sid_l 0 avpi 0 hsel 0 valid 1
   rpn_h 0 rpn_l A5 refbit 1 modbit 1 wimg 2 key 0
   p64pte_cur_addr B0005290 sid_h 0 sid_l 81 avpi 0 hsel 0 valid 1
   rpn_h 0 rpn_l 824 refbit 1 modbit 0 wimg 2 key 0
   p64pte_cur_addr B00052A0 sid_h 0 sid_l 285 avpi 0 hsel 0 valid 1
   rpn_h 0 rpn_l 5BE refbit 1 modbit 1 wimg 2 key 0
   p64pte_cur_addr B00052B0 sid_h 0 sid_l F9F avpi 1F hsel 0 valid 1
   rpn_h 0 rpn_l 1EC2 refbit 1 modbit 1 wimg 2 key 0
   ____ 0000000001EC2C88 ____ K = 0 PP = 00 ==> read/write
   
   eaddr 2FF3AC88 sid F9F vpage FF3A hash2 F5A 
   Physical Address = 0000000001EC2C88
Example

The following example applies on POWER RS1 architecture.

   KDB(0)> tr __ublock physical address of current U block
   Physical Address = 0779F000
   KDB(0)> tv __ublock physical mapping of current U block
   vaddr 2FF98000 sid 4008 vpage FF98 hash BF90 hat_addr B102FE40
   pft_cur_addr B00779F0 nfr 779F sidpno 20047 valid 1 refbit 1 modbit 1 key 0
   Physical Address = 0779F000
   K = 0 PP = 00 ==> read/write
   KDB(0)> 

[ Top of Page | Previous Page | Next Page | Contents | Index | Library Home | Legal | Search ]