Re: [PATCH 1/11] Add generic helpers for arch IPI function calls

From: Mark Lord
Date: Tue Apr 22 2008 - 19:12:51 EST


Jens,

While you're in there, :)

Could you perhaps fix this bug (below) if it still exists?

Date: Thu, 15 Nov 2007 12:07:48 -0500
From: Mark Lord <lkml@xxxxxx>
To: Greg KH <gregkh@xxxxxxx>
Cc: Yasunori Goto <y-goto@xxxxxxxxxxxxxx>,
Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>,
Alexey Dobriyan <adobriyan@xxxxx>, linux-kernel@xxxxxxxxxxxxxxx
Subject: Re: EIP is at device_shutdown+0x32/0x60
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Sender: linux-kernel-owner@xxxxxxxxxxxxxxx

... < snip > ...

Greg, I don't know if this is relevant or not,
but x86 has bugs in the halt/reboot code for SMP.

Specifically, in native_smp_send_stop() the code now uses
spin_trylock() to "lock" the shared call buffers,
but then ignores the result.

This means that multiple CPUs can/will clobber each other
in that code.

The second bug, is that this code does not wait for the
target CPUs to actually stop before it continues.

This was the real cause of the failure-to-poweroff problems
I was having with 2.6.23, which we fixed by using CPU hotplug
to disable_nonboot_cpus() before the above code ever got run.

Maybe it's related, maybe not.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/