lkml.org 
[lkml]   [2013]   [Jun]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Linux 3.10-rc6
On 06/17/2013 01:59 PM, Andrew Morton wrote:
> On Mon, 17 Jun 2013 13:48:16 -0700 David Daney <ddaney@caviumnetworks.com> wrote:
>
>> On 06/17/2013 01:30 PM, Andrew Morton wrote:
>> [...]
>>>
>>> From: Andrew Morton <akpm@linux-foundation.org>
>>> Subject: include/linux/smp.h:on_each_cpu(): switch back to a macro
>>>
>>> f21afc25f9ed4 ("smp.h: Use local_irq_{save,restore}() in !SMP version of
>>> on_each_cpu()") converted on_each_cpu() to a C function. This required
>>> inclusion of irqflags.h, which broke ia64 and mn10300 (at least) due to
>>> header ordering hell.
>>>
>>> Switch on_each_cpu() back to a macro to fix this.
>>
>> FYI: I have already sent a pair of patches that fix the include
>> dependencies:
>>
>> https://lkml.org/lkml/2013/6/16/113
>> https://lkml.org/lkml/2013/6/17/422
>
> I wasn't cc'ed.
>
>> Obviously, it is Linus' choice as to how best to handle the failure, but
>> I think it is important to know that there are two options (fixing ia64
>> and mn10300, or reverting the patch).
>
> I certainly prefer the inline function over a crappy macro. The
> additional nested include is regrettable - more complexity.
>
> Also, it's good to have the SMP and non-SMP versions either both using
> macros or both using C. Having them different can cause irritating
> unused-variable compilation warnings when using the macro version.

Although all these points are true, they are not why I wrote the patch.

The key difference, for me, between the SMP and !SMP versions is that
the !SMP version unconditionally enables interrupts, and this enabling
interrupts breaks my kernel

>
> I think switch-back-to-a-macro is simplest and safest for now. Perhaps
> you can queue a 3.11 patch which restores the C function and fixes up
> mn10300 and ia64?
>

If the patch is reverted, I will do that.

David Daney



\
 
 \ /
  Last update: 2013-06-17 23:41    [W:0.066 / U:1.312 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site