Patchwork linux-next: build failure after merge of the final tree (acpi tree related)

login
register
mail settings
Submitter Stephen Rothwell
Date Feb. 11, 2013, 7:34 a.m.
Message ID <20130211183409.7519b73ca320baeac5ec886f@canb.auug.org.au>
Download mbox | patch
Permalink /patch/219544/
State Not Applicable
Delegated to: David Miller
Headers show

Comments

Stephen Rothwell - Feb. 11, 2013, 7:34 a.m.
Hi all,

After merging the final tree, today's linux-next build (sparc64 defconfig)
failed like this:

arch/sparc/include/asm/processor.h: Assembler messages:
arch/sparc/include/asm/processor.h:10: Error: Unknown opcode: `extern'

Caused by commit 3a242f58a5f4 ("sparc idle: rename pm_idle to
sparc_idle") from the acpi tree.

I have applied this patch for today:

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Mon, 11 Feb 2013 18:30:19 +1100
Subject: [PATCH] sparc idle: protect variable declarations against the assembler

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 arch/sparc/include/asm/processor.h | 2 ++
 1 file changed, 2 insertions(+)
Bjorn Helgaas - Feb. 11, 2013, 6:22 p.m.
[+cc Rafael, since you mentioned the ACPI tree]

On Mon, Feb 11, 2013 at 12:34 AM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> Hi all,
>
> After merging the final tree, today's linux-next build (sparc64 defconfig)
> failed like this:
>
> arch/sparc/include/asm/processor.h: Assembler messages:
> arch/sparc/include/asm/processor.h:10: Error: Unknown opcode: `extern'
>
> Caused by commit 3a242f58a5f4 ("sparc idle: rename pm_idle to
> sparc_idle") from the acpi tree.
>
> I have applied this patch for today:
>
> From: Stephen Rothwell <sfr@canb.auug.org.au>
> Date: Mon, 11 Feb 2013 18:30:19 +1100
> Subject: [PATCH] sparc idle: protect variable declarations against the assembler
>
> Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
> ---
>  arch/sparc/include/asm/processor.h | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/arch/sparc/include/asm/processor.h b/arch/sparc/include/asm/processor.h
> index 34baa35..622cfa5 100644
> --- a/arch/sparc/include/asm/processor.h
> +++ b/arch/sparc/include/asm/processor.h
> @@ -7,6 +7,8 @@
>  #endif
>
>  #define nop()          __asm__ __volatile__ ("nop")
> +#ifndef __ASSEMBLY__
>  extern void (*sparc_idle)(void);
> +#endif
>
>  #endif
> --
> 1.8.1
>
> --
> Cheers,
> Stephen Rothwell                    sfr@canb.auug.org.au
--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Len Brown - Feb. 11, 2013, 11:23 p.m.
On 02/11/2013 02:34 AM, Stephen Rothwell wrote:
> Hi all,
> 
> After merging the final tree, today's linux-next build (sparc64 defconfig)
> failed like this:
> 
> arch/sparc/include/asm/processor.h: Assembler messages:
> arch/sparc/include/asm/processor.h:10: Error: Unknown opcode: `extern'
> 
> Caused by commit 3a242f58a5f4 ("sparc idle: rename pm_idle to
> sparc_idle") from the acpi tree.
> 
> I have applied this patch for today:
> 
> From: Stephen Rothwell <sfr@canb.auug.org.au>
> Date: Mon, 11 Feb 2013 18:30:19 +1100
> Subject: [PATCH] sparc idle: protect variable declarations against the assembler
> 
> Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
> ---
>  arch/sparc/include/asm/processor.h | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/arch/sparc/include/asm/processor.h b/arch/sparc/include/asm/processor.h
> index 34baa35..622cfa5 100644
> --- a/arch/sparc/include/asm/processor.h
> +++ b/arch/sparc/include/asm/processor.h
> @@ -7,6 +7,8 @@
>  #endif
>  
>  #define nop() 		__asm__ __volatile__ ("nop")
> +#ifndef __ASSEMBLY__
>  extern void (*sparc_idle)(void);
> +#endif
>  
>  #endif
> 

Thank you Stephen!

The last time I compiled a sparc kernel was in 1993:-)

I've added your fix and Dave's Ack to this patch,
and updated it in my next branch.

Len Brown, Intel Open Source Technology Center


--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Sam Ravnborg - Feb. 12, 2013, 5:35 p.m.
> > Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
> > ---
> >  arch/sparc/include/asm/processor.h | 2 ++
> >  1 file changed, 2 insertions(+)
> > 
> > diff --git a/arch/sparc/include/asm/processor.h b/arch/sparc/include/asm/processor.h
> > index 34baa35..622cfa5 100644
> > --- a/arch/sparc/include/asm/processor.h
> > +++ b/arch/sparc/include/asm/processor.h
> > @@ -7,6 +7,8 @@
> >  #endif
> >  
> >  #define nop() 		__asm__ __volatile__ ("nop")
> > +#ifndef __ASSEMBLY__
> >  extern void (*sparc_idle)(void);
> > +#endif
> >  
> >  #endif
> > 
> 
> Thank you Stephen!
> 
> The last time I compiled a sparc kernel was in 1993:-)
> 
> I've added your fix and Dave's Ack to this patch,
> and updated it in my next branch.

Hi Len.

Can you please move the definition of sparc_idle to processor_32.h
It is sparc32 specific - and then we do not need the __ASSEMBLY__ guards
as the sparc32 variant are not used from assembler.

Do you btw. have any hints how I can convert to the cpu_idle thing you hinted?

	Sam
--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Len Brown - Feb. 12, 2013, 6:01 p.m.
On 02/12/2013 12:35 PM, Sam Ravnborg wrote:
>>> Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
>>> ---
>>>  arch/sparc/include/asm/processor.h | 2 ++
>>>  1 file changed, 2 insertions(+)
>>>
>>> diff --git a/arch/sparc/include/asm/processor.h b/arch/sparc/include/asm/processor.h
>>> index 34baa35..622cfa5 100644
>>> --- a/arch/sparc/include/asm/processor.h
>>> +++ b/arch/sparc/include/asm/processor.h
>>> @@ -7,6 +7,8 @@
>>>  #endif
>>>  
>>>  #define nop() 		__asm__ __volatile__ ("nop")
>>> +#ifndef __ASSEMBLY__
>>>  extern void (*sparc_idle)(void);
>>> +#endif
>>>  
>>>  #endif
>>>
>>
>> Thank you Stephen!
>>
>> The last time I compiled a sparc kernel was in 1993:-)
>>
>> I've added your fix and Dave's Ack to this patch,
>> and updated it in my next branch.
> 
> Hi Len.
> 
> Can you please move the definition of sparc_idle to processor_32.h
> It is sparc32 specific - and then we do not need the __ASSEMBLY__ guards
> as the sparc32 variant are not used from assembler.

sure, let me know if attached works.

> Do you btw. have any hints how I can convert to the cpu_idle thing you hinted?

If you have exactly 1 idle state, then cpuidle isn't that interesting,
except, perhaps the standard residency counters.  If you have multiple
states to choose from, cpuidle becomes more valuable.

There are lots of cpuidle users now, including x86's intel_idle,
processor_idle, and the entire ARM tree.

In my tree right now is a patch to convert APM to cpuidle --
though as nobody has tested it yet I can't guarantee it is correct.

patches/issues related to idle should to to linux-pm@vger.kernel.org (on cc)

thanks,
-Len


--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Sam Ravnborg - Feb. 12, 2013, 7:42 p.m.
> 
> > Do you btw. have any hints how I can convert to the cpu_idle thing you hinted?
> 
> If you have exactly 1 idle state, then cpuidle isn't that interesting,
> except, perhaps the standard residency counters.  If you have multiple
> states to choose from, cpuidle becomes more valuable.
> 
> There are lots of cpuidle users now, including x86's intel_idle,
> processor_idle, and the entire ARM tree.

I think LEON has only a single power-down state.
The APC stuff I know nothing about :-(

So for now I think I will let it be as it is then.

	Sam
--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/arch/sparc/include/asm/processor.h b/arch/sparc/include/asm/processor.h
index 34baa35..622cfa5 100644
--- a/arch/sparc/include/asm/processor.h
+++ b/arch/sparc/include/asm/processor.h
@@ -7,6 +7,8 @@ 
 #endif
 
 #define nop() 		__asm__ __volatile__ ("nop")
+#ifndef __ASSEMBLY__
 extern void (*sparc_idle)(void);
+#endif
 
 #endif