Re: [RFC PATCH v1 1/6] sched: track time spent in IRQ handler

2020-06-16 Thread Jan Beulich
On 12.06.2020 02:22, Volodymyr Babchuk wrote: > --- a/xen/arch/x86/irq.c > +++ b/xen/arch/x86/irq.c > @@ -1895,6 +1895,7 @@ void do_IRQ(struct cpu_user_regs *regs) > int irq = this_cpu(vector_irq)[vector]; > struct cpu_user_regs *old_regs = set_irq_regs(regs); > > +vcp

Re: [RFC PATCH v1 1/6] sched: track time spent in IRQ handler

2020-06-12 Thread Julien Grall
On Fri, 12 Jun 2020 at 21:08, Dario Faggioli wrote: > > On Fri, 2020-06-12 at 13:21 +0100, Julien Grall wrote: > > On 12/06/2020 12:33, Volodymyr Babchuk wrote: > > > On Fri, 2020-06-12 at 12:29 +0100, Julien Grall wrote: > > > > > Basically, this value holds time span between calls to > > > > > s

Re: [RFC PATCH v1 1/6] sched: track time spent in IRQ handler

2020-06-12 Thread Volodymyr Babchuk
Hi Dario, On Fri, 2020-06-12 at 22:08 +0200, Dario Faggioli wrote: > On Fri, 2020-06-12 at 13:21 +0100, Julien Grall wrote: > > On 12/06/2020 12:33, Volodymyr Babchuk wrote: > > > On Fri, 2020-06-12 at 12:29 +0100, Julien Grall wrote: > > > > > Basically, this value holds time span between calls t

Re: [RFC PATCH v1 1/6] sched: track time spent in IRQ handler

2020-06-12 Thread Dario Faggioli
On Fri, 2020-06-12 at 13:21 +0100, Julien Grall wrote: > On 12/06/2020 12:33, Volodymyr Babchuk wrote: > > On Fri, 2020-06-12 at 12:29 +0100, Julien Grall wrote: > > > > Basically, this value holds time span between calls to > > > > schedule(). This > > > > variable gets zeroed out every time sched

Re: [RFC PATCH v1 1/6] sched: track time spent in IRQ handler

2020-06-12 Thread Julien Grall
On 12/06/2020 12:33, Volodymyr Babchuk wrote: On Fri, 2020-06-12 at 12:29 +0100, Julien Grall wrote: On 12/06/2020 12:26, Volodymyr Babchuk wrote: Hi Jurgen, thanks for the review On Fri, 2020-06-12 at 06:36 +0200, Jürgen Groß wrote: On 12.06.20 02:22, Volodymyr Babchuk wrote: [...]

Re: [RFC PATCH v1 1/6] sched: track time spent in IRQ handler

2020-06-12 Thread Volodymyr Babchuk
On Fri, 2020-06-12 at 12:29 +0100, Julien Grall wrote: > > On 12/06/2020 12:26, Volodymyr Babchuk wrote: > > Hi Jurgen, > > > > thanks for the review > > > > On Fri, 2020-06-12 at 06:36 +0200, Jürgen Groß wrote: > > > > > On 12.06.20 02:22, Volodymyr Babchuk wrote: > > > > [...] > > > > > >

Re: [RFC PATCH v1 1/6] sched: track time spent in IRQ handler

2020-06-12 Thread Julien Grall
On 12/06/2020 12:26, Volodymyr Babchuk wrote: Hi Jurgen, thanks for the review On Fri, 2020-06-12 at 06:36 +0200, Jürgen Groß wrote: On 12.06.20 02:22, Volodymyr Babchuk wrote: [...] +void vcpu_end_irq_handler(void) +{ +int delta; + +if (is_idle_vcpu(current)) +return;

Re: [RFC PATCH v1 1/6] sched: track time spent in IRQ handler

2020-06-12 Thread Volodymyr Babchuk
Hi Jurgen, thanks for the review On Fri, 2020-06-12 at 06:36 +0200, Jürgen Groß wrote: > On 12.06.20 02:22, Volodymyr Babchuk wrote: [...] > > +void vcpu_end_irq_handler(void) > > +{ > > +int delta; > > + > > +if (is_idle_vcpu(current)) > > +return; > > + > > +ASSERT(curren

Re: [RFC PATCH v1 1/6] sched: track time spent in IRQ handler

2020-06-11 Thread Jürgen Groß
On 12.06.20 02:22, Volodymyr Babchuk wrote: Add code that saves time spent in IRQ handler, so later we can make adjustments to schedule unit run time. This and following changes are called upon to provide fair scheduling. Problem is that any running vCPU can be interrupted by to handle IRQ which