[libvirt] [PATCH v2] cmdPerf: Display enabled/disabled message on perf event enable/disable
John Ferlan
jferlan at redhat.com
Mon Jan 9 23:29:43 UTC 2017
On 12/28/2016 06:36 AM, Nitesh Konkar wrote:
> Currently no message is displayed on successful
> perf event enable or disable. This patch gives
> the enabled/disabled status message on successful
> enabling/disabling of the perf event.
> Eg:virsh perf Domain --enable instructions --disable cache_misses
> instructions : enabled
> cache_misses : disabled
>
> Signed-off-by: Nitesh Konkar <nitkon12 at linux.vnet.ibm.com>
> ---
> tools/virsh-domain.c | 27 ++++++++++++++++++---------
> 1 file changed, 18 insertions(+), 9 deletions(-)
>
ACK and pushed w/ adjustment shown below and an altered commit message.
John
> diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c
> index 3a6fa5c..287ca28 100644
> --- a/tools/virsh-domain.c
> +++ b/tools/virsh-domain.c
> @@ -8848,13 +8848,27 @@ virshParseEventStr(const char *event,
> return ret;
> }
>
> +static void
> +virshPrintPerfStatus(vshControl *ctl, virTypedParameterPtr params, int nparams)
> +{
> + size_t i;
> +
> + for (i = 0; i < nparams; i++) {
> + if (params[i].type == VIR_TYPED_PARAM_BOOLEAN &&
> + params[i].value.b) {
> + vshPrint(ctl, "%-15s: %s\n", params[i].field, _("enabled"));
> + } else {
> + vshPrint(ctl, "%-15s: %s\n", params[i].field, _("disabled"));
Use vshPrintExtra for both to adhere to the --quiet/-q flag
> + }
> + }
> +}
> +
> static bool
> cmdPerf(vshControl *ctl, const vshCmd *cmd)
> {
> virDomainPtr dom;
> int nparams = 0;
> int maxparams = 0;
> - size_t i;
> virTypedParameterPtr params = NULL;
> bool ret = false;
> const char *enable = NULL, *disable = NULL;
> @@ -8891,18 +8905,13 @@ cmdPerf(vshControl *ctl, const vshCmd *cmd)
> vshError(ctl, "%s", _("Unable to get perf events"));
> goto cleanup;
> }
> - for (i = 0; i < nparams; i++) {
> - if (params[i].type == VIR_TYPED_PARAM_BOOLEAN &&
> - params[i].value.b) {
> - vshPrint(ctl, "%-15s: %s\n", params[i].field, _("enabled"));
> - } else {
> - vshPrint(ctl, "%-15s: %s\n", params[i].field, _("disabled"));
> - }
> - }
> + virshPrintPerfStatus(ctl, params, nparams);
> } else {
> if (virDomainSetPerfEvents(dom, params, nparams, flags) != 0) {
> vshError(ctl, "%s", _("Unable to enable/disable perf events"));
> goto cleanup;
> + } else {
> + virshPrintPerfStatus(ctl, params, nparams);
> }
> }
>
>
More information about the libvir-list
mailing list