Introduce an API for some shared splittable resource, like memory. It's going to be used by backup. Backup uses both read/write io and copy_range. copy_range may consume memory implictly, so the new API is abstract: it doesn't allocate any real memory but only hands out tickets. The idea is that we have some total amount of something and callers should wait in coroutine queue if there is not enough of the resource at the moment. Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Reviewed-by: Max Reitz <mreitz@redhat.com> Message-id: 20191022111805.3432-5-vsementsov@virtuozzo.com Signed-off-by: Max Reitz <mreitz@redhat.com>
60 lines
2 KiB
Makefile
60 lines
2 KiB
Makefile
util-obj-y = osdep.o cutils.o unicode.o qemu-timer-common.o
|
|
util-obj-y += bufferiszero.o
|
|
util-obj-y += lockcnt.o
|
|
util-obj-y += aiocb.o async.o aio-wait.o thread-pool.o qemu-timer.o
|
|
util-obj-y += main-loop.o
|
|
util-obj-$(call lnot,$(CONFIG_ATOMIC64)) += atomic64.o
|
|
util-obj-$(CONFIG_POSIX) += aio-posix.o
|
|
util-obj-$(CONFIG_POSIX) += compatfd.o
|
|
util-obj-$(CONFIG_POSIX) += event_notifier-posix.o
|
|
util-obj-$(CONFIG_POSIX) += mmap-alloc.o
|
|
util-obj-$(CONFIG_POSIX) += oslib-posix.o
|
|
util-obj-$(CONFIG_POSIX) += qemu-openpty.o
|
|
util-obj-$(CONFIG_POSIX) += qemu-thread-posix.o
|
|
util-obj-$(CONFIG_POSIX) += memfd.o
|
|
util-obj-$(CONFIG_WIN32) += aio-win32.o
|
|
util-obj-$(CONFIG_WIN32) += event_notifier-win32.o
|
|
util-obj-$(CONFIG_WIN32) += oslib-win32.o
|
|
util-obj-$(CONFIG_WIN32) += qemu-thread-win32.o
|
|
util-obj-y += envlist.o path.o module.o
|
|
util-obj-y += host-utils.o
|
|
util-obj-y += bitmap.o bitops.o hbitmap.o
|
|
util-obj-y += fifo8.o
|
|
util-obj-y += cacheinfo.o
|
|
util-obj-y += error.o qemu-error.o
|
|
util-obj-y += qemu-print.o
|
|
util-obj-y += id.o
|
|
util-obj-y += iov.o qemu-config.o qemu-sockets.o uri.o notify.o
|
|
util-obj-y += qemu-option.o qemu-progress.o
|
|
util-obj-y += keyval.o
|
|
util-obj-y += hexdump.o
|
|
util-obj-y += crc32c.o
|
|
util-obj-y += uuid.o
|
|
util-obj-y += throttle.o
|
|
util-obj-y += getauxval.o
|
|
util-obj-y += readline.o
|
|
util-obj-y += rcu.o
|
|
util-obj-$(CONFIG_MEMBARRIER) += sys_membarrier.o
|
|
util-obj-y += qemu-coroutine.o qemu-coroutine-lock.o qemu-coroutine-io.o
|
|
util-obj-y += qemu-coroutine-sleep.o
|
|
util-obj-y += qemu-co-shared-resource.o
|
|
util-obj-y += coroutine-$(CONFIG_COROUTINE_BACKEND).o
|
|
util-obj-y += buffer.o
|
|
util-obj-y += timed-average.o
|
|
util-obj-y += base64.o
|
|
util-obj-y += log.o
|
|
util-obj-y += pagesize.o
|
|
util-obj-y += qdist.o
|
|
util-obj-y += qht.o
|
|
util-obj-y += qsp.o
|
|
util-obj-y += range.o
|
|
util-obj-y += stats64.o
|
|
util-obj-y += systemd.o
|
|
util-obj-y += iova-tree.o
|
|
util-obj-$(CONFIG_INOTIFY1) += filemonitor-inotify.o
|
|
util-obj-$(CONFIG_LINUX) += vfio-helpers.o
|
|
util-obj-$(CONFIG_POSIX) += drm.o
|
|
util-obj-y += guest-random.o
|
|
|
|
stub-obj-y += filemonitor-stub.o
|