[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 05/27] qapi: add SIZE type parser to string_inpu
From: |
Michael S. Tsirkin |
Subject: |
Re: [Qemu-devel] [PATCH 05/27] qapi: add SIZE type parser to string_input_visitor |
Date: |
Mon, 25 Nov 2013 18:04:05 +0200 |
On Mon, Nov 25, 2013 at 04:36:42PM +0100, Igor Mammedov wrote:
> On Thu, 21 Nov 2013 11:15:06 +0100
> Markus Armbruster <address@hidden> wrote:
>
> > Igor Mammedov <address@hidden> writes:
> >
> > > Signed-off-by: Igor Mammedov <address@hidden>
> > > ---
> > > qapi/string-input-visitor.c | 18 ++++++++++++++++++
> > > 1 files changed, 18 insertions(+), 0 deletions(-)
> > >
> > > diff --git a/qapi/string-input-visitor.c b/qapi/string-input-visitor.c
> > > index 8f1bc41..a152f5d 100644
> > > --- a/qapi/string-input-visitor.c
> > > +++ b/qapi/string-input-visitor.c
> > > @@ -97,6 +97,23 @@ static void parse_type_number(Visitor *v, double *obj,
> > > const char *name,
> > > *obj = val;
> > > }
> > >
> > > +static void parse_type_size(Visitor *v, uint64_t *obj, const char *name,
> > > + Error **errp)
> > > +{
> > > + StringInputVisitor *siv = DO_UPCAST(StringInputVisitor, visitor, v);
> > > + int64_t val;
> > > + char *endp;
> > > +
> > > + val = strtosz_suffix(siv->string ? siv->string : "", &endp,
> > > + STRTOSZ_DEFSUFFIX_B);
> > > + if (val < 0 || *endp != '\0') {
> > > + error_set(errp, QERR_INVALID_PARAMETER_VALUE, name,
> > > + "a size value representible as a non-negative int64");
> > > + return;
> > > + }
> > > + *obj = val;
> > > +}
> > > +
> > > static void parse_start_optional(Visitor *v, bool *present,
> > > const char *name, Error **errp)
> > > {
> > > @@ -131,6 +148,7 @@ StringInputVisitor *string_input_visitor_new(const
> > > char *str)
> > > v->visitor.type_bool = parse_type_bool;
> > > v->visitor.type_str = parse_type_str;
> > > v->visitor.type_number = parse_type_number;
> > > + v->visitor.type_size = parse_type_size;
> > > v->visitor.start_optional = parse_start_optional;
> > >
> > > v->string = str;
> >
> > Does this put syntax like "value": "128M" in QMP? If yes, NAK. QMP
> > does not want fancy syntax for numbers, only plain numbers.
> >
>
> I thought QMP uses its own qmp_visitor, so it shouldn't affect general QMP,
> if I'm not mistaken.
>
> but it allows to use unified memdev_add parser for all interfaces
> (CLI/HMP/QMP) and
> it's more user friendly to have on CLI/HMP size=1G vs long integer to express
> it.
Yes please. Firing up a calculator to figure out how much is 1G is not
friendly, neither is firing it up to figure out what did management do
with QMP. It should be a text based interface not a binary one.
--
MST
- [Qemu-devel] [PATCH 05/28] vl.c: extend -m option to support options for memory hotplug, (continued)
- [Qemu-devel] [PATCH 02/27] rename pci_hotplug_fn to hotplug_fn and make it available for other devices, Igor Mammedov, 2013/11/20
- [Qemu-devel] [PATCH 05/27] qapi: add SIZE type parser to string_input_visitor, Igor Mammedov, 2013/11/20
- Re: [Qemu-devel] [PATCH 05/27] qapi: add SIZE type parser to string_input_visitor, Markus Armbruster, 2013/11/21
- Re: [Qemu-devel] [PATCH 05/27] qapi: add SIZE type parser to string_input_visitor, Igor Mammedov, 2013/11/25
- Re: [Qemu-devel] [PATCH 05/27] qapi: add SIZE type parser to string_input_visitor,
Michael S. Tsirkin <=
- Re: [Qemu-devel] [PATCH 05/27] qapi: add SIZE type parser to string_input_visitor, Paolo Bonzini, 2013/11/25
- Re: [Qemu-devel] [PATCH 05/27] qapi: add SIZE type parser to string_input_visitor, Eric Blake, 2013/11/25
- Re: [Qemu-devel] [PATCH 05/27] qapi: add SIZE type parser to string_input_visitor, Paolo Bonzini, 2013/11/25
- Re: [Qemu-devel] [PATCH 05/27] qapi: add SIZE type parser to string_input_visitor, Markus Armbruster, 2013/11/27
- Re: [Qemu-devel] [PATCH 05/27] qapi: add SIZE type parser to string_input_visitor, Paolo Bonzini, 2013/11/27
- Re: [Qemu-devel] [PATCH 05/27] qapi: add SIZE type parser to string_input_visitor, Markus Armbruster, 2013/11/27
- Re: [Qemu-devel] [PATCH 05/27] qapi: add SIZE type parser to string_input_visitor, Paolo Bonzini, 2013/11/27
[Qemu-devel] [PATCH 06/27] get reference to /backend container via qemu_get_backend(), Igor Mammedov, 2013/11/20
[Qemu-devel] [PATCH 07/27] add memdev backend infrastructure, Igor Mammedov, 2013/11/20