Constify count_syscall function
* count.c (count_syscall): Add const qualifier to timeval argument and rename it. Store the wall clock time spent while in syscall in separate timeval variable. * defs.h (count_syscall): Update prototype. * syscall.c (trace_syscall_exiting): Update count_syscall invocation.
This commit is contained in:
parent
447db45365
commit
ac5133d0cb
13
count.c
13
count.c
@ -47,10 +47,11 @@ static struct call_counts *countv[SUPPORTED_PERSONALITIES];
|
||||
|
||||
static struct timeval shortest = { 1000000, 0 };
|
||||
|
||||
/* On entry, tv is syscall exit timestamp */
|
||||
void
|
||||
count_syscall(struct tcb *tcp, struct timeval *tv)
|
||||
count_syscall(struct tcb *tcp, const struct timeval *syscall_exiting_tv)
|
||||
{
|
||||
struct timeval wtv;
|
||||
struct timeval *tv = &wtv;
|
||||
struct call_counts *cc;
|
||||
unsigned long scno = tcp->scno;
|
||||
|
||||
@ -69,7 +70,7 @@ count_syscall(struct tcb *tcp, struct timeval *tv)
|
||||
cc->errors++;
|
||||
|
||||
/* tv = wall clock time spent while in syscall */
|
||||
tv_sub(tv, tv, &tcp->etime);
|
||||
tv_sub(tv, syscall_exiting_tv, &tcp->etime);
|
||||
|
||||
/* Spent more wall clock time than spent system time? (usually yes) */
|
||||
if (tv_cmp(tv, &tcp->dtime) > 0) {
|
||||
@ -90,13 +91,13 @@ count_syscall(struct tcb *tcp, struct timeval *tv)
|
||||
|
||||
if (tv_nz(&tcp->dtime))
|
||||
/* tv = system time spent, if it isn't 0 */
|
||||
*tv = tcp->dtime;
|
||||
tv = &tcp->dtime;
|
||||
else if (tv_cmp(tv, &one_tick) > 0) {
|
||||
/* tv = smallest "sane" time interval */
|
||||
if (tv_cmp(&shortest, &one_tick) < 0)
|
||||
*tv = shortest;
|
||||
tv = &shortest;
|
||||
else
|
||||
*tv = one_tick;
|
||||
tv = &one_tick;
|
||||
}
|
||||
}
|
||||
if (tv_cmp(tv, &shortest) < 0)
|
||||
|
2
defs.h
2
defs.h
@ -587,7 +587,7 @@ extern void set_overhead(int);
|
||||
extern void qualify(const char *);
|
||||
extern void print_pc(struct tcb *);
|
||||
extern int trace_syscall(struct tcb *);
|
||||
extern void count_syscall(struct tcb *, struct timeval *);
|
||||
extern void count_syscall(struct tcb *, const struct timeval *);
|
||||
extern void call_summary(FILE *);
|
||||
|
||||
#if defined(AVR32) \
|
||||
|
Loading…
x
Reference in New Issue
Block a user