public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jeremy Fitzhardinge <jeremy@goop.org>
To: Ingo Molnar <mingo@elte.hu>
Cc: Tejun Heo <tj@kernel.org>,
	paulmck@linux.vnet.ibm.com,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Yinghai Lu <yinghai@kernel.org>, "H. Peter Anvin" <hpa@zytor.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	Brian Gerst <brgerst@gmail.com>
Subject: Re: Seeing "huh, entered softirq 8 ffffffff802682aa preempt_count 00000100, exited with 00010100?" in tip.git
Date: Fri, 30 Jan 2009 16:48:11 -0800	[thread overview]
Message-ID: <49839FCB.3010509@goop.org> (raw)
In-Reply-To: <20090130223455.GA4151@elte.hu>

Ingo Molnar wrote:
> * Ingo Molnar <mingo@elte.hu> wrote:
>
>   
>> * Ingo Molnar <mingo@elte.hu> wrote:
>>
>>     
>>>>>> Call Trace:
>>>>>> [<ffffffff80238c1f>] __schedule_bug+0x62/0x66
>>>>>> [<ffffffff80211d2d>] ? retint_restore_args+0x5/0x20
>>>>>> [<ffffffff80503921>] __schedule+0x95/0x792
>>>>>> [<ffffffff802093aa>] ? _stext+0x3aa/0x1000
>>>>>> [<ffffffff802093aa>] ? _stext+0x3aa/0x1000
>>>>>> [<ffffffff805040c2>] schedule+0xe/0x22
>>>>>> [<ffffffff8020ff04>] cpu_idle+0x70/0x72
>>>>>> [<ffffffff804fc3a0>] cpu_bringup_and_idle+0x13/0x15
>>>>>> Creating initial device nodes
>>>>>> Setting up hotplug.
>>>>>>
>>>>>>
>>>>>> From what I can see, softirq 8 is the RCU softirq.  I don't know if 
>>>>>> the "scheduling while atomic" is related or not, but its two new 
>>>>>> schedulerish symptoms appearing at once, so I think its likely 
>>>>>> they're related.
>>>>>>     
>>>>>>             
>>>>> Hmmm...  Mysterious, as you seem to be using classic RCU, which hasn't
>>>>> changed in awhile.  Which branch of the tip tree are you using?
>>>>>   
>>>>>           
>>>> tip/master.  It looks like this appeared since -rc1.  Mu current  
>>>> suspicion is the percpu changes, since I'm seeing some other strange  
>>>> symptoms.
>>>>         
>>> Cc:-ed more folks - it's either the percpu changes or the APIC changes 
>>> (both occured at about the same time). Or maybe something from upstream.
>>>       
>> managed to bisect one of the boot crashes i've been seeing:
>>
>> a698c823e15149941b0f0281527d0c0d1daf2639 is first bad commit
>> commit a698c823e15149941b0f0281527d0c0d1daf2639
>> Author: Tejun Heo <tj@kernel.org>
>> Date:   Tue Jan 13 20:41:35 2009 +0900
>>
>>     x86: make vmlinux_32.lds.S use PERCPU() macro
>>     
>>     Make vmlinux_32.lds.S use the generic PERCPU() macro instead of open
>>     coding it.  This will ease future changes.
>>     
>>     Signed-off-by: Tejun Heo <tj@kernel.org>
>>     Signed-off-by: Ingo Molnar <mingo@elte.hu>
>>
>>  # bad:  [b16884e8] Merge branch 'x86/urgent'
>>  # good: [f2257b70] Merge git://git.kernel.org/pub/scm/linux/kernel/gi
>>  # good: [345fa66b] Merge branch 'core/locking'
>>  # bad:  [f534caca] Merge branch 'oprofile'
>>  # bad:  [3eb3963f] Merge branch 'cpus4096' into core/percpu
>>  # bad:  [1b437c8c] x86-64: Move irq stats from PDA to per-cpu and con
>>  # good: [54da5b3d] x86: fix broken flush_tlb_others_ipi(), fix
>>  # good: [c2c21745] x86: replacing mp_config_intsrc with mpc_intsrc
>>  # bad:  [c8f3329a] x86: use static _cpu_pda array
>>  # good: [7de6883f] x86: fix pda_to_op()
>>  # bad:  [a698c823] x86: make vmlinux_32.lds.S use PERCPU() macro
>>  # good: [c90aa894] x86: cleanup early setup_percpu references
>>
>> testing the revert now.
>>
>> This might be similar to the other 32-bit linker bug that was tracked 
>> down yesterday and reverted - maybe that revert unearthed a problem with 
>> this commit?
>>     
>
> seems to do the trick.
>
> Tejun, a detail, this config has:
>
>   CONFIG_RELOCATABLE=y
>
> Have you considered 32-bit relocatable kernels too? Config attached.
>   

I found my bug.  Turns out all my CPUs were sharing the same kernel 
stack (!), which means it was working surprisingly well, considering...

    J

  reply	other threads:[~2009-01-31  0:48 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-29 22:12 Seeing "huh, entered softirq 8 ffffffff802682aa preempt_count 00000100, exited with 00010100?" in tip.git Jeremy Fitzhardinge
2009-01-30  0:59 ` Paul E. McKenney
2009-01-30  1:44   ` Jeremy Fitzhardinge
2009-01-30 15:08     ` Ingo Molnar
2009-01-30 16:40       ` Jeremy Fitzhardinge
2009-01-30 22:17       ` Ingo Molnar
2009-01-30 22:34         ` Ingo Molnar
2009-01-31  0:48           ` Jeremy Fitzhardinge [this message]
2009-01-31  0:49             ` H. Peter Anvin
2009-01-31  0:54               ` Ingo Molnar

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=49839FCB.3010509@goop.org \
    --to=jeremy@goop.org \
    --cc=a.p.zijlstra@chello.nl \
    --cc=brgerst@gmail.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=paulmck@linux.vnet.ibm.com \
    --cc=tglx@linutronix.de \
    --cc=tj@kernel.org \
    --cc=yinghai@kernel.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