On Sun, 10 Sep 2006 15:45:28 GMT, dave <(E-Mail Removed)> wrote:
> On Thu, 7 Sep 2006 07:54:02 -0400, Bob Hauck
><(E-Mail Removed)> wrote:
>
>>On Thu, 07 Sep 2006 09:35:44 GMT, dave <(E-Mail Removed)> wrote:
>>> On Wed, 6 Sep 2006 19:24:28 -0400, Bob Hauck
>>><(E-Mail Removed)> wrote:
>>>
>>>>On Wed, 06 Sep 2006 22:47:56 GMT, dave <(E-Mail Removed)> wrote:
>>> After finishing the installation, loading the same driver it works;
>>> but not with the kernel which boots with the installation.
>>
>>So...how did you finish the install? With 2.6? Now I'm confused.
>
> I finished the installation with the 2.4 without network support, so
> only kernel 2.4 and very few basic things where installed.
Ok, I understand now.
> But in this way lot of things done during install don't complete
> properly, so this is not a solution.
You could make note of those things and then use "dpkg-reconfigure" to
perform the missing setups by hand. It is tedious I know.
The "official" way of doing this kind of install is to boot from
floppies or a CD that supports your hardware, then use "debootstrap" and
"chroot" to install on the target disk after manually partitioning, etc.
>> Anyway, that probably means the kernel that boots with the
>> installation is not configured exactly the same as the final one. It
>> could well be that the 2.6 one is and the 2.4 isn't.
>
> I'm not a kernel-expert to understan in deep what are the requirements
> for a module to load, but I thought that when module support is on and
> the version of the module is correct, the module should load (except
> for other modules needed).
In general the module needs to be compiled against kernel sources that
are configured the same as the kernel the module will be loaded into.
The reason is that some internal kernel symbols may change depending on
the kernel configuration.
It also seems to be required to use the same compiler, or at least the
same major version (i.e. a module compiled with gcc3 probably won't load
into a kernel compiled with gcc4).
In short, there is no defined kernel binary interface, only a source
interface, even at a particular kernel release level. This is why, if
you want to ship binary drivers, you need to supply a "wrapper" to be
compiled for the particular kernel.
The "modversions" thing was supposed to allow for some flexibility in
this but I never had much luck with it. The kernel configurations seem
to have to match pretty closely, although I haven't done a scientific
study of what that means.
--
-| Bob Hauck
-| A proud member of the unhinged moonbat horde.
-|
http://www.haucks.org/