lkml.org 
[lkml]   [2022]   [Jun]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    Subject[PATCH v2 41/42] KVM: selftests: Use the common cpuid() helper in cpu_vendor_string_is()
    From
    Use cpuid() to get CPUID.0x0 in cpu_vendor_string_is(), thus eliminating
    the last open coded usage of CPUID (ignoring debug_regs.c, which emits
    CPUID from the guest to trigger a VM-Exit and doesn't actually care about
    the results of CPUID).

    Signed-off-by: Sean Christopherson <seanjc@google.com>
    ---
    tools/testing/selftests/kvm/lib/x86_64/processor.c | 10 ++--------
    1 file changed, 2 insertions(+), 8 deletions(-)

    diff --git a/tools/testing/selftests/kvm/lib/x86_64/processor.c b/tools/testing/selftests/kvm/lib/x86_64/processor.c
    index d606ee2d970a..936ad738ad4a 100644
    --- a/tools/testing/selftests/kvm/lib/x86_64/processor.c
    +++ b/tools/testing/selftests/kvm/lib/x86_64/processor.c
    @@ -1011,15 +1011,9 @@ void kvm_x86_state_cleanup(struct kvm_x86_state *state)
    static bool cpu_vendor_string_is(const char *vendor)
    {
    const uint32_t *chunk = (const uint32_t *)vendor;
    - int eax, ebx, ecx, edx;
    - const int leaf = 0;
    -
    - __asm__ __volatile__(
    - "cpuid"
    - : /* output */ "=a"(eax), "=b"(ebx),
    - "=c"(ecx), "=d"(edx)
    - : /* input */ "0"(leaf), "2"(0));
    + uint32_t eax, ebx, ecx, edx;

    + cpuid(0, &eax, &ebx, &ecx, &edx);
    return (ebx == chunk[0] && edx == chunk[1] && ecx == chunk[2]);
    }

    --
    2.36.1.476.g0c4daa206d-goog
    \
     
     \ /
      Last update: 2022-06-14 22:12    [W:4.428 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site