This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C6455 ndk send() error 35

Dear guys,

I meet a problem when using the C6455 chip to run a Gigabit network project (based on ndk 2.0).

For some reason, I change the DSP/BIOS CLK to 100us(0.1ms) and set NDK prdNdk period 1000 ticks (0.1*1000=100ms), while in helloWorld.pjt example, I see the DSP/BIOS CLK is 1ms and prdNdk period is 100 ticks. Does this matter?

The C6455 chip will process one image about every 25ms. There are mainly three tasks in my project. Task A is of priority 10,  and runs about 5ms continously during every 25-ms period. Task B is of priority 8, and runs about 4ms continously during every 25-ms period. The NDK Task TestStack is of priority 5, and it sends image data to an image server. From the server we can see the load of the Gigabit network is about 19%, so I think the speed is enough.

Also, there are some HWIs in the project. HWI A occurs about every 17us 960 times during every 25-ms period, and HWI B occurs about 2us just after every HWI A. There are some other HWIs whose intervals are longer. All of the HWI ISRs last a little time, not longer than 2us from my analysis.

The problem is that after running some hours, the project may meet error: NDK's send() function returns "-1" and fdError() returns "#35". The TCP SENDTIMEOUT option is set 5s which is enough in my opinion.

Where is the reason, the tasks of higher priorities or the frequent HWIs?

Thanks in advance! Wish your help.