mirror of
https://git.rtems.org/rtems-libbsd/
synced 2025-10-14 21:02:33 +08:00
Update to FreeBSD 9.2
This commit is contained in:
@@ -51,8 +51,6 @@ memstat_strerror(int error)
|
||||
return ("Version mismatch");
|
||||
case MEMSTAT_ERROR_PERMISSION:
|
||||
return ("Permission denied");
|
||||
case MEMSTAT_ERROR_TOOMANYCPUS:
|
||||
return ("Too many CPUs");
|
||||
case MEMSTAT_ERROR_DATAERROR:
|
||||
return ("Data format error");
|
||||
case MEMSTAT_ERROR_KVM:
|
||||
@@ -101,6 +99,8 @@ _memstat_mtl_empty(struct memory_type_list *list)
|
||||
struct memory_type *mtp;
|
||||
|
||||
while ((mtp = LIST_FIRST(&list->mtl_list))) {
|
||||
free(mtp->mt_percpu_alloc);
|
||||
free(mtp->mt_percpu_cache);
|
||||
LIST_REMOVE(mtp, mt_list);
|
||||
free(mtp);
|
||||
}
|
||||
@@ -149,7 +149,7 @@ memstat_mtl_find(struct memory_type_list *list, int allocator,
|
||||
*/
|
||||
struct memory_type *
|
||||
_memstat_mt_allocate(struct memory_type_list *list, int allocator,
|
||||
const char *name)
|
||||
const char *name, int maxcpus)
|
||||
{
|
||||
struct memory_type *mtp;
|
||||
|
||||
@@ -160,6 +160,10 @@ _memstat_mt_allocate(struct memory_type_list *list, int allocator,
|
||||
bzero(mtp, sizeof(*mtp));
|
||||
|
||||
mtp->mt_allocator = allocator;
|
||||
mtp->mt_percpu_alloc = malloc(sizeof(struct mt_percpu_alloc_s) *
|
||||
maxcpus);
|
||||
mtp->mt_percpu_cache = malloc(sizeof(struct mt_percpu_cache_s) *
|
||||
maxcpus);
|
||||
strlcpy(mtp->mt_name, name, MEMTYPE_MAXNAME);
|
||||
LIST_INSERT_HEAD(&list->mtl_list, mtp, mt_list);
|
||||
return (mtp);
|
||||
@@ -173,7 +177,7 @@ _memstat_mt_allocate(struct memory_type_list *list, int allocator,
|
||||
* libmemstat(3) internal function.
|
||||
*/
|
||||
void
|
||||
_memstat_mt_reset_stats(struct memory_type *mtp)
|
||||
_memstat_mt_reset_stats(struct memory_type *mtp, int maxcpus)
|
||||
{
|
||||
int i;
|
||||
|
||||
@@ -190,11 +194,12 @@ _memstat_mt_reset_stats(struct memory_type *mtp)
|
||||
mtp->mt_count = 0;
|
||||
mtp->mt_free = 0;
|
||||
mtp->mt_failures = 0;
|
||||
mtp->mt_sleeps = 0;
|
||||
|
||||
mtp->mt_zonefree = 0;
|
||||
mtp->mt_kegfree = 0;
|
||||
|
||||
for (i = 0; i < MEMSTAT_MAXCPU; i++) {
|
||||
for (i = 0; i < maxcpus; i++) {
|
||||
mtp->mt_percpu_alloc[i].mtp_memalloced = 0;
|
||||
mtp->mt_percpu_alloc[i].mtp_memfreed = 0;
|
||||
mtp->mt_percpu_alloc[i].mtp_numallocs = 0;
|
||||
@@ -306,6 +311,13 @@ memstat_get_failures(const struct memory_type *mtp)
|
||||
return (mtp->mt_failures);
|
||||
}
|
||||
|
||||
uint64_t
|
||||
memstat_get_sleeps(const struct memory_type *mtp)
|
||||
{
|
||||
|
||||
return (mtp->mt_sleeps);
|
||||
}
|
||||
|
||||
void *
|
||||
memstat_get_caller_pointer(const struct memory_type *mtp, int index)
|
||||
{
|
||||
|
Reference in New Issue
Block a user