On 27/06/2017 13:22, Yang Zhang wrote: >>> >>> Regarding the good/bad idea part, KVM's polling is made much more >>> acceptable by single_task_running(). At least you need to integrate it >>> with paravirtualization. If the VM is scheduled out, you shrink the >>> polling period. There is already vcpu_is_preempted for this, it is used >>> by mutexes. >> >> I have considered single_task_running() before. But since there is no >> such paravirtual interface currently and i am not sure whether it is a >> information leak from host if introducing such interface, so i didn't do >> it. Do you mean vcpu_is_preempted can do the same thing? I check the >> code and seems it only tells whether the VCPU is scheduled out or not >> which cannot satisfy the needs. > > Can you help to answer my confusion? I have double checked the code, but > still not get your point. Do you think it is necessary to introduce an > paravirtual interface to expose single_task_running() to guest? I think vcpu_is_preempted is a good enough replacement. Paolo