On 17/04/2017 13:26, Xiao Guangrong wrote: >> > > Sounds reasonable, however it is incomplete so far as there are some > code paths still do not support non-page backend memory, e.g, > emulator_cmpxchg_emulated(). > > I would suggest to unify the code introduced in this patch with existing > hva_to_pfn(), also we can introduce a common API, maybe named > kvm_map_hva(), to improve the caller sides. I agree with Guangrong's suggestion. Paolo > BTW, i do not know why we used kmap_atomic() rather than kmap(), the > path of cmpxchg_gpte() is sleep-able anyway.