43 lines
1.4 KiB
Diff
43 lines
1.4 KiB
Diff
|
|
From f443bb4b240574e17bb0b06fc88d910a68b40d54 Mon Sep 17 00:00:00 2001
|
||
|
|
From: Zhang Jiao <zhangjiao2_yewu@cmss.chinamobile.com>
|
||
|
|
Date: Thu, 17 Oct 2024 13:50:26 +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 <r.peniaev@gmail.com>
|
||
|
|
Cc: "Marc-André Lureau" <marcandre.lureau@redhat.com>
|
||
|
|
Cc: qemu-devel@nongnu.org
|
||
|
|
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
|
||
|
|
Message-ID: <20241014152408.427700-2-r.peniaev@gmail.com>
|
||
|
|
Signed-off-by: Zhang Jiao <zhangjiao2_yewu@cmss.chinamobile.com>
|
||
|
|
---
|
||
|
|
chardev/char.c | 2 +-
|
||
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||
|
|
|
||
|
|
diff --git a/chardev/char.c b/chardev/char.c
|
||
|
|
index 6bb99bd485..b76bbe8019 100644
|
||
|
|
--- a/chardev/char.c
|
||
|
|
+++ b/chardev/char.c
|
||
|
|
@@ -320,7 +320,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;
|
||
|
|
}
|
||
|
|
--
|
||
|
|
2.41.0.windows.1
|
||
|
|
|