Subject: Re: [PATCH -next] bcma: main.c needs to include <linux/slab.h>

From: "Arend van Spriel" <[email-masked]>
Date: Mon, 27 Jun 2011 18:49:46 +0200

On 06/27/2011 04:43 PM, Rafał Miłecki wrote:
> W dniu 27 czerwca 2011 16:24 użytkownik Alexey Dobriyan
> <[email-masked]>  napisał:
>> 2011/6/27 Rafał Miłecki<[email-masked]>:
>>> 2011/6/26 Geert Uytterhoeven<[email-masked]>:
>>>> m68k allmodconfig:
>>>>
>>>> drivers/bcma/main.c: In function ‘bcma_release_core_dev’:
>>>> drivers/bcma/main.c:68: error: implicit declaration of function ‘kfree’
>>> We already include slab.h in:
>>> host_pci.c
>>> scan.c
>>> sprom.c
>>>
>>> Maybe we can just include this in bcma.h as a better solution?
>> It isn't better solution.
>> It results in situation where unnecessary inclusion will be done.
>> Maybe it's not the case now, but it will be in future.
> Scanning code is required for every BCMA board, so we already include
> linux/slab.h on every configuration. No matter if this is PCI host
> board, or SoC, or whatever we will support in the future.
> Now we discovered this is also needed in main.c, which will be always compiled.
>
> That's why I think it's safe to include linux/slab.h in bcma_private.h.
> But if that's just my opinion, everybody think it's wrong idea, I'm OK with it.

My rule of thumb is: Header file a.h may only include header b.h when 
a.h needs some definition from b.h. Convenience is never a good reason 
for nested includes.

Gr. AvS

-- 
Almost nobody dances sober, unless they happen to be insane.
-- H.P. Lovecraft --