From nobody@FreeBSD.org  Wed Dec 27 00:04:07 2000
Return-Path: <nobody@FreeBSD.org>
Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21])
	by hub.freebsd.org (Postfix) with ESMTP id 6338837B400
	for <freebsd-gnats-submit@FreeBSD.org>; Wed, 27 Dec 2000 00:04:06 -0800 (PST)
Received: (from nobody@localhost)
	by freefall.freebsd.org (8.11.1/8.11.1) id eBR846A33220;
	Wed, 27 Dec 2000 00:04:06 -0800 (PST)
	(envelope-from nobody)
Message-Id: <200012270804.eBR846A33220@freefall.freebsd.org>
Date: Wed, 27 Dec 2000 00:04:06 -0800 (PST)
From: ke.fbsd@karlewald.de
Sender: nobody@FreeBSD.org
To: freebsd-gnats-submit@FreeBSD.org
Subject: kernel linking fails for pseudo-device ef without IPX
X-Send-Pr-Version: www-1.0

>Number:         23879
>Category:       kern
>Synopsis:       kernel linking fails for pseudo-device ef without IPX
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    bp
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Dec 27 00:10:01 PST 2000
>Closed-Date:    Mon Jan 1 00:10:59 PST 2001
>Last-Modified:  Tue Jul 10 11:20:01 PDT 2001
>Originator:     Karl Ewald
>Release:        4.2-RELEASE
>Organization:
>Environment:
FreeBSD  4.2-RELEASE FreeBSD 4.2-RELEASE #0: Mon Nov 20 13:02:55 GMT 2000   jkh@bento.FreeBSD.org:/usr/src/sys/compile/GENERIC  i386
>Description:
I have configured a kernel including various options from LINT, especially:
pseudo-device ef
options ETHER_II
options ETHER_8023
options ETHER_8022
options ETHER_SNAP
However I have not included the IPX protocol.

When doing the kernel make, I got a linker error:
...
linking kernel
if_ef.o: In function `ef_load':
if_ef.o(.text+0x842): undefined reference to `ef_inputp'
if_ef.o(.text+0x84c): undefined reference to `ef_outputp'
if_ef.o: In function `ef_unload':
if_ef.o(.text+0x868): undefined reference to `ef_inputp'
if_ef.o(.text+0x872): undefined reference to `ef_outputp'
*** Error code 1
>How-To-Repeat:
in the 4.2-RELEASE kernel source, configure a kernel with pseudo-device ef but without IPX,
make depend, make.
>Fix:
in /usr/src/sys/net/if_ethersubr.c, ef_inputp and ef_outputp are only defined inside a #ifdef IPX
however
in /usr/src/sys/net/if_ef.c, they are used without this condition.
 

>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-bugs->bp 
Responsible-Changed-By: billf 
Responsible-Changed-When: Wed Dec 27 10:27:03 PST 2000 
Responsible-Changed-Why:  
Boris's driver 

http://www.freebsd.org/cgi/query-pr.cgi?pr=23879 
State-Changed-From-To: open->closed 
State-Changed-By: bp 
State-Changed-When: Mon Jan 1 00:10:59 PST 2001 
State-Changed-Why:  
Currently ef(4) driver used only for IPX protocol. However compile-time 
error would be more appropriate in this situation. 

Thanks for report. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=23879 

From: David Bear <david.bear@asu.edu>
To: freebsd-gnats-submit@FreeBSD.org, ke.fbsd@karlewald.de
Cc:  
Subject: Re: kern/23879: kernel linking fails for pseudo-device ef without IPX
Date: Tue, 10 Jul 2001 18:11:04 +0000

 This same error occurs with RELEASE-4.3.  
 
 I am assuming that I don't need multiple ethernet frame types if I'm not
 using IPX?  ie. I don't need 802.3 and ETHERNET_SNAP.. if I'm just using
 TCPIP.  If I comment the psuedo-device ef, does the 'options
 ethernet_II' have any effect on any other device?
 
 -- 
 David Bear
 College of Public Programs/ASU
 voice: 480-965-8257
>Unformatted:
