From: "Denis V. Lunev" <den@openvz.org>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: Paolo Bonzini <pbonzini@redhat.com>,
Luiz Capitulino <lcapitulino@redhat.com>,
QEMU Developers <qemu-devel@nongnu.org>,
Pavel Butsykin <pbutsykin@virtuozzo.com>
Subject: Re: [Qemu-devel] [PATCH 2/3] monitor: remove target-specific code from monitor.c
Date: Thu, 27 Aug 2015 20:37:31 +0300 [thread overview]
Message-ID: <55DF4ADB.6030203@openvz.org> (raw)
In-Reply-To: <CAFEAcA8ZQGG23brMj_AU87wGLAueLWJbkiBy5DZePW7LyVbFVg@mail.gmail.com>
On 08/27/2015 08:31 PM, Peter Maydell wrote:
> On 12 August 2015 at 12:50, Denis V. Lunev <den@openvz.org> wrote:
>> From: Pavel Butsykin <pbutsykin@virtuozzo.com>
>>
>> Move target-specific code out of /monitor.c to /target-*/monitor.c,
>> this will avoid code cluttering and using random ifdeffery. The solution
>> is quite simple, but solves the issue of the separation of target-specific
>> code from monitor
>>
>> Signed-off-by: Pavel Butsykin <pbutsykin@virtuozzo.com>
>> Signed-off-by: Denis V. Lunev <den@openvz.org>
>> CC: Luiz Capitulino <lcapitulino@redhat.com>
>> CC: Paolo Bonzini <pbonzini@redhat.com>
>> CC: Peter Maydell <peter.maydell@linaro.org>
>> ---
>> include/monitor/monitor-common.h | 43 ++
>> monitor.c | 854 +--------------------------------------
>> target-i386/Makefile.objs | 2 +-
>> target-i386/monitor.c | 489 ++++++++++++++++++++++
>> target-ppc/Makefile.objs | 2 +-
>> target-ppc/monitor.c | 250 ++++++++++++
>> target-sh4/Makefile.objs | 1 +
>> target-sh4/monitor.c | 52 +++
>> target-sparc/Makefile.objs | 2 +-
>> target-sparc/monitor.c | 153 +++++++
>> target-xtensa/Makefile.objs | 1 +
>> target-xtensa/monitor.c | 34 ++
>> 12 files changed, 1032 insertions(+), 851 deletions(-)
>> create mode 100644 include/monitor/monitor-common.h
>> create mode 100644 target-i386/monitor.c
>> create mode 100644 target-ppc/monitor.c
>> create mode 100644 target-sh4/monitor.c
>> create mode 100644 target-sparc/monitor.c
>> create mode 100644 target-xtensa/monitor.c
>> +#if defined(TARGET_SPARC) || defined(TARGET_PPC) || defined(TARGET_I386)
>> +extern const MonitorDef monitor_defs[];
>> +#else
>> +const MonitorDef monitor_defs[] = {};
>> #endif
> So, rather than having to have a list of which targets provide
> a monitor_defs[], I would suggest that we make the API implemented
> by the target be a function, like:
> const MonitorDef *target_monitor_defs(void);
> (which just returns a pointer to a static const array in
> the target-*/monitor.c file). Then you can add a file
> stubs/target-monitor-defs.c which provides the "stub" version
> of this function (just returns a pointer to the no-commands
> array). The link process will arrange that the stub version
> is pulled in for any target that doesn't provide its own
> implementation of the function.
>
> Other than that, I suspect we can improve the separation
> out of target-specific things, but this is a good
> improvement and it'll be easier to do the rest as
> incremental fixes on top of this later.
>
> thanks
> -- PMM
ok, sounds good to me
Thank you for the suggestion
next prev parent reply other threads:[~2015-08-27 17:37 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-12 11:50 [Qemu-devel] [PATCH v2 for 2.5 0/3] Move target- and device specific code from monitor Denis V. Lunev
2015-08-12 11:50 ` [Qemu-devel] [PATCH 1/3] hmp-commands-info: move info_cmds content out of monitor.c Denis V. Lunev
2015-08-27 17:40 ` Peter Maydell
2015-08-12 11:50 ` [Qemu-devel] [PATCH 2/3] monitor: remove target-specific code from monitor.c Denis V. Lunev
2015-08-27 17:31 ` Peter Maydell
2015-08-27 17:37 ` Denis V. Lunev [this message]
2015-08-28 9:21 ` Pavel Butsykin
2015-08-28 10:12 ` Peter Maydell
2015-08-28 14:58 ` Pavel Butsykin
2015-08-12 11:50 ` [Qemu-devel] [PATCH 3/3] monitor: added generation of documentation for hmp-commands-info.hx Denis V. Lunev
2015-08-27 17:39 ` Peter Maydell
2015-08-28 7:00 ` Pavel Butsykin
2015-08-28 8:19 ` Peter Maydell
2015-08-28 14:53 ` Pavel Butsykin
2015-08-18 23:50 ` [Qemu-devel] [PATCH v2 for 2.5 0/3] Move target- and device specific code from monitor Denis V. Lunev
2015-08-25 9:54 ` Denis V. Lunev
2015-08-27 11:27 ` Denis V. Lunev
2015-08-27 12:13 ` Peter Maydell
2015-08-27 12:34 ` Denis V. Lunev
2015-08-28 11:25 ` Markus Armbruster
-- strict thread matches above, loose matches on Subject: below --
2015-07-02 16:18 [Qemu-devel] (no subject) Denis V. Lunev
2015-07-02 16:18 ` [Qemu-devel] [PATCH 2/3] monitor: remove target-specific code from monitor.c Denis V. Lunev
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=55DF4ADB.6030203@openvz.org \
--to=den@openvz.org \
--cc=lcapitulino@redhat.com \
--cc=pbonzini@redhat.com \
--cc=pbutsykin@virtuozzo.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.