[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH 2 of 2] xenalyze: decode PV_HYPERCALL_SUBCALL events



On Mon, Oct 1, 2012 at 6:52 PM, David Vrabel <david.vrabel@xxxxxxxxxx> wrote:
> Decode the PV_HYPERCALL_SUBCALL events which are used for calls within
> a multicall hypercall.  They are indented so its easier to see which
> multicall they were part of.
>
> Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>

Acked-by: George Dunlap <george.dunlap@xxxxxxxxxxxxx>


> ---
>
> diff --git a/xenalyze.c b/xenalyze.c
> --- a/xenalyze.c
> +++ b/xenalyze.c
> @@ -1487,6 +1487,7 @@ enum {
>      PV_PTWR_EMULATION,
>      PV_PTWR_EMULATION_PAE,
>      PV_HYPERCALL_V2 = 13,
> +    PV_HYPERCALL_SUBCALL = 14,
>      PV_MAX
>  };
>
> @@ -6635,7 +6636,8 @@ static const char *sched_op_cmd_to_str(u
>      return buf;
>  }
>
> -void pv_hypercall_v2_process(struct record_info *ri, struct pv_data *pv)
> +void pv_hypercall_v2_process(struct record_info *ri, struct pv_data *pv,
> +                             const char *indent)
>  {
>      int op = pv_hypercall_op(ri);
>
> @@ -6646,11 +6648,11 @@ void pv_hypercall_v2_process(struct reco
>
>      if(opt.dump_all) {
>          if(op < HYPERCALL_MAX)
> -            printf(" %s hypercall %2x (%s)",
> -                   ri->dump_header, op, hypercall_name[op]);
> +            printf(" %s%s hypercall %2x (%s)",
> +                   ri->dump_header, indent, op, hypercall_name[op]);
>          else
> -            printf(" %s hypercall %2x",
> -                   ri->dump_header, op);
> +            printf(" %s%s hypercall %2x",
> +                   ri->dump_header, indent, op);
>          switch(op) {
>          case HYPERCALL_mmu_update:
>              {
> @@ -6732,7 +6734,10 @@ void pv_process(struct pcpu_info *p)
>          pv_ptwr_emulation_process(ri, pv);
>          break;
>      case PV_HYPERCALL_V2:
> -        pv_hypercall_v2_process(ri, pv);
> +        pv_hypercall_v2_process(ri, pv, "");
> +        break;
> +    case PV_HYPERCALL_SUBCALL:
> +        pv_hypercall_v2_process(ri, pv, " ");
>          break;
>      default:
>          pv_generic_process(ri, pv);
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxx
> http://lists.xen.org/xen-devel

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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.