home | list info | list archive | date index | thread index

Re: [OCLUG-Tech] how to configure a kernel *minimally* based on running system?

  • Subject: Re: [OCLUG-Tech] how to configure a kernel *minimally* based on running system?
  • From: "Robert P. J. Day" <rpjday [ at ] crashcourse [ dot ] ca>
  • Date: Fri, 26 Apr 2013 13:52:14 -0400 (EDT)
On Fri, 26 Apr 2013, Alex Pilon wrote:

> On Fri, Apr 26, 2013 at 12:48:37PM -0400, Robert P. J. Day wrote:
> > if there's a simple way to do this, i've managed to miss it. i want to
> > configure and build a new kernel for my 64-bit ubuntu laptop to prep
> > for writing and loading numerous kernel modules for an upcoming device
> > driver course, so i did the obvious:
> >
> >   $ make defconfig
>
> 	$ make help | grep localmodconfig
> 	  localmodconfig  - Update current config disabling modules not loaded
>     $ make localmodconfig
> 	$ make nconfig # to remove code that is statically linked, or to
> 	               # add/remove other features
>
> Any modules that aren't loaded won't get compiled in. See `make
> help` in the root of the kernel source directory for further help.

  so here's the interesting testing.  first:

$ make allmodconfig

then check the wireless-related settings:

$ grep ATH9K .config
CONFIG_ATH9K_HW=m
CONFIG_ATH9K_COMMON=m
CONFIG_ATH9K_DFS_DEBUGFS=y
CONFIG_ATH9K_BTCOEX_SUPPORT=y
CONFIG_ATH9K=m
CONFIG_ATH9K_PCI=y
CONFIG_ATH9K_AHB=y
CONFIG_ATH9K_DEBUGFS=y
CONFIG_ATH9K_DFS_CERTIFIED=y
CONFIG_ATH9K_MAC_DEBUG=y
CONFIG_ATH9K_RATE_CONTROL=y
CONFIG_ATH9K_HTC=m
CONFIG_ATH9K_HTC_DEBUGFS=y
$

ok, that looks good. now here's my current module situation:

$ lsmod | grep ath9k
ath9k                 149545  0
mac80211              558577  1 ath9k
ath9k_common           14054  1 ath9k
ath9k_hw              408874  2 ath9k,ath9k_common
ath                    23828  3 ath9k,ath9k_common,ath9k_hw
cfg80211              211955  3 ath9k,mac80211,ath
$

so i obviously want the ath9k stuff to stick around.  so run:

$ make localmodconfig

the *first* run asks me to manually answer some questions, then ends
with an error.  if i run that a second time, i get:

$ make localmodconfig
using config: '.config'
WARNING: ATH9K_HW is required, but nothing in the
  current config selects it.
WARNING: ATH_COMMON is required, but nothing in the
  current config selects it.
WARNING: ATH9K_COMMON is required, but nothing in the
  current config selects it.
module ath9k did not have configs CONFIG_ATH9K
module uas did not have configs CONFIG_USB_UAS
module ath did not have configs CONFIG_ATH_COMMON
module ath9k_hw did not have configs CONFIG_ATH9K_HW
module ath9k_common did not have configs CONFIG_ATH9K_COMMON
#
# configuration written to .config
#

*** Error during update of the configuration.
$

  at which point, we have:

$ grep ATH9K .config
$

which would appear to be simply wrong. i will poke into this further.

rday

-- 

========================================================================
Robert P. J. Day                                 Ottawa, Ontario, CANADA
                        http://crashcourse.ca

Twitter:                                       http://twitter.com/rpjday
LinkedIn:                               http://ca.linkedin.com/in/rpjday
========================================================================