1*433d6423SLionel Sambuc #ifndef PROFILE_H 2*433d6423SLionel Sambuc #define PROFILE_H 3*433d6423SLionel Sambuc 4*433d6423SLionel Sambuc #include <minix/profile.h> 5*433d6423SLionel Sambuc 6*433d6423SLionel Sambuc #if SPROFILE /* statistical profiling */ 7*433d6423SLionel Sambuc 8*433d6423SLionel Sambuc #include "arch_watchdog.h" 9*433d6423SLionel Sambuc 10*433d6423SLionel Sambuc #define SAMPLE_BUFFER_SIZE (64 << 20) 11*433d6423SLionel Sambuc extern char sprof_sample_buffer[SAMPLE_BUFFER_SIZE]; 12*433d6423SLionel Sambuc 13*433d6423SLionel Sambuc EXTERN int sprofiling; /* whether profiling is running */ 14*433d6423SLionel Sambuc EXTERN int sprofiling_type; /* whether profiling is running */ 15*433d6423SLionel Sambuc EXTERN int sprof_mem_size; /* available user memory for data */ 16*433d6423SLionel Sambuc EXTERN struct sprof_info_s sprof_info; /* profiling info for user program */ 17*433d6423SLionel Sambuc EXTERN vir_bytes sprof_data_addr_vir; /* user address to write data */ 18*433d6423SLionel Sambuc EXTERN endpoint_t sprof_ep; /* user process */ 19*433d6423SLionel Sambuc 20*433d6423SLionel Sambuc void nmi_sprofile_handler(struct nmi_frame * frame); 21*433d6423SLionel Sambuc 22*433d6423SLionel Sambuc #endif /* SPROFILE */ 23*433d6423SLionel Sambuc 24*433d6423SLionel Sambuc #endif /* PROFILE_H */ 25*433d6423SLionel Sambuc 26