Mailing List Archive

Re: Difference between kernel config and source config
On Mon, Feb 16, 2004 at 02:36:21PM -0800, Randy Davis wrote:
> Mr. Thimm:
>
> I hope I could ask you a quick and (hopefully) easy question that might
> save me my sanity, concerning the config file used to build the
> "kernel-2.4.20-28_36.rh9.at" kernel that I retrieved from
> http://atrpms.physik.fu-berlin.de/dist/rh9/kernel/. I'm directing this to
> you rather than the mailing list, etc, as I think perhaps only you can
> answer this (I've found no solution in many searches of the affected
> mailing lists and forums).

I am cc'ing the list, too, as similar questions have been raised in
the past.

> I'm running into a problem using the kernel sources package
> "kernel-source-2.4.20-28_36.rh9.at" to build kernels that will support the
> MythTV-required modules. When using your pre-packaged
> "kernel-2.4.20-28_36.rh9.at", my configuration does indeed work and support
> all of the modules without problem; i.e. "depmod" shows no errors, and I
> can use MythTV. (I have to rebuild the kernel to support my wireless
> network card, else I have no network access at the location I intend to use
> this machine).
>
> However, when I compile my own kernel using the
> kernel-source-2.4.20-28_36.rh9.at sources, I get depmod errors. I'm
> wondering if I'm simply missing the .config file you used to make your
> released package?

The config files used is one of /usr/src/linux-2.4/configs/*.config
(depending on arch and flavour, e.g. normal vs smp vs bigmem
etc.). The kernel config of your currently running (rpm) kernel is in
/boot/config-`uname -r`.

If you want to reproduce the same kernel build, you need to copy the
right config to .config, edit the top Makefile to remove the "custom"
safety suffix from the RELEASE variable. Run make oldconfig twice and
the usual make dep, bzImage, modules etc sequence.

> Here's the depmod errors I get on build.
>
> depmod: *** Unresolved symbols in
> /lib/modules/2.4.20-28_36.rh9.at/updates/drivers/media/video/ivtv-fb.o
> [snip]

but these are all not part of the kernel, but extra kernel modules
that will (usually) only work for the kernel build against. E.g. if
you take the kernel and change its configuration, you are likely to
have to rebuild every kernel module, too.

> And, for example, here's the depmod -ae errors for just ivtv-fb.o
>
> depmod: *** Unresolved symbols in
> /lib/modules/2.4.20-28_36.rh9.at/updates/drivers/media/video/ivtv-fb.o
> depmod: __ioremap_R9eac042a
> depmod: add_wait_queue_R219f58fd
> depmod: remove_wait_queue_Re3208283
> depmod: unregister_framebuffer_Rc6d20dc8
> depmod: kmalloc_R93d4cfe6
> depmod: mtrr_add_R56179c5f
> [snip]

This looks like the kernel you built has no module support.

> I've done perhaps 20 trial-and-errors on this, and after two days, I need
> to ask for help. My latest guess is that I need to somehow turn
> framebuffer support on in my custom kernel, but wasn't sure (and its not an
> option I can select with my current config, even though I've turned just
> about everything on I can think of - its still not selectable). Before I
> went to far in the possibly wrong direction, I thought it might be worth
> asking you.

I would not thing this will really work, but I would be glad to be
wrong:

o Install the kernel-source rpm
o Copy the right config files from configs/* to .config.
o Edit the top Makefile to remove the "custom" safety suffix
o Run make oldconfig twice
o Run make {menu,x}config and change the options you need to change
o Build as usual

If the changes are not too big, you have good chances that some
modules will be working. If the number of modules you are interested
in is small I suggest to rebuild them anyway.

AFAICT fb support is already activated in Red Hat kernels and thus the
derived ATrpms kernels. You possibly only need to pass some parameters
to the kernel command line (in lilo or grub).
--
Axel.Thimm@physik.fu-berlin.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.atrpms.net/pipermail/atrpms-users/attachments/20040216/a85fb7db/attachment.bin
Re: Difference between kernel config and source config [ In reply to ]
[Axel.Thimm@physik.fu-berlin.de wrote:]
>If you want to reproduce the same kernel build, you need to copy the
>right config to .config, edit the top Makefile to remove the "custom"
>safety suffix from the RELEASE variable. Run make oldconfig twice and
>the usual make dep, bzImage, modules etc sequence.

Right. Already tried that.

> > Here's the depmod errors I get on build.
> >
> > depmod: *** Unresolved symbols in
> > /lib/modules/2.4.20-28_36.rh9.at/updates/drivers/media/video/ivtv-fb.o
> > [snip]
>but these are all not part of the kernel, but extra kernel modules that
>will (usually) only work for the kernel build against. E.g. if you take
>the kernel and change its configuration, you are likely to have to rebuild
>every kernel module, too.

OK, so I've got to get the sources for ivtv and follow that path. That
makes sense, actually. :-) (I already had them, but ran into problems, so
went back to the pre-packaged ones from the atrpms site - that would seem
to be my mistake).

>This looks like the kernel you built has no module support.

Nope, the kernel is loading the madwifi (ath_pci, wlan, etc) modules for my
WG311, no problem. Although, granted, it does look like that would be the
problem from the depmod output - perhaps the pointers moved, which would
make sense based upon your hint about how the modules are made.

Thank you very much for your fast response. Much appreciated!

Randy