rusage: Fix available page sizes
Change-Id: I418075ff4b5341e0f5c7ff317e96461879a60f87
This commit is contained in:
committed by
Dominique Martinet
parent
c82c2c1231
commit
6810506c3d
@ -3,11 +3,50 @@
|
||||
#ifndef __RUSAGE_H
|
||||
#define __RUSAGE_H
|
||||
|
||||
#include <ihk/ihk_rusage.h>
|
||||
|
||||
//#define RUSAGE_DEBUG
|
||||
|
||||
#define IHK_MAX_NUM_PGSIZES 4
|
||||
#define IHK_MAX_NUM_NUMA_NODES 1024
|
||||
#define IHK_MAX_NUM_CPUS 1024
|
||||
extern struct rusage_global rusage;
|
||||
|
||||
static inline int rusage_pgsize_to_pgtype(size_t pgsize)
|
||||
{
|
||||
int ret = IHK_OS_PGSIZE_4KB;
|
||||
int pgshift = pgsize_to_pgshift(pgsize);
|
||||
|
||||
switch (pgshift) {
|
||||
case 12:
|
||||
ret = IHK_OS_PGSIZE_4KB;
|
||||
break;
|
||||
case 16:
|
||||
ret = IHK_OS_PGSIZE_64KB;
|
||||
break;
|
||||
case 21:
|
||||
ret = IHK_OS_PGSIZE_2MB;
|
||||
break;
|
||||
case 25:
|
||||
ret = IHK_OS_PGSIZE_32MB;
|
||||
break;
|
||||
case 30:
|
||||
ret = IHK_OS_PGSIZE_1GB;
|
||||
break;
|
||||
case 34:
|
||||
ret = IHK_OS_PGSIZE_16GB;
|
||||
break;
|
||||
case 29:
|
||||
ret = IHK_OS_PGSIZE_512MB;
|
||||
break;
|
||||
case 42:
|
||||
ret = IHK_OS_PGSIZE_4TB;
|
||||
break;
|
||||
default:
|
||||
kprintf("%s: Error: Unknown pgsize=%ld\n",
|
||||
__func__, pgsize);
|
||||
break;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
struct rusage_percpu {
|
||||
unsigned long user_tsc;
|
||||
@ -36,7 +75,7 @@ struct rusage_global {
|
||||
#ifdef RUSAGE_DEBUG
|
||||
unsigned long total_memory_max_usage_old; /* debug */
|
||||
#endif
|
||||
/* Used for translating results into struct mckernel_rusage */
|
||||
/* Used for translating results into struct ihk_os_rusage */
|
||||
unsigned long num_numa_nodes;
|
||||
unsigned long num_processors;
|
||||
unsigned long ns_per_tsc;
|
||||
|
||||
@ -9,7 +9,6 @@
|
||||
#include <memobj.h>
|
||||
#include <rusage.h>
|
||||
#include <ihk/ihk_monitor.h>
|
||||
#include <arch_rusage.h>
|
||||
#include <debug.h>
|
||||
|
||||
#ifdef ENABLE_RUSAGE
|
||||
|
||||
Reference in New Issue
Block a user