On Mon, Dec 05, 2022, Vishal Annapurve wrote:
This series implements selftests targeting the feature floated by Chao via: https://lore.kernel.org/lkml/20221202061347.1070246-10-chao.p.peng@linux.int...
Below changes aim to test the fd based approach for guest private memory in context of normal (non-confidential) VMs executing on non-confidential platforms.
private_mem_test.c file adds selftest to access private memory from the guest via private/shared accesses and checking if the contents can be leaked to/accessed by vmm via shared memory view before/after conversions.
Updates in V2:
- Simplified vcpu run loop implementation API
- Removed VM creation logic from private mem library
I pushed a rework version of this series to:
git@github.com:sean-jc/linux.git x86/upm_base_support
Can you take a look and make sure that I didn't completely botch anything, and preserved the spirit of what you are testing?
Going forward, no need to send a v3 at this time. Whoever sends v11 of the series will be responsible for including tests.
No need to respond to comments either, unless of course there's something you object to, want to clarify, etc., in which case definitely pipe up.
Beyond the SEV series, do you have additional UPM testcases written? If so, can you post them, even if they're in a less-than-perfect state? If they're in a "too embarassing to post" state, feel from to send them off list :-)
Last question, do you have a list of testcases that you consider "required" for UPM? My off-the-cuff list of selftests I want to have before merging UPM is pretty short at this point:
- Negative testing of the memslot changes, e.g. bad alignment, bad fd, illegal memslot updates, etc. - Negative testing of restrictedmem, e.g. various combinations of overlapping bindings of a single restrictedmem instance. - Access vs. conversion stress, e.g. accessing a region in the guest while it's concurrently converted by the host, maybe with fancy guest code to try and detect TLB or ordering bugs?