prmap_t
prmap_t m;
thr_check(mdb_tgt_t *t, const prmap_t *pmp, const char *name)
pt_lookup_cb(void *data, const prmap_t *pmp, const char *object)
const prmap_t *pmp;
const prmap_t *pmp = NULL; /* set if 'sym' is from libproc */
pt_objsym_iter(void *arg, const prmap_t *pmp, const char *object)
pt_prmap_to_mdbmap(mdb_tgt_t *t, const prmap_t *prp, mdb_map_t *mp)
pt_map_apply(void *arg, const prmap_t *prp, const char *name)
const prmap_t *pmp;
const prmap_t *pmp;
Pread_maps_gcore(struct ps_prochandle *P, prmap_t **Pmapp, ssize_t *nmapp,
prmap_t *pmap;
(void) memcpy(&pmap[i], &n->m, sizeof (prmap_t));
prmap_t *mp;
python_object_iter(void *cd, const prmap_t *pmp, const char *obj)
leaky_process_anon_mappings(uintptr_t ignored, const prmap_t *pmp,
leaky_grep_mappings(uintptr_t ignored, const prmap_t *pmp,
const prmap_t *prm = prm_arg;
sizeof (prmap_t) * pkm->pkm_old_max);
sizeof (prmap_t) * pkm->pkm_max);
prmap_t *pkm_mappings;
prmap_t *pkm_old_mappings;
prockludge_mappings_iter(prockludge_mappings_t *pkm, const prmap_t *pmp,
pkm->pkm_mappings = mdb_alloc(sizeof (prmap_t) * s, UM_SLEEP);
sizeof (prmap_t) * pkm->pkm_old_max);
sizeof (prmap_t) * pkm->pkm_old_max);
bcopy(pmp, &pkm->pkm_mappings[pkm->pkm_count++], sizeof (prmap_t));
prmap_t map;
show_map(void *cd, const prmap_t *pmap, const char *object_name)
static int show_map(void *, const prmap_t *, const char *);
static int create_maplist(void *, const prmap_t *, const char *);
prmap_t *pmp;
create_maplist(void *arg, const prmap_t *pmp, const char *object_name)
newmap->pmp = malloc(sizeof (prmap_t));
(void) memcpy(newmap->pmp, pmp, sizeof (prmap_t));
static int look_map(void *, const prmap_t *, const char *);
static int gather_map(void *, const prmap_t *, const char *);
gather_map(void *ignored, const prmap_t *map, const char *objname)
prmap_t md_map;
prmap_t *prmapp, *pmp;
nmap = st.st_size / sizeof (prmap_t);
prmapp = malloc((nmap + 1) * sizeof (prmap_t));
if ((n = pread(mapfd, prmapp, (nmap + 1) * sizeof (prmap_t), 0L)) < 0) {
nmap = n / sizeof (prmap_t);
mapping_name(const prmap_t *pmp, boolean_t brief, char *buf, size_t bufsz)
CTASSERT(offsetof(prmap_t, pr_vaddr) == offsetof(prxmap_t, pr_vaddr));
CTASSERT(offsetof(prmap_t, pr_size) == offsetof(prxmap_t, pr_size));
CTASSERT(offsetof(prmap_t, pr_mapname) == offsetof(prxmap_t, pr_mapname));
CTASSERT(offsetof(prmap_t, pr_mflags) == offsetof(prxmap_t, pr_mflags));
CTASSERT(offsetof(prmap_t, pr_shmid) == offsetof(prxmap_t, pr_shmid));
return (mapping_name((const prmap_t *)pmp, brief, buf, bufsz));
look_map(void *data, const prmap_t *pmp, const char *object_name)
jvm_object_iter(void *cd, const prmap_t *pmp, const char *obj)
python_object_iter(void *cd, const prmap_t *pmp, const char *obj)
prmap_t *mapptr;
for (mapptr = (prmap_t *)ptr;
prmap_t *mapptr;
for (mapptr = (prmap_t *)ptr;
prmap_t *maps, *_maps;
num = (int)(status.st_size / sizeof (prmap_t));
size = num * sizeof (prmap_t);
prmap_t *Pmap = NULL;
statb.st_size < sizeof (prmap_t) ||
(nmap /= sizeof (prmap_t)) == 0) {
object_iter(void *cd, const prmap_t *pmp, const char *object_name)
object_present(void *cd, const prmap_t *pmp, const char *object_name)
const prmap_t *pmp;
prmap_t *pmap;
make_lwp_stack(const lwpstatus_t *Lsp, prmap_t *Pmap, int nmap)
int object_iter(void *, const prmap_t *, const char *);
int object_present(void *, const prmap_t *, const char *);
prmap_t *Pmap = NULL;
prmap_t *pmap = NULL;
statb.st_size < sizeof (prmap_t) ||
(nmap /= sizeof (prmap_t)) == 0) {
const prmap_t *map;
const prmap_t *map;
dt_module_load_proc_count(void *arg, const prmap_t *prmap, const char *obj)
dt_module_load_proc_build(void *arg, const prmap_t *prmap, const char *obj)
dt_pid_per_mod(void *arg, const prmap_t *pmp, const char *obj)
dt_pid_mod_filt(void *arg, const prmap_t *pmp, const char *obj)
static const prmap_t *
const prmap_t *pmp;
const prmap_t *aout, *pmp;
const prmap_t *pmp;
dt_pid_usdt_mapping(void *data, const prmap_t *pmp, const char *oname)
npm = (int) (n / sizeof(prmap_t));
static prmap_t *pm = NULL; /* prmap_t array */
static prmap_t *lpm = NULL; /* prmap_t found in last call */
(pm = (prmap_t*)malloc(statbuf.st_size)) == NULL)
Pread_maps_live(struct ps_prochandle *P, prmap_t **Pmapp, ssize_t *nmapp,
prmap_t *Pmap = NULL;
statb.st_size < sizeof (prmap_t) ||
(nmap /= sizeof (prmap_t)) == 0) {
prmap_t *pmap)
prmap_t map_pmap; /* /proc description of this mapping */
prmap_t *);
prmap_t pmap;
dump_map(void *data, const prmap_t *pmp, const char *name)
prmap_t pmap;
nmappings /= sizeof (prmap_t);
prmap_t *pdp; /* pointer to map descriptor */
prmap_t *prbuf; /* buffer for map descriptors */
prbuf = malloc(nmap * sizeof (prmap_t));
nmappings = pread(mapfd, prbuf, nmap * sizeof (prmap_t), 0L);
Preadmaps(struct ps_prochandle *P, prmap_t **Pmapp, ssize_t *nmapp)
prmap_t *Pmap = NULL;
prmap_t *pmap;
const prmap_t *
const prmap_t *pmp = &mptr->map_pmap;
const prmap_t *
const prmap_t *
const prmap_t *
prmap_t *pmap = &mptr->map_pmap;
prmap_t *pmap = &mptr->map_pmap;
typedef int (*pop_read_maps_t)(struct ps_prochandle *, prmap_t **, ssize_t *,
typedef int proc_map_f(void *, const prmap_t *, const char *);
extern const prmap_t *Paddr_to_map(struct ps_prochandle *, uintptr_t);
extern const prmap_t *Paddr_to_text_map(struct ps_prochandle *, uintptr_t);
extern const prmap_t *Pname_to_map(struct ps_prochandle *, const char *);
extern const prmap_t *Plmid_to_map(struct ps_prochandle *,
prmap_t prmap;
prmap_t *mp;
prmap_t *mp;
PR_OBJSIZE(prmap32_t, prmap_t);