[PATCH] Add call to non-crashing cores through IPI

Catalin Marinas catalin.marinas at arm.com
Tue Nov 23 07:37:04 EST 2010


On 23 November 2010 10:57, Per Fransson <per.fransson.ml at gmail.com> wrote:
>>> Am I right that deadlock can occur only if the same IPI was sent?
>>
>> Not necessarily. It depends on whether the CPU issuing the IPI needs
>> to wait for the completion of the cross-call. If you don't need to
>> wait, you can send the IPI with the interrupts disabled (the platform
>> smp_cross_call is already called with interrupts disabled).
>>
>
> Well, smp_call_function() only optionally waits. As long as we choose not to,
> using that function to ask the other cores to save their states and idle, should
> be ok, right? In that case we don't need another ipi_msg_type and we can do
> it with the interrupts of the ipi caller disabled.

I think that should work but we still have a WARN_ON_ONCE in the
generic smp_call_function_*() if interrupts are disabled.

-- 
Catalin



More information about the linux-arm-kernel mailing list