Re: [V2 PATCH 0/6] KVM: selftests: selftests for fd-based private memory

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Chao Peng <chao.p.peng@xxxxxxxxxxxxxxx> 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@xxxxxxxxxx> 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@xxxxxxxxxxxxxx/

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.



[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux