Should we have an separate interrupt domain, so that we can expose it for virtual supervisor (guest OS) to handle relative external interrupts directly in VM?
Or just reusing supervisor domain interrupt register, HW should check registers access rights according to delegation configured based on supervisor level software?
'genmsi' register doesn't have a "guest index" field, so how could we inject an interrupt to a target guest interrupt file (VM), or HW should require genmsi.EEID specified 'target[i]' register to obtain guest index, then generate a correct MSI request to System bus with correct address.