Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Linux/tools/testing/selftests/kvm/x86/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 1 kB image not shown  

Quelle  xss_msr_test.c   Sprache: C

 
// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (C) 2019, Google LLC.
 *
 * Tests for the IA32_XSS MSR.
 */

#include <sys/ioctl.h>

#include "test_util.h"
#include "kvm_util.h"
#include "vmx.h"

#define MSR_BITS      64

int main(int argc, char *argv[])
{
 bool xss_in_msr_list;
 struct kvm_vm *vm;
 struct kvm_vcpu *vcpu;
 uint64_t xss_val;
 int i, r;

 /* Create VM */
 vm = vm_create_with_one_vcpu(&vcpu, NULL);

 TEST_REQUIRE(kvm_cpu_has(X86_FEATURE_XSAVES));

 xss_val = vcpu_get_msr(vcpu, MSR_IA32_XSS);
 TEST_ASSERT(xss_val == 0,
      "MSR_IA32_XSS should be initialized to zero");

 vcpu_set_msr(vcpu, MSR_IA32_XSS, xss_val);

 /*
 * At present, KVM only supports a guest IA32_XSS value of 0. Verify
 * that trying to set the guest IA32_XSS to an unsupported value fails.
 * Also, in the future when a non-zero value succeeds check that
 * IA32_XSS is in the list of MSRs to save/restore.
 */

 xss_in_msr_list = kvm_msr_is_in_save_restore_list(MSR_IA32_XSS);
 for (i = 0; i < MSR_BITS; ++i) {
  r = _vcpu_set_msr(vcpu, MSR_IA32_XSS, 1ull << i);

  /*
 * Setting a list of MSRs returns the entry that "faulted", or
 * the last entry +1 if all MSRs were successfully written.
 */

  TEST_ASSERT(!r || r == 1, KVM_IOCTL_ERROR(KVM_SET_MSRS, r));
  TEST_ASSERT(r != 1 || xss_in_msr_list,
       "IA32_XSS was able to be set, but was not in save/restore list");
 }

 kvm_vm_free(vm);
}

Messung V0.5
C=94 H=95 G=94

¤ Dauer der Verarbeitung: 0.17 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.