Hi,
For I want to translate the virtual address in HVM DomU to virtual address in Xen. But when I use the function paging_gva_to_gfn and get_gfn, I can feel the performance down quickly, the machine become very hot and then I have to force the machine shutting down.
The codes I used as below:
uint32_t pfec = PFEC_page_present;
unsigned long gfn;
unsigned long mfn;
unsigned long virtaddr;
struct vcpu *vcpu = current;
struct domain *d = vcpu->domain;
gfn = paging_gva_to_gfn(current, 0xc0290000, &pfec);
mfn = get_gfn(d, gfn, &t);
virtaddr = map_domain_page(mfn_x(mfn));
I also use the dbg_hvm_va2mfn function in debug.c, performance problem still present.