[Bug 7929] C&C 3 network does not work

wine-bugs at winehq.org wine-bugs at winehq.org
Wed Oct 14 22:00:37 CDT 2009


http://bugs.winehq.org/show_bug.cgi?id=7929





--- Comment #88 from Damjan Jovanovic <damjan.jov at gmail.com>  2009-10-14 22:00:37 ---
(In reply to comment #87)
> (In reply to comment #86)
> > ...
> > I am eagerly awaiting progress on this new effort to bring network support. 
> > ...
> 
> For the curious, I'm researching the concern that Alexandre expressed (loss of
> packets in a multithreaded environment with simultaneous reads or selects on
> the same socket).  In ws2_32 (normal operations) this is solved easily with a
> couple well-placed socket-specific spinlocks, within the Wine server (IOCP
> operation) it APPEARS that it is not necessary to do any locking since the IOCP
> polling and reading all seems to occur in the same thread (note that a socket
> can not be used "normally" once it has been flagged for IOCP).  If anyone has
> any additional insight on this issue then I'd love to hear it, I'm a tad busy
> right now so tracking these things down in the server code is not on the top of
> my priority list.
> 

While wineserver cannot AFAIK have a race condition with itself, maybe the
wineserver and a Windows app can race each other on the same socket even if
ws2_32 has its own internal spinlock?

APIs like DuplicateHandle() could also transfer the socket to another process,
which then uses its own ws2_32 critical section, so it seems like there could
be inter-process races too.

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list