> > > When I compile the aic7xxx support (either old or new)
> > > into the kernel it Oopses.  When I compile it as a module
> > > it getseither a bus error or:
> > > aic7xxx.o: unresolved symbol del_timer_sync
> > > aic7xxx.o: unresolved symbol kernel_flag
> >
> > Are these module load warnings? Bus error or warnings happen with the same
> > identical modules?
>
> Actually I've noticed something curious.  If I compile the
> same kernel sources with the same kernel config, with a cross compiler on
> my PC and a native compiler on my Mac (Linux on both) the modules do not
> seem to be interchangeable.  Should they be? For example I copied the

No, not normally. If the compiler versions differ, code for spinlock_t
initializers will differ between gcc 2.95 and later gcc versions. (That
will actually cause kernel hangs if you force loading of those modules,
see thread on mol modules a few weeks back).
That's just one example - there were a few other #defines for gcc version
checks other than that particular one...

All other things being equal, modules should be interchangeable though.

But back to my question: do you get either bus error or symbol warnings
with the same modules (just different times of module insertion, other
moon phase, different SCSI bus activity, ...)?

> 2.4.22-pre6 cross compiled modules from my PC to my Mac Linux setup
> and the modules would not load into the 2.4.22-pre6 kernel that was
> compiled on my Mac Linux with the same .config file.  When I say
> copied I mean create a tarball of the modules on the PC and untar'd
> them on the Mac.  Both compilers are gcc 3.3.x vintage but the binutils
> may be quite different versions.  I think the cross binutils on the
> PC is a bit older than the binutils on the Debian PPC setup.

Try with CONFIG_MODVERSIONS disabled. binutils might play a role in this,
too - gcc versions being reasonably equal, modules cross compiled should
load fine.

        Michael

Reply via email to