Subject: Re: loadable device driver
To: =?iso-8859-1?Q?Jarom=EDr_Dolecek?= <jdolecek@netbsd.org>
From: Ignatios Souvatzis <is@netbsd.org>
List: tech-kern
Date: 05/02/2001 20:24:32
On Tue, May 01, 2001 at 08:35:30PM +0200, Jaromír Dolecek wrote:
> Bharani Chadalavada wrote:
> > But it is a bit disappointing to know that lkm is broken. Can you be more
> > specific? What part of it is broken?Is it broken only in netbsd-current or in
> > netbsd 1.5??
>
> It's broken on NetBSD/mips only, it has never worked there.
I think and /arm32 (don't know about /arm26) and /powerpc.
The reason is that the compiler creates one-longword branches to reach
named functions (as opposed to function pointers) that have a limited
range, and that the kernel is linked and operated at addresses "too far"
from the area LKMs are loaded to.
This could be mended by using a toolchain option to always create long
branches for LKMs. Unfortunately, this is not available yet.
Regards,
-is