public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@linux-foundation.org>
To: svaidy@linux.vnet.ibm.com, linux-kernel@vger.kernel.org,
	suresh.b.siddha@intel.com, venkatesh.pallipadi@intel.com,
	a.p.zijlstra@chello.nl, mingo@elte.hu, dipankar@in.ibm.com,
	balbir@linux.vnet.ibm.com, vatsa@linux.vnet.ibm.com,
	ego@in.ibm.com, andi@firstfloor.org, davecb@sun.com,
	tconnors@astro.swin.edu.au, maxk@qualcomm.com,
	gregory.haskins@gmail.com, pavel@suse.cz, rusty@rustcorp.com.au
Subject: Re: [PATCH v7 4/8] sched: nominate preferred wakeup cpu
Date: Fri, 19 Dec 2008 14:19:28 -0800	[thread overview]
Message-ID: <20081219141928.3c2939ef.akpm@linux-foundation.org> (raw)
In-Reply-To: <20081219135508.9c6217ba.akpm@linux-foundation.org>

On Fri, 19 Dec 2008 13:55:08 -0800
Andrew Morton <akpm@linux-foundation.org> wrote:

> On Thu, 18 Dec 2008 23:26:22 +0530
> Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com> wrote:
> 
> > When the system utilisation is low and more cpus are idle,
> > then the process waking up from sleep should prefer to
> > wakeup an idle cpu from semi-idle cpu package (multi core
> > package) rather than a completely idle cpu package which
> > would waste power.
> > 
> > Use the sched_mc balance logic in find_busiest_group() to
> > nominate a preferred wakeup cpu.
> > 
> > This info can be sored in appropriate sched_domain, but
> > updating this info in all copies of sched_domain is not
> > practical.  Hence this information is stored in root_domain
> > struct which is one copy per partitioned sched domain.
> > The root_domain can be accessed from each cpu's runqueue
> > and there is one copy per partitioned sched domain.
> > 
> 
> kernel/sched.c: In function 'find_busiest_group':
> kernel/sched.c:3403: warning: passing argument 1 of '__first_cpu' from incompatible pointer type
> 
> 
> kernel/sched.c: In function 'schedule':
> kernel/sched.c:3679: warning: 'active_balance' may be used uninitialized in this function
> 

I left those unfixed and...

[   62.307607] initcall init_nfsd+0x0/0xe2 [nfsd] returned 0 after 251 usecs
[   62.399426] NFSD: Using /var/lib/nfs/v4recovery as the NFSv4 state recovery directory
[   74.009934] divide error: 0000 [#1] SMP 
[   74.010085] last sysfs file: /sys/devices/pci0000:00/0000:00:02.0/0000:01:00.0/0000:02:02.0/0000:05:00.1/irq
[   74.010147] CPU 1 
[   74.010241] Modules linked in: nfsd auth_rpcgss exportfs lockd nfs_acl autofs4 hidp rfcomm l2cap bluetooth sunrpc ipv6 dm_mirror dm_region_hash dm_log dm_multipath dm_mod rfkill input_polldev sbs sbshc battery ac parport_pc lp parport snd_hda_codec_realtek sg snd_hda_intel floppy snd_hda_codec snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device ide_cd_mod cdrom snd_pcm_oss snd_mixer_oss serio_raw snd_pcm button shpchp snd_timer i2c_i801 i2c_core snd soundcore snd_page_alloc pcspkr ehci_hcd ohci_hcd uhci_hcd
[   74.012821] Pid: 0, comm: swapper Not tainted 2.6.28-rc9-mm1 #1
[   74.012875] RIP: 0010:[<ffffffff802375d8>]  [<ffffffff802375d8>] tg_shares_up+0x113/0x1f1
[   74.012982] RSP: 0018:ffff88025e057d88  EFLAGS: 00010246
[   74.013038] RAX: 0000000000000000 RBX: ffff880028063900 RCX: ffff880028058dc0
[   74.013095] RDX: 0000000000000000 RSI: 0000000000000000 RDI: 00000000000000ff
[   74.013152] RBP: ffff88025e057dd8 R08: 0000000000000000 R09: 0000000000000000
[   74.013209] R10: ffff880028067640 R11: 0000000000000022 R12: ffff880028063900
[   74.013264] R13: ffffffff802374c5 R14: ffffffff8022c546 R15: ffffffff8079b4a0
[   74.013321] FS:  0000000000000000(0000) GS:ffff88025e0385c0(0000) knlGS:0000000000000000
[   74.013381] CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b
[   74.013435] CR2: 00007fdb795af8f0 CR3: 0000000000201000 CR4: 00000000000006e0
[   74.013489] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[   74.013545] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[   74.013602] Process swapper (pid: 0, threadinfo ffff88025e050000, task ffff88025e03f870)
[   74.013661] Stack:
[   74.013708]  0000000000000000 ffff880028063a00 0000000000000000 0000000000000000
[   74.013893]  0000000000000008 ffffffff8079b4a0 ffff880028063900 ffffffff802374c5
[   74.013893]  ffffffff8022c546 0000000000000030 ffff88025e057e08 ffffffff8022c530
[   74.013893] Call Trace:
[   74.013893]  <IRQ> <0> [<ffffffff802374c5>] ? tg_shares_up+0x0/0x1f1
[   74.013893]  [<ffffffff8022c546>] ? tg_nop+0x0/0x8
[   74.013893]  [<ffffffff8022c530>] walk_tg_tree+0x5f/0x75
[   74.013893]  [<ffffffff8022c65c>] update_shares+0x46/0x4a
[   74.013893]  [<ffffffff80235fe4>] run_rebalance_domains+0x192/0x522
[   74.013893]  [<ffffffff802543eb>] ? getnstimeofday+0x3d/0x9e
[   74.013893]  [<ffffffff8052bd73>] ? _spin_unlock_irq+0x9/0xc
[   74.013893]  [<ffffffff8024057f>] __do_softirq+0xa3/0x164
[   74.013893]  [<ffffffff8020d0bc>] call_softirq+0x1c/0x28
[   74.013893]  [<ffffffff8020e19d>] do_softirq+0x31/0x73
[   74.013893]  [<ffffffff802402ca>] irq_exit+0x3f/0x41
[   74.013893]  [<ffffffff8021e71d>] smp_apic_timer_interrupt+0x94/0xad
[   74.013893]  [<ffffffff8020caf3>] apic_timer_interrupt+0x13/0x20
[   74.013893]  <EOI> <0>Code: 8b 47 08 4a 8b 0c 00 48 85 c9 0f 84 c3 00 00 00 49 8b 47 10 4a 8b 04 00 48 8b 80 a8 00 00 00 48 85 c0 74 13 48 0f af 45 c8 31 d2 <48> f7 75 c0 49 89 c6 48 89 c6 eb 16 48 63 55 d0 48 8b 45 c8 45 
[   74.013893] RIP  [<ffffffff802375d8>] tg_shares_up+0x113/0x1f1
[   74.013893]  RSP <ffff88025e057d88>
[   74.020022] ---[ end trace 2fc4046e394f2312 ]---
[   74.020188] Kernel panic - not syncing: Fatal exception in interrupt

config: http://userweb.kernel.org/~akpm/config-akpm2.txt

I'll try hacking some div-by-zero avoidance into update_group_shares_cpu().

  reply	other threads:[~2008-12-19 22:26 UTC|newest]

Thread overview: 62+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-12-18 17:55 [PATCH v7 0/8] Tunable sched_mc_power_savings=n Vaidyanathan Srinivasan
2008-12-18 17:56 ` [PATCH v7 1/8] sched: convert BALANCE_FOR_xx_POWER to inline functions Vaidyanathan Srinivasan
2008-12-18 17:56 ` [PATCH v7 2/8] sched: Framework for sched_mc/smt_power_savings=N Vaidyanathan Srinivasan
2008-12-18 17:56 ` [PATCH v7 3/8] sched: favour lower logical cpu number for sched_mc balance Vaidyanathan Srinivasan
2008-12-18 17:56 ` [PATCH v7 4/8] sched: nominate preferred wakeup cpu Vaidyanathan Srinivasan
2008-12-18 18:12   ` Balbir Singh
2008-12-19 21:55   ` Andrew Morton
2008-12-19 22:19     ` Andrew Morton [this message]
2008-12-19 22:27       ` Ingo Molnar
2008-12-19 22:31         ` Ingo Molnar
2008-12-19 22:38           ` Andrew Morton
2008-12-19 22:54             ` Ingo Molnar
2008-12-20  4:36     ` Vaidyanathan Srinivasan
2008-12-20  4:44       ` Andrew Morton
2008-12-20  7:54         ` Ingo Molnar
2008-12-20 10:02         ` Vaidyanathan Srinivasan
2008-12-20 10:36           ` Vaidyanathan Srinivasan
2008-12-20 10:56             ` Vaidyanathan Srinivasan
2008-12-21  8:46               ` Ingo Molnar
2008-12-18 17:56 ` [PATCH v7 5/8] sched: bias task wakeups to preferred semi-idle packages Vaidyanathan Srinivasan
2008-12-18 18:11   ` Balbir Singh
2008-12-18 17:56 ` [PATCH v7 6/8] sched: activate active load balancing in new idle cpus Vaidyanathan Srinivasan
2008-12-18 17:56 ` [PATCH v7 7/8] sched: add SD_BALANCE_NEWIDLE at MC and CPU level for sched_mc>0 Vaidyanathan Srinivasan
2008-12-18 17:56 ` [PATCH v7 8/8] sched: idle_balance() does not call load_balance_newidle() Vaidyanathan Srinivasan
2008-12-18 18:12   ` Balbir Singh
2008-12-18 20:17     ` Ingo Molnar
2008-12-18 20:19 ` [PATCH v7 0/8] Tunable sched_mc_power_savings=n Ingo Molnar
2008-12-18 20:31   ` Ingo Molnar
2008-12-19  8:29     ` Vaidyanathan Srinivasan
2008-12-19  8:24   ` Vaidyanathan Srinivasan
2008-12-19 13:34   ` Vaidyanathan Srinivasan
2008-12-29 23:43 ` MinChan Kim
2008-12-30  2:48   ` Balbir Singh
2008-12-30  6:21     ` Ingo Molnar
2008-12-30  6:44       ` Balbir Singh
2008-12-30  7:20         ` Ingo Molnar
2008-12-30 18:07       ` Vaidyanathan Srinivasan
2009-01-02  7:26         ` Vaidyanathan Srinivasan
2009-01-02 22:16           ` Ingo Molnar
2009-01-03  7:29             ` Mike Galbraith
2009-01-03 10:16               ` Vaidyanathan Srinivasan
2009-01-03 11:22                 ` Mike Galbraith
2009-01-04 15:00                   ` Mike Galbraith
2009-01-04 18:19                     ` Vaidyanathan Srinivasan
2009-01-04 19:52                       ` Mike Galbraith
2009-01-05  3:20                         ` Vaidyanathan Srinivasan
2009-01-05  4:40                           ` Mike Galbraith
2009-01-05  6:36                             ` Mike Galbraith
2009-01-05 15:19                               ` Mike Galbraith
2009-01-06  9:31                                 ` Mike Galbraith
2009-01-06 15:07                                   ` Vaidyanathan Srinivasan
2009-01-06 17:48                                     ` Mike Galbraith
2009-01-06 18:45                                       ` Balbir Singh
2009-01-07  8:59                                         ` Mike Galbraith
2009-01-07 11:26                                           ` Vaidyanathan Srinivasan
2009-01-07 14:36                                             ` Mike Galbraith
2009-01-07 15:35                                               ` Vaidyanathan Srinivasan
2009-01-08  8:06                                                 ` Mike Galbraith
2009-01-08 17:46                                                   ` Vaidyanathan Srinivasan
2009-01-09  6:00                                                     ` Mike Galbraith
2009-01-06 14:54                             ` Vaidyanathan Srinivasan
2008-12-30 17:31     ` Vaidyanathan Srinivasan

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=20081219141928.3c2939ef.akpm@linux-foundation.org \
    --to=akpm@linux-foundation.org \
    --cc=a.p.zijlstra@chello.nl \
    --cc=andi@firstfloor.org \
    --cc=balbir@linux.vnet.ibm.com \
    --cc=davecb@sun.com \
    --cc=dipankar@in.ibm.com \
    --cc=ego@in.ibm.com \
    --cc=gregory.haskins@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maxk@qualcomm.com \
    --cc=mingo@elte.hu \
    --cc=pavel@suse.cz \
    --cc=rusty@rustcorp.com.au \
    --cc=suresh.b.siddha@intel.com \
    --cc=svaidy@linux.vnet.ibm.com \
    --cc=tconnors@astro.swin.edu.au \
    --cc=vatsa@linux.vnet.ibm.com \
    --cc=venkatesh.pallipadi@intel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox