#include <asm/vmx.h> /* for vmx_user_mode() */
// XXX move them to an appropriate header file
-extern void xenoprof_log_event(struct vcpu *vcpu, struct pt_regs * regs,
- unsigned long eip, int mode, int event);
extern int is_active(struct domain *d);
static int allow_virq;
/* Check for space and add a sample. Return 1 if successful, 0 otherwise. */
static int xenoprof_add_sample(struct domain *d, xenoprof_buf_t *buf,
- unsigned long eip, int mode, int event)
+ uint64_t eip, int mode, int event)
{
int head, tail, size;
}
int xenoprof_add_trace(struct domain *d, struct vcpu *vcpu,
- unsigned long eip, int mode)
+ uint64_t eip, int mode)
{
xenoprof_buf_t *buf = d->xenoprof->vcpu[vcpu->vcpu_id].buffer;
}
void xenoprof_log_event(struct vcpu *vcpu,
- struct cpu_user_regs * regs, unsigned long eip,
+ struct cpu_user_regs * regs, uint64_t eip,
int mode, int event)
{
struct domain *d = vcpu->domain;
void free_xenoprof_pages(struct domain *d);
int xenoprof_add_trace(struct domain *d, struct vcpu *v,
- unsigned long eip, int mode);
+ uint64_t eip, int mode);
#define PMU_OWNER_NONE 0
#define PMU_OWNER_XENOPROF 1
void release_pmu_ownship(int pmu_ownership);
void xenoprof_log_event(struct vcpu *vcpu,
- struct cpu_user_regs * regs, unsigned long eip,
+ struct cpu_user_regs * regs, uint64_t eip,
int mode, int event);
#endif /* __XEN__XENOPROF_H__ */