The profile utility can set the sprofiling mode
- profile --nmi | --rtc sets the profiling mode - --rtc is default, uses BIOS RTC, cannot profile kernel the presetted frequency values apply - --nmi is only available in APIC mode as it uses the NMI watchdog, -f allows any frequency in Hz - both modes use compatible data structures
This commit is contained in:
@@ -2,13 +2,19 @@
|
||||
|
||||
#define sprofile _sprofile
|
||||
|
||||
PUBLIC int sprofile(int action, int size, int freq, char *ctl_ptr, int *mem_ptr)
|
||||
PUBLIC int sprofile(int action,
|
||||
int size,
|
||||
int freq,
|
||||
int type,
|
||||
char *ctl_ptr,
|
||||
int *mem_ptr)
|
||||
{
|
||||
message m;
|
||||
|
||||
m.PROF_ACTION = action;
|
||||
m.PROF_MEM_SIZE = size;
|
||||
m.PROF_FREQ = freq;
|
||||
m.PROF_INTR_TYPE = type;
|
||||
m.PROF_CTL_PTR = (void *) ctl_ptr;
|
||||
m.PROF_MEM_PTR = (void *) mem_ptr;
|
||||
|
||||
|
||||
@@ -5,10 +5,11 @@
|
||||
/*===========================================================================*
|
||||
* sys_sprof *
|
||||
*===========================================================================*/
|
||||
PUBLIC int sys_sprof(action, size, freq, endpt, ctl_ptr, mem_ptr)
|
||||
PUBLIC int sys_sprof(action, size, freq, type, endpt, ctl_ptr, mem_ptr)
|
||||
int action; /* start/stop profiling */
|
||||
int size; /* available profiling memory */
|
||||
int freq; /* sample frequency */
|
||||
int type;
|
||||
endpoint_t endpt; /* caller endpoint */
|
||||
void *ctl_ptr; /* location of info struct */
|
||||
void *mem_ptr; /* location of profiling memory */
|
||||
@@ -18,6 +19,7 @@ void *mem_ptr; /* location of profiling memory */
|
||||
m.PROF_ACTION = action;
|
||||
m.PROF_MEM_SIZE = size;
|
||||
m.PROF_FREQ = freq;
|
||||
m.PROF_INTR_TYPE = type;
|
||||
m.PROF_ENDPT = endpt;
|
||||
m.PROF_CTL_PTR = ctl_ptr;
|
||||
m.PROF_MEM_PTR = mem_ptr;
|
||||
|
||||
Reference in New Issue
Block a user