17 Valid = 0x00000001, ///< Valid
18 Writable = 0x00000002, ///< Writable
19 User = 0x00000004, ///< User accessible
20 Write_through = 0x00000008, ///< Write through
21 Cacheable = 0x00000000, ///< Cache is enabled
22 Noncacheable = 0x00000010, ///< Caching is off
23 Referenced = 0x00000020, ///< Page was referenced
24 Dirty = 0x00000040, ///< Page was modified
25 Pse_bit = 0x00000080, ///< Indicates a super page
26 Cpu_global = 0x00000100, ///< pinned in the TLB
27 L4_global = 0x00000200, ///< pinned in the TLB
36 Pte_ptr(void *pte, unsigned char level) : pte((Mword*)pte), level(level) {}
45 typedef Ptab::List< Ptab::Traits<Unsigned32, 22, 10, true, false>,
46 Ptab::Traits<Unsigned32, 12, 10, true> > Ptab_traits;
48 typedef Ptab::Shift<Ptab_traits, Virt_addr::Shift>::List Ptab_traits_vpn;
49 typedef Ptab::Page_addr_wrap<Page_number, Virt_addr::Shift> Ptab_va_vpn;