Hi Joerg, On 05/05/15 15:41, Joerg Roedel wrote:
Do you see a real deadlock or only the lockdep warning? In the code it looks like virtfn_add() takes the sriov->lock of the physical device while pci_enable_ats() (when called from there) takes the sriov->lock of the virtual function. In this case it couldn't deadlock.
The thread does deadlock. It looks like pci_enable_ats() takes dev->physfn->sriov->lock, where dev is the VF. I'd understood this to be a lock protecting SR-IOV state for all VFs configured on the PF (but I'm not familiar with the code at all!). Thanks, Gregor The information contained in this message is confidential and is intended for the addressee(s) only. If you have received this message in error, please notify the sender immediately and delete the message. Unless you are an addressee (or authorized to receive for an addressee), you may not use, copy or disclose to anyone this message or any information contained in this message. The unauthorized use, disclosure, copying or alteration of this message is strictly prohibited. _______________________________________________ iommu mailing list [email protected] https://lists.linuxfoundation.org/mailman/listinfo/iommu
