[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [lwip-users] FTP-DATA exchange: TCP issues
From: |
Tom C. Barker |
Subject: |
RE: [lwip-users] FTP-DATA exchange: TCP issues |
Date: |
Tue, 8 Mar 2005 11:30:41 -0800 |
The issue is that my polling function was
trying to send data. Has anyone ever implemented
a poll function which sends data? You'd have
to have a semaphore from my current experience,
right? All comments welcome. Here's what I found.
When the polling function sends data it could and
did become reentrant in tcp_enqueue. With some added
debug statements shown below, when the alloc is called
and we have to wait, the tcp_slowtmr: begins another
call to FTP: ftp_retreiveFile_poll... In combination
with an optimized compiler, the pcb->snd_lbb in the regs
gets off by one and the transfer becomes corrupted.
FTP: ftp_retreiveFile_poll at pcb 0x110b4bf8
tcp_write(pcb=0x110b4bf8, arg=0x1109bd14, len=2920, copy=1)
tcp_enqueue(pcb=0x110b4bf8, arg=0x1109bd14, len=2920, flags=0, copy=1)
TCPOUT_enter: pcb->snd_lbb = 242214
tcp_enqueue: queuelen: 9
TCPOUT_allocing: start in thread Lwip/TCPIP-InputSem.
TCPOUT_allocing: end in thread Lwip/TCPIP-InputSem.
tcp_enqueue: queueing 242214:243674 (0x0)
**TCPOUT_allocing: start in thread Lwip/TCPIP-InputSem.
tcp_slowtmr: processing active pcb
...
tcp_enqueue: queueing 243674:245134 (0x0)
TCPOUT_exit: pcb->snd_lbb = 248054
lbb should be 245134 but here it shows as 248054!
Tom
- [lwip-users] FTP-DATA exchange: TCP issues, Tom C. Barker, 2005/03/03
- RE: [lwip-users] FTP-DATA exchange: TCP issues, Tom C. Barker, 2005/03/04
- RE: [lwip-users] FTP-DATA exchange: TCP issues, Tom C. Barker, 2005/03/04
- RE: [lwip-users] FTP-DATA exchange: TCP issues, Tom C. Barker, 2005/03/04
- RE: [lwip-users] FTP-DATA exchange: TCP issues,
Tom C. Barker <=
- RE: [lwip-users] FTP-DATA exchange: TCP issues, tbutler, 2005/03/09
- RE: [lwip-users] FTP-DATA exchange: TCP issues, Tom C. Barker, 2005/03/09