Okay, here are the results of my tests. These are the stats of my Galaxy Nexus, running my ROM with the stock kernel included with the ROM, although I don't think it makes a difference depending on the kernel.
Here are my initial tests:
View attachment BetterBatteryStats-2012-12-20_withmaps.txt
If you take a look at this area:
Code:
NetworkLocationLocator (com.google.android.apps.maps.Maps): 3 m 20 s (200 s) Count:342 2.4%
SignalCollector.ScannerThread (com.google.android.apps.maps.Maps): 1 m 42 s (102 s) Count:57 1.2%
SignalCollector.Scanner (com.google.android.apps.maps.Maps): 1 m 40 s (100 s) Count:1313 1.2%
According to this, most of the wakelocks that occured during my around 2 hour test were from these processes, all of which are part of Google's Map application. Also, if you look at this area:
Code:
==========
CPU States
==========
350 MHz (): 2 h 14 m 43 s 96.6%
700 MHz (): 4 m 36 s 3.3%
920 MHz (): 2 s 0.0%
1.2 GHz (): 1 s 0.0%
Deep Sleep (): -0.0%
There is no deep sleep being achieved. Now look at this:
Code:
"gps-lock" (): 2 h 18 m 40 s (8320 s) Cnt:(c/wc/ec)0/0/0 99.5%
From this data, it seems that the Map application looking for my location all the time is the cause of the power drain on the battery. So I uninstalled it. Then I used Speedtest to grab a GPS lock, then ran another 30 minute test. Take a look at these stats:
View attachment BetterBatteryStats-2012-12-21_nomaps.txt
If you look at this area:
Code:
==========
CPU States
==========
350 MHz (): 1 m 4 s 3.1%
700 MHz (): 24 s 1.2%
920 MHz (): 1 s 0.1%
1.2 GHz (): 2 s 0.1%
Deep Sleep (): 33 m 10 s 95.6%
We are now achieving deep sleep. So it seems that, at least for me, Maps is causing these issues, not the ROM or either of the kernels we are running. I hope this helps your issue, and it definitely helped me understand the cause of this issue.
One more thing. I was poking around the interwebs and found this thread in the AOSP known issues list:
http://code.google.com/p/android/issues/detail?id=34458
This seems to confirm what is happening here. Please let me know if this helps!
Oh, I almost forgot! I couldn't have done any of this without the help of UBER. He really knows his stuff when trying to test these kind of problems. Thanks dude!