lkml.org 
[lkml]   [1999]   [Mar]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subjectipx as a module and CONFIG_MODVERSIONS=y bug/omition in 2.2.2
 Hi.
I'm not a member of this list but I seem to have found a little bug in
kernel 2.2.2.
The problem is: I compiled ipx recently as a module (I didn't use it before)
and I have (for a reason I don't know) CONFIG_MODVERSIONS on. The ipx module
compiled well but reported unresolved symbols on depmod. The symbols are
make_EII_client, destroy_EII_client, make_8023_client, destroy_8023_client.
I looked into the sources and found that linux/net/802/Makefile and
linux/net/ethernet/Makefile don't include files p8023.c and pe2.c as OX_OBJS
so they don't get into linux/include/linux/modversions.h and
linux/include/linux/modules/*.ver, and the abovementioned files .c don't
include <linux/module.h> that would enable them to export symbols as
versioned. I corrected these problems in the patch that is attached.
Please write me if you find the solution to be wrong in any way so that I
would get to know the kernel a little more. 8-) As I said before I don't
subscribe to linux-net.
Thanks in advance for any reply

Jacek Kopecky

E-mail: jacek.kopecky@upol.cz (ISO Latin 2 compatible)
WWW: http://www.inf.upol.cz/~kopeckyj
diff -u linux-2.2.2/net/802/Makefile linux/net/802/Makefile
--- linux-2.2.2/net/802/Makefile Fri Jul 10 22:51:41 1998
+++ linux/net/802/Makefile Wed Feb 24 17:23:07 1999
@@ -8,7 +8,7 @@
# Note 2! The CFLAGS definition is now in the main makefile...

O_TARGET := 802.o
-O_OBJS = p8023.o
+OX_OBJS = p8023.o

ifeq ($(CONFIG_SYSCTL),y)
O_OBJS += sysctl_net_802.o
diff -u linux-2.2.2/net/802/p8023.c linux/net/802/p8023.c
--- linux-2.2.2/net/802/p8023.c Thu Jan 2 14:13:27 1997
+++ linux/net/802/p8023.c Wed Feb 24 17:06:06 1999
@@ -13,6 +13,7 @@
* has done anything like the old IPX.
*/

+#include <linux/module.h>
#include <linux/netdevice.h>
#include <linux/skbuff.h>
#include <net/datalink.h>
diff -u linux-2.2.2/net/ethernet/Makefile linux/net/ethernet/Makefile
--- linux-2.2.2/net/ethernet/Makefile Tue Apr 28 20:10:11 1998
+++ linux/net/ethernet/Makefile Wed Feb 24 17:25:10 1999
@@ -24,7 +24,8 @@
endif

ifdef CONFIG_NET
-O_OBJS := $(OBJS) $(OBJ2)
+O_OBJS := $(OBJS)
+OX_OBJS := $(OBJ2)
endif

include $(TOPDIR)/Rules.make
diff -u linux-2.2.2/net/ethernet/pe2.c linux/net/ethernet/pe2.c
--- linux-2.2.2/net/ethernet/pe2.c Sat May 2 23:22:29 1998
+++ linux/net/ethernet/pe2.c Wed Feb 24 17:05:37 1999
@@ -1,3 +1,4 @@
+#include <linux/module.h>
#include <linux/netdevice.h>
#include <linux/skbuff.h>
#include <net/datalink.h>
\
 
 \ /
  Last update: 2005-03-22 13:50    [W:0.047 / U:0.464 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site