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. _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/virtualization