From: Kevin Wolf <kwolf@redhat.com>
To: Wenchao Xia <xiawenc@linux.vnet.ibm.com>
Cc: aliguori@us.ibm.com, stefanha@gmail.com, qemu-devel@nongnu.org,
armbru@redhat.com, pbonzini@redhat.com, lcapitulino@redhat.com
Subject: Re: [Qemu-devel] [PATCH V10 12/17] hmp: add function hmp_info_snapshots()
Date: Tue, 2 Apr 2013 09:39:38 +0200 [thread overview]
Message-ID: <20130402073938.GA2341@dhcp-200-207.str.redhat.com> (raw)
In-Reply-To: <5156DCE2.8070604@linux.vnet.ibm.com>
Am 30.03.2013 um 13:38 hat Wenchao Xia geschrieben:
> 于 2013-3-30 7:04, Eric Blake 写道:
> >On 03/22/2013 08:19 AM, Wenchao Xia wrote:
> >> This function will simply call qmp interface qmp_query_snapshots()
> >>added in last commit and then dump information in monitor console.
> >> To get snapshot info, Now qemu and qemu-img both call block layer
> >>function bdrv_query_snapshot_info_list() in their calling path, and
> >>then they just translate the qmp object got to strings in stdout or
> >>monitor console.
> >>
> >>Signed-off-by: Wenchao Xia <xiawenc@linux.vnet.ibm.com>
> >>---
> >> hmp.c | 42 ++++++++++++++++++++++++++++++++++++++++++
> >> hmp.h | 1 +
> >> 2 files changed, 43 insertions(+), 0 deletions(-)
> >>
> >>diff --git a/hmp.c b/hmp.c
> >>index b0a861c..c475d65 100644
> >>--- a/hmp.c
> >>+++ b/hmp.c
> >>@@ -651,6 +651,48 @@ void hmp_info_tpm(Monitor *mon, const QDict *qdict)
> >> qapi_free_TPMInfoList(info_list);
> >> }
> >>
> >>+/* assume list is valid */
> >>+static void monitor_dump_snapshotinfolist(Monitor *mon, SnapshotInfoList *list)
> >>+{
> >>+ SnapshotInfoList *elem;
> >>+ char buf[256];
> >>+
> >>+ monitor_printf(mon, "%s\n", bdrv_snapshot_dump(buf, sizeof(buf), NULL));
> >
> >Are you sure that won't ever be truncated? I'm pretty sure that I could
> >come up with a scenario where I cause bdrv_snapshot_dump() to want to
> >output more than 256 bytes of details.
> >
> I hope not use dynamic buff for strings, how about check it as
> following:
>
> char buf[254] = 0;
> monitor_printf(mon, "%s\n", bdrv_snapshot_dump(buf, sizeof(buf), NULL));
> if (buf[254]) {
> monitor_printf(mon, "'string truncated'");
> }
About as useless as the truncated string alone. That something is
missing will be noticed by the user; the fix isn't to tell him that the
output is broken, but to give the full output.
Kevin
next prev parent reply other threads:[~2013-04-02 7:39 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-22 14:18 [Qemu-devel] [PATCH V10 00/17] qmp/hmp interfaces for internal snapshot info Wenchao Xia
2013-03-22 14:18 ` [Qemu-devel] [PATCH V10 01/17] block: move bdrv_snapshot_find() to block/snapshot.c Wenchao Xia
2013-03-22 14:18 ` [Qemu-devel] [PATCH V10 02/17] block: distinguish id and name in bdrv_find_snapshot() Wenchao Xia
2013-03-22 14:18 ` [Qemu-devel] [PATCH V10 03/17] qemu-img: remove unused parameter in collect_image_info() Wenchao Xia
2013-03-22 14:19 ` [Qemu-devel] [PATCH V10 04/17] block: move collect_snapshots() and collect_image_info() to block/qapi.c Wenchao Xia
2013-03-22 14:19 ` [Qemu-devel] [PATCH V10 05/17] block: add snapshot info query function bdrv_query_snapshot_info_list() Wenchao Xia
2013-03-27 21:31 ` Eric Blake
2013-03-22 14:19 ` [Qemu-devel] [PATCH V10 06/17] block: add check for VM snapshot in bdrv_query_snapshot_info_list() Wenchao Xia
2013-03-22 14:19 ` [Qemu-devel] [PATCH V10 07/17] block: add image info query function bdrv_query_image_info() Wenchao Xia
2013-03-22 14:19 ` [Qemu-devel] [PATCH V10 08/17] block: move qmp_query_block() and bdrv_query_info() to block/qapi.c Wenchao Xia
2013-03-29 20:10 ` Eric Blake
2013-03-30 12:32 ` Wenchao Xia
2013-03-22 14:19 ` [Qemu-devel] [PATCH V10 09/17] qmp: add interface query-snapshots Wenchao Xia
2013-03-22 14:19 ` [Qemu-devel] [PATCH V10 10/17] qmp: add recursive member in ImageInfo Wenchao Xia
2013-03-29 22:54 ` Eric Blake
2013-03-22 14:19 ` [Qemu-devel] [PATCH V10 11/17] qmp: add ImageInfo in BlockDeviceInfo used by query-block Wenchao Xia
2013-03-28 9:54 ` Kevin Wolf
2013-03-29 2:35 ` Wenchao Xia
2013-04-02 8:09 ` Kevin Wolf
2013-04-02 8:54 ` Wenchao Xia
2013-04-02 9:30 ` Kevin Wolf
2013-03-22 14:19 ` [Qemu-devel] [PATCH V10 12/17] hmp: add function hmp_info_snapshots() Wenchao Xia
2013-03-29 23:04 ` Eric Blake
2013-03-30 12:38 ` Wenchao Xia
2013-04-02 7:39 ` Kevin Wolf [this message]
2013-03-22 14:19 ` [Qemu-devel] [PATCH V10 13/17] hmp: switch snapshot info function to qmp based one Wenchao Xia
2013-04-01 15:56 ` Eric Blake
2013-03-22 14:19 ` [Qemu-devel] [PATCH V10 14/17] block: move dump_human_image_info() to block/qapi.c Wenchao Xia
2013-03-22 14:19 ` [Qemu-devel] [PATCH V10 15/17] block: dump to buffer for bdrv_image_info_dump() Wenchao Xia
2013-04-01 19:17 ` Eric Blake
2013-04-02 2:42 ` Wenchao Xia
2013-03-22 14:19 ` [Qemu-devel] [PATCH V10 16/17] hmp: show ImageInfo in 'info block' Wenchao Xia
2013-03-28 11:06 ` Kevin Wolf
2013-03-22 14:19 ` [Qemu-devel] [PATCH V10 17/17] hmp: add parameter device and -b for info block Wenchao Xia
2013-03-28 11:09 ` Kevin Wolf
2013-03-29 2:48 ` Wenchao Xia
2013-04-02 7:46 ` Kevin Wolf
2013-03-28 11:10 ` [Qemu-devel] [PATCH V10 00/17] qmp/hmp interfaces for internal snapshot info Kevin Wolf
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130402073938.GA2341@dhcp-200-207.str.redhat.com \
--to=kwolf@redhat.com \
--cc=aliguori@us.ibm.com \
--cc=armbru@redhat.com \
--cc=lcapitulino@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@gmail.com \
--cc=xiawenc@linux.vnet.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).