Subject: Unresolved symbols

From: David Kesselring <[email-masked]>
Date: Tue, 28 Oct 2003 13:12:18 -0500 (EST)

I've been unabled to track down these errors. I think it's because I don't
understand how some of the linux h files are used by an independently
compiled kernel module. Why is "extern __inline__" used in a file like
atomic.h.
If any of you have any pointers on the following errors, I'd appreciate
your comments.
/lib/modules/2.4.22/kernel/net/pcifvnet.o: unresolved symbol
atomic_sub_return
/lib/modules/2.4.22/kernel/net/pcifvnet.o: unresolved symbol __udelay
/lib/modules/2.4.22/kernel/net/pcifvnet.o: unresolved symbol atomic_add
/lib/modules/2.4.22/kernel/net/pcifvnet.o: unresolved symbol strcpy
/lib/modules/2.4.22/kernel/net/pcifvnet.o: unresolved symbol atomic_sub

Thanks,

David Kesselring
Atmel MMC
[email-masked]
919-462-6587

---

From: David Daney <[email-masked]>
Date: Tue, 28 Oct 2003 10:31:59 -0800

>/lib/modules/2.4.22/kernel/net/pcifvnet.o: unresolved symbol atomic_sub
Often if you don't compile with optimization turned on you get things 
like this.  You have to compile with optimization set high enough to get 
inlining enabled.

David Daney.

---

From: Jan-Benedict Glaw <[email-masked]>
Date: Tue, 28 Oct 2003 19:53:33 +0100

On Tue, 2003-10-28 10:31:59 -0800, David Daney <[email-masked]>
> like this.  You have to compile with optimization set high enough to get 

Right. Once again, if you compile modules outside the kernel, please:

	Use exactly the GCC parameters that are used by in-kernel-tree
			compiled modules!

MfG, JBG

-- 
   Jan-Benedict Glaw       [email-masked]    . +49-172-7608481
   "Eine Freie Meinung in  einem Freien Kopf    | Gegen Zensur | Gegen Krieg
    fuer einen Freien Staat voll Freier Bürger" | im Internet! |   im Irak!
   ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM | TCPA));

---

From: Geert Uytterhoeven <[email-masked]>
Date: Tue, 28 Oct 2003 21:36:05 +0100 (MET)

> compiled kernel module. Why is "extern __inline__" used in a file like

`extern inline' is wrong, and should be replaced by `static inline', which is
work-in-progress.

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email-masked]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds

---

From: Ralf Baechle <[email-masked]>
Date: Tue, 28 Oct 2003 22:18:29 +0100

On Tue, Oct 28, 2003 at 09:36:05PM +0100, Geert Uytterhoeven wrote:
> Date: Tue, 28 Oct 2003 21:36:05 +0100 (MET)
> From: Geert Uytterhoeven <[email-masked]>
> To: David Kesselring <[email-masked]>
> cc: Linux/MIPS Development <[email-masked]>
> Subject: Re: Unresolved symbols
> Content-Type: TEXT/PLAIN; charset=US-ASCII
> 

I've replaced all extern inline in cvs 2.4 / 2.6.

  Ralf