mbox series

[0/5] x86: reduce cache flushing overhead

Message ID 4b42e920-f007-186c-d838-a0294bfa86b5@suse.com (mailing list archive)
Headers show
Series x86: reduce cache flushing overhead | expand

Message

Jan Beulich April 19, 2023, 10:43 a.m. UTC
..., first and foremost by using cache write-back operations instead
of flushing ones when available (and sufficient for the purpose).

In the context of making the last patch I started wondering whether
for PV we don't flush (write back) too little for MMUEXT_FLUSH_CACHE:
Just like for HVM, pCPU-s a vCPU has run on before could still hold
data in their caches. (We clearly still flush / write back too much
in MMUEXT_FLUSH_CACHE_GLOBAL even with this series in place.) We also
can't call this the guest's responsibility, as it may not have any
means to have one of its vCPU-s run on the intended pCPU.

1: x86: support cache-writeback in flush_area_local() et al
2: x86/HVM: restrict guest-induced WBINVD to cache writeback
3: x86/PV: restrict guest-induced WBINVD (or alike) to cache writeback
4: VT-d: restrict iommu_flush_all() to cache writeback
5: x86/HVM: limit cache writeback overhead

Jan