Changeset View
Changeset View
Standalone View
Standalone View
lib/libgeom/geom_stats.c
Show First 20 Lines • Show All 130 Lines • ▼ Show 20 Lines | geom_stats_snapshot_get(void) | ||||
if (sp == NULL) | if (sp == NULL) | ||||
return (NULL); | return (NULL); | ||||
memset(sp, 0, sizeof *sp); | memset(sp, 0, sizeof *sp); | ||||
sp->ptr = malloc(pagesize * npages); | sp->ptr = malloc(pagesize * npages); | ||||
if (sp->ptr == NULL) { | if (sp->ptr == NULL) { | ||||
free(sp); | free(sp); | ||||
return (NULL); | return (NULL); | ||||
} | } | ||||
memset(sp->ptr, 0, pagesize * npages); /* page in, cache */ | explicit_bzero(sp->ptr, pagesize * npages); /* page in, cache */ | ||||
clock_gettime(CLOCK_REALTIME, &sp->time); | clock_gettime(CLOCK_REALTIME, &sp->time); | ||||
memset(sp->ptr, 0, pagesize * npages); /* page in, cache */ | |||||
memcpy(sp->ptr, statp, pagesize * npages); | memcpy(sp->ptr, statp, pagesize * npages); | ||||
sp->pages = npages; | sp->pages = npages; | ||||
sp->perpage = spp; | sp->perpage = spp; | ||||
sp->pagesize = pagesize; | sp->pagesize = pagesize; | ||||
return (sp); | return (sp); | ||||
} | } | ||||
void | void | ||||
▲ Show 20 Lines • Show All 44 Lines • Show Last 20 Lines |