yashsingh1/xdaforums huggingface dataset:
[Nexus S General] :
Yeah, KSM increases power usage reasonably significantly. And no, there isn't anything else, but hey, performance over powersaving anyday, if the tradeoff is worthwhile.

Good news is I managed to hack bigmem so it works on any ROM and doesn't break the camcorder. It gives an additional ~53MB so KSM can be disabled and the power drain will drop to normal levels.

It does appear to break the camera panorama feature however, as I just discovered.

---------- Post added at 10:40 PM ---------- Previous post was at 10:35 PM ----------

The code is clean, cleaner than it ever has been after the 20 odd commits I did yesterday to fix warnings. There aren't any more tweaks to be had. It is what it is.

The only way to improve battery life is from the userspace side now. Ie, be careful about what apps you install, disable unnecessary power wasting crap, by freezing Google maps, signing out of Google talk, freezing Google plus (bit of a theme going here with Google products lol) etc.

Or, charge your phone more often and stop complaining about battery life. You are walking around with a powerful computer in your pocket after all.
[Nexus S General] deltatux:
Would your IDLE2 patches help with battery life when idling though? I think most people's phones idle most of the time (unless you literally touch your phone every second of your waking moment).

Also you state:

So is that reasonably or significantly? Seems like one is a slow drain and the other is a sharp battery drainage in terms of the syntax used in that sentence. Can you clarify if we're going to see a huge drop in battery or it's a reasonable drop (like a slow power draw).

deltatux
[Nexus S General] :
And no, IDLE2 won't help unless audio is playing. When your device is suspended, it is suspended and not using power. What you need to minimise are the wakeups, which are generally caused by problematic apps if you are having a drain issue.

Reasonably significantly means that it is not horrendous, but not great either. I noticed a 2 times increase in power drain with KSM enabled as opposed to it disabled.
[Nexus S General] stojshic:
About this, I have a question, maybe someone knows the answer.... I don't use Gtalk that much, but I do need some IM installed all the time for my work. It doesn't necessarily need to be Gtalk, but, then it would be Kakao or WhatsApp... So, my question is, is it worth trading Gtalk for some of those apps? Would those be more battery friendly, or whats better in them anyway? What's wrong with Gtalk? I think this might be wrong place to ask, but I hope no one will mind... Thanks...
[Nexus S General] :
I don't know. And no, this isn't the place to ask. We don't discuss apps on here, I would ask in Q&A if I were you.
[Nexus S General] tchaari:
These are the best news that I ever heard since JB release :)

More RAM + battery saving are way more important than camera panorama for me ;)

Thanks again Thalamus.
[Nexus S General] apatal:
What's panorama? I don't use that? Is it useful? I just take out my phone and shoot pictures like normal people do when I need to. Lol :D

Sent from my Nexus S
[Nexus S General] rasengan82:
Kernel panic on ICS latest stable.

http://db.tt/r8gRV7Fz
[Nexus S General] :
Yeah, so I looked at it and it just seems like a CPU glitch to be quite honest.

It oopsed due to an undefined instruction and there isn't anything in the backtrace which would suggest any kernel code was responsible for it. It's just one of those things I suspect.
[Nexus S General] Phoenix Wright:
This is a very fast and stable kernel :) Thanks for your efforts :) The only thing I miss is the battery life extender... it makes me worry when I see "charged" when it's just at 96%... (I looked at the "won't add" list and it's not listed :) )
[Nexus S General] rasengan82:
Cool, so is this a normal thing can happen?
[Nexus S General] :
I had a kernel panic/reboot on JB also (stock 4.1.1 with latest testing JB kernel). The phone was just sitting there when the reboot occurred.

last_kmsg

Figure more data's better than none. ;)
[Nexus S General] stojshic:
I was browsing XDA via Tapatalk app, but at one moment my NS froze, and after few secs it hard rebooted. It was late at night, and I had no idea how to take last_kmsg, so I left it for in the morning. I dunno if it gets overwriten while using the phone, or the only thing that matter is not to restart it again (I didn't restart it) so here's kmsg, if it helps, sorry if it doesn't....

I'm using JellyBelly ROM with default kernel....

http://db.tt/q6fEYdxH
[Nexus S General] apatal:
Next time post on the Jelly Belly thread please. _thalamus monitors that thread as well for issues with the default kernel, and this thread may not be the best place to ask for issues concerning projects of other devs. Ok buddy? :)
[Nexus S General] :
That looks like a possible bug in the s3c ICQ handler. Null pointer dereference. I'll take a look with gdb.

---------- Post added at 09:06 AM ---------- Previous post was at 08:59 AM ----------

No, as long as you don't restart it, it will still be there.

As for the kmsg, it doesn't show a kernel bug / panic, so I'm not sure what happened there. Perhaps a watchdog reset.
[Nexus S General] Randomwalker:
Could this be made cumulative, as in bigmem+ksm=even more free memory? (taking performance over battery)

Sorry, if it's an overly stupid question.
[Nexus S General] :
It could. But what is the point? How much free memory do you want lol?
[Nexus S General] Randomwalker:
Well, seeing that with a number of push services running I currently am running at around 20MB free RAM, I guess that 53MB would help but more even better :).

But I am also one of those who is pretty OK with battery life, as long as I get 18h.
[Nexus S General] polobunny:
MOAR. Always. :)

I'm more pissed at the apps being poorly developped than the kernels to be frank. It seems like it's always on the kernel devs to implement new ways of using the hardware rather than app devs to make stuff that doesn't stink. Too much services running in the background for nothing, too much ram being consumed for simple tasks.

My Nokia 3210 could send SMS right away. I find it sad when I see MMS.apk peaking at 80mb when it sends a SMS...
[Nexus S General] Ron Overdrive:
Damn what are you running? I always have 100 - 120 MB of free ram. Also a fully charged battery for me usually lasts 12 hours. I wish I could get 18 hours out of my batteries, but to do that I would have to avoid using the phone. :P
[Nexus S General] :
So, I finished the rewrite of IDLE2 off today.

So far it seems ok, well, it's still the same code which takes the system into idle, it's just a different way of implementing it, which hopefully will be better.

I will be doing a release with it included tomorrow assuming no issues.

From the git commit:

v0.200 is a complete rewrite of the
majority of the idle2 codebase. 2 idle states have now been
fully implemented and are available at all times. The
states are IDLE and IDLE2, which is DEEP-IDLE TOP OFF.
DEEP-IDLE TOP ON is not implemented, as it has no benefit.

The hot code paths are now more optimised and faster.
Workqueues are used to inform idle2 of events from other subsystems,
such as audio, usb connected and bluetooth.
PM notifiers are used to notify idle2 of a suspend, although it should
never get into a situation where it is working at the same time as the
system is suspending.

The IDLE2 mode will only be activated when audio has been playing back
for more than 30 seconds, the device is not connected to USB, bluetooth is
not active (it can be enabled, but not be actively working) various clocks
are gated (in practice, this means that the screen has to be off), certain
subsystems are not active and there are no interrupts pending.

The early suspend and late resume hooks have been removed as they are not
required, as have the suspend and resume hooks.

Many of the idle2 specific functions have been split into idle2.h to keep
them separate from the stock code.

IDLE2 can be disabled with the following command:
echo 1 > /sys/module/cpuidle/parameters/idle2_disabled

Stats can be obtained from the standard cpuidle interface, which, for
IDLE2 is located at:
/sys/devices/system/cpu/cpu0/cpuidle/state1
[Nexus S General] apatal:
Looks promising. Keep us posted. :)

Sent from my Nexus S
[Nexus S General] towelboy:
Sorry for asking such a noob question but what is IDLE2 and how does it affect the kernel?
[Nexus S General] noobiekins:
From my understanding, its a improved way of suspending your device. Usually when music is playing, the CPU isn't fully suspended, using more power.
[Nexus S General] apatal:
For more information, please read this thread.
[Nexus S General] :
New version released with IDLE2 enabled again, v0.201. Blog post here.

Details about the new IDLE2 implementation here.
[Nexus S General] spupuz:
wonderful :) i hope that this new implementation of idle2 helps to save battery more! :D
[Nexus S General] gotjazz:
awesome - flashing right now :)

Can't wait for my way to work tomorrow (lots of screen-off music time :))
[Nexus S General] rasengan82:
So does this break panorama?
[Nexus S General] :
Not for ICS, because I didn't implement bigmem for that.

For JB, I'm not entirely sure. Sometimes it works, sometimes it doesn't. But that might depend on ROM etc. Try it and see and let me know.

I do like having the extra RAM, but I don't like breaking things to obtain it.
[Nexus S General] rasengan82:
Oh man I wished I could try it on JB. No OTA or binaries for NS4G yet... :(

I assume for the ICS the changes are:

- Adjusted ondemand tunables to make ramping up occur faster for better responsiveness

- New implementation of IDLE2, enabled by default. Please see my previous post on IDLE2 for details.
[Nexus S General] leap_ahead:
this kernel have the crt fix ?
[Nexus S General] :
f1c45ce crespo: 3.0.38-22ICS_test release
347d4f2 cpuidle: idle2: v0.201
da02b78 cpuidle: idle2: v0.200
3077747 crespo: enable IDLE2 by default
0d65112e cpufreq: ondemand: Remove io_is_busy tunable

I forgot to put the io_is_busy change in the post. I did that with Desire and Sensation kernels and it seemed to improve responsiveness when there was high I/O waits.

---------- Post added at 03:18 PM ---------- Previous post was at 03:17 PM ----------

No. I haven't seen a nice fix for it yet. I've seen a hacky one, but that's all.
[Nexus S General] apatal:
Test Nexus S kernel release 3.0.38-22 (ICS & JB)

OP updated! Cheers! :D
[Nexus S General] semprom:
I will try it out.
[Nexus S General] Articudos:
Since this kernel doesn't have voodoo colour feature, Is there way to change color, sticking with this kernel? (Similar-posting again, sorry)
[Nexus S General] metalgear873:
Managed to get it working by simply fixing permission. Great stable kernel, battery life is fine, all working well.

Thanks!
[Nexus S General] sdhanjal15:
Which is better? The on demand version or interactive?
[Nexus S General] Maximilian Mary:
Bigmem is working with Jelly Bean (Burnsra's CM10 alpha)! :D Please allow me to kiss your feet.
[Nexus S General] polobunny:
Niet. Not from the user end of things, at least. You can always compile your own and change gamma values and all that.
[Nexus S General] yxcv99:
For me panorama is not broken at stock 4.1.1. Any hint why it should be so?

---------- Post added at 05:58 PM ---------- Previous post was at 05:51 PM ----------

Why are you asking this in every kernel thread? This has nothing to do with the kernel. And would it be so, I think _thalamus will be the last one to feature this.
[Nexus S General] gioyann:
Any chance to OC the CPU?
[Nexus S General] Randomwalker:
Well, since you apparently managed to OC the stock kernel, you might also succeed here...

Just kidding: No, you can't.
[Nexus S General] FloHimself:
This is a legitimate question! It's a kernel related issue and thalamus (or adam in jellybean rom) is in fact one of the first who pulled a patch to fix this issue. But I don't know if it is inlcuded in this kernel release.
[Nexus S General] :
And my reply above:

I suspect it is a ROM issue personally, and I don't think adding a delay to earlysuspend is a good fix. I'm sure Google will fix it in the next platform update, assuming enough people moan about it.

---------- Post added at 05:21 PM ---------- Previous post was at 05:20 PM ----------

Bigmem. It only works some of the time for me, the rest of the time it fails to save the image.
[Nexus S General] FloHimself:
Sorry haven't seen your statement above. I also don't like the way it is handled and yes, google will fix it. But until then I personally use this working solution. Anyway, it stays a legitime question to ask.
[Nexus S General] deltatux:
Just flashed the latest test kernel with IDLE2, looks quite promising, will test it more to see how it holds up.

deltatux
[Nexus S General] caliban2:
Is that with libjni_mosaic.so from adam's git?
[Nexus S General] :
It's with a reasonably unmodified stock ROM.
[Nexus S General] sdhanjal15:
So the camera was working when I first installed. But then it stopped working after I came back from a couple hours of idling.
[Nexus S General] caliban2:
I see. The lib has (of course) fixed it on JellyBelly with your kernel from today, 10/10 tries.

But in that case that doesn't have to mean anything yet...
[Nexus S General] gioyann:
CM9's stock kernel was Overclockable up to 1440 mhz! Obviously is not the stock kernel of stok rom! ;)
[Nexus S General] :
Yawn. Overclock. Is it really necessary? I don't think it is, and the limited tests I did with it didn't really show a great deal of difference in normal usage.

Overclocking and undervolting has become the obsession of the purveyors of unstable kernels throughout these forums, as well as the cherry-picking of random patches which they don't understand from all over the internet to make their feature lists look good.

I'm not joining that club, thanks. With my kernel, what you see is what you get. The configuration has been thoroughly tested, each additional 'feature' added is tested thoroughly and I pride myself on it's stability. I can pretty much guarantee that any issues which people have with it are due to bugs which exist already in the AOSP kernel source, which I *will* fix if I get enough info to track them down and figure out what is going on.

I'm not sacrificing that stability for the sake of adding overclock and other pointless garbage that people want. I don't want a big feature list. The less features, the less stuff to go wrong, the less 3rd party unmaintained code in there, and I think that providing too many options to users is counter productive. I think that I might as well make the choices for them from experience and testing instead of adding a million crappy patches and expecting them to choose.

Anyway, I'll shut up now, I'm boring myself typing this. :laugh:
[Nexus S General] Imppy:
So what is this hyper interactive kernel? Would it be better performance but uses up battery? I'm using that kernel now..and seems so smooth
[Nexus S General] apatal:
+1 on exceptional speed. As for battery life, thalamus says it should have minimum effect, if any. It depends on what apps you have running anyway so try it out for a couple more days to see how it performs in that department. :)

Sent from my Nexus S
[Nexus S General] :
Well, the interactive governor was written by Google for Android. But, it was never that great really, it wasn't as responsive as it could be.

With JB, however, I'm leaning towards using it instead of ondemand, because it provides a smoother user experience with the boost enabled.

It cranks the CPU to full as soon as you touch the screen.

There are probably some other improvements I could port from the tegra3 kernel too.

Even with ondemand sampling at the highest rate, it's still not as smooth as interactive, because it only samples every 10ms, so you get a bit of jitter whilst it ramps up, whereas interactive scales from idle straight to max as soon as it comes out of idle, and scales to max again when you touch the screen and it's not in idle.

The drawback of it though is that it uses more CPU cycles to choose the frequency, in other words, it is more expensive than ondemand. However, I think it might be worth it for JB, I'm not sure.

I'm not entirely sure why Google didn't set it as default.

Forgot to answer the battery question...no, it shouldn't use more battery. It only ramps up when you are interacting with the device, it's quite conservative at other times.
[Nexus S General] Imppy:
Lol thanks for your detailed responses...you have a wealth of info
[Nexus S General] :
I read a lot and have a rather good memory for detail lol. :)

Things evolve though, the interactive governor was really crappy at one point, but with JB it *seems* to be the best although I will be testing it for a while before making any rash decisions about it. :)
[Nexus S General] Imppy:
Thank you for your testing...a good governor with good battery life and performance would be amazing!
[Nexus S General] noobiekins:
Had this kernel on my phone with stock jelly bean, battery life is amazing, and no reboots unlike air kernel. Although this is not as smooth as the galaxy nexus, this is pretty smooth
[Nexus S General] :
Yeah, it's not far off the GNX, or the NX7, but it'll never be quite as good. The old hummingbird S5PV210 is getting a bit old now. I was surprised they updated the NXS to JB actually, but I'm glad they did because it's tons better than ICS. :)
[Nexus S General] mixtapes08:
Yeah hummingbird chipset still doing it's job done. Imagine a quad core hummingbird chipset phone that would be superb and amazing.

Sent from my Nexus S™
[Nexus S General] rasengan82:
Can JB interactive be ported to ICS ;)
[Nexus S General] ehiggins:
I just flashed and will say the experimental seems quite nice the first few minutes.

I just read your long post on not being adding features but I humbly ask for the fast charge code both my car charger and travel charger show up as USB without it.
[Nexus S General] sdhanjal15:
Interactive is nice!!!! Thanks thalamus
[Nexus S General] Randomwalker:
I benched the two govs in AnTuTu and both cam out at around 2720 (which probably was to be expected, as there won't be much scaling during benchmarking). But I have to say for me OD 'feels' snappier.
[Nexus S General] :
Probably. Might do it if I have time and it's just trivial cherry-picks.

---------- Post added at 08:42 AM ---------- Previous post was at 08:41 AM ----------

Yeah, they will benchmark the same. I think interactive is faster to respond though.

ondemand has some jitter, like I said above.
[Nexus S General] safendi:
this kernel is better than your kernel in jellybelly?
[Nexus S General] leap_ahead:
yes!
[Nexus S General] safendi:
but don't have bln, why?
[Nexus S General] kleineronkl:
"but don't have bln, why?"

hm...1000 times the same questions...i think _thalamus gave 1000 times the same answers. maybe you should take the time and READ
[Nexus S General] jfmac:
With your JB interactive test kernel I can set animations to 0.5 and stuttering is practically gone, while your regular ondemand causes occasional hiccups. Only 3% more battery drain overnight. This is absolutely the best one you've made for JB so far.
[Nexus S General] Imppy:
Same here no lag...testing battery now
[Nexus S General] :
I ignore the n00b noise now, so should everyone else. They will continue to ask moronic questions but they'll go away if they are ignored enough.

---------- Post added at 10:41 AM ---------- Previous post was at 10:35 AM ----------

Cheers. :)

The interactive one does seem better I have to admit. I've done a commit to set it as default for the next release.

Although, the drawback is that I've had to remove ondemand from the zImage, so it won't be available at all. I did this because init.herring.rc overrides the governor to ondemand so if it is present it will be enabled every boot regardless of the kernel default.

New release coming soon with an update to IDLE2 to enable DEEP-IDLE TOP ON when bluetooth or GPS is active.

The caveat is I have no data on whether power is saved in TOP ON state, but in theory there should be some saving, but it won't be anywhere near the savings from TOP OFF.
[Nexus S General] Randomwalker:
Vellamo seems to confirm that (does that flinger test actually simulate a touch?). While variations between samples are huge the interactive kernel never droped below the highest score for the on demand one.
[Nexus S General] madd0g:
That and IDLE2 makes me hard for new JellyBelly release (yes, I'm a BLN whore:P).
[Nexus S General] gioyann:
You're right, OC it's not a big deal in "normal usage". But sometimes I like use my phone for gaming and OC helps a lot. Anyway, your kernel is the smoothest I'v ever tried for JB, having OC chance is just an extension for hard-use.

A question: any ideas on how to fix CRT-off animation for SCLCD versions? As I know, only Air kernel fixed that issue!
[Nexus S General] :
Just built the -23_test releases.

ICS here.

JB here.

Will post the full changelog on my blog shortly.

---------- Post added at 12:09 PM ---------- Previous post was at 12:07 PM ----------

There is a nasty hack, but I don't like it. I can build a separate JB kernel with it included though for i9023 users. I shall do that now.
[Nexus S General] Imppy:
Does this new build have interactive boost feature?
[Nexus S General] leap_ahead:
oh yes thats cool for i9023 user
[Nexus S General] :
i9023 CRT animation fixed build here.

Only flash if the animation doesn't work for you.
[Nexus S General] madd0g:
That fixed the CRT off on my i9023. On another note, this interactive really smoothens the **** up :laugh: Guess I'll have to go without BLN for now, until new Jelly release, because no way I'm going back to ondemand now. I'll test the IDLE2 with GPS battery usage later when I'll go running.
[Nexus S General] leap_ahead:
its working thanks
[Nexus S General] rasengan82:
Hehe new interactive for ICS pleassssseee ;) freaking I can't believe no OTA and binaries yet...
[Nexus S General] :
My latest release for ICS has the interactive governor as default.

The interactive governor in ICS has the boost feature, so I enabled it and set it as default. YMMV though, let me know how it performs.
[Nexus S General] Imppy:
Good move on going in the interactive direction...never saw my phone flew so fast before...battery seems decent but could be improved and it'll be perfect!
[Nexus S General] rasengan82:
Is it the 23 test release?
[Nexus S General] :
Battery is what it is. I don't think adjusting interactive would make it better. Interactive actually ramps down faster than ondemand when you are not touching the screen and won't aggressively scale the frequency up unless you are actually interacting with the device.

The way to save battery is keep your device asleep more, so disable any unnecessary apps which may wake the phone.

---------- Post added at 01:20 PM ---------- Previous post was at 01:19 PM ----------

Yes, the changelog is on my blog.

Edit: Which I forgot to post on here, apologies, thought I had. It's here.
[Nexus S General] Imppy:
On that note...I only drained around 2% in 7 hours time when it is asleep...amazing..this is using 22 interactive boost version

I just want you to clarify idle2...it's only active when screen is off and when there are things running in background such as music? This is like deep idle?
[Nexus S General] :
I wrote a long blog post on IDLE2 v0.201 yesterday.

The v0.210 update is summarised here.
[Nexus S General] rasengan82:
Keep losing connection on 3G. Bars go gray and blue constantly.

Edit: Gtalk is down.
[Nexus S General] madd0g:
Gtalk is down, that's why it keeps connecting and disconnecting to Google.
[Nexus S General] rasengan82:
Is it happening to you too?
[Nexus S General] :
Ya, it's knackered lol. Same on my Nexus 7 too.
[Nexus S General] gioyann:
working perfectly on my i9023, you rock!
[Nexus S General] jad3675:
After flashing the 7/26 test kernel, my screen has a rather...yellow tint to it. Downloaded the Kernel again, and tried flashing it. Same result. Flashing the 7/25 test kernel restores the screen to its non-yellow glory.

I'm on stock OTA JB, btw.

John