[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [RFC PATCH v1 2/6] sched: track time spent in hypervisor tasks
On 12.06.2020 02:22, Volodymyr Babchuk wrote: > In most cases hypervisor code performs guest-related jobs. Tasks like > hypercall handling or MMIO access emulation are done for calling vCPU > so it is okay to charge time spent in hypervisor to the current vCPU. > > But, there are also tasks that are not originated from guests. This > includes things like TLB flushing or running tasklets. We don't want > to track time spent in this tasks to a total scheduling unit run > time. So we need to track time spent in such housekeeping tasks > separately. > > Those hypervisor tasks are run in do_softirq() function, so we'll > install our hooks there. I can see the point and desire, but it feels like you're moving from one kind of unfairness to another: A softirq may very well be on behalf of a specific vCPU, in which case not charging current should lead to charging that specific one (which may still be current then). Even more than for TLB flushes this may be relevant for the cases where (on x86) we issue WBINVD on behalf of a guest. Jan
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |