> From: Jason Gunthorpe <jgg@xxxxxxxxxx> > Sent: Saturday, January 15, 2022 3:35 AM > + * > + * The peer to peer (P2P) quiescent state is intended to be a quiescent > + * state for the device for the purposes of managing multiple devices > within > + * a user context where peer-to-peer DMA between devices may be active. > The > + * PRE_COPY_P2P and RUNNING_P2P states must prevent the device from > + * initiating any new P2P DMA transactions. If the device can identify P2P > + * transactions then it can stop only P2P DMA, otherwise it must stop all > + * DMA. The migration driver must complete any such outstanding > operations > + * prior to completing the FSM arc into either P2P state. > + * Now NDMA is renamed to P2P... but we did discuss the potential usage of using this state on devices which cannot stop DMA quickly thus needs to drain pending page requests which further requires running vCPUs if the fault is on guest I/O page table. If you didn't change the mind isn't NDMA a more general name giving multiple usages around it? Or do you intend the vPRI case to introduce another new state now? Thanks Kevin