lkml.org 
[lkml]   [2008]   [Apr]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 1/11] Add generic helpers for arch IPI function calls
    On Tue, Apr 22 2008, Mark Lord wrote:
    > Jens,
    >
    > While you're in there, :)
    >
    > Could you perhaps fix this bug (below) if it still exists?

    I don't understand the bug - what are the shared call buffers you are
    talking of?

    With the changes, there's not even an spin_trylock() in there anymore.
    But I don't see the original bug either, so...


    >
    > >Date: Thu, 15 Nov 2007 12:07:48 -0500
    > >From: Mark Lord <lkml@rtr.ca>
    > >To: Greg KH <gregkh@suse.de>
    > >Cc: Yasunori Goto <y-goto@jp.fujitsu.com>,
    > > Andrew Morton <akpm@linux-foundation.org>,
    > > Alexey Dobriyan <adobriyan@sw.ru>, linux-kernel@vger.kernel.org
    > >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@vger.kernel.org
    > >
    > >... < 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.

    --
    Jens Axboe



    \
     
     \ /
      Last update: 2008-04-23 09:27    [W:0.027 / U:67.180 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site