Subject: Re: [PATCH 7/8] percpu: add __percpu sparse annotations to hw_breakpoint

From: Tejun Heo <[email-masked]>
Date: Tue, 26 Jan 2010 12:10:51 +0900

Hello,

On 01/26/2010 11:48 AM, Al Viro wrote:
> On Tue, Jan 26, 2010 at 11:43:56AM +0900, Tejun Heo wrote:
> 
>>> Eh...  You are leaving that noderef in place in case of array.  And _that_
>>> is not an address space, so casts to AS 0 won't do you any good.
>>
>> Any ideas on how to fix it?
> 
> BTW, before we go any further, which warnings are you getting from sparse
> and which version of sparse are you using?
> 
> noderef is one thing; address_space mess is a different story.  The version
> I have here steps into the former, but not the latter; what are you seeing?

Oops, I too am seeing the noderef thing not the address space warning.

 char *estacks = per_cpu(exception_stacks, cpu);

I get

arch/x86/kernel/cpu/common.c:1149:19: warning: incorrect type in initializer (different modifiers)
arch/x86/kernel/cpu/common.c:1149:19:    expected char *estacks
arch/x86/kernel/cpu/common.c:1149:19:    got char [noderef] *<noident>
  CC      arch/x86/kernel/cpu/common.o

$ rpm -qi sparse
Name        : sparse                       Relocations: (not relocatable)
Version     : 0.4.1.git1                        Vendor: openSUSE
Release     : 3.2                           Build Date: Sat 24 Oct 2009 11:58:16 AM KST

Thanks.

-- 
tejun