Re: [BISECTED] Removing BKL causes stack trace during early bootup

From: Frederic Weisbecker
Date: Thu Aug 12 2010 - 14:26:45 EST


(Adding ACPI guys and LKML in Cc)

On Thu, Aug 12, 2010 at 11:09:03AM -0700, walt wrote:
> Hi guys. This commit produces a non-fatal call trace very early during boot
> on my dual-CPU amd64 machine (but not on my single-CPU x86):
>
> commit 5e3d20a68f63fc5a310687d81956c3b96e488b84
> Author: Arnd Bergmann <arnd@xxxxxxx>
> Date: Sun Jul 4 00:02:26 2010 +0200
>
> init: Remove the BKL from startup code
>
> The trace whizzes by so fast that I can't read it, and the trace doesn't appear
> in any of the logs. Is there a way to capture such a trace, like maybe changing
> it to a fatal error?
>
> Thanks!
>


Hi,

Thanks for bisecting this.

May be it's about that:

[ 0.008437] Call Trace:
[ 0.008519] [<ffffffff8106eab3>] ? __debug_show_held_locks+0x13/0x30
[ 0.008605] [<ffffffff81039a65>] __schedule_bug+0x85/0x90
[ 0.008690] [<ffffffff815edf20>] schedule+0x670/0x840
[ 0.008775] [<ffffffff8129ff88>] ? acpi_os_release_object+0x9/0xd
[ 0.008860] [<ffffffff812beca0>] ? acpi_ps_free_op+0x22/0x24
[ 0.008944] [<ffffffff8103ccd5>] __cond_resched+0x25/0x40
[ 0.009008] [<ffffffff815ee1ed>] _cond_resched+0x2d/0x40
[ 0.009091] [<ffffffff812bdf4a>] acpi_ps_complete_op+0x292/0x2a8
[ 0.009174] [<ffffffff812be7b6>] acpi_ps_parse_loop+0x856/0x9ac
[ 0.010008] [<ffffffff812bd81d>] acpi_ps_parse_aml+0x9a/0x2b9
[ 0.010092] [<ffffffff812bc048>] acpi_ns_one_complete_parse+0xfc/0x117
[ 0.010176] [<ffffffff812bc07f>] acpi_ns_parse_table+0x1c/0x35
[ 0.010259] [<ffffffff812b9606>] acpi_ns_load_table+0x4a/0x8c
[ 0.010343] [<ffffffff812c075f>] acpi_load_tables+0xa0/0x164
[ 0.010429] [<ffffffff819751e1>] ? acpi_initialize_subsystem+0x69/0x91
[ 0.010513] [<ffffffff819740df>] acpi_early_init+0x6c/0xf7
[ 0.010598] [<ffffffff8194fd68>] start_kernel+0x3b3/0x3fb
[ 0.010681] [<ffffffff8194f26d>] x86_64_start_reservations+0x7d/0x89
[ 0.010765] [<ffffffff8194f359>] x86_64_start_kernel+0xe0/0xf2


This is due to ACPI that does buggy checks and then sleeps too early.

I have sent a patch "ACPI: Fix wrong atomicity check in preemption point" and
now I wait for its inclusion.

I'm attaching it here.

Could you test it just to check it's about the same warning?
Otherwise we'll try some tricks to get the early boot messages :)

Thanks.

---