• Sheng Yang's avatar
    KVM: Enable Function Level Reset for assigned device · 6eb55818
    Sheng Yang authored
    Ideally, every assigned device should in a clear condition before and after
    assignment, so that the former state of device won't affect later work.
    Some devices provide a mechanism named Function Level Reset, which is
    defined in PCI/PCI-e document. We should execute it before and after device
    assignment.
    
    (But sadly, the feature is new, and most device on the market now don't
    support it. We are considering using D0/D3hot transmit to emulate it later,
    but not that elegant and reliable as FLR itself.)
    
    [Update: Reminded by Xiantao, execute FLR after we ensure that the device can
    be assigned to the guest.]
    Signed-off-by: default avatarSheng Yang <sheng@linux.intel.com>
    Signed-off-by: default avatarAvi Kivity <avi@redhat.com>
    6eb55818
x86.c 103 KB