Thanks Alex. Pls see my responses below:

On Thu, Feb 23, 2012 at 9:34 PM, Alex Williamson <alex.william...@redhat.com
> wrote:

> On Thu, 2012-02-23 at 09:25 +0530, rukhsana ansari wrote:
> > Hello,
> >
> > Was wondering whether someone could shed some light on the issue below.
> > Without FLR exposed in the VF, VF reset via FLR cannot be initiated from
> > the guest.
> > Appreciate any pointers.
>
> The device state needs to be restored after an FLR.  A guest is not able
> to do this by this by itself as much of the config space is virtualized.
> That means qemu needs to be involved in the FLR.  It's possible we could
> trap FLR and call reset_assign_device().  Patches welcome.  Why do want
> to reset the device?
>

[RA] While trying to figure out what the reason for not exposing FLR in VF,
I had missed out what you brought up about the VF config space being
virtualized.
The reason for looking at  FLR support in VF (apart from ease of testing
using setpci) is as a possible replacement of driver specific mechanism to
initiate software FLR (for example via mailbox mechanism) when VF
driver get a shutdown call.
But given the issue with config space being virtualized, it makes sense to
continue with the current approach

> >
> > The following code snippet (line 1457,
> > function:assigned_device_pci_cap_init()  file: hw/device-assignment.c)
> > from the latest qemu-kvm git (qemu-kvm-devel: 1.0.50)  implies that FLR
> > capability is unset for VF that is assigned to a guest:
> >
> >         /* device capabilities: hide FLR */
> >         devcap = pci_get_long(pci_dev->config + pos + PCI_EXP_DEVCAP);
> >         devcap &= ~PCI_EXP_DEVCAP_FLR;
> >         pci_set_long(pci_dev->config + pos + PCI_EXP_DEVCAP, devcap);
> >
> >
> > However the SR-IOV spec mandates VF FLR.

The SR-IOV spec mandates that the VF supports FLR.  That doesn't mean it
> has to be exposed though to a guest.  Thanks,
>
>
[RA] Yes, point noted.


-- 
-Rukhsana

Reply via email to