> >> IIUC, L1 KVM can inject a nested exception whose vector isn't #DB, or > >> #NM or #PF with a non-zero event_data to L2. > > > >No, this is not allowed. > > How do you interpret the last sentence: > > Section 5.2.1 specifies the event data that FRED event delivery of > certain events saves on the stack. When FRED event delivery is used > for an event injected by VM entry, the event data saved is the value > of the injected-event-data field in the VMCS. This value is used > instead of what is specified in Section 5.2.1 and is done for __ALL__ > injected events using FRED event delivery To me, it means FRED event injection during VM entry simply pushes the value in the injected-event-data field of the VMCS as event data. But the event data definition should comply with Section 5.2.1. It is a forward compatibility issue otherwise.