[Galaxy S II Q&A, Help & Troubleshooting] zenaku77:
Firstly an introduction to my problem - I've been having problems with high cpu usage whenever I enable my wifi. I've gone to stock [I9100DXLSD_I9100OLBLSD_XME.zip], tried different kernels [Apolo, siyah, speedmod, dorimanx], tried different roms [slimkat, neatmod, jellysnap], done factory resets for each, flashed quite a few modems [dx's,xx's, currently trying radio-cm-9-SGS2-LP6-signed.zip, there's a whole bunch that I'm still going through as well - can't post urls yet]. I had no luck with all of these methods so far.

Since that approach didn't work I have also been looking at wakelock detector,gsam and betterbatterystats to find out what was chewing up cpu and causing battery drain. I initially thought it was something caused by google play services (SystemUpdateService), wlan_rx_wake, or a pc/router on network with a configuration conflict or something like ipv6 causing bizarre behaviour but so far I have been able to get rid of wlan_rx_wake problems but those were minor on the battery drain problems I was having. Using a static ip also did not improve anything. Wakelock detector/gsam/betterbatterystats were now all showing either android os or android kernel as the culprit but would not show exactly what process was causing it. Once I enabled 'show cpu usage' in developer options I was able to see that dhd_dpc process was causing all this havoc. There does not seem to be much information on the net about this process and problem. When I switch wifi on, I'll be able to use the net fine for a few seconds to a minute before dhd_dpc decides to kick in and using a high amount of cpu causing insane drains and I have to quickly switch wifi off before it locks up requiring a reboot.

What I have found out through all of this by accident is that if I enable wifi and then quickly copy a file from my phone to a pc on the network, I am able to use internet on my phone without any lockups and the speed (cpu) is fine and fluid as usual but only while the file is still copying over the network. During this time dhd_dpc seems to consume cpu like it normally should as I've seen on the other devices I have. Why is this? This has to be a software issue since it works flawless when I do this? Not sure why it would require some sort of lan traffic in order to get wan traffic working without sending the cpu usage to orbit. The battery of course drains but not as bad since it's busy copying files over. Maybe possible that it doesn't like the routers on my network that might be sending arps and copying files over the network makes it ignore that traffic (just shooting in the dark here)?

I hope someone can shed light on this and perhaps give me some other things I can try. Btw, cell radio/mobile data are all fine, except for one or two of the modems that I tried. So is this kernel, rom or modem related? Please help! This is the only thing not working properly on this phone. Thanks for all those that took the time to read and answer.

Currently on my phone:

Rom: I9100XWMS3_NeatROM_v6.4

Kernel: Apolo-4.15b_Regular

Modem: LP6 (this is just what I am currently testing out of the dozens of modems I have)

PS- yes I use kernel wipe and rom wipe scripts. Maybe the problem is somewhere in dhd.ko?

Anyone mind uploading their dhd.ko that doesn't have this dreaded dhd_dpc cpu pegging purge business just so I can rule it out?