summary refs log tree commit diff stats
path: root/tests/libqos/libqos.h
diff options
context:
space:
mode:
authorEric Blake <eblake@redhat.com>2017-09-11 12:19:52 -0500
committerThomas Huth <thuth@redhat.com>2018-02-14 11:43:02 +0100
commite5d1730d1e5c1f341d2d692ab2ad0d8d2d7f47e1 (patch)
treeced804356dd9e41b2b6e4c9d64c45a3b66ca69a8 /tests/libqos/libqos.h
parent50990b162c471a8de992d43a170a3ccf24462720 (diff)
downloadfocaccia-qemu-e5d1730d1e5c1f341d2d692ab2ad0d8d2d7f47e1.tar.gz
focaccia-qemu-e5d1730d1e5c1f341d2d692ab2ad0d8d2d7f47e1.zip
libqos: Track QTestState with QPCIBus
When initializing a QPCIBus, track which QTestState the bus is
associated with (so that a later patch can then explicitly use
that test state for all communication on the bus, rather than
blindly relying on global_qtest).  Update the initialization
functions to take another parameter, and update all callers to
pass in state (for now, most callers get away with passing the
current global_qtest as the current state, although this required
fixing the order of initialization to ensure qtest_start() is
called before qpci_init*() in rtl8139-test, and provided an
opportunity to pass in the allocator in e1000e-test).

Touch up some allocations to use g_new0() rather than g_malloc()
while in the area, and simplify some code (all implementations
of QOSOps provide a .init_allocator() that never fails).

Signed-off-by: Eric Blake <eblake@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
[thuth: Removed hunk from vhost-user-test.c that is not required anymore,
 fixed conflict in qtest_vboot() and adjusted qpci_init_pc() in sdhci-test]
Signed-off-by: Thomas Huth <thuth@redhat.com>
Diffstat (limited to 'tests/libqos/libqos.h')
-rw-r--r--tests/libqos/libqos.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/tests/libqos/libqos.h b/tests/libqos/libqos.h
index 231969766f..78e5c044a0 100644
--- a/tests/libqos/libqos.h
+++ b/tests/libqos/libqos.h
@@ -10,7 +10,7 @@ typedef struct QOSState QOSState;
 typedef struct QOSOps {
     QGuestAllocator *(*init_allocator)(QAllocOpts);
     void (*uninit_allocator)(QGuestAllocator *);
-    QPCIBus *(*qpci_init)(QGuestAllocator *alloc);
+    QPCIBus *(*qpci_init)(QTestState *qts, QGuestAllocator *alloc);
     void (*qpci_free)(QPCIBus *bus);
     void (*shutdown)(QOSState *);
 } QOSOps;