Docker and block patches

Two fairly small fixes.
 -----BEGIN PGP SIGNATURE-----
 
 iQFEBAABCAAuFiEEUAN8t5cGD3bwIa1WyjViTGqRccYFAlr+mhIQHGZhbXpAcmVk
 aGF0LmNvbQAKCRDKNWJMapFxxoccB/0dggVLJUZl2/EkjhMltoh0/bt8q5KWqDqo
 weEbW2SCwprz8AlSSxdF/nfoy6DYmIeRww+v3hR3PFLRgJ1ZPBri3M4jvL5uFN7s
 KMu4Hk6mqz+a5P9HSmhfj1SDiBGH88RDLNQtlMakp/aCP3nuqGXF6dc9JKMWC3aO
 NhJX/jv1kc6l1py34Jnx3YWeksYvPYYJ3IJRKhOSxQaWYbMvpXeQhPUd3XLdOn6o
 7nJVDfy2YsqxxnDw6PJFED7ewWEJlkEQOzSB22tVuUG3YmiXDLA4POCddnNHjQzJ
 u69wFYo7OX/caoRE5LEauoc+9x5TZng+/uvZKoOjk/Yv/zY0lOj5
 =ybz3
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/famz/tags/docker-and-block-pull-request' into staging

Docker and block patches

Two fairly small fixes.

# gpg: Signature made Fri 18 May 2018 10:17:06 BST
# gpg:                using RSA key CA35624C6A9171C6
# gpg: Good signature from "Fam Zheng <famz@redhat.com>"
# Primary key fingerprint: 5003 7CB7 9706 0F76 F021  AD56 CA35 624C 6A91 71C6

* remotes/famz/tags/docker-and-block-pull-request:
  iothread: fix epollfd leak in the process of delIOThread
  docker: Fix trivial typo

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
Peter Maydell 2018-05-18 14:11:51 +01:00
commit d32e41a118
5 changed files with 24 additions and 4 deletions

View File

@ -554,6 +554,14 @@ static inline bool in_aio_context_home_thread(AioContext *ctx)
*/
void aio_context_setup(AioContext *ctx);
/**
* aio_context_destroy:
* @ctx: the aio context
*
* Destroy the aio context.
*/
void aio_context_destroy(AioContext *ctx);
/**
* aio_context_set_poll_params:
* @ctx: the aio context

View File

@ -46,7 +46,7 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker
docker-image-debian-powerpc-cross: EXTRA_FILES:=$(SRC_PATH)/tests/docker/dockerfiles/debian-apt-fake.sh
# Enforce dependancies for composite images
# Enforce dependencies for composite images
docker-image-debian: docker-image-debian9
docker-image-debian8-mxe: docker-image-debian8
docker-image-debian-amd64: docker-image-debian9

View File

@ -45,11 +45,11 @@ struct AioHandler
static void aio_epoll_disable(AioContext *ctx)
{
ctx->epoll_available = false;
if (!ctx->epoll_enabled) {
ctx->epoll_enabled = false;
if (!ctx->epoll_available) {
return;
}
ctx->epoll_enabled = false;
ctx->epoll_available = false;
close(ctx->epollfd);
}
@ -713,6 +713,13 @@ void aio_context_setup(AioContext *ctx)
#endif
}
void aio_context_destroy(AioContext *ctx)
{
#ifdef CONFIG_EPOLL_CREATE1
aio_epoll_disable(ctx);
#endif
}
void aio_context_set_poll_params(AioContext *ctx, int64_t max_ns,
int64_t grow, int64_t shrink, Error **errp)
{

View File

@ -407,6 +407,10 @@ void aio_context_setup(AioContext *ctx)
{
}
void aio_context_destroy(AioContext *ctx)
{
}
void aio_context_set_poll_params(AioContext *ctx, int64_t max_ns,
int64_t grow, int64_t shrink, Error **errp)
{

View File

@ -298,6 +298,7 @@ aio_ctx_finalize(GSource *source)
qemu_rec_mutex_destroy(&ctx->lock);
qemu_lockcnt_destroy(&ctx->list_lock);
timerlistgroup_deinit(&ctx->tlg);
aio_context_destroy(ctx);
}
static GSourceFuncs aio_source_funcs = {