qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH] chardev: don't forget to set backend for mux


From: Kirill A. Shutemov
Subject: [Qemu-devel] [PATCH] chardev: don't forget to set backend for mux
Date: Fri, 3 Nov 2017 16:19:59 +0300

I noticied that on recent versions on QEMU I was not able to trigger
SysRq to invoke debug capabilites of Linux Kernel.

I've tracked it down to qemu_chr_be_event() ignoring CHR_EVENT_BREAK due
s->be being NULL.

Looks like the bug was introduced in a4afa548fc6d ("char: move front end
handlers in CharBackend"). Since the commit the qemu_chr_be_event()
failed to deliver CHR_EVENT_BREAK due to qemu_chr_fe_init() forgot to
get s->be initialized in case of mux.

Let's fix this.

Signed-off-by: Kirill A. Shutemov <address@hidden>
Fixes: a4afa548fc6d ("char: move front end handlers in CharBackend")
---
 chardev/char-fe.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/chardev/char-fe.c b/chardev/char-fe.c
index ee6d59610031..d4a54947a567 100644
--- a/chardev/char-fe.c
+++ b/chardev/char-fe.c
@@ -209,9 +209,8 @@ bool qemu_chr_fe_init(CharBackend *b, Chardev *s, Error 
**errp)
         tag = d->mux_cnt++;
     } else if (s->be) {
         goto unavailable;
-    } else {
-        s->be = b;
     }
+    s->be = b;
 
     b->fe_open = false;
     b->tag = tag;
-- 
2.14.2




reply via email to

[Prev in Thread] Current Thread [Next in Thread]