#define COMPARE_EVENT_KEY(func, field) \
GET_EVENT_KEY(func, field) \
-static int cmp_event_ ## func(struct kvm_event *one, \
+static int64_t cmp_event_ ## func(struct kvm_event *one, \
struct kvm_event *two, int vcpu) \
{ \
- return get_event_ ##func(one, vcpu) > \
+ return get_event_ ##func(one, vcpu) - \
get_event_ ##func(two, vcpu); \
}
p = container_of(*rb, struct kvm_event, rb);
parent = *rb;
- if (bigger(event, p, vcpu))
+ if (bigger(event, p, vcpu) > 0)
rb = &(*rb)->rb_left;
else
rb = &(*rb)->rb_right;
struct kvm_event_stats *vcpu;
};
-typedef int (*key_cmp_fun)(struct kvm_event*, struct kvm_event*, int);
+typedef int64_t (*key_cmp_fun)(struct kvm_event*, struct kvm_event*, int);
struct kvm_event_key {
const char *name;