15 messages in com.xensource.lists.xen-ia64-develRE: [Xen-ia64-devel] [RFC] grant tabl...
FromSent OnAttachments
Tian, Kevin27 Mar 2006 23:23 
Tian, Kevin27 Mar 2006 23:32 
Isaku Yamahata28 Mar 2006 01:49 
Tian, Kevin28 Mar 2006 03:45 
Isaku Yamahata28 Mar 2006 04:26 
Tian, Kevin28 Mar 2006 05:03 
Tristan Gingold26 Apr 2006 04:44 
Isaku Yamahata26 Apr 2006 19:31 
Tristan Gingold27 Apr 2006 00:34 
Isaku Yamahata27 Apr 2006 01:40 
Tristan Gingold27 Apr 2006 02:19 
Isaku Yamahata27 Apr 2006 03:10 
Tristan Gingold27 Apr 2006 04:01 
Isaku Yamahata27 Apr 2006 04:18 
Tristan Gingold27 Apr 2006 04:34 
Subject:RE: [Xen-ia64-devel] [RFC] grant table API clean up and performancetuning memo
From:Tian, Kevin (kevi@intel.com)
Date:03/28/2006 05:03:56 AM
List:com.xensource.lists.xen-ia64-devel

From: Isaku Yamahata [mailto:yama@valinux.co.jp]

Sent: 2006年3月28日 20:27

Without tracking a virtual address corresponding to a granted page, xen/ia64 have to flush all tlb/vhpt. I.e. xen/ia64 has to do something like vhpt_flush(); flush_tlb_all(); Here vhpt_flush() flushes the whole of vhpt table.

On the other hand, dom0 knows the virtual address so dom0 may issues ptc.ga with page size (16KB by default). It results in vcpu_ptc_ga() of xen/ia64. It does vhpt_flush_address(vadr,addr_range); ia64_global_tlb_purge(vadr,vadr+addr_range,PAGE_SHIFT); Here vhpt flush range is 16kb.

If xen/ia64 tracks a virtual address somehow, Xen/ia64 can flush vhpt with page size range so this become meaningless.

See your point now. :-) So how about pass the virtual address prepared for the granted page in host_addr at mapping time, though it's dom0 to setup mapping right after(or even before) the grant mapping call? By this way, though grant table doesn't setup the va mapping for guest, va is recorded and later you can take that info to do more accurate flush.

Thanks, Kevin