在 2019/12/2 17:31, Paolo Bonzini 写道: > On 02/12/19 10:10, Longpeng (Mike) wrote: >> >> Suppose there're two VMs: VM1 is bind to node-0 and calling vfio_pin_map_dma(), >> VM2 is a migrate incoming VM which bind to node-1. We found the vm_start( QEMU >> function) of VM2 will take too long occasionally, the reason is as follow. > > Which part of vfio_pin_map_dma is running? There is already a I need more analysis to find which part. > cond_resched in vfio_iommu_map. Perhaps you could add one to > vfio_pin_pages_remote and/or use vfio_pgsize_bitmap to cap the number of > pages that it returns. Um ... There's only one running task (qemu-kvm of the VM1) on that CPU, so maybe the cond_resched() is ineffective ? > > Paolo > > > -- Regards, Longpeng(Mike)