* [Qemu-devel] [PULL 0/2] chardev: fix "info chardev" output
@ 2013-05-28 10:27 Gerd Hoffmann
2013-05-28 10:27 ` [Qemu-devel] [PATCH 1/2] Revert "chardev: Get filename for new qapi backend" Gerd Hoffmann
` (3 more replies)
0 siblings, 4 replies; 11+ messages in thread
From: Gerd Hoffmann @ 2013-05-28 10:27 UTC (permalink / raw)
To: qemu-devel; +Cc: seabios, qemu-stable, Gerd Hoffmann
Hi,
Tiny series, first reverting the broken patch from Lei Li,
then fixing it for real.
please pull,
Gerd
The following changes since commit 6a4e17711442849bf2cc731ccddef5a2a2d92d29:
Remove Sun4c, Sun4d and a few CPUs (2013-05-26 11:37:58 +0000)
are available in the git repository at:
git://git.kraxel.org/qemu chardev.6
for you to fetch changes up to 60d95386abf1f5f37ded6a812d12ac458df2491b:
chardev: fix "info chardev" output (2013-05-27 12:47:28 +0200)
----------------------------------------------------------------
Gerd Hoffmann (2):
Revert "chardev: Get filename for new qapi backend"
chardev: fix "info chardev" output
qemu-char.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Qemu-devel] [PATCH 1/2] Revert "chardev: Get filename for new qapi backend"
2013-05-28 10:27 [Qemu-devel] [PULL 0/2] chardev: fix "info chardev" output Gerd Hoffmann
@ 2013-05-28 10:27 ` Gerd Hoffmann
2013-05-28 10:27 ` [Qemu-devel] [PATCH 2/2] chardev: fix "info chardev" output Gerd Hoffmann
` (2 subsequent siblings)
3 siblings, 0 replies; 11+ messages in thread
From: Gerd Hoffmann @ 2013-05-28 10:27 UTC (permalink / raw)
To: qemu-devel; +Cc: Anthony Liguori, seabios, qemu-stable, Gerd Hoffmann
Does not handle chardevs created via chardev-add monitor command.
This reverts commit 2b220025993e76d4116781ca91a4fabc5ad9c722.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
qemu-char.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/qemu-char.c b/qemu-char.c
index 4f8382e..f825294 100644
--- a/qemu-char.c
+++ b/qemu-char.c
@@ -3276,7 +3276,6 @@ CharDriverState *qemu_chr_new_from_opts(QemuOpts *opts,
ChardevReturn *ret = NULL;
const char *id = qemu_opts_id(opts);
const char *bid = NULL;
- char *filename = g_strdup(qemu_opt_get(opts, "backend"));
if (qemu_opt_get_bool(opts, "mux", 0)) {
bid = g_strdup_printf("%s-base", id);
@@ -3309,7 +3308,6 @@ CharDriverState *qemu_chr_new_from_opts(QemuOpts *opts,
}
chr = qemu_chr_find(id);
- chr->filename = filename;
qapi_out:
qapi_free_ChardevBackend(backend);
--
1.7.9.7
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [Qemu-devel] [PATCH 2/2] chardev: fix "info chardev" output
2013-05-28 10:27 [Qemu-devel] [PULL 0/2] chardev: fix "info chardev" output Gerd Hoffmann
2013-05-28 10:27 ` [Qemu-devel] [PATCH 1/2] Revert "chardev: Get filename for new qapi backend" Gerd Hoffmann
@ 2013-05-28 10:27 ` Gerd Hoffmann
2013-05-28 10:31 ` [Qemu-devel] [SeaBIOS] [PULL 0/2] " Gerd Hoffmann
2013-06-17 21:18 ` [Qemu-devel] " Anthony Liguori
3 siblings, 0 replies; 11+ messages in thread
From: Gerd Hoffmann @ 2013-05-28 10:27 UTC (permalink / raw)
To: qemu-devel; +Cc: Anthony Liguori, seabios, qemu-stable, Gerd Hoffmann
Fill unset CharDriverState->filename with the backend name, so
'info chardev' will return at least the chardev type. Don't
touch it in case the chardev init function filled it already,
like the socket+pty chardevs do for example.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
qemu-char.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/qemu-char.c b/qemu-char.c
index f825294..d04b429 100644
--- a/qemu-char.c
+++ b/qemu-char.c
@@ -3801,6 +3801,9 @@ ChardevReturn *qmp_chardev_add(const char *id, ChardevBackend *backend,
chr->label = g_strdup(id);
chr->avail_connections =
(backend->kind == CHARDEV_BACKEND_KIND_MUX) ? MAX_MUX : 1;
+ if (!chr->filename) {
+ chr->filename = g_strdup(ChardevBackendKind_lookup[backend->kind]);
+ }
QTAILQ_INSERT_TAIL(&chardevs, chr, next);
return ret;
} else {
--
1.7.9.7
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] [SeaBIOS] [PULL 0/2] chardev: fix "info chardev" output
2013-05-28 10:27 [Qemu-devel] [PULL 0/2] chardev: fix "info chardev" output Gerd Hoffmann
2013-05-28 10:27 ` [Qemu-devel] [PATCH 1/2] Revert "chardev: Get filename for new qapi backend" Gerd Hoffmann
2013-05-28 10:27 ` [Qemu-devel] [PATCH 2/2] chardev: fix "info chardev" output Gerd Hoffmann
@ 2013-05-28 10:31 ` Gerd Hoffmann
2013-06-17 21:18 ` [Qemu-devel] " Anthony Liguori
3 siblings, 0 replies; 11+ messages in thread
From: Gerd Hoffmann @ 2013-05-28 10:31 UTC (permalink / raw)
To: Gerd Hoffmann; +Cc: seabios, qemu-devel, qemu-stable
On 05/28/13 12:27, Gerd Hoffmann wrote:
> Hi,
>
> Tiny series, first reverting the broken patch from Lei Li,
> then fixing it for real.
Oops, scratch that. Resent an old series due to 'git send-email
00*.patch' in the wrong directory.
sorry,
Gerd
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] [PULL 0/2] chardev: fix "info chardev" output
2013-05-28 10:27 [Qemu-devel] [PULL 0/2] chardev: fix "info chardev" output Gerd Hoffmann
` (2 preceding siblings ...)
2013-05-28 10:31 ` [Qemu-devel] [SeaBIOS] [PULL 0/2] " Gerd Hoffmann
@ 2013-06-17 21:18 ` Anthony Liguori
3 siblings, 0 replies; 11+ messages in thread
From: Anthony Liguori @ 2013-06-17 21:18 UTC (permalink / raw)
To: Gerd Hoffmann, qemu-devel; +Cc: seabios, qemu-stable
Pulled. Thanks.
Regards,
Anthony Liguori
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] [PATCH 2/2] chardev: fix "info chardev" output
2013-05-31 13:21 ` Gerd Hoffmann
@ 2013-05-31 13:30 ` Peter Krempa
0 siblings, 0 replies; 11+ messages in thread
From: Peter Krempa @ 2013-05-31 13:30 UTC (permalink / raw)
To: Gerd Hoffmann; +Cc: Anthony Liguori, qemu-devel, stefano.stabellini
On 05/31/13 15:21, Gerd Hoffmann wrote:
> Hi,
>
Hi,
>
> Please double-check. Current master
> (87d23f78aa79b72da022afda358bbc8a8509ca70 to be exact) works just fine
> for me. libvirt works, including a serial line redirected to pty, and
> 'info chardev' looks sane too.
sorry for the fuzz. :/ Upstream is really working, One of the tested
binaries was actually predating the pull of your fix and I forgot to
verify that as It was built yesterday.
Again sorry for the noise, it's working now.
Peter
>
> cheers,
> Gerd
>
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] [PATCH 2/2] chardev: fix "info chardev" output
2013-05-31 12:45 ` Peter Krempa
@ 2013-05-31 13:21 ` Gerd Hoffmann
2013-05-31 13:30 ` Peter Krempa
0 siblings, 1 reply; 11+ messages in thread
From: Gerd Hoffmann @ 2013-05-31 13:21 UTC (permalink / raw)
To: Peter Krempa; +Cc: Anthony Liguori, qemu-devel, stefano.stabellini
Hi,
> Without this patch the returned message for "query-chardev" is:
>
> {
> "return": [
> {
> "filename": "pty:/dev/pts/8",
> "label": "charserial0"
> },
> {
> "filename": "unix:/var/lib/libvirt/qemu/qemu-git.monitor,server",
> "label": "charmonitor"
> }
> ],
> "id": "libvirt-2"
> }
>
>
> this patch changes it to:
>
> {
> "return": [
> {
> "filename": "pty",
> "label": "charserial0"
> },
> {
> "filename": "unix:/var/lib/libvirt/qemu/qemu-git.monitor,server",
> "label": "charmonitor"
> }
> ],
> "id": "libvirt-2"
> }
Please double-check. Current master
(87d23f78aa79b72da022afda358bbc8a8509ca70 to be exact) works just fine
for me. libvirt works, including a serial line redirected to pty, and
'info chardev' looks sane too.
cheers,
Gerd
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] [PATCH 2/2] chardev: fix "info chardev" output
2013-05-31 12:36 ` Eric Blake
@ 2013-05-31 12:45 ` Peter Krempa
2013-05-31 13:21 ` Gerd Hoffmann
0 siblings, 1 reply; 11+ messages in thread
From: Peter Krempa @ 2013-05-31 12:45 UTC (permalink / raw)
To: Eric Blake; +Cc: Anthony Liguori, stefano.stabellini, Gerd Hoffmann, qemu-devel
On 05/31/13 14:36, Eric Blake wrote:
> On 05/28/2013 12:34 AM, Gerd Hoffmann wrote:
>> Fill unset CharDriverState->filename with the backend name, so
>> 'info chardev' will return at least the chardev type. Don't
>> touch it in case the chardev init function filled it already,
>> like the socket+pty chardevs do for example.
>>
>> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
>> ---
>> qemu-char.c | 3 +++
>> 1 file changed, 3 insertions(+)
>>
>> diff --git a/qemu-char.c b/qemu-char.c
>> index f825294..d04b429 100644
>> --- a/qemu-char.c
>> +++ b/qemu-char.c
>> @@ -3801,6 +3801,9 @@ ChardevReturn *qmp_chardev_add(const char *id, ChardevBackend *backend,
>> chr->label = g_strdup(id);
>> chr->avail_connections =
>> (backend->kind == CHARDEV_BACKEND_KIND_MUX) ? MAX_MUX : 1;
>> + if (!chr->filename) {
>> + chr->filename = g_strdup(ChardevBackendKind_lookup[backend->kind]);
>> + }
>> QTAILQ_INSERT_TAIL(&chardevs, chr, next);
>> return ret;
>> } else {
>>
>
> Peter was telling me on IRC that this patch is still broken with regards
> to libvirt; I've cc'd him to provide more details...
>
Without this patch the returned message for "query-chardev" is:
{
"return": [
{
"filename": "pty:/dev/pts/8",
"label": "charserial0"
},
{
"filename": "unix:/var/lib/libvirt/qemu/qemu-git.monitor,server",
"label": "charmonitor"
}
],
"id": "libvirt-2"
}
this patch changes it to:
{
"return": [
{
"filename": "pty",
"label": "charserial0"
},
{
"filename": "unix:/var/lib/libvirt/qemu/qemu-git.monitor,server",
"label": "charmonitor"
}
],
"id": "libvirt-2"
}
It's apparent that some code being executed after the code in this patch
fills the actual pty path that was allocated. With it pre-allocated the
code ignores it. Libvirt is using the output to gather names of the pty
so that they can be used to connect to the console.
Peter
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] [PATCH 2/2] chardev: fix "info chardev" output
2013-05-28 6:34 ` [Qemu-devel] [PATCH 2/2] " Gerd Hoffmann
2013-05-28 9:57 ` Gerd Hoffmann
@ 2013-05-31 12:36 ` Eric Blake
2013-05-31 12:45 ` Peter Krempa
1 sibling, 1 reply; 11+ messages in thread
From: Eric Blake @ 2013-05-31 12:36 UTC (permalink / raw)
To: Gerd Hoffmann
Cc: Anthony Liguori, Peter Krempa, qemu-devel, stefano.stabellini
[-- Attachment #1: Type: text/plain, Size: 1256 bytes --]
On 05/28/2013 12:34 AM, Gerd Hoffmann wrote:
> Fill unset CharDriverState->filename with the backend name, so
> 'info chardev' will return at least the chardev type. Don't
> touch it in case the chardev init function filled it already,
> like the socket+pty chardevs do for example.
>
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> ---
> qemu-char.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/qemu-char.c b/qemu-char.c
> index f825294..d04b429 100644
> --- a/qemu-char.c
> +++ b/qemu-char.c
> @@ -3801,6 +3801,9 @@ ChardevReturn *qmp_chardev_add(const char *id, ChardevBackend *backend,
> chr->label = g_strdup(id);
> chr->avail_connections =
> (backend->kind == CHARDEV_BACKEND_KIND_MUX) ? MAX_MUX : 1;
> + if (!chr->filename) {
> + chr->filename = g_strdup(ChardevBackendKind_lookup[backend->kind]);
> + }
> QTAILQ_INSERT_TAIL(&chardevs, chr, next);
> return ret;
> } else {
>
Peter was telling me on IRC that this patch is still broken with regards
to libvirt; I've cc'd him to provide more details...
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 621 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Qemu-devel] [PATCH 2/2] chardev: fix "info chardev" output
2013-05-28 6:34 ` [Qemu-devel] [PATCH 2/2] " Gerd Hoffmann
@ 2013-05-28 9:57 ` Gerd Hoffmann
2013-05-31 12:36 ` Eric Blake
1 sibling, 0 replies; 11+ messages in thread
From: Gerd Hoffmann @ 2013-05-28 9:57 UTC (permalink / raw)
To: Gerd Hoffmann
Cc: Anthony Liguori, qemu-stable, qemu-devel, stefano.stabellini
On 05/28/13 08:34, Gerd Hoffmann wrote:
> Fill unset CharDriverState->filename with the backend name, so
> 'info chardev' will return at least the chardev type. Don't
> touch it in case the chardev init function filled it already,
> like the socket+pty chardevs do for example.
>
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> ---
> qemu-char.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/qemu-char.c b/qemu-char.c
> index f825294..d04b429 100644
> --- a/qemu-char.c
> +++ b/qemu-char.c
> @@ -3801,6 +3801,9 @@ ChardevReturn *qmp_chardev_add(const char *id, ChardevBackend *backend,
> chr->label = g_strdup(id);
> chr->avail_connections =
> (backend->kind == CHARDEV_BACKEND_KIND_MUX) ? MAX_MUX : 1;
> + if (!chr->filename) {
> + chr->filename = g_strdup(ChardevBackendKind_lookup[backend->kind]);
> + }
> QTAILQ_INSERT_TAIL(&chardevs, chr, next);
> return ret;
> } else {
>
this one is a stable candidate, cc'ing qemu-stable
cheers,
Gerd
^ permalink raw reply [flat|nested] 11+ messages in thread
* [Qemu-devel] [PATCH 2/2] chardev: fix "info chardev" output
2013-05-28 6:34 Gerd Hoffmann
@ 2013-05-28 6:34 ` Gerd Hoffmann
2013-05-28 9:57 ` Gerd Hoffmann
2013-05-31 12:36 ` Eric Blake
0 siblings, 2 replies; 11+ messages in thread
From: Gerd Hoffmann @ 2013-05-28 6:34 UTC (permalink / raw)
To: qemu-devel; +Cc: Anthony Liguori, Gerd Hoffmann, stefano.stabellini
Fill unset CharDriverState->filename with the backend name, so
'info chardev' will return at least the chardev type. Don't
touch it in case the chardev init function filled it already,
like the socket+pty chardevs do for example.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
qemu-char.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/qemu-char.c b/qemu-char.c
index f825294..d04b429 100644
--- a/qemu-char.c
+++ b/qemu-char.c
@@ -3801,6 +3801,9 @@ ChardevReturn *qmp_chardev_add(const char *id, ChardevBackend *backend,
chr->label = g_strdup(id);
chr->avail_connections =
(backend->kind == CHARDEV_BACKEND_KIND_MUX) ? MAX_MUX : 1;
+ if (!chr->filename) {
+ chr->filename = g_strdup(ChardevBackendKind_lookup[backend->kind]);
+ }
QTAILQ_INSERT_TAIL(&chardevs, chr, next);
return ret;
} else {
--
1.7.9.7
^ permalink raw reply related [flat|nested] 11+ messages in thread
end of thread, other threads:[~2013-06-17 21:18 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-05-28 10:27 [Qemu-devel] [PULL 0/2] chardev: fix "info chardev" output Gerd Hoffmann
2013-05-28 10:27 ` [Qemu-devel] [PATCH 1/2] Revert "chardev: Get filename for new qapi backend" Gerd Hoffmann
2013-05-28 10:27 ` [Qemu-devel] [PATCH 2/2] chardev: fix "info chardev" output Gerd Hoffmann
2013-05-28 10:31 ` [Qemu-devel] [SeaBIOS] [PULL 0/2] " Gerd Hoffmann
2013-06-17 21:18 ` [Qemu-devel] " Anthony Liguori
-- strict thread matches above, loose matches on Subject: below --
2013-05-28 6:34 Gerd Hoffmann
2013-05-28 6:34 ` [Qemu-devel] [PATCH 2/2] " Gerd Hoffmann
2013-05-28 9:57 ` Gerd Hoffmann
2013-05-31 12:36 ` Eric Blake
2013-05-31 12:45 ` Peter Krempa
2013-05-31 13:21 ` Gerd Hoffmann
2013-05-31 13:30 ` Peter Krempa
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).