Messages in this thread Patch in this message | | | From | Andrzej Krzysztofowicz <> | Subject | IPX fixes for 2.2.2pre/2.2.1-ac | Date | Mon, 22 Feb 1999 19:43:20 +0100 (CET) |
| |
Hi, I enclose some patches against 2.2.2pre5 (or 2.2.1-ac6 as well) for non-TCP/IP network configuration:
1. Fixed Oopses caused by non-initialized network device queues (kernel hangs during "ifconfig ... up" or "rmmod eth0"). 2. Fixed "unresolved symbols" for ipx, af_spx, af_packet when CONFIG_INET=n 3. Fixed compilation of af_spx as module when CONFIG_IPX=y (CONFIG_SPX=m)
First two patches doesn't change anything when CONFIG_INET=y.
Andrzej
***************** PATCH 1 ******************************************* --- linux/drivers/block/genhd.c.old Sat Feb 20 21:07:21 1999 +++ linux/drivers/block/genhd.c Sat Feb 20 21:08:35 1999 @@ -1333,7 +1333,7 @@ #ifdef CONFIG_SCSI scsi_dev_init(); #endif -#ifdef CONFIG_INET +#if defined(CONFIG_INET) || defined(CONFIG_IPX) || defined(CONFIG_IPX_MODULE) net_dev_init(); #endif #ifdef CONFIG_VT ***************** PATCH 2 ******************************************* --- linux/net/netsyms.c.old Fri Feb 19 23:14:17 1999 +++ linux/net/netsyms.c Sun Feb 21 22:05:53 1999 @@ -216,12 +216,21 @@ EXPORT_SYMBOL(br_ioctl); #endif +#ifdef CONFIG_NET +EXPORT_SYMBOL(init_etherdev); /* used by ipx */ +EXPORT_SYMBOL(__release_sock); /* used by af_spx */ +EXPORT_SYMBOL(dev_set_allmulti); /* used by af_packet */ +EXPORT_SYMBOL(dev_set_promiscuity); /* used by af_packet */ +EXPORT_SYMBOL(sklist_remove_socket); /* used by af_packet */ +EXPORT_SYMBOL(rtnl_wait); /* used by af_packet */ +EXPORT_SYMBOL(rtnl_rlockct); /* used by af_packet */ +#endif + #ifdef CONFIG_INET /* Internet layer registration */ EXPORT_SYMBOL(inet_add_protocol); EXPORT_SYMBOL(inet_del_protocol); EXPORT_SYMBOL(rarp_ioctl_hook); -EXPORT_SYMBOL(init_etherdev); EXPORT_SYMBOL(ip_route_output); EXPORT_SYMBOL(icmp_send); EXPORT_SYMBOL(ip_options_compile); @@ -237,7 +246,6 @@ EXPORT_SYMBOL(__ip_finish_output); EXPORT_SYMBOL(inet_dgram_ops); EXPORT_SYMBOL(ip_cmsg_recv); -EXPORT_SYMBOL(__release_sock); /* needed for ip_gre -cw */ EXPORT_SYMBOL(ip_statistics); @@ -369,11 +377,6 @@ EXPORT_SYMBOL(neigh_dump_info); #endif -EXPORT_SYMBOL(dev_set_allmulti); -EXPORT_SYMBOL(dev_set_promiscuity); -EXPORT_SYMBOL(sklist_remove_socket); -EXPORT_SYMBOL(rtnl_wait); -EXPORT_SYMBOL(rtnl_rlockct); EXPORT_SYMBOL(rtnl_lock); EXPORT_SYMBOL(rtnl_unlock); ***************** PATCH 3 ******************************************* --- linux/net/Makefile.old Sat Feb 20 22:06:10 1999 +++ linux/net/Makefile Sat Feb 20 22:07:20 1999 @@ -63,6 +63,8 @@ ifeq ($(CONFIG_IPX),y) SUB_DIRS += ipx +# SPX can be still a module +MOD_SUB_DIRS += ipx else ifeq ($(CONFIG_IPX),m) MOD_SUB_DIRS += ipx --- linux/net/ipx/Makefile.old Sat Feb 20 22:21:49 1999 +++ linux/net/ipx/Makefile Sun Feb 21 16:38:06 1999 @@ -10,8 +10,12 @@ # We only get in/to here if CONFIG_IPX = 'y' or 'm' O_TARGET := ipx.o -M_OBJS := $(O_TARGET) -OX_OBJS += af_ipx.o +M_OBJS := +OX_OBJS := af_ipx.o + +ifeq ($(CONFIG_IPX),m) + M_OBJS += $(O_TARGET) +endif ifeq ($(CONFIG_SYSCTL),y) O_OBJS += sysctl_net_ipx.o ****************************************************************************** # insmod af_spx /lib/modules/2.2.1-ac6/misc/af_spx.o: unresolved symbol __release_sock # insmod af_packet /lib/modules/2.2.1-ac6/misc/af_packet.o: unresolved symbol rtnl_wait /lib/modules/2.2.1-ac6/misc/af_packet.o: unresolved symbol dev_set_allmulti /lib/modules/2.2.1-ac6/misc/af_packet.o: unresolved symbol dev_set_promiscuity /lib/modules/2.2.1-ac6/misc/af_packet.o: unresolved symbol sklist_remove_socket /lib/modules/2.2.1-ac6/misc/af_packet.o: unresolved symbol rtnl_rlockct
Meaningful parts of .config:
CONFIG_EXPERIMENTAL=y [...] CONFIG_MODULES=y # CONFIG_MODVERSIONS is not set CONFIG_KMOD=y [...] CONFIG_NET=y [...] CONFIG_PACKET=m # CONFIG_NETLINK is not set # CONFIG_FIREWALL is not set # CONFIG_NET_ALIAS is not set # CONFIG_FILTER is not set CONFIG_UNIX=m # CONFIG_INET is not set CONFIG_IPX=m # CONFIG_IPX_INTERN is not set CONFIG_SPX=m # CONFIG_ATALK is not set # CONFIG_X25 is not set # CONFIG_LAPB is not set # CONFIG_BRIDGE is not set # CONFIG_LLC is not set # CONFIG_ECONET is not set # CONFIG_WAN_ROUTER is not set # CONFIG_NET_FASTROUTE is not set # CONFIG_NET_HW_FLOWCONTROL is not set # CONFIG_CPU_IS_SLOW is not set [...] CONFIG_NETDEVICES=y [...] CONFIG_NET_ETHERNET=y CONFIG_NET_VENDOR_3COM=y [...] CONFIG_EL3=m [...] CONFIG_PROC_FS=y [...] CONFIG_NCP_FS=m CONFIG_NCPFS_PACKET_SIGNING=y CONFIG_NCPFS_IOCTL_LOCKING=y CONFIG_NCPFS_STRONG=y CONFIG_NCPFS_NFS_NS=y CONFIG_NCPFS_OS2_NS=y CONFIG_NCPFS_MOUNT_SUBDIR=y
-- ======================================================================= Andrzej M. Krzysztofowicz ankry@mif.pg.gda.pl phone (48)(58) 347 14 61 Faculty of Applied Phys. & Math., Technical University of Gdansk - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |