Bug 79912

Summary: LTC Bugzilla 1470 - No datagrams received from client machine
Product: [Retired] Red Hat Linux Reporter: Kaena Freitas <kaena>
Component: kernelAssignee: Guy Streeter <streeter>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 7.1CC: nobody
Target Milestone: ---   
Target Release: ---   
Hardware: powerpc   
OS: Linux   
Whiteboard:
Fixed In Version: RHEL 3.0 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2003-05-21 17:18:04 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
multicast fix for pcnet32 none

Description Kaena Freitas 2002-12-17 23:58:18 UTC
Hardware Environment:

2 p640 4-way machines (model:7026-B80). One is the client and the other one is
the server.

# cat /proc/cpuinfo
processor       : 0
cpu             : POWER3 (630+)
clock           : 375MHz
revision        : 1.4
bogomips        : 374.99

processor       : 1
cpu             : POWER3 (630+)
clock           : 375MHz
revision        : 1.4
bogomips        : 374.99

processor       : 2
cpu             : POWER3 (630+)
clock           : 375MHz
revision        : 1.4
bogomips        : 374.99

processor       : 3
cpu             : POWER3 (630+)
clock           : 375MHz
revision        : 1.4
bogomips        : 374.99

total bogomips  : 1499.99
machine         : CHRP IBM,7026-B80

# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2             249M  130M  106M  55% /
/dev/sda6             4.1G   44k  3.9G   1% /home
/dev/sda7             4.1G  1.3G  2.6G  33% /usr
/dev/sda8             249M   36M  200M  16% /var

********************************************************************************
Software Environment:

LTP 20021008 release.

Red Hat Linux release 7.1 (Seawolf)
Linux rh2lte.apt.austin.ibm.com 2.4.9-23.19.7 #1 SMP Tue Oct 8 17:12:46 CDT 2002
ppc64 unknown
 
Gnu C                  2.96
Gnu make               3.79.1
binutils               2.10.91.0.2
util-linux             2.11f
mount                  2.11g
modutils               2.4.14
e2fsprogs              1.26
PPP                    2.4.0
isdn4k-utils           3.1pre1
Linux C Library        2.2.4
Dynamic linker (ldd)   2.2.4
Procps                 2.0.7
Net-tools              1.57
Console-tools          0.3.3
Sh-utils               2.0
Modules Loaded         nfs nfsd lockd sunrpc autofs4 pcnet32 md

********************************************************************************
Steps to Reproduce:
1.Install LTP
2.Run networktests.sh under LTP home directory.
3.Or you can run ./mc_commo under its directory.

********************************************************************************
Actual Results:

Result from output:
<<<test_start>>>
tag=mc_commo stime=1036119170
cmdline="export TCsrc=$LTPROOT/testcases/network/multicast/mc_commo; mc_commo"
contacts=""
analysis=exit
initiation_status="ok"
<<<test_output>>>
+ TC=mc_commo
+ TCsrc=/root/ltp-20021008/testcases/network/multicast/mc_commo
+ TCtmp=/tmp/mc_commo.22968
+ CLEANUP=ON
+ EXECUTABLES=mc_recv
+ REMOTE_EXEC=mc_send
+ LTPROOT=/root/ltp-20021008
+ TTL=10
+ PORT=3333
+ RHOST=rh2lte.apt.austin.ibm.com
+ OUTFILE=/tmp/mc_commo.22968/mc_commo_out
+ NUMLOOPS=2
++ grep addresses:
+++ hostname
++ awk '{print $2}'
++ /root/ltp-20021008/tools/gethost rh3lte
+ INTERFACE=9.3.117.68
+ this_file=mc_commo
+ trap interrupt_test 2
+ do_setup
+ mkdir -p /tmp/mc_commo.22968
++ ps -ewf
++ grep '[m]c_commo'
++ wc -l
++ awk '{print $1}'
+ OCTET=3
+ GROUP_ADDR=224.0.0.3
+ do_test
+ set -x
+ echo 'mc_commo: doing /root/ltp-20021008/testcases/bin/mc_commo.'
mc_commo: doing /root/ltp-20021008/testcases/bin/mc_commo.
+ COUNT=1
+ '[' 1 -le 2 ']'
+ echo 'Starting mc_recv on 224.0.0.3 9.3.117.68 3333'
Starting mc_recv on 224.0.0.3 9.3.117.68 3333
+ SERVER_PID=22981
+ /root/ltp-20021008/testcases/network/multicast/mc_commo/mc_recv 224.0.0.3
9.3.117.68 3333
+ sleep 5
+ ps -ewf
+ grep mc_recv
+ grep -v grep
root     22981 22968  0 20:52 pts/0    00:00:00
/root/ltp-20021008/testcases/network/multicast/mc_commo/mc_recv 224.0.0.3
9.3.117.68
+ '[' 0 = 0 ']'
+ grep -q 'cannot join group' /tmp/mc_commo.22968/mc_commo_out
+ '[' 1 = 0 ']'
+ netstat -ng
+ grep -q 224.0.0.3
+ '[' 0 = 0 ']'
+ echo 'Running ping to verify group can be reached '
Running ping to verify group can be reached
+ ping -c5 224.0.0.3
+ '[' 0 = 0 ']'
+ echo 'Running on rh2lte.apt.austin.ibm.com mc_send 224.0.0.3
rh2lte.apt.austin.ibm.com 3333 10'
Running on rh2lte.apt.austin.ibm.com mc_send 224.0.0.3 rh2lte.apt.austin.ibm.com
3333 10+ sleep 10
+ rsh -n -l root rh2lte.apt.austin.ibm.com
/root/ltp-20021008/testcases/network/multicast/mc_commo/mc_send 224.0.0.3
rh2lte.apt.austin.ibm.com 3333 10
+ rsh -n -l root rh2lte.apt.austin.ibm.com 'ps -ewf | grep mc_send | grep -v
grep'
root     30814 30813  0 15:44 ?        00:00:00
/root/ltp-20021008/testcases/network/multicast/mc_commo/mc_send 224.0.0.3
rh2lte.apt
+ '[' 0 = 0 ']'
+ echo 'Waiting for 100 sec.! Do not interrupt.'
Waiting for 100 sec.! Do not interrupt.
+ sleep 100
+ ((  COUNT = 1 + 1  ))
+ '[' 2 -le 2 ']'
+ echo 'Starting mc_recv on 224.0.0.3 9.3.117.68 3333'
Starting mc_recv on 224.0.0.3 9.3.117.68 3333
+ SERVER_PID=22994
+ /root/ltp-20021008/testcases/network/multicast/mc_commo/mc_recv 224.0.0.3
9.3.117.68 3333
+ sleep 5
+ ps -ewf
+ grep mc_recv
+ grep -v grep
root     22981 22968  0 20:52 pts/0    00:00:00
/root/ltp-20021008/testcases/network/multicast/mc_commo/mc_recv 224.0.0.3
9.3.117.68
root     22994 22968  0 20:54 pts/0    00:00:00
/root/ltp-20021008/testcases/network/multicast/mc_commo/mc_recv 224.0.0.3
9.3.117.68
+ '[' 0 = 0 ']'
+ grep -q 'cannot join group' /tmp/mc_commo.22968/mc_commo_out
+ '[' 1 = 0 ']'
+ netstat -ng
+ grep -q 224.0.0.3
+ '[' 0 = 0 ']'
+ echo 'Running ping to verify group can be reached '
Running ping to verify group can be reached
+ ping -c5 224.0.0.3
+ '[' 0 = 0 ']'
+ echo 'Running on rh2lte.apt.austin.ibm.com mc_send 224.0.0.3
rh2lte.apt.austin.ibm.com 3333 10'
Running on rh2lte.apt.austin.ibm.com mc_send 224.0.0.3 rh2lte.apt.austin.ibm.com
3333 10+ sleep 10
+ rsh -n -l root rh2lte.apt.austin.ibm.com
/root/ltp-20021008/testcases/network/multicast/mc_commo/mc_send 224.0.0.3
rh2lte.apt.austin.ibm.com 3333 10
+ rsh -n -l root rh2lte.apt.austin.ibm.com 'ps -ewf | grep mc_send | grep -v
grep'
root     30821 30820  0 15:46 ?        00:00:00
/root/ltp-20021008/testcases/network/multicast/mc_commo/mc_send 224.0.0.3
rh2lte.apt
+ '[' 0 = 0 ']'
+ echo 'Waiting for 100 sec.! Do not interrupt.'
Waiting for 100 sec.! Do not interrupt.
+ sleep 100
+ ((  COUNT = 2 + 1  ))
+ '[' 3 -le 2 ']'
+ grep -q 'rh2lte.apt.austin.ibm.com [0-9] [0-9]'
/tmp/mc_commo.22968/mc_commo_out
+ '[' 1 = 0 ']'
+ end_testcase 'NO Datagrams received from rh2lte.apt.austin.ibm.com'
+ set -x
+ echo 'mc_commo: doing /root/ltp-20021008/testcases/bin/mc_commo.'
mc_commo: doing /root/ltp-20021008/testcases/bin/mc_commo.
+ '[' ON = ON ']'
+ do_cleanup
+ set -x
+ echo 'mc_commo: doing /root/ltp-20021008/testcases/bin/mc_commo.'
mc_commo: doing /root/ltp-20021008/testcases/bin/mc_commo.
+ echo 'Killing all recv processes!!'
Killing all recv processes!!
+ kill -9 22994
+ rm -rf /tmp/mc_commo.22968/pingfile
/root/ltp-20021008/testcases/bin/mc_commo: line 13: 22994
Killed                  $TCsrc/$EXECUTABLES $GROUP_ADDR $INTERFACE $PORT
>>$OUTFILE
+ rm -rf /tmp/mc_commo.22968/mc_commo_out
+ rm -rf /tmp/mc_commo.22968
+ '[' 1 = 0 ']'
+ echo 'Test Failed: NO Datagrams received from rh2lte.apt.austin.ibm.com'
Test Failed: NO Datagrams received from rh2lte.apt.austin.ibm.com


********************************************************************************
Expected Results: Test should pass.

********************************************************************************
Additional Information:
This is a multicast related test. It could pass if the client and server are the
same machine, but gets failed on different machines.

Comment 1 Guy Streeter 2003-01-27 23:39:38 UTC
I am not able to get the mutlicast send/recv test programs to work on pSeries on
any kernel, including the very latest IBM patches for 2.4.21-pre3.
Do you have any setup where this works? (pSeries, Linux, pcnet32)?

Comment 2 Kaena Freitas 2003-01-29 17:16:49 UTC
------- Additional Comments From lge.com  2003-01-29 12:00 -------
The systems I used for the tests are 2 p640s with RedHat 7.1, 2.4.9 kernel. And 
the network adaptor used is AMD PCNET32. David Stevens (LTC networking team) 
and I digged into the problem a little bit, we found out most likely it is a 
pcnet32 device driver problem.


Comment 3 Guy Streeter 2003-01-29 17:52:25 UTC
Does this mean that someone at IBM will work on a fix?

Comment 4 Guy Streeter 2003-02-19 17:30:28 UTC
Created attachment 90190 [details]
multicast fix for pcnet32

The attached patch corrects multicast receive on pcnet32 devices.
Note that the LTP multicast test has an implementation error that can cause it
to fail when using hostnames. To be sure the test runs correctly, use IP
addresses instead.

Comment 5 Kaena Freitas 2003-05-21 17:18:04 UTC
Fixed in current release

Comment 6 Guy Streeter 2003-06-25 17:40:44 UTC
An errata has been issued which should help the problem described in this bug report. 
This report is therefore being closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files, please follow the link below. You may reopen 
this bug report if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2003-190.html