All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Zijlstra <peterz@infradead.org>
To: Venkatesh Pallipadi <venki@google.com>
Cc: Ingo Molnar <mingo@elte.hu>, "H. Peter Anvin" <hpa@zytor.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Balbir Singh <balbir@linux.vnet.ibm.com>,
	Martin Schwidefsky <schwidefsky@de.ibm.com>,
	linux-kernel@vger.kernel.org, Paul Turner <pjt@google.com>,
	Eric Dumazet <eric.dumazet@gmail.com>
Subject: Re: [PATCH 1/7] si time accounting accounts bh_disable'd time to si -v3
Date: Sun, 03 Oct 2010 02:34:16 +0200	[thread overview]
Message-ID: <1286066056.2144.114.camel@laptop> (raw)
In-Reply-To: <AANLkTikwUh57PKNk_fWzXApoYnCqK9NFi-MzSY-QKUc5@mail.gmail.com>

On Sat, 2010-10-02 at 08:42 -0700, Venkatesh Pallipadi wrote:
> 
> > The make in_serving_softirq() be something like:
> >  (preempt_count() & SOFTIRQ_OFFSET) || (current->flags & PF_SOFTIRQ)
> >
> 
> Yes. I would also need in_softirq_at_hardirq_tail() for accounting calls :)

Well, you could open-code it there or something.

> >> Also, ksoftirqd adds to softirq counts, does trace softirq, etc. So,
> >> it kind of made sense to add the time also to softirq stats as well.
> >> If we dont account time to softirq stats, then if some user is looking
> >> at say time per softirq using the softirq count will be misled. No?
> >
> > Simply add back the task accounting when you report it?
> >
> >> In the other thread you mentioned doing that will cause problems. Were
> >> you thinking of scheduler issues or are there other problems charging
> >> softirq time this way?
> >
> > Of course there are.. you're double accounting the time of ksoftirqd,
> > and worse, you're adding that back into the equation as part of the !
> > sched_fair time.
> >
> 
> No. There should not be any double accounting with this current
> change. We account softirq processing both at hardirq tail and
> ksoftirqd as CPU softirq time. It will be taken out of ksoftirqd sched
> exec time as with any other thread. And it will be taken out of fair
> time available on the CPU as well. Which to me seems to be the right
> thing to do, as the this is more coupled with the CPU and ksoftirqd is
> just giving context for softirqd to run.

But ksoftirqd is a SCHED_OTHER task, so by taking it out of its runtime
the scheduler will get all confused.

> Changing only hardirq tail to have SOFTIRQ_OFFSET and changing
> ksoftirqd to SOFTIRQ_OFFSET*2 would result in these additional
> ksoftirqd softirqs staying as the part of sched_fair time.
> 
> Or I am totally missing something here? 

Please keep ksoftirq scheduling normal, if people want it to be another
scheduling class, let them change that, but since its a task it should
be a normal task and get scheduled like everybody else, not have some
magic properties.



  reply	other threads:[~2010-10-03  0:34 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-29 19:21 Proper kernel irq time accounting -v3 Venkatesh Pallipadi
2010-09-29 19:21 ` [PATCH 1/7] si time accounting accounts bh_disable'd time to si -v3 Venkatesh Pallipadi
2010-09-30 11:04   ` Peter Zijlstra
2010-09-30 16:26     ` Venkatesh Pallipadi
2010-10-01 23:16       ` Peter Zijlstra
2010-10-02 15:42         ` Venkatesh Pallipadi
2010-10-03  0:34           ` Peter Zijlstra [this message]
2010-10-04 16:54             ` Venkatesh Pallipadi
2010-09-29 19:21 ` [PATCH 2/7] Consolidate account_system_vtime extern declaration -v3 Venkatesh Pallipadi
2010-09-29 19:21 ` [PATCH 3/7] Add IRQ_TIME_ACCOUNTING, finer accounting of irq time -v3 Venkatesh Pallipadi
2010-09-30 11:06   ` Peter Zijlstra
2010-09-30 16:29     ` Venkatesh Pallipadi
2010-09-30 20:38       ` Venkatesh Pallipadi
2010-10-01 11:46         ` Peter Zijlstra
2010-10-01 16:51           ` Venkatesh Pallipadi
2010-10-01 17:29             ` Venkatesh Pallipadi
2010-10-01 23:14               ` Peter Zijlstra
2010-10-01 23:32                 ` Venkatesh Pallipadi
2010-10-02 10:53                   ` Peter Zijlstra
2010-10-02 15:26                     ` Venkatesh Pallipadi
2010-10-03  0:26                       ` Peter Zijlstra
2010-10-01 11:45       ` Peter Zijlstra
2010-09-29 19:21 ` [PATCH 4/7] x86: Add IRQ_TIME_ACCOUNTING in x86 -v3 Venkatesh Pallipadi
2010-09-29 19:21 ` [PATCH 5/7] sched: Do not account irq time to current task -v3 Venkatesh Pallipadi
2010-09-29 19:21 ` [PATCH 6/7] sched: Remove irq time from available CPU power -v3 Venkatesh Pallipadi
2010-09-29 19:21 ` [PATCH 7/7] Export per cpu hardirq and softirq time in proc -v3 Venkatesh Pallipadi
2010-09-30  7:59 ` Proper kernel irq time accounting -v3 Andi Kleen
2010-09-30 16:37   ` Venkatesh Pallipadi
2010-09-30 17:36     ` Andi Kleen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1286066056.2144.114.camel@laptop \
    --to=peterz@infradead.org \
    --cc=balbir@linux.vnet.ibm.com \
    --cc=eric.dumazet@gmail.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=pjt@google.com \
    --cc=schwidefsky@de.ibm.com \
    --cc=tglx@linutronix.de \
    --cc=venki@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.