Re: [BUG] implicit declaration of kfree/kzalloc in i2c-i801.c on Alpha

From: Pekka Enberg
Date: Tue Jan 04 2011 - 15:56:20 EST


On Tue, Jan 4, 2011 at 9:37 PM, Matt Turner <mattst88@xxxxxxxxx> wrote:
> On Tue, Jan 4, 2011 at 1:18 AM, Bob Tracy <rct@xxxxxxxxxxxxxxxx> wrote:
>> Another 2.6.37-rc8 build failure on alpha:
>>
>> (...)
>>  CC [M]  drivers/i2c/busses/i2c-i801.o
>> drivers/i2c/busses/i2c-i801.c: In function 'i801_probe':
>> drivers/i2c/busses/i2c-i801.c:737: error: implicit declaration of function 'kzalloc'
>> drivers/i2c/busses/i2c-i801.c:737: warning: assignment makes pointer from integer without a cast
>> drivers/i2c/busses/i2c-i801.c:855: error: implicit declaration of function 'kfree'
>> make[3]: *** [drivers/i2c/busses/i2c-i801.o] Error 1
>> make[2]: *** [drivers/i2c/busses] Error 2
>> make[1]: *** [drivers/i2c] Error 2
>> make: *** [drivers] Error 2
>>
>> --Bob
>
> Is this specific to alpha? I wonder why we don't see this on other platforms?

The x86 version of <asm/pci.h> includes <linux/slab.h> which hides the
problem on x86 at least. There was a big cleanup of implicit
<linux/slab.h> inclusions few months ago which has exposed the
problem.

It's a bug in the driver, just add the include there.

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