Stuff that could be removed from the defconfig
Note: this isn't tested yet, this is done purely on my experience :)
jbowler: I've been running with most of these changes for some time now on my 2.6.11-mm4 kernel. I've just gone through the list and removed all the ones I hadn't removed before (including power management). I retained Appletalk and IPX as modules - they could well be useful, but I have removed the multicast support. So far as I can see everything works fine.
We don't need the configuration options at runtime. If one wants to know them, one should be man enough to do a pull and look in defconfig.
This puts debugging symbols in the kernel. Even if you would know what to do with the information in case of a crash, people without serial won't see it.
Nobody uses the no-op scheduler, unless you're doing your own hdd management. We don't.
The anticipatory scheduler is quite large and probably overkill for the slug, as the CPU is pretty slow anyway. Discussion about using this or the deadline scheduler may be appropiate at some time.
If using the anticipatory scheduler, remove this. Nobody uses more than one scheduler :) Switching on the fly is overrated.
This is legacy and deprecated. It might be removed from the kernel all together, so if not having this breaks software, the software should be fixed, not the kernel.
We do power management on the slug? [jbowler: does this affect shutdown -h - this should power off the slug but does not do so at present.]
We don't use this on boot (or do we?), so it can be a module.
Please, put this in the kernel by default. We like DHCP. At least I do :)
CONFIG_IP_MULTICAST CONFIG_IP_ADVANCED_ROUTER CONFIG_IP_MULTIPLE_TABLES CONFIG_IP_ROUTE_FWMARK CONFIG_IP_ROUTE_MULTIPATH CONFIG_IP_ROUTE_VERBOSE CONFIG_NET_IPIP CONFIG_NET_IPGRE CONFIG_NET_IPGRE_BROADCAST CONFIG_IP_MROUTE CONFIG_IP_PIMSM_V1 CONFIG_IP_PIMSM_V2 CONFIG_IP_VS CONFIG_NETFILTER CONFIG_BRIDGE_NETFILTER CONFIG_BRIDGE CONFIG_VLAN_8021Q CONFIG_IPX CONFIG_ATALK
You don't need any of these if you aren't being a router. And if you are, you still don't need most of them.
CONFIG_NET_SCHED (...and all other QOS stuff)
Who does network debugging on the slug?
We don't have this.
CONFIG_DEBUG_KERNEL CONFIG_MAGIC_SYSRQ CONFIG_DEBUG_BUGVERBOSE CONFIG_DEBUG_ERRORS CONFIG_DEBUG_LL
This shouldn't be in the default kernel. If you're doing kernel debugging you're compiling your own kernels anyway :)
[cc]smart: Would suggest to keep CONFIG_IP_MULTICAST. We don't need the router functionality, but using multicast other wise is nice, e.g. for NTP.
cwatts: Don't think the NLSU2?'s going to be used as a router, but openvpn is available. Is it possible to compile these as modules, so that when OpenSlug comes out of Alpha ethernet bridging can be possible?
[cc]smart, addendum: Would suggest to add DM_CRYPT as a module/package.