cachepc-qemu

Fork of AMDESE/qemu with changes for cachepc side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-qemu
Log | Files | Refs | Submodules | LICENSE | sfeed.txt

cpu_queries.py (1001B)


      1# Sanity check of query-cpu-* results
      2#
      3# Copyright (c) 2019 Red Hat, Inc.
      4#
      5# Author:
      6#  Eduardo Habkost <ehabkost@redhat.com>
      7#
      8# This work is licensed under the terms of the GNU GPL, version 2 or
      9# later.  See the COPYING file in the top-level directory.
     10
     11from avocado_qemu import Test
     12
     13class QueryCPUModelExpansion(Test):
     14    """
     15    Run query-cpu-model-expansion for each CPU model, and validate results
     16    """
     17
     18    def test(self):
     19        """
     20        :avocado: tags=arch:x86_64
     21        :avocado: tags=machine:none
     22        """
     23        self.vm.add_args('-S')
     24        self.vm.launch()
     25
     26        cpus = self.vm.command('query-cpu-definitions')
     27        for c in cpus:
     28            self.log.info("Checking CPU: %s", c)
     29            self.assertNotIn('', c['unavailable-features'], c['name'])
     30
     31        for c in cpus:
     32            model = {'name': c['name']}
     33            e = self.vm.command('query-cpu-model-expansion', model=model, type='full')
     34            self.assertEquals(e['model']['name'], c['name'])