public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Konstantin Khlebnikov <khlebnikov@openvz.org>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Ingo Molnar <mingo@elte.hu>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Avi Kivity <avi@redhat.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"kvm@vger.kernel.org" <kvm@vger.kernel.org>
Subject: Re: [PATCH v2] kvm: remove dependence on delay-accounting
Date: Mon, 16 Jan 2012 18:05:01 +0400	[thread overview]
Message-ID: <4F142E8D.3060808@openvz.org> (raw)
In-Reply-To: <1326720836.2442.231.camel@twins>

Peter Zijlstra wrote:
> On Sat, 2012-01-14 at 20:30 +0400, Konstantin Khlebnikov wrote:
>> KVM selects delay-accounting only to get sched-info for steal-time accounting.
>> Meanwhile delay-accounting can be disabled by boot option. This is ridiculous.
>>
>> This patch adds internal boolean option CONFIG_TASK_SCHED_INFO to enable only
>> task->sched_info and its collecting inside scheduler.
>
> Urgh, more stupid config knobs, we should be removing them, not adding
> moar.

Unfortunately, removing task-delay-accounting is not the option =)

>
>> diff --git a/include/linux/sched.h b/include/linux/sched.h
>> index 868cb83..dd5bf78 100644
>> --- a/include/linux/sched.h
>> +++ b/include/linux/sched.h
>> @@ -734,7 +734,6 @@ extern struct user_struct root_user;
>>
>>   struct backing_dev_info;
>>
>> -#if defined(CONFIG_SCHEDSTATS) || defined(CONFIG_TASK_DELAY_ACCT)
>>   struct sched_info {
>>   	/* cumulative counters */
>>   	unsigned long pcount;	      /* # of times run on this cpu */
>> @@ -744,7 +743,6 @@ struct sched_info {
>>   	unsigned long long last_arrival,/* when we last ran on a cpu */
>>   			   last_queued;	/* when we were last queued to run */
>>   };
>> -#endif /* defined(CONFIG_SCHEDSTATS) || defined(CONFIG_TASK_DELAY_ACCT) */
>
> Not having that structure helps with compile errors.

I don't think so, this only helps to catch useless declarations and definitions
in code and inside other structures.

>
>>   #ifdef CONFIG_TASK_DELAY_ACCT
>>   struct task_delay_info {
>> @@ -782,7 +780,7 @@ struct task_delay_info {
>>
>>   static inline int sched_info_on(void)
>>   {
>> -#ifdef CONFIG_SCHEDSTATS
>> +#if IS_ENABLED(CONFIG_SCHEDSTATS) || IS_ENABLED(CONFIG_KVM)
>
> WTF is IS_ENABLED and why do you use it?

IS_ENABLED(smth) == (defined(smth) || defined(smth_MODULE))
but using it for CONFIG_SCHEDSTATS is overkill, indeed.

>
>
> Not much like this stuff.


  reply	other threads:[~2012-01-16 14:05 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-14 16:24 [PATCH] kvm: remove dependence on delay-accounting Konstantin Khlebnikov
2012-01-14 16:30 ` [PATCH v2] " Konstantin Khlebnikov
2012-01-16 11:14   ` Marcelo Tosatti
2012-01-16 13:42     ` Konstantin Khlebnikov
2012-01-16 13:33   ` Peter Zijlstra
2012-01-16 14:05     ` Konstantin Khlebnikov [this message]
2012-01-16 13:54   ` [PATCH] sched: remove task-sched-info dynamic disabler Konstantin Khlebnikov

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=4F142E8D.3060808@openvz.org \
    --to=khlebnikov@openvz.org \
    --cc=avi@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=mtosatti@redhat.com \
    --cc=peterz@infradead.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox