[gccsdk] pthreads WIMP filter code

Alex Waugh alex at alexwaugh.com
Wed Jan 3 12:04:06 PST 2007

John-Mark Bell <jmb202 at ecs.soton.ac.uk> wrote:

> I've been looking at this recently with a view to making it actually work, 
> rather than relying on client applications to manually stop and start the 
> threading implementation either side of Wimp_Poll. I have what appears to 
> be working code now and I'd like some comments before this goes into SVN.

It looks fine to me (but then the old code also looked fine, and that
didn't work :) Am I right in thinking that the only significant
difference is copying the filter name to RMA?

> The patch may be found at http://moose.mine.nu/pthread-patches.zip (this 
> zip also contains a patch for __pthread_exit to prevent the function table 
> pointer it uses getting corrupted).
> I've tested this on various RO versions; namely 3.5, 3.6, 3.70, 3.71, 
> 4.02, 5.09 and 6preview. No adverse effects have been seen. Testing was 
> with both a Wimp application and a command line one running in a 
> taskwindow.

Did you check that it was actually doing context switches? The old
code appeared to work at first, until I realised that it was almost
never doing any context switches when running in a taskwindow, and so
didn't get a chance to fail.


Alex Waugh                                           alex at alexwaugh.com

PHP, Roots, Subversion, WebJames and more from http://www.alexwaugh.com/

More information about the gcc mailing list