[etherlab-users] 8139too-2.6.35 patch and "datagram UNMATCHED" warning question

Jacques GANGLOFF jacques.gangloff at unistra.fr
Mon Oct 11 17:26:51 CEST 2010


Hi,

First of all many thanks to etherlab and Florian Pose for this fantastic piece of open-source software. A programmer who cares about strict accuracy of grammatical rules in kernel messages deserves the most deepest respect :

EC_MASTER_WARN(master, "%u datagram%s UNMATCHED!\n",
                   master->stats.unmatched,
                   master->stats.unmatched == 1 ? "" : "s");

I have precisely a little question about this warning. When I run the user/main.c example on Beckhoff slaves (EK1100, EL2008, EL4134, EL3102), the first time after a "/etc/init.d/ethercat start" everything runs smoothly and there are no warning in dmesg. But every subsequent calls to ec_user_example generate a "WARNING 0: 1 datagram UNMATCHED!" warning.

If I go through a "/etc/init.d/ethercat stop" "/etc/init.d/ethercat start" cycle, the first call, and only the first call just after is warning-less. I just found that strange so I would like to report it. Here you can find some debug 1 level messages surrounding this warning :

EtherCAT 0: Domain0: Logical address 0x00000000, 23 byte, expected working counter 7.
EtherCAT 0:   Datagram domain0-0: Logical offset 0x00000000, 23 byte, type LRW.
EtherCAT DEBUG 0: Stopping master thread.
EtherCAT DEBUG 0: Master IDLE thread exiting...
EtherCAT 0: Master thread exited.
EtherCAT DEBUG 0: FSM datagram is d16d9be0.
EtherCAT 0: Starting EtherCAT-OP thread.
EtherCAT DEBUG 0: Operation thread running with fsm interval = 1000 us, max data size=11250
EtherCAT WARNING 0: 1 datagram UNMATCHED!
EtherCAT DEBUG 0: mmap()
EtherCAT DEBUG 0: Vma fault, virtual_address = b7854000, offset = 0, page = c33fbf80
EtherCAT DEBUG 0-1: Changing state from PREOP to OP.
EtherCAT DEBUG 0-1: Configuring...
EtherCAT DEBUG 0-1: Now in INIT.
EtherCAT DEBUG 0-1: Clearing FMMU configurations...
EtherCAT DEBUG 0-1: Clearing sync manager configurations...
EtherCAT DEBUG 0-1: Clearing DC assignment...

It happens with the generic or the 8139too driver. I'm running linux 2.6.35.7 with xenomai patch on a slackware 13.1. The machine is a HP Z400. I installed the latest 1.5 etherlab master.

I modified the 8139too driver of the 2.6.35.7 to obtain 8139too-2.6.35-ethercat.c. You can find the patch below. I did not tested it extensively. But so far no bug.

http://eavr.u-strasbg.fr/~jacques/8139too-2.6.35-orig-8139too-2.6.35-ethercat.patch

Best,
Jacques Gangloff


_________________________

Prof. Jacques GANGLOFF
Phone : +33 (0)3 68 85 44 68
Mobile : +33 (0)6 43 49 74 29

Université de Strasbourg
LSIIT - AVR
Bd. Sébastien Brant
BP 10413
F - 67412 ILLKIRCH
http://eavr.u-strasbg.fr/~jacques/
_________________________








More information about the Etherlab-users mailing list