KVM: arm64: selftests: Add pKVM hypercall and isolation test coverage

Build on the pKVM selftest bootstrap to add:

  - test_xshare: guest-to-host memory share and unshare via the
    MEM_SHARE and MEM_UNSHARE hypercalls, verified by having the host
    increment a page the guest has shared.
  - test_feature_id_regs: feature ID registers exposed to a protected
    guest are restricted (RAZ or fixed) per the pKVM contract.
  - test_restricted_debug: hardware breakpoint/watchpoint and debug
    control registers are not writable by a protected guest.
  - test_poison_guest_mem: pVM memory is zeroed after teardown.

Factor the per-VM setup into test_run() and exercise it with both
VM_MEM_SRC_ANONYMOUS and VM_MEM_SRC_ANONYMOUS_THP.

Signed-off-by: Fuad Tabba <fuad.tabba@linux.dev>
1 file changed