kern/171532: ndis(4) driver includes 'pccard'-specific code, even if 'device pccard' absent from config

Robert Bonomi bonomi at host128.r-bonomi.com
Tue Sep 11 01:30:04 UTC 2012


>Number:         171532
>Category:       kern
>Synopsis:       ndis(4) driver includes 'pccard'-specific code, even if 'device pccard' absent from config
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Sep 11 01:30:03 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator:     Robert Bonomi
>Release:        8.3-RELEASE  i386
>Organization:
>Environment:
FreeBSD  8.3-RELEAE FreeBSD 8.3-RELEASE #5....  i386
>Description:
Two 'if' blocks, one at lines 562-569, and the other at lines 1083-1084, in
sys/dev/if_ndis/if_ndis.c  are RUN-TIME tests for PCMCIA/PC-Card/CARDBUS
hardware, and reference routines that exist only in the 'device pccard'
support modules.  Kernel linking fails if 'device pccard' is not included,
even if the machine has no pccard hardware.
>How-To-Repeat:
attempt to compile a kernel with
    option NDISAPI
    device ndis
    device wlan
and WITHOUT
    device pcard

observe the linker failure.
>Fix:
bracket each of the 'if ()' blocks identified above with *COMPILE-TIME*
'#if' or '#ifdef' conditionals on 'something' that is set only if 'device pccard' 
is in the config file.

>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list