[fpc-devel] Problems with rapid fpSend calls on x64 Ubuntu 10.10 (updated)

Andrew Brunner andrew.t.brunner at gmail.com
Thu Dec 2 19:34:46 CET 2010


OS: Ubuntu 10.10 x64 all updates as of this am.  But problem has persisted
for days now.
Laz/FPC: Today's trunk

worker thread running issues a call to fpSend with iSend Bytes in buffer
        Try

RSRP^.LastCall:=Sockets.fpSend(RSRP^.Info.Socket, at FSendBuffer[0],iSend,0);
        except
          on E:Exception do
OnRSRException('TRSRManager.cb_RSR_Send','Exception',E.Message);
        end;

FPC/srtl/linux/x86_64/syscall.inc

line 319 fails but execption is raised in 320.

line 319:   syscall                 { Do the system call. }
line 320:  cmpq $-4095, %rax       { Check %rax for error.  }

I had exception handling inside the block but it was not caught.

Anyone else having problems with sockets on Unix.  This problem does not
exist on Windows.  After the first occurance of this issue, all network
engine activity fails across other threads too with exceptions at this very
spot.

Any help would be greatly appreciated.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-devel/attachments/20101202/04d26434/attachment.html>


More information about the fpc-devel mailing list