On 3/31/22 19:11, Sean Christopherson wrote:
/* KVM_EXIT_SYSTEM_EVENT */ struct { #define KVM_SYSTEM_EVENT_SHUTDOWN 1 #define KVM_SYSTEM_EVENT_RESET 2 #define KVM_SYSTEM_EVENT_CRASH 3 __u32 type; __u64 flags; } system_event; Though looking at system_event, isn't that missing padding after type? Ah, KVM doesn't actually populate flags, wonderful. Maybe we can get away with tweaking it to: struct { __u32 type; __u32 ndata; __u64 data[16]; } system_event;
Yes, you can do that and say that the ndata is only valid e.g. if bit 31 is set in type.
I agree with reusing KVM_EXIT_SYSTEM_EVENT, that would be a much smaller patch. Sorry about that Peter.
Paolo