You should not have to build a kernel of your own today for two reasons:

1. since the O(1) scheduler that was introduced in kernel 2.4-2.6, there
is no impact in performance, and
2. modern systems have enough memory to have non-needed modules loaded.

I disagree with "sterling" on that there are few modules compiled into
modern kernels.  "Few" is ambiguous. Most kernels support a crap-load of
hard-drive controllers, raid controllers, etc, so that people do not have
to "modprobe" when they bring up a system in the case that automatic
hardware detection via "lspci" and the like does not work or hardware
paremeters are missing. "Few" modules serve most people's needs (80% or
more) out of the box that way.

Slackware comes with _so_many_ harddrive controllers. But Patrick knows
better. So, he has a "huge" kernel that will take care of 99% of your
needs on any system, aa "scsi" which is a misnomer for legacy reasons
and covers what I said above (a lot f ocontrollers) and some other more
minimal kernels.

As a rule to live by, if you are concerned with your kernel being too large
because of memory requirements, you are wasting your time with really old
hardware. This does not apply to Raspberry Pi people, or anyone running
any embedded ARM based Linux, but those people should know what they are
doing to begin with...

As for quickly configuring a kernel, do not throw away your old .config
files. Throw them in the new kernel source directry and you will mostly
have to "not anser" for including modules as it will be preset to what
you had in tthe earlier kernel build.

Even compiling the kernel is not a problem now, and it used to take days
when I was being stupid back in the day. I have not had to build a kernel
in over 6 years.
IN