#include <public/callback.h>
-static long register_guest_nmi_callback(unsigned long address)
+static int register_guest_nmi_callback(unsigned long address)
{
struct vcpu *curr = current;
struct domain *d = curr->domain;
return 0;
}
-static long unregister_guest_nmi_callback(void)
+static void unregister_guest_nmi_callback(void)
{
struct vcpu *curr = current;
struct trap_info *t = &curr->arch.pv_vcpu.trap_ctxt[TRAP_nmi];
memset(t, 0, sizeof(*t));
-
- return 0;
}
static long register_guest_callback(struct callback_register *reg)
break;
case CALLBACKTYPE_nmi:
- ret = unregister_guest_nmi_callback();
+ unregister_guest_nmi_callback();
+ ret = 0;
break;
default:
break;
case CALLBACKTYPE_nmi:
- ret = unregister_guest_nmi_callback();
+ unregister_guest_nmi_callback();
+ ret = 0;
break;
default:
rc = register_guest_nmi_callback(cb.handler_address);
break;
case XENNMI_unregister_callback:
- rc = unregister_guest_nmi_callback();
+ unregister_guest_nmi_callback();
+ rc = 0;
break;
default:
rc = -ENOSYS;
rc = register_guest_nmi_callback(cb.handler_address);
break;
case XENNMI_unregister_callback:
- rc = unregister_guest_nmi_callback();
+ unregister_guest_nmi_callback();
+ rc = 0;
break;
default:
rc = -ENOSYS;