(Mis)using threads

Florian Schirmer jolt at tuxbox.org
Tue Mar 11 01:41:56 CST 2003


I've some major trouble with wine's thread implementation. We're porting a
soundprocessing application to linux/wine. (It will run as Win32 app under
wine in the first step). Sadly the wine thread implementation and/or the
sheduler does not get the priorities right. The mission critical sound task
will not get as much attention as it needs.

We've tried some hacks to improve it (increasing linux kernel priorities
using set_sheduler/set_priorities) but this doesn't really fix the problem.
Then we tried to make it even more ugly by creating a own thread using the
clone() system call. This fixed the timeslice problem but opens up other
strange problems. (Random crashes here and there). Most likely due to
missing lock issues or something like that.

I would appreciate any hints which could make things run more smoothly!
Basically 2 ways are left to go:

1. Fix the wine sheduler to obey priorities
2. Fix the thread (locking?) issues

Thanks a lot for any information!


More information about the wine-devel mailing list