We have been using the HE622 Forerunner ATM cards for years with the 2.4.28 kernel with no issue. We recently updated to the CENTOS release linux 2.6.9-35. We are running a 64 bit OS.
My application is reading AAL5 packets from a piece of HW. It sometimes works great for days, but it seems that every once in a while it just stops. The atmdiag tool shows that every packet of data coming in is being dropped. I can repeat pretty easily if I load/unload the he driver. It will fail before recieving 1024 packet and the next unload/load it will run for days. I can repeat the same failure using the aread test util. I have switched boxes/cards and have the same issue, so I assume its with the OS/driver.
dmesg and /var/log/messages give a ton of
he0: HBUF_ERR! ( cid 0xf2 )
I am new to this project so if you need any more information, please let me know.
Thanks in advance for the help
Logged In: YES
user_id=410152
Originator: NO
its probably taking too long to assemble a particular aal5 pdu which can cause the buffer
resupply to stall. i am working on a general fix for this problem.
Logged In: NO
We seem to have found a fix/work around in the meantime. In the 'he' driver we change
#define CONFIG_RBPS_SIZE 1024
to
#define CONFIG_RBPS_SIZE 512
in he.h
This seemed to fix the problem, we haven't seen it since. I have to admit that I really do not undestand why this works, we noticed it was different in the 2.4.28 kernel and the 2.6.9-35 drivers, tried it and it worked. Hope this helps fix the problem. I can help you test the fix if you would like.
Thanks