8cad15b156
Add simple transaction API to use in further update of block graph operations. Supposed usage is: - "prepare" is main function of the action and it should make the main effect of the action to be visible for the following actions, keeping possibility of roll-back, saving necessary things in action state, which is prepended to the action list (to do that, prepare func should call tran_add()). So, driver struct doesn't include "prepare" field, as it is supposed to be called directly. - commit/rollback is supposed to be called for the list of action states, to commit/rollback all the actions in reverse order - When possible "commit" should not make visible effect for other actions, which make possible transparent logical interaction between actions. Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Reviewed-by: Kevin Wolf <kwolf@redhat.com> Message-Id: <20210428151804.439460-9-vsementsov@virtuozzo.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
87 lines
3.8 KiB
Meson
87 lines
3.8 KiB
Meson
util_ss.add(dependency('threads'))
|
|
util_ss.add(files('osdep.c', 'cutils.c', 'unicode.c', 'qemu-timer-common.c'))
|
|
util_ss.add(when: 'CONFIG_ATOMIC64', if_false: files('atomic64.c'))
|
|
util_ss.add(when: 'CONFIG_POSIX', if_true: files('aio-posix.c'))
|
|
util_ss.add(when: 'CONFIG_POSIX', if_true: files('fdmon-poll.c'))
|
|
util_ss.add(when: 'CONFIG_EPOLL_CREATE1', if_true: files('fdmon-epoll.c'))
|
|
util_ss.add(when: ['CONFIG_LINUX_IO_URING', linux_io_uring], if_true: files('fdmon-io_uring.c'))
|
|
util_ss.add(when: 'CONFIG_POSIX', if_true: files('compatfd.c'))
|
|
util_ss.add(when: 'CONFIG_POSIX', if_true: files('event_notifier-posix.c'))
|
|
util_ss.add(when: 'CONFIG_POSIX', if_true: files('mmap-alloc.c'))
|
|
util_ss.add(when: 'CONFIG_POSIX', if_true: files('oslib-posix.c'))
|
|
util_ss.add(when: 'CONFIG_POSIX', if_true: [files('qemu-openpty.c'), util])
|
|
util_ss.add(when: 'CONFIG_POSIX', if_true: files('qemu-thread-posix.c'))
|
|
util_ss.add(when: 'CONFIG_POSIX', if_true: files('memfd.c'))
|
|
util_ss.add(when: 'CONFIG_WIN32', if_true: files('aio-win32.c'))
|
|
util_ss.add(when: 'CONFIG_WIN32', if_true: files('event_notifier-win32.c'))
|
|
util_ss.add(when: 'CONFIG_WIN32', if_true: files('oslib-win32.c'))
|
|
util_ss.add(when: 'CONFIG_WIN32', if_true: files('qemu-thread-win32.c'))
|
|
util_ss.add(when: 'CONFIG_WIN32', if_true: winmm)
|
|
util_ss.add(files('envlist.c', 'path.c', 'module.c'))
|
|
util_ss.add(files('host-utils.c'))
|
|
util_ss.add(files('bitmap.c', 'bitops.c'))
|
|
util_ss.add(files('fifo8.c'))
|
|
util_ss.add(files('cacheinfo.c', 'cacheflush.c'))
|
|
util_ss.add(files('error.c', 'qemu-error.c'))
|
|
util_ss.add(files('qemu-print.c'))
|
|
util_ss.add(files('id.c'))
|
|
util_ss.add(files('qemu-config.c', 'notify.c'))
|
|
util_ss.add(files('qemu-option.c', 'qemu-progress.c'))
|
|
util_ss.add(files('keyval.c'))
|
|
util_ss.add(files('crc32c.c'))
|
|
util_ss.add(files('uuid.c'))
|
|
util_ss.add(files('getauxval.c'))
|
|
util_ss.add(files('rcu.c'))
|
|
util_ss.add(when: 'CONFIG_MEMBARRIER', if_true: files('sys_membarrier.c'))
|
|
util_ss.add(files('log.c'))
|
|
util_ss.add(files('pagesize.c'))
|
|
util_ss.add(files('qdist.c'))
|
|
util_ss.add(files('qht.c'))
|
|
util_ss.add(files('qsp.c'))
|
|
util_ss.add(files('range.c'))
|
|
util_ss.add(files('stats64.c'))
|
|
util_ss.add(files('systemd.c'))
|
|
util_ss.add(files('transactions.c'))
|
|
util_ss.add(when: 'CONFIG_POSIX', if_true: files('drm.c'))
|
|
util_ss.add(files('guest-random.c'))
|
|
util_ss.add(files('yank.c'))
|
|
|
|
if have_user
|
|
util_ss.add(files('selfmap.c'))
|
|
endif
|
|
|
|
if have_system
|
|
util_ss.add(files('crc-ccitt.c'))
|
|
util_ss.add(when: 'CONFIG_GIO', if_true: [files('dbus.c'), gio])
|
|
util_ss.add(when: 'CONFIG_LINUX', if_true: files('userfaultfd.c'))
|
|
endif
|
|
|
|
if have_block
|
|
util_ss.add(files('aiocb.c', 'async.c', 'aio-wait.c'))
|
|
util_ss.add(files('base64.c'))
|
|
util_ss.add(files('buffer.c'))
|
|
util_ss.add(files('bufferiszero.c'))
|
|
util_ss.add(files('coroutine-@0@.c'.format(config_host['CONFIG_COROUTINE_BACKEND'])))
|
|
util_ss.add(files('hbitmap.c'))
|
|
util_ss.add(files('hexdump.c'))
|
|
util_ss.add(files('iova-tree.c'))
|
|
util_ss.add(files('iov.c', 'qemu-sockets.c', 'uri.c'))
|
|
util_ss.add(files('lockcnt.c'))
|
|
util_ss.add(files('main-loop.c'))
|
|
util_ss.add(files('nvdimm-utils.c'))
|
|
util_ss.add(files('qemu-coroutine.c', 'qemu-coroutine-lock.c', 'qemu-coroutine-io.c'))
|
|
util_ss.add(when: 'CONFIG_LINUX', if_true: [
|
|
files('vhost-user-server.c'), vhost_user
|
|
])
|
|
util_ss.add(files('block-helpers.c'))
|
|
util_ss.add(files('qemu-coroutine-sleep.c'))
|
|
util_ss.add(files('qemu-co-shared-resource.c'))
|
|
util_ss.add(files('thread-pool.c', 'qemu-timer.c'))
|
|
util_ss.add(files('readline.c'))
|
|
util_ss.add(files('throttle.c'))
|
|
util_ss.add(files('timed-average.c'))
|
|
util_ss.add(when: 'CONFIG_INOTIFY1', if_true: files('filemonitor-inotify.c'),
|
|
if_false: files('filemonitor-stub.c'))
|
|
util_ss.add(when: 'CONFIG_LINUX', if_true: files('vfio-helpers.c'))
|
|
endif
|