device-assignment deadlock
Hi Sheng,
I think I'm running into the following deadlock in the kvm kernel module when trying to use device assignment:
CPU A CPU Bkvm_vm_ioctl_deassign_dev_irq()
mutex_lock(&kvm->lock); worker_thread()
-> kvm_deassign_irq() -> kvm_assigned_dev_interrupt_work_handler()
-> deassign_host_irq() mutex_lock(&kvm->lock);
-> cancel_work_sync() [blocked]I wonder if we need finer granularity locking to avoid this. Suggestions? Thanks,
Alex