From c8633767e7414bded10b1f8e93b7a715409f506b Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Mon, 2 Mar 2020 16:51:32 +0100 Subject: [PATCH] remote-node: map buffer metadata readwrite Map the buffer metadata in read/write mode. Some metadata might need to be writable even for input buffers (like ref-count metadata) --- src/modules/module-client-node/remote-node.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/modules/module-client-node/remote-node.c b/src/modules/module-client-node/remote-node.c index ff89f2f8f..a573c9282 100644 --- a/src/modules/module-client-node/remote-node.c +++ b/src/modules/module-client-node/remote-node.c @@ -526,7 +526,9 @@ static int clear_buffers(struct node_data *data, struct mix *mix) struct buffer *b; int res; - pw_log_debug("port %p: clear buffers mix:%d %zd", port, mix->mix_id, mix->buffers.size); + pw_log_debug("port %p: clear %zd buffers mix:%d", port, + pw_array_get_len(&mix->buffers, struct buffer *), + mix->mix_id); if ((res = pw_impl_port_use_buffers(port, &mix->mix, 0, NULL, 0)) < 0) { pw_log_error("port %p: error clear buffers %s", port, spa_strerror(res)); @@ -602,7 +604,7 @@ client_node_port_use_buffers(void *object, goto error_exit; } - prot = PW_MEMMAP_FLAG_READ | (direction == SPA_DIRECTION_OUTPUT ? PW_MEMMAP_FLAG_WRITE : 0); + prot = PW_MEMMAP_FLAG_READWRITE; /* clear previous buffers */ clear_buffers(data, mix);