All of lore.kernel.org
 help / color / mirror / Atom feed
* Question about VPID during MOV-TO-CR3
@ 2016-09-20 17:29 Tamas K Lengyel
  2016-09-21 10:23 ` Jan Beulich
  0 siblings, 1 reply; 34+ messages in thread
From: Tamas K Lengyel @ 2016-09-20 17:29 UTC (permalink / raw)
  To: xen-devel

Hi all,
I'm trying to figure out the design decision regarding the handling of
guest MOV-TO-CR3 operations and TLB flushes. AFAICT since support for
VPID has been added to Xen, every guest MOV-TO-CR3 flushes the TLB
(vmx_cr_access -> hvm_mov_to_cr -> hvm_set_cr3 -> paging_update_cr3 ->
hap_update_cr3 -> vmx_update_guest_cr -> hvm_asid_flush_vcpu). From a
TLB utilization point-of-view this seems to be rather wasteful.
Furthermore, it even breaks the guests' ability to take advantage of
PCID, as the TLB just guts flushed when a new process is scheduled.
Does anyone have an insight into what was the rationale behind this?

Thanks,
Tamas

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 34+ messages in thread

end of thread, other threads:[~2016-10-07 16:01 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-20 17:29 Question about VPID during MOV-TO-CR3 Tamas K Lengyel
2016-09-21 10:23 ` Jan Beulich
2016-09-21 14:18   ` Tamas K Lengyel
2016-09-21 14:44     ` Jan Beulich
2016-09-21 15:09       ` Tamas K Lengyel
2016-09-21 15:16         ` Tamas K Lengyel
2016-09-21 15:23           ` Jan Beulich
2016-09-21 15:30             ` Tamas K Lengyel
2016-09-21 18:26               ` Tamas K Lengyel
2016-09-22  9:00                 ` Jan Beulich
2016-09-22 10:39                   ` Tamas K Lengyel
2016-09-22 11:35                     ` Jan Beulich
2016-09-22  8:56               ` Jan Beulich
2016-09-22 10:35                 ` Tamas K Lengyel
2016-09-22 11:27                   ` Jan Beulich
2016-09-22 11:37                     ` Tamas K Lengyel
2016-09-22 17:18                       ` Tamas K Lengyel
2016-09-23  8:24                         ` Jan Beulich
2016-09-23  8:35                           ` Razvan Cojocaru
2016-09-23 15:26                           ` Tamas K Lengyel
2016-09-23 15:39                             ` Jan Beulich
2016-09-23 15:50                               ` Tamas K Lengyel
2016-09-23 20:45                                 ` Tamas K Lengyel
2016-09-26  6:24                                   ` Jan Beulich
2016-09-26 16:12                                     ` Tamas K Lengyel
2016-09-27 13:49                                       ` Jan Beulich
2016-10-01 19:05                                         ` Tamas K Lengyel
2016-10-04  7:41                                           ` Jan Beulich
2016-10-04 14:12                                             ` Tamas K Lengyel
2016-10-04 14:29                                               ` Jan Beulich
2016-10-04 15:06                                                 ` Tim Deegan
2016-10-07 15:32                                                   ` Jan Beulich
2016-10-07 15:41                                                     ` Tamas K Lengyel
2016-10-07 16:00                                                       ` Jan Beulich

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.