do_kexec_op and compat_set_timer_op are both prototyped in xen/include/xen/hypercall.h, but are different than their implemented functions. This appears to be a bug.
do_kexec_op:
xen/common/kexec.c: 889
long do_kexec_op(unsigned long op, XEN_GUEST_HANDLE(void) uarg)
{
return do_kexec_op_internal(op, uarg, 0);
}
xen/include/xen/hypercall.h: 126
extern long
do_kexec_op(
unsigned long op,
int arg1,
XEN_GUEST_HANDLE(void) arg);
compat_set_timer_op:
xen/common/compat/schedule.c: 38
int compat_set_timer_op(u32 lo, s32 hi)
{
return do_set_timer_op(((s64)hi << 32) | lo);
}
xen/include/xen/hypercall.h:175
extern int
compat_set_timer_op(
s_time_t timeout);
Thanks,
Robbie VanVossen