Messages in this thread | | | Date | Mon, 06 Mar 2023 18:21:24 +0000 | Subject | Re: [V2 PATCH 0/6] KVM: selftests: selftests for fd-based private memory | From | Ackerley Tng <> |
| |
Chao Peng <chao.p.peng@linux.intel.com> writes:
> On Fri, Feb 10, 2023 at 11:59:23AM -0800, Vishal Annapurve wrote: >> On Tue, Jan 17, 2023 at 7:11 PM Vishal Annapurve <vannapurve@google.com> >> wrote: >> > >> > ...
>> > > 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? >> > >> > List of testcases that I was tracking (covered by the current >> > selftests) as required: >> > 1) Ensure private memory contents are not accessible to host userspace >> > using the HVA >> > 2) Ensure shared memory contents are visible/accessible from both host >> > userspace and the guest >> > 3) Ensure 1 and 2 holds across explicit memory conversions >> > 4) Exercise memory conversions with mixed shared/private memory pages >> > in a huge page to catch issues like [2] >> > 5) Ensure that explicit memory conversions don't affect nearby GPA >> ranges >> > >> > Test Cases that will be covered by TDX/SNP selftests (in addition to >> > above scenarios): >> > 6) Ensure 1 and 2 holds across implicit memory conversions >> > 7) Ensure that implicit memory conversions don't affect nearby GPA >> ranges >> > >> > Additional testcases possible: >> > 8) Running conversion tests for non-overlapping GPA ranges of >> > same/different memslots from multiple vcpus >> > >> > [1] - >> https://github.com/sean-jc/linux/commit/7e536bf3c45c623425bc84e8a96634efc3a619ed >> > [2] - >> https://lore.kernel.org/linux-mm/CAGtprH82H_fjtRbL0KUxOkgOk4pgbaEbAydDYfZ0qxz41JCnAQ@mail.gmail.com/
>> List of additional testcases that could help increase basic coverage >> (including what sean mentioned earlier): >> 1) restrictedmem functionality testing >> - read/write/mmap should not work >> - fstat/fallocate should work as expected >> 2) restrictedmem registration/modification testing with: >> - bad alignment, bad fd, modifying properties of existing memslot >> - Installing multiple memslots with ranges within the same >> restricted mem files >> - deleting memslots with restricted memfd while guests are being >> executed
> In case you havn't started, I will work on 1) and 2) for the following > days. As a start, I will first add restrictedmem tests (without KVM) then > move to new memslots related tests.
> Chao
>> 3) Runtime restricted mem testing: >> - Access vs conversion testing from multiple vcpus >> - conversion and access to non-overlapping ranges from multiple vcpus
>> Regards, >> Vishal
Chao, I'll work on
+ Running conversion tests for non-overlapping GPA ranges of same/different memslots from multiple vcpus + Deleting memslots with restricted memfd while guests are being executed + Installing multiple memslots with ranges within the same restricted mem files
this week.
| |