Subject: kern/3868: ip_ifl LKM can't be loaded
To: None <gnats-bugs@gnats.netbsd.org>
From: Matthias Scheler <tron@lyssa.owl.de>
List: netbsd-bugs
Date: 07/15/1997 21:20:13
>Number:         3868
>Category:       kern
>Synopsis:       ip_ifl LKM can't be loaded
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people (Kernel Bug People)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Jul 15 12:35:00 1997
>Last-Modified:
>Originator:     Matthias Scheler
>Organization:
Matthias Scheler                                http://home.owl.de/~tron/
>Release:        970714
>Environment:
System: NetBSD lyssa 1.2G NetBSD 1.2G (LYSSA) #0: Wed Jun 25 12:04:42 MEST 1997 tron@lyssa:/usr/src/sys/arch/i386/compile/LYSSA i386


>Description:
After I compiled a kernel based on 970714 my system isn't able to load
the ipf LKM any more.

>How-To-Repeat:
# modstat
Type    Id  Off Loadaddr Size Info     Rev Module Name
VFS       0  22 f8893000 0014 f8897000   1 cd9660
VFS       1  21 f889a000 000c f889c000   1 fdesc
VFS       2  20 f889d000 0020 f88a4000   1 msdosfs
VFS       3  19 f88a5000 0008 f88a6000   1 nullfs
VFS       4  18 f88a8000 0008 f88a9000   1 portal
VFS       5  16 f88ab000 000c f88ad000   1 umapfs
DEV       6  29 f88af000 0008 f88b002c   1 ap
# modload -o /var/lkm/if_ipl -e if_ipl_lkmentry /usr/lkm/if_ipl.o
modload: error initializing module: File exists

>Fix:
Sorry, I don't know. 

Anyway there is wrong prototype in "mln_ipl.c":

*** src/sys/lkm/netinet/if_ipl/mln_ipl.c.orig	Mon Jul  7 13:21:07 1997
--- src/sys/lkm/netinet/if_ipl/mln_ipl.c	Tue Jul 15 20:58:40 1997
***************
*** 70,76 ****
  
  extern	int	lkmenodev __P((void));
  
! int	xxxinit __P((struct lkm_table *, int, int));
  static	int	ipl_unload __P((void));
  static	int	ipl_load __P((void));
  static	int	ipl_remove __P((void));
--- 70,76 ----
  
  extern	int	lkmenodev __P((void));
  
! int	if_ipl_lkmentry __P((struct lkm_table *, int, int));
  static	int	ipl_unload __P((void));
  static	int	ipl_load __P((void));
  static	int	ipl_remove __P((void));

>Audit-Trail:
>Unformatted: