On Thu, Aug 24, 2017 at 09:14:45AM +0800, Yi Sun wrote:
> This patch implements a new xl get HW info interface. A new argument
> is added for psr-hwinfo command to get and show MBA HW info.
> 
> Signed-off-by: Yi Sun <yi.y....@linux.intel.com>
> ---
> v2:
>     - split out this patch from a big patch in v1.
>       (suggested by Wei Liu)
>     - change 'MBA_INFO' to 'MBA'. Also, change 'mba_info' to 'mba'.
>       (suggested by Chao Peng)
> ---
>  tools/xl/xl_cmdtable.c |  1 +
>  tools/xl/xl_psr.c      | 39 +++++++++++++++++++++++++++++++++++++--
>  2 files changed, 38 insertions(+), 2 deletions(-)
> 
> diff --git a/tools/xl/xl_cmdtable.c b/tools/xl/xl_cmdtable.c
> index 2c71a9f..5ac8a7e 100644
> --- a/tools/xl/xl_cmdtable.c
> +++ b/tools/xl/xl_cmdtable.c
> @@ -524,6 +524,7 @@ struct cmd_spec cmd_table[] = {
>        "[options]",
>        "-m, --cmt       Show Cache Monitoring Technology (CMT) hardware 
> info\n"
>        "-a, --cat       Show Cache Allocation Technology (CAT) hardware 
> info\n"
> +      "-b, --mba       Show Memory Bandwidth Allocation (MBA) hardware 
> info\n"
>      },
>      { "psr-cmt-attach",
>        &main_psr_cmt_attach, 0, 1,
> diff --git a/tools/xl/xl_psr.c b/tools/xl/xl_psr.c
> index 7309d4f..ea37967 100644
> --- a/tools/xl/xl_psr.c
> +++ b/tools/xl/xl_psr.c
> @@ -479,6 +479,33 @@ static int psr_l2_cat_hwinfo(void)
>      return rc;
>  }
>  
> +static int psr_mba_hwinfo(void)
> +{
> +    int rc;
> +    unsigned int i, nr;
> +    libxl_psr_hw_info *info;
> +
> +    rc = libxl_psr_get_hw_info(ctx, &info, &nr,
> +                               LIBXL_PSR_FEAT_TYPE_MBA, 0);
> +    if (rc)
> +        return rc;
> +
> +    printf("Memory Bandwidth Allocation (MBA):\n");
> +
> +    for (i = 0; i < nr; i++) {
> +        printf("%-16s: %u\n", "Socket ID", info[i].id);
> +        printf("%-16s: %s\n", "Linear Mode",
> +               info[i].u.mba.linear ? "Enabled" : "Disabled");
> +        printf("%-16s: %u\n", "Maximum COS", info[i].u.mba.cos_max);
> +        printf("%-16s: %u\n", "Maximum Throttling Value",
> +               info[i].u.mba.thrtl_max);
> +        printf("%-16s: %u\n", "Default Throttling Value", 0);

If you really want to left-justify, shouldn't you choose a value that
aligns everything nicely (strlen("Default Throttling Valu") is
already greater than 16).

In fact you can do the alignment manually in the format string, and
avoid passing the name as the first parameter.

> +    }
> +
> +    libxl_psr_hw_info_list_free(info, nr);
> +    return rc;
> +}
> +
>  int main_psr_cat_cbm_set(int argc, char **argv)
>  {
>      uint32_t domid;
> @@ -597,20 +624,24 @@ int main_psr_cat_show(int argc, char **argv)
>  int main_psr_hwinfo(int argc, char **argv)
>  {
>      int opt, ret = 0;
> -    bool all = true, cmt = false, cat = false;
> +    bool all = true, cmt = false, cat = false, mba = false;
>      static struct option opts[] = {

const?

Roger.

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

Reply via email to