| /* | |
| * QEMU event-loop backend | |
| * | |
| * Copyright (C) 2022 Red Hat Inc | |
| * | |
| * Authors: | |
| * Nicolas Saenz Julienne <nsaenzju@redhat.com> | |
| * | |
| * This work is licensed under the terms of the GNU GPL, version 2 or later. | |
| * See the COPYING file in the top-level directory. | |
| */ | |
| #ifndef QEMU_EVENT_LOOP_BASE_H | |
| #define QEMU_EVENT_LOOP_BASE_H | |
| #include "qom/object.h" | |
| #include "qemu/aio.h" | |
| #define TYPE_EVENT_LOOP_BASE "event-loop-base" | |
| OBJECT_DECLARE_TYPE(EventLoopBase, EventLoopBaseClass, | |
| EVENT_LOOP_BASE) | |
| struct EventLoopBaseClass { | |
| ObjectClass parent_class; | |
| void (*init)(EventLoopBase *base, Error **errp); | |
| void (*update_params)(EventLoopBase *base, Error **errp); | |
| bool (*prepare_delete)(EventLoopBase *base, Error **errp); | |
| }; | |
| struct EventLoopBase { | |
| Object parent; | |
| /* AioContext AIO engine parameters */ | |
| int64_t aio_max_batch; | |
| /* AioContext thread pool parameters */ | |
| int64_t thread_pool_min; | |
| int64_t thread_pool_max; | |
| }; | |
| #endif |