From: Mike Travis <travis@sgi.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: Dieter Ries <clip2@gmx.de>, Thomas Gleixner <tglx@linutronix.de>,
"H. Peter Anvin" <hpa@zytor.com>,
rusty@rustcorp.com.au, linux-kernel@vger.kernel.org
Subject: Re: 2.6.29-rc1 does not boot
Date: Sun, 11 Jan 2009 11:14:36 -0800 [thread overview]
Message-ID: <496A451C.5030400@sgi.com> (raw)
In-Reply-To: <20090111190218.GA18651@elte.hu>
Ingo Molnar wrote:
> * Dieter Ries <clip2@gmx.de> wrote:
>
>> Bisected it:
>>
>> ####################################################################
>> 7503bfbae89eba07b46441a5d1594647f6b8ab7d is first bad commit
>> commit 7503bfbae89eba07b46441a5d1594647f6b8ab7d
>> Author: Mike Travis <travis@sgi.com>
>> Date: Sun Jan 4 05:18:09 2009 -0800
>>
>> cpumask: use work_on_cpu in acpi-cpufreq.c for drv_read and drv_write
>>
>> Impact: use new cpumask API to reduce stack usage
>
> thanks, this is very helpful!
>
> Mike, most of the work_on_cpu() patches you did so far were rather
> problematic. Especially something like cpufreq can run rather early during
> bootup or during suspend/resume, so i'm not sure it's correct to rely on
> keventd for it.
>
> I dont see anything particularly wrong in the commit itself - but
> obviously it causes this boot hang - if the bug is not found we'll revert
> it .
All of these are low use functions, primarily used when bringing up
cpus. So reverting the patches does not have a big effect on the stack
size problem.
>
> Also, this bit in get_cur_val():
>
> + if (unlikely(!alloc_cpumask_var(&cmd.mask, GFP_KERNEL)))
> + return 0;
>
> how is that supposed to work? If we fail to allocate a cpumask we just
> ignore the call silently? That cannot be right. (but has no connection to
> this boot problem)
>
> Ingo
Well I did have a different approach but Rusty seemed to really be
attached to work_on_cpu. (The alternate was to add a 2nd cpumask to the
task struct to hold current->cpus_allowed while setting it to a special
cpus_allowed mask.)
In any case, except for the get_online_cpus() call, work_on_cpu is a
fairly straight forward approach. But I'm just not familiar enough
with the whole locking scheme to determine whether the cpu hotplug lock
has already been taken, which is causing this weird lockdep warning.
And I don't know of an adaptive way to do it (figure out in work_on_cpu()
if get_online_cpus() should be called or not.)
About the return 0, it was the default return for another error case.
Should the function panic because it can't read a cpu reg? That seems
wrong too.
Thanks,
Mike
next prev parent reply other threads:[~2009-01-11 19:14 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-01-11 14:55 2.6.29-rc1 does not boot Dieter Ries
2009-01-11 15:19 ` Ingo Molnar
2009-01-11 15:30 ` Dieter Ries
2009-01-11 15:35 ` Ingo Molnar
2009-01-11 15:41 ` Dieter Ries
2009-01-11 18:50 ` Dieter Ries
2009-01-11 19:02 ` Mike Travis
2009-01-11 19:30 ` Dieter Ries
2009-01-12 10:00 ` Ingo Molnar
2009-01-12 17:53 ` Mike Travis
2009-01-12 18:55 ` Ingo Molnar
2009-01-15 0:54 ` Rusty Russell
2009-01-11 19:02 ` Ingo Molnar
2009-01-11 19:14 ` Mike Travis [this message]
2009-01-11 23:19 ` Mike Travis
2009-01-12 1:01 ` H. Peter Anvin
2009-01-12 11:22 ` Maciej Rutecki
2009-01-12 11:26 ` Ingo Molnar
2009-01-12 11:28 ` Maciej Rutecki
2009-01-12 12:10 ` Dieter Ries
2009-01-12 12:21 ` Ingo Molnar
2009-01-12 16:37 ` Dieter Ries
2009-01-12 18:59 ` Ingo Molnar
2009-01-13 4:45 ` Michal Jaegermann
2009-01-12 17:22 ` 2.6.29-rc1 does not boot and fails to resume Rafael J. Wysocki
2009-01-14 1:16 ` 2.6.29-rc1 does not boot Rusty Russell
2009-01-14 11:30 ` Ingo Molnar
2009-01-14 12:47 ` Dieter Ries
2009-01-15 20:01 ` Mike Travis
2009-01-15 21:03 ` Dieter Ries
2009-01-15 21:48 ` Maciej Rutecki
2009-01-15 21:54 ` Mike Travis
2009-01-15 23:04 ` Maciej Rutecki
2009-01-15 23:31 ` Mike Travis
2009-01-15 21:54 ` Mike Travis
2009-01-15 23:02 ` Dieter Ries
2009-01-15 23:30 ` Mike Travis
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=496A451C.5030400@sgi.com \
--to=travis@sgi.com \
--cc=clip2@gmx.de \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=rusty@rustcorp.com.au \
--cc=tglx@linutronix.de \
/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