Bug 52122 - Xircom_cb Driver Seizes on Multicast Transmission
Summary: Xircom_cb Driver Seizes on Multicast Transmission
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: kernel-pcmcia-cs
Version: 7.1
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Dave Jones
QA Contact: Brock Organ
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2001-08-20 19:13 UTC by David S Alden
Modified: 2015-01-04 22:01 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2004-11-25 07:24:45 UTC
Embargoed:


Attachments (Terms of Use)

Description David S Alden 2001-08-20 19:13:17 UTC
Description of Problem:
     Supported card Xircom CBEX56G driver 'xircom_cb' on Dell Latitude 
CPx500HG eventually seizes for all LAN transmission after attempt to 
transmit raw multicast packets to group number '224.20.10.5'.  Continuous 
ICMP echo request/reply packets begin to take about 15 seconds then 128 
seconds then 8000 seconds after start of multicast transmission.  
Multicast transmission is unsuccessful.  Interface must be reset to 
restore operation.

Version-Release number of selected component (if applicable):
kernel-pcmcia-cs-3.1.24-2

How Reproducible:
    Every time.

Steps to Reproduce:
1. Invoke 'ping -n W.X.Y.Z'
2. Submit data to multicast application
3. Wait 15 minutes and note seizure of LAN communications

Actual Results:
    Multicast Application Fails to transmit data.

Expected Results:
    Multicast Application successfully transmits data.

Additional Information:
    There was no problem using 'tulip_cb' driver with the identical card
under RedHat Linux 7.0 for either unicast or multicast applications.  
Tulip_cb driver is not included with 'kernel-pcmcia-cs-3.1.24-2'.  
Attempts to build functional tulip_cb driver from 'sourceforge.org' 
'pcmcia-cs-3.1.24' source files have failed to date.  Can no longer use 
XBEM56G for multicast applications.

Comment 1 David S Alden 2001-08-27 20:00:53 UTC
Typos: CBEX56G and XBEM56G should both read CBEM56G.
Kernel: Originally 2.4.2-2 upgraded to 2.4.3-12 for i686.
Resolution Procedure: Build latest tulip_cb driver from 
'pcmcia-cs-3.1.28.tar.gz' available from 'sourceforge.org' by:
1) extracting minimally from the tarball:
   pcmcia-cs-3.1.28/Configure
   pcmcia-cs-3.1.28/Makefile
   pcmcia-cs-3.1.28/config.in
   pcmcia-cs-3.1.28/rules.mk
   pcmcia-cs-3.1.28/clients/Makefile
   pcmcia-cs-3.1.28/clients/tulip_cb.c
   pcmcia-cs-3.1.28/etc/config
   pcmcia-cs-3.1.28/etc/config.opts
   pcmcia-cs-3.1.28/include/pcmcia/driver_ops.h
   pcmcia-cs-3.1.28/include/linux/config.h
but you may also wish to extract:
   pcmcia-cs-3.1.28/BUGS
   pcmcia-cs-3.1.28/CHANGES
   pcmcia-cs-3.1.28/README
   pcmcia-cs-3.1.28/README-2.4
   pcmcia-cs-3.1.28/SUPPORTED.CARDS
   pcmcia-cs-3.1.28/doc/PCMCIA-HOWTO
for reference.  The entire tarball may be extracted if one is willing to 
sacrifice the 4.5MB of disk space (I, for one, am not willing to sacrifice 
multiple MB of precious disk space to build one 40K driver module that should 
have been included in the kernel-pcmcia-cs-3.1.24-2.i386.rpm package in the 
first place).
2) installing the kernel-source-2.4.3-12.i386.rpm, excluding
   /usr/src/linux-2.4.3/Documentation
   /usr/src/linux-2.4.3/arch
   /usr/src/linux-2.4.3/configs
   /usr/src/linux-2.4.3/devfsd
   /usr/src/linux-2.4.3/drivers
   /usr/src/linux-2.4.3/fs
   /usr/src/linux-2.4.3/include/asm-generic
   /usr/src/linux-2.4.3/include/asm-i386
   /usr/src/linux-2.4.3/include/linux/byteorder
   /usr/src/linux-2.4.3/include/linux/lockd
   /usr/src/linux-2.4.3/include/linux/netfilter_ipv4
   /usr/src/linux-2.4.3/include/linux/netfilter_ipv6
   /usr/src/linux-2.4.3/include/linux/nfsd
   /usr/src/linux-2.4.3/include/linux/raid
   /usr/src/linux-2.4.3/include/linux/sunrpc
   /usr/src/linux-2.4.3/include/net
   /usr/src/linux-2.4.3/include/net/irda
   /usr/src/linux-2.4.3/include/pcmcia
   /usr/src/linux-2.4.3/include/scsi
   /usr/src/linux-2.4.3/include/video
   /usr/src/linux-2.4.3/init
   /usr/src/linux-2.4.3/ipc
   /usr/src/linux-2.4.3/lib
   /usr/src/linux-2.4.3/mm
   /usr/src/linux-2.4.3/net
   /usr/src/linux-2.4.3/scripts
from the install and symbolically link '/usr/include/asm' to 
'/usr/src/linux-2.4.3/include/asm' unless you have the 100MB of disk space 
necessary to install the entire kernel source package to spare (I do not).
3) changing directories to 'pcmcia-cs-3.1.28' (wherever you put it) and 
invoking './Configure' (accept all the defaults).
4) changing directories to 'clients' and, if the minimal kernel sources are 
installed, adding the following lines after '#include <linux/netdevice.h>' to 
'tulip_cb.c':
   /* Kernel version 2.4.x and higher */
   #define netif_mark_up(dev) do { } while (0)
   #define netif_mark_down(dev) do { } while (0)
   #define tx_timeout_check(d,h) netif_stop_queue(d)
to avoid the "unresolved symbols" problem in 2.4 kernels.
5) invoking 'make tulip_cb.o'
6) copying the newly built 'tulip_cb.o' driver module to 
'/lib/modules/2.4.3-12/kernel/drivers/net/pcmcia' and symbolically linking it 
to '/lib/modules/2.4.3-12/pcmcia/tulip_cb.o'.
7) editing the '/etc/pcmcia/config' file so all the "xircom_cb" configuration 
entries are changed to "tulip_cb".  It is also recommended to modify the 
CBEM56G bind entry to read simply
   bind "tulip_cb"
instead of the original
   bind "xircom_cb" to 0, "serial_cb" to 1
since the "serial_cb" driver is not included in 
'kernel-pcmcia-cs-3.1.24-2.i386.rpm' and the serial cardbus devices work with 
the standard serial drivers (see bugzilla 52119).
8) moving '/lib/modules/2.4.3-12/kernel/drivers/net/pcmcia/xircom_cb.o' to 
'/lib/modules/2.4.3-12/kernel/drivers/net/pcmcia/xircom_cb.broke' and remove 
the symbolic link '/lib/modules/2.4.3-12/pcmcia/xircom_cb.o'.  Failure to do 
these changes will cause the pcmcia subsystem to load both the "xircom_cb" and 
"tulip_cb" drivers so neither will work.  And finally,
9) Either restarting the pcmcia subsystem or rebooting the machine.




Note You need to log in before you can comment on or make changes to this bug.