1*74e4a8d2SMina Galić.\" 2*74e4a8d2SMina Galić.\" SPDX-License-Identifier: BSD-2-Clause 3*74e4a8d2SMina Galić.\" 4*74e4a8d2SMina Galić.\" Copyright (c) 2023 The FreeBSD Foundation 5*74e4a8d2SMina Galić.\" 6*74e4a8d2SMina Galić.\" This manual page was written by Mina Galić <FreeBSD@igalic.co> under 7*74e4a8d2SMina Galić.\" sponsorship from the FreeBSD Foundation. 8*74e4a8d2SMina Galić.\" 9*74e4a8d2SMina Galić.Dd August 24, 2023 10*74e4a8d2SMina Galić.Dt PMAP_KEXTRACT 9 11*74e4a8d2SMina Galić.Os 12*74e4a8d2SMina Galić.Sh NAME 13*74e4a8d2SMina Galić.Nm pmap_kextract , 14*74e4a8d2SMina Galić.Nm vtophys 15*74e4a8d2SMina Galić.Nd extract a physical address from the kernel page table 16*74e4a8d2SMina Galić.Sh SYNOPSIS 17*74e4a8d2SMina Galić.In sys/param.h 18*74e4a8d2SMina Galić.In vm/vm.h 19*74e4a8d2SMina Galić.In vm/pmap.h 20*74e4a8d2SMina Galić.Ft vm_paddr_t 21*74e4a8d2SMina Galić.Fo pmap_kextract 22*74e4a8d2SMina Galić.Fa "vm_offset_t va" 23*74e4a8d2SMina Galić.Fc 24*74e4a8d2SMina Galić.Ft vm_paddr_t 25*74e4a8d2SMina Galić.Fo vtophys 26*74e4a8d2SMina Galić.Fa "vm_offset_t va" 27*74e4a8d2SMina Galić.Fc 28*74e4a8d2SMina Galić.Sh DESCRIPTION 29*74e4a8d2SMina GalićThe 30*74e4a8d2SMina Galić.Fn pmap_kextract 31*74e4a8d2SMina Galićfunction retrieves the underlying physical memory address corresponding to the given kernel virtual address 32*74e4a8d2SMina Galić.Fa va . 33*74e4a8d2SMina GalićThe value of 34*74e4a8d2SMina Galić.Fa va 35*74e4a8d2SMina Galićmust correlate to an active mapping in the kernel address space. 36*74e4a8d2SMina Galić.Pp 37*74e4a8d2SMina Galić.Fn vtophys 38*74e4a8d2SMina Galićis an alias for 39*74e4a8d2SMina Galić.Fn pmap_kextract 40*74e4a8d2SMina Galićand behaves identically. 41*74e4a8d2SMina Galić.Sh RETURN VALUES 42*74e4a8d2SMina GalićThe 43*74e4a8d2SMina Galić.Fn pmap_kextract 44*74e4a8d2SMina Galićfunction will return the physical address 45*74e4a8d2SMina Galić.Pq Vt vm_paddr_t 46*74e4a8d2SMina Galićassociated with the kernel virtual address 47*74e4a8d2SMina Galić.Fa va . 48*74e4a8d2SMina Galić.Pp 49*74e4a8d2SMina Galić.Fn pmap_kextract 50*74e4a8d2SMina Galićgenerally does not fail. 51*74e4a8d2SMina GalićHowever, if supplied with an illegitimate value for 52*74e4a8d2SMina Galić.Fa va , 53*74e4a8d2SMina Galićthe function may return zero, an invalid non-zero value, or call 54*74e4a8d2SMina Galić.Xr panic 9 . 55*74e4a8d2SMina Galić.Sh SEE ALSO 56*74e4a8d2SMina Galić.Xr pmap 9 , 57*74e4a8d2SMina Galić.Xr pmap_extract 9 58*74e4a8d2SMina Galić.Sh AUTHORS 59*74e4a8d2SMina Galić.An -nosplit 60*74e4a8d2SMina GalićThis manual page was written by 61*74e4a8d2SMina Galić.An Mina Galić Aq Mt FreeBSD@igalic.co , 62*74e4a8d2SMina Galićbased on the 63*74e4a8d2SMina Galić.Xr pmap_extract 9 64*74e4a8d2SMina Galićpage written by 65*74e4a8d2SMina Galić.An Bruce M Simpson Aq Mt bms@spc.org . 66