Re: [kvm-devel] [PATCH/RFC 3/4, second shot]Introduce "account_guest_time"

Avi Kivity
2007-08-17T12:59:51Z

Laurent Vivier wrote:
> This is another way to compute guest time... I remove the "account modifiers"
> mechanism and call directly account_guest_time() from account_system_time().
> account_system_time() computes user, system and guest times according value
> accumulated in vtime (a ktime_t) in task_struct by the virtual machine.
>

> @@ -3246,6 +3277,10 @@
> struct rq *rq = this_rq();
> cputime64_t tmp;
>
> +#ifdef CONFIG_GUEST_ACCOUNTING
> + cputime = account_guest_time(p, cputime);
> +#endif
> +
> p->stime = cputime_add(p->stime, cputime);
>
> /* Add system time to cpustat. */

In order to reduce the impact on whatever function this is in (use diff
-p please), you can always have a definition of account_guest_time:

#else

static cputime_t account_guest_time(struct task_struct *p, cputime_t cputime)
{
return cputime;
}

#endif

This way the #ifdef/#endif is not necessary when calling it.

--
Do not meddle in the internals of kernels, for they are subtle and quick to panic.