Re: Race condition in module load causing undefined symbols

Andrew Morton
2005-06-10T18:25:42Z

Stephen Lord <lord@xfs.org> wrote:
>
> I am having troubles getting any recent kernel to boot successfully
> on one of my machines, a generic 2.6GHz P4 box with HT enabled
> running an updated Fedora Core 3 distro. This is present in
> 2.6.12-rc6. It does not manifest itself with the Fedora Core
> kernels which have identical initrd contents as far as the
> init script and the set of modules included goes.
>
> The problem manifests itself as various undefined symbols from
> module loads.

Peculiar. Module loading is all synchronous, isn't it?

> ...
> The failures are different on different boots, sometimes the ata_piix
> module cannot find symbols from libata, sometimes ext3 cannot find jbd
> symbols, sometimes dm modules cannot find things from dm-mod, usually
> it is a combination of these. End result is a panic when it cannot
> find the root device.
>
> From the behavior, it appears that a module load is returning
> control to user space before the previous one has got its symbols
> loaded.

I wonder if rather than the intermittency being time-based, it is
load-address-based? For example, suppose there's a bug in the symbol
lookup code?

Have you tried using a different gcc version?