Subject: Re: [PATCH] Make FC, FDDI, HIPPI and TR tristate

From: David Miller <[email-masked]>
Date: Sat, 29 Dec 2007 00:18:15 -0800 (PST)

From: Jan Engelhardt <[email-masked]>
Date: Sat, 29 Dec 2007 00:45:12 +0100 (CET)

> Turn CONFIG_FC, CONFIG_FDDI, CONFIG_HIPPI and CONFIG_TR into tristate
> so they can be built as modules. This will allow CONFIG_LLC to be
> built as a module too, overall reducing the core kernel image size.

You can't just do things like this.

Now, you have to go over the whole tree and look for
CONFIG_FOO ifdefs in this group and change them all into:

#if defined(CONFIG_FOO) || defined(CONFIG_FOO_MODULE)

as we already do for things like IPV6.

This is most important in cases where these ifdefs
guard inclusion of members into core networking
datastructures, or control the definition of global
CPP macro defines, etc.

One particular instance that needs fixing is the
CONFIG_TR ifdef check in include/linux/netdevice.h

I'd like you to grep over the whole tree looking for
other potential problems like this before resubmitting
this patch.