I wrote a shell script to download and build each compat-wireless version. I have attached the script for anyone that wants to see it. For maintenance purposes, the script removes the downloaded .bz2 files and any decompressed version that failed to compile with my current setup. I reviewed the logs and noticed starting with compat-wireless-2011-02-23 and running up through compat-wireless-2011-04-14, I was receiving: compat-2.6.39.c:93:4: error: ‘TASK_INTERRUPTIBLE’ undeclared (first use in this function) I already found the fix to this as described in #353, it was simply the addition of "#include " to the file. At this point I had compat-wireless-2011-03-18 working at full speed and compat-wireless-2011-04-26 working with the slow down. I was determined to find the latest version that worked and in turn the first version that didn't. To start, I split the difference and started working on compat-wireless-2011-03-25. With the ‘TASK_INTERRUPTIBLE’ error fix applied, it ran at full speed. Again splitting the difference and working on compat-wireless-2011-03-29, with the ‘TASK_INTERRUPTIBLE’ error fix applied, it ran at full speed. Yet again splitting the difference I began working on compat-wireless-2011-03-31, with the ‘TASK_INTERRUPTIBLE’ error fix applied. However this time it failed to run at full speed. Getting close now. Down to only one left, compat-wireless-2011-03-30 was either going to be the latest that worked or the first that failed. With the ‘TASK_INTERRUPTIBLE’ error fix applied, I saw a new error pop up: p54spi.c:652:2: error: implicit declaration of function ‘irq_set_irq_type’ The fix ended up being to copy compat-wireless-2011-03-31/include/linux/compat-2.6.39.h into compat-wireless-2011-03-30. This version compiled now, but failed to run at full speed. The results of my testing are (no annotation = not tested): compat-wireless-2011-03-18 Full Speed w/ TASK_INTERRUPTIBLE patch compat-wireless-2011-03-19 compat-wireless-2011-03-20 compat-wireless-2011-03-21 compat-wireless-2011-03-22 compat-wireless-2011-03-23 compat-wireless-2011-03-24 compat-wireless-2011-03-25 Full Speed w/ TASK_INTERRUPTIBLE patch compat-wireless-2011-03-26 compat-wireless-2011-03-27 compat-wireless-2011-03-28 compat-wireless-2011-03-29 Full Speed w/ TASK_INTERRUPTIBLE patch compat-wireless-2011-03-30 Slow Speed w/ TASK_INTERRUPTIBLE patch and new compat-2.6.39.h compat-wireless-2011-03-31 Slow Speed w/ TASK_INTERRUPTIBLE patch compat-wireless-2011-04-14 compat-wireless-2011-04-26 Slow Speed For those of you that have studied computer science, you probably recognized the use of the binary search. For those that haven't and would like some more information about it, take a look at: http://en.wikipedia.org/wiki/Binary_search_algorithm My final analysis is, follow the instructions in #353 and use compat-wireless-2011-03-29 instead of 2011-03-18 or 2011-08-27. If there is anyone from the compat-wireless folks monitoring this thread, the change that is effecting those of us with an Intel 3945ABG occurred between compat-wireless-2011-03-29 and compat-wireless-2011-03-30. A random sampling of versions between compat-wireless-2011-04-26 and compat-wireless-2011-08-27 either still had the slow down, wouldn't compile, or locked up my system completely.