From 4c55770ca020aeab01bd9565265b1bbf9bc32cd8 Mon Sep 17 00:00:00 2001 From: Zhang Jiao Date: Thu, 17 Oct 2024 13:57:15 +0800 Subject: [PATCH] chardev/char: fix qemu_chr_is_busy() check MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit cheery-pick from df12798f8791a929f4d7309f67a0f437c608e7fb `mux_cnt` struct member never goes negative or decrements, so mux chardev can be !busy only when there are no frontends attached. This patch fixes the always-true check. Fixes: a4afa548fc6d ("char: move front end handlers in CharBackend") Signed-off-by: Roman Penyaev Cc: "Marc-André Lureau" Cc: qemu-devel@nongnu.org Reviewed-by: Marc-André Lureau Message-ID: <20241014152408.427700-2-r.peniaev@gmail.com> Signed-off-by: Zhang Jiao --- chardev/char.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chardev/char.c b/chardev/char.c index 996a024c7a..a830043908 100644 --- a/chardev/char.c +++ b/chardev/char.c @@ -321,7 +321,7 @@ static bool qemu_chr_is_busy(Chardev *s) { if (CHARDEV_IS_MUX(s)) { MuxChardev *d = MUX_CHARDEV(s); - return d->mux_cnt >= 0; + return d->mux_cnt > 0; } else { return s->be != NULL; } -- Gitee