It's not obvious that something named __init__.py actually houses important code that isn't relevant to python packaging glue. Move the QEMUMachine and related error classes out into their own module. Adjust users to the new import location. Signed-off-by: John Snow <jsnow@redhat.com> Message-Id: <20190627212816.27298-2-jsnow@redhat.com> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
36 lines
820 B
Python
36 lines
820 B
Python
# QEMU library
|
|
#
|
|
# Copyright (C) 2015-2016 Red Hat Inc.
|
|
# Copyright (C) 2012 IBM Corp.
|
|
#
|
|
# Authors:
|
|
# Fam Zheng <famz@redhat.com>
|
|
#
|
|
# This work is licensed under the terms of the GNU GPL, version 2. See
|
|
# the COPYING file in the top-level directory.
|
|
#
|
|
# Based on qmp.py.
|
|
#
|
|
|
|
import logging
|
|
import os
|
|
|
|
from . import qmp
|
|
from . import machine
|
|
|
|
LOG = logging.getLogger(__name__)
|
|
|
|
# Mapping host architecture to any additional architectures it can
|
|
# support which often includes its 32 bit cousin.
|
|
ADDITIONAL_ARCHES = {
|
|
"x86_64" : "i386",
|
|
"aarch64" : "armhf"
|
|
}
|
|
|
|
def kvm_available(target_arch=None):
|
|
host_arch = os.uname()[4]
|
|
if target_arch and target_arch != host_arch:
|
|
if target_arch != ADDITIONAL_ARCHES.get(host_arch):
|
|
return False
|
|
return os.access("/dev/kvm", os.R_OK | os.W_OK)
|