[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 7/9] iothread: add iothread_by_id() API
From: |
Stefan Hajnoczi |
Subject: |
[Qemu-devel] [PATCH v2 7/9] iothread: add iothread_by_id() API |
Date: |
Wed, 6 Dec 2017 14:45:48 +0000 |
Encapsulate IOThread QOM object lookup so that callers don't need to
know how and where IOThread objects live.
Signed-off-by: Stefan Hajnoczi <address@hidden>
---
include/sysemu/iothread.h | 1 +
iothread.c | 7 +++++++
2 files changed, 8 insertions(+)
diff --git a/include/sysemu/iothread.h b/include/sysemu/iothread.h
index 110329b2b4..55de1715c7 100644
--- a/include/sysemu/iothread.h
+++ b/include/sysemu/iothread.h
@@ -42,6 +42,7 @@ typedef struct {
OBJECT_CHECK(IOThread, obj, TYPE_IOTHREAD)
char *iothread_get_id(IOThread *iothread);
+IOThread *iothread_by_id(const char *id);
AioContext *iothread_get_aio_context(IOThread *iothread);
void iothread_stop_all(void);
GMainContext *iothread_get_g_main_context(IOThread *iothread);
diff --git a/iothread.c b/iothread.c
index 27a4288578..e7b93e02a3 100644
--- a/iothread.c
+++ b/iothread.c
@@ -380,3 +380,10 @@ void iothread_destroy(IOThread *iothread)
{
object_unparent(OBJECT(iothread));
}
+
+/* Lookup IOThread by its id. Only finds user-created objects, not internal
+ * iothread_create() objects. */
+IOThread *iothread_by_id(const char *id)
+{
+ return IOTHREAD(object_resolve_path_type(id, TYPE_IOTHREAD, NULL));
+}
--
2.14.3
- [Qemu-devel] [PATCH v2 2/9] block: don't keep AioContext acquired after external_snapshot_prepare(), (continued)
- [Qemu-devel] [PATCH v2 2/9] block: don't keep AioContext acquired after external_snapshot_prepare(), Stefan Hajnoczi, 2017/12/06
- [Qemu-devel] [PATCH v2 3/9] block: don't keep AioContext acquired after drive_backup_prepare(), Stefan Hajnoczi, 2017/12/06
- [Qemu-devel] [PATCH v2 4/9] block: don't keep AioContext acquired after blockdev_backup_prepare(), Stefan Hajnoczi, 2017/12/06
- [Qemu-devel] [PATCH v2 5/9] block: don't keep AioContext acquired after internal_snapshot_prepare(), Stefan Hajnoczi, 2017/12/06
- [Qemu-devel] [PATCH v2 6/9] block: drop unused BlockDirtyBitmapState->aio_context field, Stefan Hajnoczi, 2017/12/06
- [Qemu-devel] [PATCH v2 7/9] iothread: add iothread_by_id() API,
Stefan Hajnoczi <=
- [Qemu-devel] [PATCH v2 8/9] blockdev: add x-blockdev-set-iothread testing command, Stefan Hajnoczi, 2017/12/06
- [Qemu-devel] [PATCH v2 9/9] qemu-iotests: add 202 external snapshots IOThread test, Stefan Hajnoczi, 2017/12/06
- Re: [Qemu-devel] [Qemu-block] [PATCH v2 0/9] blockdev: fix QMP 'transaction' with IOThreads, Stefan Hajnoczi, 2017/12/08
- Re: [Qemu-devel] [PATCH v2 0/9] blockdev: fix QMP 'transaction' with IOThreads, Kevin Wolf, 2017/12/08
- Re: [Qemu-devel] [PATCH v2 0/9] blockdev: fix QMP 'transaction' with IOThreads, Stefan Hajnoczi, 2017/12/08
- Re: [Qemu-devel] [PATCH v2 0/9] blockdev: fix QMP 'transaction' with IOThreads, Paolo Bonzini, 2017/12/13