[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen master] xen/tools: tracing: credits can go negative, so use int.
commit bd3f7a557abb05bc20d70ac2ec7dfb35458db252 Author: Dario Faggioli <dario.faggioli@xxxxxxxxxx> AuthorDate: Wed Jan 18 12:32:21 2017 +0100 Commit: George Dunlap <george.dunlap@xxxxxxxxxx> CommitDate: Wed Feb 1 14:35:55 2017 +0000 xen/tools: tracing: credits can go negative, so use int. For Credit2, in both the trace records, inside Xen, and in their parsing, in xenalyze. In fact, as it is quite a bit better, in order to understand how much negative credits have gone for a certain vCPU, to see an actual negative number, as compared to a wrapped around unsigned! Signed-off-by: Dario Faggioli <dario.faggioli@xxxxxxxxxx> Reviewed-by: George Dunlap <george.dunlap@xxxxxxxxxx> --- tools/xentrace/xenalyze.c | 20 ++++++++++---------- xen/common/sched_credit2.c | 10 +++++----- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/tools/xentrace/xenalyze.c b/tools/xentrace/xenalyze.c index f006804..a90da20 100644 --- a/tools/xentrace/xenalyze.c +++ b/tools/xentrace/xenalyze.c @@ -7651,11 +7651,11 @@ void sched_process(struct pcpu_info *p) case TRC_SCHED_CLASS_EVT(CSCHED2, 3): /* CREDIT_BURN */ if(opt.dump_all) { struct { - unsigned int vcpuid:16, domid:16, credit; - int delta; + unsigned int vcpuid:16, domid:16; + int credit, delta; } *r = (typeof(r))ri->d; - printf(" %s csched2:burn_credits d%uv%u, credit = %u, delta = %d\n", + printf(" %s csched2:burn_credits d%uv%u, credit = %d, delta = %d\n", ri->dump_header, r->domid, r->vcpuid, r->credit, r->delta); } @@ -7664,10 +7664,10 @@ void sched_process(struct pcpu_info *p) if(opt.dump_all) { struct { unsigned int vcpuid:16, domid:16; - unsigned int credit; + int credit; } *r = (typeof(r))ri->d; - printf(" %s csched2:tickle_check d%uv%u, credit = %u\n", + printf(" %s csched2:tickle_check d%uv%u, credit = %d\n", ri->dump_header, r->domid, r->vcpuid, r->credit); } break; @@ -7685,12 +7685,12 @@ void sched_process(struct pcpu_info *p) if(opt.dump_all) { struct { unsigned int vcpuid:16, domid:16; - unsigned int credit_start, credit_end; + int credit_start, credit_end; unsigned int multiplier; } *r = (typeof(r))ri->d; printf(" %s csched2:reset_credits d%uv%u, " - "credit_start = %u, credit_end = %u, mult = %u\n", + "credit_start = %d, credit_end = %d, mult = %u\n", ri->dump_header, r->domid, r->vcpuid, r->credit_start, r->credit_end, r->multiplier); } @@ -7752,12 +7752,12 @@ void sched_process(struct pcpu_info *p) case TRC_SCHED_CLASS_EVT(CSCHED2, 13): /* TICKLE_NEW */ if (opt.dump_all) { struct { - unsigned vcpuid:16, domid:16; - unsigned processor, credit; + unsigned int vcpuid:16, domid:16, processor; + int credit; } *r = (typeof(r))ri->d; printf(" %s csched2:runq_tickle_new d%uv%u, " - "processor = %u, credit = %u\n", + "processor = %u, credit = %d\n", ri->dump_header, r->domid, r->vcpuid, r->processor, r->credit); } diff --git a/xen/common/sched_credit2.c b/xen/common/sched_credit2.c index 9b063c0..b7e31ab 100644 --- a/xen/common/sched_credit2.c +++ b/xen/common/sched_credit2.c @@ -932,7 +932,8 @@ runq_tickle(const struct scheduler *ops, struct csched2_vcpu *new, s_time_t now) { struct { unsigned vcpu:16, dom:16; - unsigned processor, credit; + unsigned processor; + int credit; } d; d.dom = new->vcpu->domain->domain_id; d.vcpu = new->vcpu->vcpu_id; @@ -1031,7 +1032,7 @@ runq_tickle(const struct scheduler *ops, struct csched2_vcpu *new, s_time_t now) { struct { unsigned vcpu:16, dom:16; - unsigned credit; + int credit; } d; d.dom = cur->vcpu->domain->domain_id; d.vcpu = cur->vcpu->vcpu_id; @@ -1136,7 +1137,7 @@ static void reset_credit(const struct scheduler *ops, int cpu, s_time_t now, { struct { unsigned vcpu:16, dom:16; - unsigned credit_start, credit_end; + int credit_start, credit_end; unsigned multiplier; } d; d.dom = svc->vcpu->domain->domain_id; @@ -1186,8 +1187,7 @@ void burn_credits(struct csched2_runqueue_data *rqd, { struct { unsigned vcpu:16, dom:16; - unsigned credit; - int delta; + int credit, delta; } d; d.dom = svc->vcpu->domain->domain_id; d.vcpu = svc->vcpu->vcpu_id; -- generated by git-patchbot for /home/xen/git/xen.git#master _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxx https://lists.xenproject.org/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |