diff options
Diffstat (limited to 'sys/sparc64/include/tte.h')
| -rw-r--r-- | sys/sparc64/include/tte.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/sparc64/include/tte.h b/sys/sparc64/include/tte.h index e86c722f8793a..c2b38b1f2457a 100644 --- a/sys/sparc64/include/tte.h +++ b/sys/sparc64/include/tte.h @@ -104,17 +104,18 @@ #define TTE_GET_VA(tp) \ (TTE_GET_VPN(tp) << TTE_GET_PAGE_SHIFT(tp)) #define TTE_GET_PMAP(tp) \ - ((tp)->tte_pmap) + (((tp)->tte_data & TD_P) != 0 ? \ + (kernel_pmap) : \ + (PHYS_TO_VM_PAGE(pmap_kextract((vm_offset_t)(tp)))->md.pmap)) #define TTE_ZERO(tp) \ - bzero(tp, sizeof(*tp)) + __builtin_memset(tp, 0, sizeof(*tp)) struct pmap; struct tte { u_long tte_vpn; u_long tte_data; - STAILQ_ENTRY(tte) tte_link; - struct pmap *tte_pmap; + TAILQ_ENTRY(tte) tte_link; }; static __inline int |
