Re: [Patch 1/8] Setup

Andrew Morton
2006-05-08T21:20:49Z

Balbir Singh <balbir@in.ibm.com> wrote:
>
> +static inline void delayacct_end(struct timespec *start, struct timespec *end,
> + u64 *total, u32 *count)
> +{
> + struct timespec ts = {0, 0};
> + s64 ns;
> +
> + do_posix_clock_monotonic_gettime(end);
> + timespec_sub(&ts, start, end);
> + ns = timespec_to_ns(&ts);
> + if (ns < 0)
> + return;
> +
> + spin_lock(&current->delays->lock);
> + *total += ns;
> + (*count)++;
> + spin_unlock(&current->delays->lock);
> +}

- too large to be inlined

- The initialisation of `ts' is unneeded (maybe it generated a bogus
warning, but it won't do that if you switch timespec_sub to
return-by-value)