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

Tejun Heo
2010-01-26T03:14:42Z

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