003 File Manager
Current Path:
/usr/local/lib/perl5/site_perl/mach/5.32/machine
usr
/
local
/
lib
/
perl5
/
site_perl
/
mach
/
5.32
/
machine
/
📁
..
📄
_align.ph
(85 B)
📄
_bus.ph
(186 B)
📄
_inttypes.ph
(88 B)
📄
_limits.ph
(86 B)
📄
_stdint.ph
(86 B)
📄
_types.ph
(85 B)
📄
acpica_machdep.ph
(93 B)
📄
apm_bios.ph
(87 B)
📄
asm.ph
(2.5 KB)
📄
asmacros.ph
(4.5 KB)
📄
atomic.ph
(23.93 KB)
📄
bus.ph
(82 B)
📄
bus_dma.ph
(207 B)
📄
clock.ph
(303 B)
📄
counter.ph
(1.6 KB)
📄
cpu.ph
(1.38 KB)
📄
cpufunc.ph
(21.3 KB)
📄
cputypes.ph
(87 B)
📄
csan.ph
(775 B)
📄
db_machdep.ph
(2.72 KB)
📄
dump.ph
(83 B)
📄
efi.ph
(1003 B)
📄
elf.ph
(82 B)
📄
endian.ph
(85 B)
📄
exec.ph
(236 B)
📄
fdt.ph
(82 B)
📄
float.ph
(84 B)
📄
floatingpoint.ph
(238 B)
📄
fpu.ph
(729 B)
📄
frame.ph
(196 B)
📄
gdb_machdep.ph
(1.85 KB)
📄
ieeefp.ph
(5.91 KB)
📄
in_cksum.ph
(1.19 KB)
📄
intr_machdep.ph
(573 B)
📄
iodev.ph
(659 B)
📄
iommu.ph
(84 B)
📄
kdb.ph
(956 B)
📄
limits.ph
(374 B)
📄
md_var.ph
(210 B)
📄
memdev.ph
(324 B)
📄
metadata.ph
(87 B)
📄
minidump.ph
(355 B)
📄
mp_watchdog.ph
(195 B)
📄
nexusvar.ph
(186 B)
📄
npx.ph
(82 B)
📄
ofw_machdep.ph
(90 B)
📄
param.ph
(5.11 KB)
📄
pcb.ph
(1011 B)
📄
pci_cfgreg.ph
(89 B)
📄
pcpu.ph
(8.96 KB)
📄
pcpu_aux.ph
(758 B)
📄
pmap.ph
(13.6 KB)
📄
pmc_mdep.ph
(3.2 KB)
📄
ppireg.ph
(744 B)
📄
proc.ph
(1.06 KB)
📄
procctl.ph
(86 B)
📄
profile.ph
(4.01 KB)
📄
psl.ph
(82 B)
📄
ptrace.ph
(85 B)
📄
pvclock.ph
(86 B)
📄
reg.ph
(82 B)
📄
reloc.ph
(192 B)
📄
resource.ph
(555 B)
📄
runq.ph
(727 B)
📄
segments.ph
(251 B)
📄
setjmp.ph
(85 B)
📄
sf_buf.ph
(305 B)
📄
sgx.ph
(657 B)
📄
sgxreg.ph
(2.68 KB)
📄
sigframe.ph
(87 B)
📄
signal.ph
(85 B)
📄
smp.ph
(296 B)
📄
specialreg.ph
(89 B)
📄
stack.ph
(84 B)
📄
stdarg.ph
(85 B)
📄
sysarch.ph
(86 B)
📄
timerreg.ph
(685 B)
📄
trap.ph
(83 B)
📄
tss.ph
(171 B)
📄
ucontext.ph
(87 B)
📄
vdso.ph
(83 B)
📄
vm.ph
(1.04 KB)
📄
vmm.ph
(11.92 KB)
📄
vmm_dev.ph
(14.37 KB)
📄
vmm_instruction_emul.ph
(384 B)
📄
vmm_snapshot.ph
(2.65 KB)
📄
vmparam.ph
(5.83 KB)
Editing: pmap.ph
require '_h2ph_pre.ph'; no warnings qw(redefine misc); unless(defined(&_MACHINE_PMAP_H_)) { eval 'sub _MACHINE_PMAP_H_ () {1;}' unless defined(&_MACHINE_PMAP_H_); eval 'sub X86_PG_V () {0x1;}' unless defined(&X86_PG_V); eval 'sub X86_PG_RW () {0x2;}' unless defined(&X86_PG_RW); eval 'sub X86_PG_U () {0x4;}' unless defined(&X86_PG_U); eval 'sub X86_PG_NC_PWT () {0x8;}' unless defined(&X86_PG_NC_PWT); eval 'sub X86_PG_NC_PCD () {0x10;}' unless defined(&X86_PG_NC_PCD); eval 'sub X86_PG_A () {0x20;}' unless defined(&X86_PG_A); eval 'sub X86_PG_M () {0x40;}' unless defined(&X86_PG_M); eval 'sub X86_PG_PS () {0x80;}' unless defined(&X86_PG_PS); eval 'sub X86_PG_PTE_PAT () {0x80;}' unless defined(&X86_PG_PTE_PAT); eval 'sub X86_PG_G () {0x100;}' unless defined(&X86_PG_G); eval 'sub X86_PG_AVAIL1 () {0x200;}' unless defined(&X86_PG_AVAIL1); eval 'sub X86_PG_AVAIL2 () {0x400;}' unless defined(&X86_PG_AVAIL2); eval 'sub X86_PG_AVAIL3 () {0x800;}' unless defined(&X86_PG_AVAIL3); eval 'sub X86_PG_PDE_PAT () {0x1000;}' unless defined(&X86_PG_PDE_PAT); eval 'sub X86_PG_PKU { my($idx) = @_; eval q((( &pt_entry_t)$idx << 59)); }' unless defined(&X86_PG_PKU); eval 'sub X86_PG_NX () {(1<<63);}' unless defined(&X86_PG_NX); eval 'sub X86_PG_AVAIL { my($x) = @_; eval q((1 << ($x))); }' unless defined(&X86_PG_AVAIL); eval 'sub X86_PG_PDE_CACHE () {( &X86_PG_PDE_PAT | &X86_PG_NC_PWT | &X86_PG_NC_PCD);}' unless defined(&X86_PG_PDE_CACHE); eval 'sub X86_PG_PTE_CACHE () {( &X86_PG_PTE_PAT | &X86_PG_NC_PWT | &X86_PG_NC_PCD);}' unless defined(&X86_PG_PTE_CACHE); eval 'sub PMAP_MAX_PKRU_IDX () {0xf;}' unless defined(&PMAP_MAX_PKRU_IDX); eval 'sub X86_PG_PKU_MASK () { &X86_PG_PKU( &PMAP_MAX_PKRU_IDX);}' unless defined(&X86_PG_PKU_MASK); eval 'sub EPT_PG_READ () {0x1;}' unless defined(&EPT_PG_READ); eval 'sub EPT_PG_WRITE () {0x2;}' unless defined(&EPT_PG_WRITE); eval 'sub EPT_PG_EXECUTE () {0x4;}' unless defined(&EPT_PG_EXECUTE); eval 'sub EPT_PG_IGNORE_PAT () {0x40;}' unless defined(&EPT_PG_IGNORE_PAT); eval 'sub EPT_PG_PS () {0x80;}' unless defined(&EPT_PG_PS); eval 'sub EPT_PG_A () {0x100;}' unless defined(&EPT_PG_A); eval 'sub EPT_PG_M () {0x200;}' unless defined(&EPT_PG_M); eval 'sub EPT_PG_MEMORY_TYPE { my($x) = @_; eval q((($x) << 3)); }' unless defined(&EPT_PG_MEMORY_TYPE); eval 'sub PG_V () { &X86_PG_V;}' unless defined(&PG_V); eval 'sub PG_RW () { &X86_PG_RW;}' unless defined(&PG_RW); eval 'sub PG_U () { &X86_PG_U;}' unless defined(&PG_U); eval 'sub PG_NC_PWT () { &X86_PG_NC_PWT;}' unless defined(&PG_NC_PWT); eval 'sub PG_NC_PCD () { &X86_PG_NC_PCD;}' unless defined(&PG_NC_PCD); eval 'sub PG_A () { &X86_PG_A;}' unless defined(&PG_A); eval 'sub PG_M () { &X86_PG_M;}' unless defined(&PG_M); eval 'sub PG_PS () { &X86_PG_PS;}' unless defined(&PG_PS); eval 'sub PG_PTE_PAT () { &X86_PG_PTE_PAT;}' unless defined(&PG_PTE_PAT); eval 'sub PG_G () { &X86_PG_G;}' unless defined(&PG_G); eval 'sub PG_AVAIL1 () { &X86_PG_AVAIL1;}' unless defined(&PG_AVAIL1); eval 'sub PG_AVAIL2 () { &X86_PG_AVAIL2;}' unless defined(&PG_AVAIL2); eval 'sub PG_AVAIL3 () { &X86_PG_AVAIL3;}' unless defined(&PG_AVAIL3); eval 'sub PG_PDE_PAT () { &X86_PG_PDE_PAT;}' unless defined(&PG_PDE_PAT); eval 'sub PG_NX () { &X86_PG_NX;}' unless defined(&PG_NX); eval 'sub PG_PDE_CACHE () { &X86_PG_PDE_CACHE;}' unless defined(&PG_PDE_CACHE); eval 'sub PG_PTE_CACHE () { &X86_PG_PTE_CACHE;}' unless defined(&PG_PTE_CACHE); eval 'sub PG_W () { &X86_PG_AVAIL3;}' unless defined(&PG_W); eval 'sub PG_MANAGED () { &X86_PG_AVAIL2;}' unless defined(&PG_MANAGED); eval 'sub EPT_PG_EMUL_V () { &X86_PG_AVAIL(52);}' unless defined(&EPT_PG_EMUL_V); eval 'sub EPT_PG_EMUL_RW () { &X86_PG_AVAIL(53);}' unless defined(&EPT_PG_EMUL_RW); eval 'sub PG_PROMOTED () { &X86_PG_AVAIL(54);}' unless defined(&PG_PROMOTED); eval 'sub PG_FRAME () {(0xffffffffff000);}' unless defined(&PG_FRAME); eval 'sub PG_PS_FRAME () {(0xfffffffe00000);}' unless defined(&PG_PS_FRAME); eval 'sub PG_PS_PDP_FRAME () {(0xfffffc0000000);}' unless defined(&PG_PS_PDP_FRAME); eval 'sub PG_PTE_PROMOTE () {( &PG_NX | &PG_MANAGED | &PG_W | &PG_G | &PG_PTE_CACHE | &PG_M | &PG_A | &PG_U | &PG_RW | &PG_V | &PG_PKU_MASK);}' unless defined(&PG_PTE_PROMOTE); eval 'sub PGEX_P () {0x1;}' unless defined(&PGEX_P); eval 'sub PGEX_W () {0x2;}' unless defined(&PGEX_W); eval 'sub PGEX_U () {0x4;}' unless defined(&PGEX_U); eval 'sub PGEX_RSV () {0x8;}' unless defined(&PGEX_RSV); eval 'sub PGEX_I () {0x10;}' unless defined(&PGEX_I); eval 'sub PGEX_PK () {0x20;}' unless defined(&PGEX_PK); eval 'sub PGEX_SGX () {0x8000;}' unless defined(&PGEX_SGX); if(defined(&AMD64_NPT_AWARE)) { undef(&PG_AVAIL1) if defined(&PG_AVAIL1); undef(&PG_G) if defined(&PG_G); undef(&PG_A) if defined(&PG_A); undef(&PG_M) if defined(&PG_M); undef(&PG_PDE_PAT) if defined(&PG_PDE_PAT); undef(&PG_PDE_CACHE) if defined(&PG_PDE_CACHE); undef(&PG_PTE_PAT) if defined(&PG_PTE_PAT); undef(&PG_PTE_CACHE) if defined(&PG_PTE_CACHE); undef(&PG_RW) if defined(&PG_RW); undef(&PG_V) if defined(&PG_V); } eval 'sub KV4ADDR { my($l4, $l3, $l2, $l1) = @_; eval q(( (-1<< 47) | ( << &PML4SHIFT) | ( << &PDPSHIFT) | ( << &PDRSHIFT) | (($l1) << &PAGE_SHIFT))); }' unless defined(&KV4ADDR); eval 'sub KV5ADDR { my($l5, $l4, $l3, $l2, $l1) = @_; eval q(( (-1<< 56) | ( << &PML5SHIFT) | ( << &PML4SHIFT) | ( << &PDPSHIFT) | ( << &PDRSHIFT) | (($l1) << &PAGE_SHIFT))); }' unless defined(&KV5ADDR); eval 'sub UVADDR { my($l5, $l4, $l3, $l2, $l1) = @_; eval q(( ( << &PML5SHIFT) | ( << &PML4SHIFT) | ( << &PDPSHIFT) | ( << &PDRSHIFT) | (($l1) << &PAGE_SHIFT))); }' unless defined(&UVADDR); eval 'sub NKPML4E () {4;}' unless defined(&NKPML4E); eval 'sub NUPML5E () {( &NPML5EPG / 2);}' unless defined(&NUPML5E); eval 'sub NUPML4E () {( &NUPML5E * &NPML4EPG);}' unless defined(&NUPML4E); eval 'sub NUPDPE () {( &NUPML4E * &NPDPEPG);}' unless defined(&NUPDPE); eval 'sub NUPDE () {( &NUPDPE * &NPDEPG);}' unless defined(&NUPDE); eval 'sub NUP4ML4E () {( &NPML4EPG / 2);}' unless defined(&NUP4ML4E); eval 'sub NDMPML4E () {8;}' unless defined(&NDMPML4E); eval 'sub PML4PML4I () {( &NPML4EPG / 2);}' unless defined(&PML4PML4I); eval 'sub PML5PML5I () {( &NPML5EPG / 2);}' unless defined(&PML5PML5I); eval 'sub KPML4BASE () {( &NPML4EPG- &NKPML4E);}' unless defined(&KPML4BASE); eval 'sub DMPML4I () { &rounddown( &KPML4BASE- &NDMPML4E, &NDMPML4E);}' unless defined(&DMPML4I); eval 'sub KPML4I () {( &NPML4EPG-1);}' unless defined(&KPML4I); eval 'sub KPDPI () {( &NPDPEPG-2);}' unless defined(&KPDPI); eval 'sub LMSPML4I () {( &PML4PML4I + 1);}' unless defined(&LMSPML4I); eval 'sub LMEPML4I () {( &DMPML4I - 1);}' unless defined(&LMEPML4I); eval 'sub ISA_HOLE_START () {0xa0000;}' unless defined(&ISA_HOLE_START); eval 'sub ISA_HOLE_LENGTH () {(0x100000- &ISA_HOLE_START);}' unless defined(&ISA_HOLE_LENGTH); eval 'sub PMAP_PCID_NONE () {0xffffffff;}' unless defined(&PMAP_PCID_NONE); eval 'sub PMAP_PCID_KERN () {0;}' unless defined(&PMAP_PCID_KERN); eval 'sub PMAP_PCID_OVERMAX () {0x1000;}' unless defined(&PMAP_PCID_OVERMAX); eval 'sub PMAP_PCID_OVERMAX_KERN () {0x800;}' unless defined(&PMAP_PCID_OVERMAX_KERN); eval 'sub PMAP_PCID_USER_PT () {0x800;}' unless defined(&PMAP_PCID_USER_PT); eval 'sub PMAP_NO_CR3 () {0xffffffffffffffff;}' unless defined(&PMAP_NO_CR3); eval 'sub PMAP_UCR3_NOMASK () {0xffffffffffffffff;}' unless defined(&PMAP_UCR3_NOMASK); unless(defined(&LOCORE)) { require 'sys/queue.ph'; require 'sys/_cpuset.ph'; require 'sys/_lock.ph'; require 'sys/_mutex.ph'; require 'sys/_pctrie.ph'; require 'sys/_rangeset.ph'; require 'sys/_smr.ph'; require 'vm/_vm_radix.ph'; if(defined(&_KERNEL)) { eval 'sub addr_P4Tmap () {( &KV4ADDR( &PML4PML4I, 0, 0, 0));}' unless defined(&addr_P4Tmap); eval 'sub addr_P4Dmap () {( &KV4ADDR( &PML4PML4I, &PML4PML4I, 0, 0));}' unless defined(&addr_P4Dmap); eval 'sub addr_P4DPmap () {( &KV4ADDR( &PML4PML4I, &PML4PML4I, &PML4PML4I, 0));}' unless defined(&addr_P4DPmap); eval 'sub addr_P4ML4map () {( &KV4ADDR( &PML4PML4I, &PML4PML4I, &PML4PML4I, &PML4PML4I));}' unless defined(&addr_P4ML4map); eval 'sub addr_P4ML4pml4e () {( &addr_PML4map + ( &PML4PML4I * $sizeof{ &pml4_entry_t}));}' unless defined(&addr_P4ML4pml4e); eval 'sub P4Tmap () {(( &pt_entry_t *)( &addr_P4Tmap));}' unless defined(&P4Tmap); eval 'sub P4Dmap () {(( &pd_entry_t *)( &addr_P4Dmap));}' unless defined(&P4Dmap); eval 'sub addr_P5Tmap () {( &KV5ADDR( &PML5PML5I, 0, 0, 0, 0));}' unless defined(&addr_P5Tmap); eval 'sub addr_P5Dmap () {( &KV5ADDR( &PML5PML5I, &PML5PML5I, 0, 0, 0));}' unless defined(&addr_P5Dmap); eval 'sub addr_P5DPmap () {( &KV5ADDR( &PML5PML5I, &PML5PML5I, &PML5PML5I, 0, 0));}' unless defined(&addr_P5DPmap); eval 'sub addr_P5ML4map () {( &KV5ADDR( &PML5PML5I, &PML5PML5I, &PML5PML5I, &PML5PML5I, 0));}' unless defined(&addr_P5ML4map); eval 'sub addr_P5ML5map () {( &KVADDR( &PML5PML5I, &PML5PML5I, &PML5PML5I, &PML5PML5I, &PML5PML5I));}' unless defined(&addr_P5ML5map); eval 'sub addr_P5ML5pml5e () {( &addr_P5ML5map + ( &PML5PML5I * $sizeof{ &pml5_entry_t}));}' unless defined(&addr_P5ML5pml5e); eval 'sub P5Tmap () {(( &pt_entry_t *)( &addr_P5Tmap));}' unless defined(&P5Tmap); eval 'sub P5Dmap () {(( &pd_entry_t *)( &addr_P5Dmap));}' unless defined(&P5Dmap); eval 'sub vtophys { my($va) = @_; eval q( &pmap_kextract((( &vm_offset_t) ($va)))); }' unless defined(&vtophys); eval 'sub pte_load_store { my($ptep, $pte) = @_; eval q( &atomic_swap_long($ptep, $pte)); }' unless defined(&pte_load_store); eval 'sub pte_load_clear { my($ptep) = @_; eval q( &atomic_swap_long($ptep, 0)); }' unless defined(&pte_load_clear); eval 'sub pte_store { my($ptep, $pte) = @_; eval q( &do { * = ($pte); } &while (0)); }' unless defined(&pte_store); eval 'sub pte_clear { my($ptep) = @_; eval q( &pte_store($ptep, 0)); }' unless defined(&pte_clear); eval 'sub pde_store { my($pdep, $pde) = @_; eval q( &pte_store($pdep, $pde)); }' unless defined(&pde_store); } eval("sub PT_X86 () { 0; }") unless defined(&PT_X86); eval("sub PT_EPT () { 1; }") unless defined(&PT_EPT); eval("sub PT_RVI () { 2; }") unless defined(&PT_RVI); eval 'sub PMAP_NESTED_IPIMASK () {0xff;}' unless defined(&PMAP_NESTED_IPIMASK); eval 'sub PMAP_PDE_SUPERPAGE () {(1<< 8);}' unless defined(&PMAP_PDE_SUPERPAGE); eval 'sub PMAP_EMULATE_AD_BITS () {(1<< 9);}' unless defined(&PMAP_EMULATE_AD_BITS); eval 'sub PMAP_SUPPORTS_EXEC_ONLY () {(1<< 10);}' unless defined(&PMAP_SUPPORTS_EXEC_ONLY); if(defined(&_KERNEL)) { eval 'sub kernel_pmap () {( &kernel_pmap_store);}' unless defined(&kernel_pmap); eval 'sub PMAP_LOCK { my($pmap) = @_; eval q( &mtx_lock(($pmap)-> &pm_mtx)); }' unless defined(&PMAP_LOCK); eval 'sub PMAP_LOCK_ASSERT { my($pmap, $type) = @_; eval q( &mtx_assert(($pmap)-> &pm_mtx, ($type))); }' unless defined(&PMAP_LOCK_ASSERT); eval 'sub PMAP_LOCK_DESTROY { my($pmap) = @_; eval q( &mtx_destroy(($pmap)-> &pm_mtx)); }' unless defined(&PMAP_LOCK_DESTROY); eval 'sub PMAP_LOCK_INIT { my($pmap) = @_; eval q( &mtx_init(($pmap)-> &pm_mtx, \\"pmap\\", &NULL, &MTX_DEF | &MTX_DUPOK)); }' unless defined(&PMAP_LOCK_INIT); eval 'sub PMAP_LOCKED { my($pmap) = @_; eval q( &mtx_owned(($pmap)-> &pm_mtx)); }' unless defined(&PMAP_LOCKED); eval 'sub PMAP_MTX { my($pmap) = @_; eval q((($pmap)-> &pm_mtx)); }' unless defined(&PMAP_MTX); eval 'sub PMAP_TRYLOCK { my($pmap) = @_; eval q( &mtx_trylock(($pmap)-> &pm_mtx)); }' unless defined(&PMAP_TRYLOCK); eval 'sub PMAP_UNLOCK { my($pmap) = @_; eval q( &mtx_unlock(($pmap)-> &pm_mtx)); }' unless defined(&PMAP_UNLOCK); } eval 'sub _NPCM () {3;}' unless defined(&_NPCM); eval 'sub _NPCPV () {168;}' unless defined(&_NPCPV); eval 'sub PV_CHUNK_HEADER () { &pmap_t &pc_pmap; &TAILQ_ENTRY( &pv_chunk) &pc_list; &uint64_t $pc_map[ &_NPCM]; &TAILQ_ENTRY( &pv_chunk) &pc_lru;;}' unless defined(&PV_CHUNK_HEADER); if(defined(&_KERNEL)) { eval 'sub pmap_page_get_memattr { my($m) = @_; eval q((( &vm_memattr_t)($m)-> ($md->{pat_mode}))); }' unless defined(&pmap_page_get_memattr); eval 'sub pmap_page_is_write_mapped { my($m) = @_; eval q(((($m)-> ($a->{flags}) & &PGA_WRITEABLE) != 0)); }' unless defined(&pmap_page_is_write_mapped); eval 'sub pmap_unmapbios { my($va, $sz) = @_; eval q( &pmap_unmapdev(($va), ($sz))); }' unless defined(&pmap_unmapbios); } eval 'sub pmap_pde_index { my($va) = @_; eval q({ (($va >> &PDRSHIFT) & ((1 << &NPDEPGSHIFT) - 1)); }); }' unless defined(&pmap_pde_index); eval 'sub pmap_pdpe_index { my($va) = @_; eval q({ (($va >> &PDPSHIFT) & ((1 << &NPDPEPGSHIFT) - 1)); }); }' unless defined(&pmap_pdpe_index); eval 'sub pmap_pml4e_index { my($va) = @_; eval q({ (($va >> &PML4SHIFT) & ((1 << &NPML4EPGSHIFT) - 1)); }); }' unless defined(&pmap_pml4e_index); eval 'sub pmap_pml5e_index { my($va) = @_; eval q({ (($va >> &PML5SHIFT) & ((1 << &NPML5EPGSHIFT) - 1)); }); }' unless defined(&pmap_pml5e_index); } } 1;
Upload File
Create Folder