Hey guys, Just ran into some strange behaviour on my test rig. (2x MPC8313E-RDB +2x Intel E1000 PCI)
1. After starting the master server, I'm getting loads of those messages: >>>TDMA: Failed to transmit sync frame! instead of the normal "waiting for slaves...". I need to start the slave first and let him "search for master..." and then the master to get the RTnet handshake... 2. When I'm trying to stop the rtnet service, I'm getting an PCI / DMA problem: /usr/local/rtnet/sbin/rtnet stop RTmac/TDMA: unloaded RTmac: unloaded RTcfg: unloaded removing loopback... RTnet: unregistered rtlo RTnet: unregistered rteth0 RTnet: unloaded pci 0000:00:0f.0: BAR 0: assigned [mem 0x90000000-0x9001ffff] pci 0000:00:0f.0: BAR 0: set to [mem 0x90000000-0x9001ffff] (PCI address [0x90000000-0x9001ffff]) pci 0000:00:0f.0: BAR 1: assigned [mem 0x90020000-0x9003ffff] pci 0000:00:0f.0: BAR 1: set to [mem 0x90020000-0x9003ffff] (PCI address [0x90020000-0x9003ffff]) pci 0000:00:0f.0: BAR 6: assigned [mem 0x80000000-0x8001ffff pref] pci 0000:00:0f.0: BAR 2: assigned [io 0x1000-0x103f] pci 0000:00:0f.0: BAR 2: set to [io 0x1000-0x103f] (PCI address [0x1000-0x103f]) root@nfs1-webcam:~# e1000: Intel(R) PRO/1000 Network Driver - version 7.3.21-k8-NAPI e1000: Copyright (c) 1999-2006 Intel Corporation. e1000: No usable DMA config, aborting e1000: probe of 0000:00:0f.0 failed with error -5 After that, It looks like he cannot access the DMA again. Only a reboot fixes that. /usr/local/rtnet/sbin/rtnet start *** RTnet 0.9.13 - built on Sep 30 2012 20:51:55 *** RTnet: initialising real-time networking Intel(R) PRO/1000 Network Driver - version 7.1.9 Copyright (c) 1999-2006 Intel Corporation. e1000: No usable DMA configuration, aborting rt_e1000: probe of 0000:00:0f.0 failed with error -5 e1000: No usable DMA configuration, aborting rt_e1000: probe of 0000:00:0f.0 failed with error -5 /usr/local/rtnet/sbin/rtnet: line 42: echo: write error: No such device initializing loopback... RTnet: registered rtlo RTcfg: init real-time configuration distribution protocol RTmac: init realtime media access control RTmac/TDMA: init time division multiple access control mechanism ioctl: No such device ioctl: No such device ioctl: No such device ioctl: No such device ioctl (add): No such device ifconfig: SIOCGIFFLAGS: No such device Waiting for all slaves...ioctl: No such device ioctl: No such device Loaded modules while RTnet is working: ~# lsmod Module Size Used by tdma 15500 1 rtmac 6648 1 tdma rtcfg 36436 0 rt_loopback 1172 1 rtpacket 4128 0 rtudp 7156 0 rt_e1000 83072 1 rtipv4 15764 2 rtcfg,rtudp rtnet 23376 8 tdma,rtmac,rtcfg,rt_loopback,rtpacket,rtudp,rt_e1000,rtipv4 3. While trying to use the rtping tool, I'm getting a lot variation in the output data. Is that normal? ~# /usr/local/rtnet/sbin/rtping -c 5 10.0.0.2 Real-time PING 10.0.0.2 56(84) bytes of data. 64 bytes from 10.0.0.2: icmp_seq=1 time=1012.7 us 64 bytes from 10.0.0.2: icmp_seq=2 time=1024.6 us 64 bytes from 10.0.0.2: icmp_seq=3 time=1024.8 us 64 bytes from 10.0.0.2: icmp_seq=4 time=1025.6 us 64 bytes from 10.0.0.2: icmp_seq=5 time=1032.6 us --- 10.0.0.2 rtping statistics --- 5 packets transmitted, 5 received, 0% packet loss worst case rtt = 1032.6 us ~# /usr/local/rtnet/sbin/rtping -c 5 10.0.0.2 Real-time PING 10.0.0.2 56(84) bytes of data. 64 bytes from 10.0.0.2: icmp_seq=1 time=1347.7 us 64 bytes from 10.0.0.2: icmp_seq=2 time=1390.3 us 64 bytes from 10.0.0.2: icmp_seq=3 time=1390.4 us 64 bytes from 10.0.0.2: icmp_seq=4 time=1387.4 us 64 bytes from 10.0.0.2: icmp_seq=5 time=1391.4 us --- 10.0.0.2 rtping statistics --- 5 packets transmitted, 5 received, 0% packet loss worst case rtt = 1391.4 us ~# /usr/local/rtnet/sbin/rtping -c 5 10.0.0.2 Real-time PING 10.0.0.2 56(84) bytes of data. 64 bytes from 10.0.0.2: icmp_seq=1 time=441.4 us 64 bytes from 10.0.0.2: icmp_seq=2 time=456.9 us 64 bytes from 10.0.0.2: icmp_seq=3 time=454.7 us 64 bytes from 10.0.0.2: icmp_seq=4 time=458.2 us 64 bytes from 10.0.0.2: icmp_seq=5 time=457.1 us --- 10.0.0.2 rtping statistics --- 5 packets transmitted, 5 received, 0% packet loss worst case rtt = 458.2 us So it obviously looks like it is dependent on the time (random) when I start the ping. Or why are there so big differences? I've hooked up the two e1000 PCI card directly together with a 0,5m Cat 6 Patchcable. RTnet is configured in the simple mode with udp packet, CYCLE of 2500 and OFFSET of 200. So nothing special though. When starting the procedure, rtnet startup script tells me the measured delay: RTmac/TDMA: init time division multiple access control mechanism Stage 1: searching for master...e1000: rteth0: e1000_watchdog: NIC Link is Up 1000 Mbps Full Duplex TDMA: calibrated master-to-slave packet delay: 11 us (min/max: 11/14 us) Stage 2: waiting for other slaves... Stage 3: waiting for common setup completion... Cheers Michael ------------------------------------------------------------------------------ Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://p.sf.net/sfu/appdyn_sfd2d_oct _______________________________________________ RTnet-users mailing list RTnet-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rtnet-users