yashsingh1/xdaforums huggingface dataset:
[Nexus S Android Development] :
version 7.1.3 (for Android 4.1.2 and 4.2): http://goo.gl/HvUrp

-Revert oom_score_adjust. Just use updated lowmemorykiller.c code without the new score system

-Switch to any-kernel version.

Obviously merging in huge amounts of code from android-3.4 kernel has had some undesirable effects, so I've reverted that, but kept the updated lowmemorykiller.c code, which may or may not help with soft reboots, which appear to be some sort of memory issue. :p

The any-kernel change means that only two different versions are required now, one for ROMs with CM's custom IO control tweak, and all other ROMs. The kernel will work on 4G without breaking GPS. It should also work on stock (feedback needed!)

If you have used a previous version of my kernel, you have a ramdisk that I created to be compatible with Android 4.1.2 and 4.2, and Cyanogenmod, AOSP and AOKP all at once, which may be an unacceptable compromise now that we can use any-kernel and still have MTP. If this bothers you, just reflash your ROM. You may need to backup any scripts from your init.d folder first. Alternatively, you could use fastboot to flash the boot.img contained in your ROM zip file, which means you won't lose anything. Or you put that boot.img into a zip file and flash it (just unpack any of my old kernel zip files, replace the boot.img, repack it, flash it, then flash v7.1.3).

Please feedback on whether this fixes the long boot, and some users reported graphical issues where there had been long uptimes, so I'm interested in whether this was also due to the now-reverted backported code.
[Nexus S Android Development] :
You could use v7.1.3 which is almost identical.
[Nexus S Android Development] :
Did you read the first box on the download matrix? It says

Currently, ROMs with CM's custom IO control are: Cyanogenmod, Slim Bean, Strawberry, Metal Dragon Overlord

So you need to download the custom IO control version. It says 'CM tweak' in brackets underneath because the custom IO control tweak originated from Cyanogenmod.

Unless anyone else been unable to boot Jellybro?
[Nexus S Android Development] :
Do you mean with my kernel, or with their own, or both?
[Nexus S Android Development] :
I'll consider it, but only if the issue with soft reboots clears up.
[Nexus S Android Development] :
No, sorry, I used interactive and thought it was less smooth than ondemand, despite causing huge proportions of maximum frequency. Thalamus certainly isn't selling it in his description you've linked there.

I'm looking at the patches you've linked now.

EDIT: Those patches are very old, and looks like the issue they address has since been fixed in the kernel.
[Nexus S Android Development] deani77:
Hi Bedalus,

I was on AOSP 4.2. What I noticed when using any kernel version was my NXS take boot time longer than CM version. Any kernel will take almost 3 minutes compared to CM version less than a minute.

Any idea?

Sent from my Nexus S
[Nexus S Android Development] BenHeng:
hello Bedalus,

Just had an idea about the soft reboot issue: why not creating a matrix on google doc, so anyone having a soft reboot can add one to a soft reboot count.

The matrix would be like the download one: kernel version x ROM.

It could be open to non-marmite kernel users, so we would have a control group testing the stability of the ROM. maybe the data it would provide could help you a lot...

I don't know if it would'nt cost more time that it would save in the end, but since you said you would try to be more methodical I though it would be worth to share...
[Nexus S Android Development] rockerblood:
i agreed!

Sent from my Nexus S™ i9020A
[Nexus S Android Development] alen1901:
Your kernel. Marmite 7.1.2 version.

Sent from SpeedMachine i9023
[Nexus S Android Development] :
Re-install the ROM / fastboot flash the boot.img from the ROM....

Flash v7.1.3

Should fix it
[Nexus S Android Development] alen1901:
Ill quote that there.

Sent from SpeedMachine i9023
[Nexus S Android Development] ScOULaris:
I've been using 7.1.2 for a while now, and it seems to be pretty much perfect. I have had no issues whatsoever with it, and the performance/battery life are fantastic. I think I'll stick with this version for the long haul.

Thanks for all of your work, bedalus. :good:
[Nexus S Android Development] granets:
hey guys I don't know if this will work, but I just thought of this: I made a script in ROM Toolbox. In it I wrote the command to pull last_kmsg and set the script to run every time I reboot (or the phone crashes and reboots). I was wondering, if this will work, and if it's a good idea? If it is, it will make pulling last_kmsg so much more efficient.

I used " cat /proc/last_kmsg > /sdcard/last_kmsg.txt " in the script.
[Nexus S Android Development] polobunny:
Don't forget to SU either in the script or using ROM Toolbox.

Should work though, I don't see why it wouldn't. Not a bad idea in itself, but not necessary to have it. It will also create a last_kmsg.txt every time you reboot by yourself, remember that.
[Nexus S Android Development] granets:
it will just replace the old one I already have. And I don't reboot too often
[Nexus S Android Development] schurl85:
I found this tool in the play store, does a nice job with the kmsg.

https://play.google.com/store/apps/details?id=se.mumu21.bootlog
[Nexus S Android Development] polobunny:
Only for current kmsg though, no? Not last_kmsg.
[Nexus S Android Development] :
No news is good news.

Just tested USB myself, and it connected fine.

I've not had any graphical issues since reverting oom score adjust from android-3.4. I did keep some of the code for the low memory killer though, so I'm interested if this helps prevent soft-reboots that I believe are occurring because of the memory management.

I'm still interested in knowing if there is still a long boot time with the any-kernel (v7.1.3) version. If you are getting this, is it only on the initial boot after first flashing the kernel? Or every time?

Thanks!

EDIT: While I'm thinking about it... can someone confirm if volume rocker wake is working?
[Nexus S Android Development] treesurf:
I'm still on 7.0.3 here (or whatever the last extramem release was). Well over 100 hours of uptime, still going smoothly. :)
[Nexus S Android Development] csdibiase@gmail.com:
Volume rocker wake seems to be working though i just smoke tested it as I usually don't use that feature.
[Nexus S Android Development] xxxMADxxx:
On v7.1.3 boot doesnt need a long time again and UMS work like a charm..use AOSP JB 4.2..Great work Bedalus..can u make patch for 10 multitouch dude ??
[Nexus S Android Development] :
What benefit is there for 10 points?
[Nexus S Android Development] xxxMADxxx:
i use that for gaming/app and needed more than 5 multitouch e.g playing guitar..if that really make u not interest forget it.ill still like this kernel ;)
[Nexus S Android Development] jiro-kun:
The boot time was a bit slow as usual during the initial boot. Afterwards the boot time was normal.

The volume rocker wake is also functioning without any problem.

Besides that 7.1.3 IMHO, is running great. And, this version will become my main kernel, that I'll fall back to.

Thanks alot!
[Nexus S Android Development] deani77:
Sent from my Nexus S
[Nexus S Android Development] FlatEric0074:
Boot time is okay with this version, thanks.
[Nexus S Android Development] granets:
strange os drain... mind you this is with a 2450mah battery. If it were the normal battery in here I would be down to 50 percent
[Nexus S Android Development] capoooro:
Also here the os consumption is higher than before. Otherwise everything is smooth. Tnx
[Nexus S Android Development] granets:
+1 on the smoothness, very smooth but os drain is too high
[Nexus S Android Development] FlatEric0074:
No, drain from android-OS here in cm10 seems to be ok, is around 2%.
[Nexus S Android Development] leap_ahead:
High Os on 4.2 rom ...
[Nexus S Android Development] atxbang56:
high os on 4.1.2

Sent from my pretty cool Nexus S

Phone : Google Nexus S i9023

ROM : MIUI 2.11.23 by MIUI France

Kernel : Marmite v7.1.2 by Bedalus @1096MHz
[Nexus S Android Development] polobunny:
Hey bedalus, not looking to troll, but what would you say is the advantage of marmite over the stock CM kernel?
[Nexus S Android Development] schurl85:
the tool is for the last_kmsg. if it detects a reboot it copies the last_kmsg file to the sdcard. so only if the nexus really crashes.
[Nexus S Android Development] polobunny:
I see. The way the description is written made it look like it was to collect the current kmsg.
[Nexus S Android Development] ScOULaris:
Well, it includes the smartassV2 governor, which CM stock kernel lacks, and it just seems to have slightly better performance and battery life in general. Of course, this is subjective and varies for everyone's setup.

It also has a few features built in that you can enable with something like NSTools. For example, Marmite allows me to set the maximum battery charge percentage, whereas this is not included in the stock CM kernel.

Bedalus can probably provide a more thorough answer, but I just know from anecdotal evidence that Marmite beats just about every other kernel.
[Nexus S Android Development] kiko22:
hi bedalus... i'm here for the same problem of last days... (do you remeber? flash screen, cut image, nand corruption)

i followed your advice of format sm and wipe everything. I did --> with a long format from windows (3 hours of formatting!)

Yesterday I re-flash Codename and Marmite 7.0.3 .. eveything good for 24 hours.. but this is what happened a moment ago:

and here my last_kmsg --> https://docs.google.com/open?id=0B-kSTrGKwiCHaDBhV1BkcWdNNkE

:confused: i will be grateful with everybody will try to help me :laugh:
[Nexus S Android Development] alen1901:
Format sdcard with phones built in wipe setting. Than fastboot stock ROM, or flash. Then see if everything is allright. If its doing it again, your phone is like, partially dead. :D

Sent from SpeedMachine i9023
[Nexus S Android Development] :
Yes, I can see the graphical issue. I've seen it on my own device. I thought it was due to the backported oom score thing, but it can't be if you're getting it on v7.0.3

Why are you using an old version anyway?

Unfortunately wiping has not solved your corrupt block, it is still corrupt.
[Nexus S Android Development] Articudos:
@bedalus

Long time no see!! Marmite was completely stable so couldn't report bugs here :p

I have a one request, not sure it's original crespo kernel source issue(like missing CRT-off in i9023) or ROM issue(maybe lib file issue like SGS2)..

CRT-off is really strange in 4.2..compared to 4.1.x!

4.2.1 looks a lot better, but, yeah, it's strange little bit.

Would you write code for fix this if it's "original kernel source issue"? :)
[Nexus S Android Development] :
I don't think cyanogenmod kernel has MTP. It doesn't have pm_fast, or FSB OC as an option, it's got less free ram, the broken GPU power management code prevents setting 100mhz min easily and could cause power issues, better default colour and improved performance.
[Nexus S Android Development] :
It's a ROM issue! Who has released a 4.2.1 ROM for us?
[Nexus S Android Development] Articudos:
Greenblue's, in general section:)

Edit: about the strange CRT off issue, Maybe triple buffering related code cause those problem..
[Nexus S Android Development] polobunny:
Thanks for the answer. I must say I'm using the CM kernel right now and I like it. So far no soft reboot so that's something to like. As for pm fast, I'm not sure. My downloads are not dying while my phone screen is off. You're right about the ram, 396mb available. Right about FSB oc too obviously. Performance seems very similar though using ondemand, and default color being better is right, but it's a moot point considering cm has their own voodoo version without any green flash even at the lowest lighting settings.

Not touching minimum frequency works around the bug.

All in all, just writing to evaluate whether or not I should be jumping back to marmite or sticking with the default kernel. The reboots were getting on my nerves at some point, but I'll see.

I'll update you anyway on the progress of the uptime. :)

Cheers!
[Nexus S Android Development] anshumandash:
I am still on the anykernel test release with 90 hours uptime at 1096 without any need to change voltage settings.

Thanks Bedalus. :)

Sent from my Nexus S
[Nexus S Android Development] :
People with high Android OS reading, you may need to reset your location services by toggling them on and off.
[Nexus S Android Development] :
Feel quite pleased with myself for not building any new versions and testing one personally for a good length of time. I use BLX to limit charging to 90%, and even with wifi and 2G always on, still managed nearly a day and a half with over 3 hours screen on time on one charge. Still have nearly 20% remaining, but will recharge now to be kind to the battery!
[Nexus S Android Development] capoooro:
Yes tour last build si Rocky stable. When I have time I would it try with 4.2
[Nexus S Android Development] apatal:
oops! didn't see this until after I flashed the new version. Next time I get a reboot, I'll get a copy of the last_kmsg in proc. thanks!

Sent from my Nexus S
[Nexus S Android Development] y3mita:
Well thanks for this bedalus. BLN is a great add-on. Would BLD save any more battery than without ?
[Nexus S Android Development] dirt:
Flashing this to my ns4g running the 6-15 skanky kang...
[Nexus S Android Development] :
Bld does save some battery.
[Nexus S Android Development] explorer-10:
any support for fastcharge widget?

also, will this by any chance improve over matr1x kernels?
[Nexus S Android Development] apatal:
no use asking for comparisons from devs/contributors. just try it out and see which one suits you best. :)

Sent from my Nexus S
[Nexus S Android Development] :
Deleted... Just needed to do a git reset , see thalamus below. Thanks!
[Nexus S Android Development] :
What is up with the high resolution timer?
[Nexus S Android Development] polobunny:
Off topic but cool to see you're playing with the raspberrypi =D
[Nexus S Android Development] :
I made a bunch of god-awful hacks to some cpufreq files and blended a few different repos, made commits and reverts, and i think i messed up my history somehow. Now when it compiles it's telling me I've got systimer defined twice, and burps an error
[Nexus S Android Development] :
You can use git reset --hard to reset back to a sane state. If you reset to the commit before a merge it will get rid of that merge.

You can either use it to reset to a commit with: git reset --hard <commit sha1>, or you can reset back one or several at a time by doing: git reset --hard HEAD^ to reset back 1 commit, git reset --hard HEAD^^ to go back 2 commits...etc.

It should get you back to a sane state if you wipe out all the crap you merged. ;)
[Nexus S Android Development] :
That's great, thanks for the tip. I was on to the reset hard head, but didn't know about the carat or the sha1. Back to the drawing board
[Nexus S Android Development] :
EDIT: Thanks to thalamus, version 0.5 is out! http://d-h.st/brN

(As version 0.4, but with deadline fixed and PM_FAST added)

Version 0.4 is out!

As much as I admire thalamus approach, I was having trouble getting my favourite governor to work properly (ondemand). I seemed to make things worse by merging in code from other kernels.

I started out again with a cyanogenmod base, but had the same problem with ondemand feeling 'stuttery' in th the UI. However, I was able to successfully merge in the ondemand code from mathkid95's work, for a smooth result!

Initially I tried the same approach with thalamus base, but I couldn't get it to compile, and every error I fixed seemed to cause another one. When I know what I'm doing, I'll try a thalamus base again.

So for now I'm working off the cyanogenmod code. I noticed that kalim has added code that keeps the CPU at 800MHz min when the screen is off and deep idle is enabled. What a great idea! In my battery study I found this to be the most efficient state for DI. Nice one kalim!

Again, for now, no BLD, but I may bow to public pressure if there is any interest in this project and people can't live without it!
[Nexus S Android Development] :
The reason why you can't merge other kernels with mine is because mine has a unique base and merging other kernels in will cause merge conflicts and all sorts of f**kage.

You need to cherry-pick the commits you need, not try to merge completely different kernels together, because it won't work.

Your / CMs iosched-deadline.c hasn't been adjusted, it's stock.
[Nexus S Android Development] :
Thanks, i was reading about cherry picks. I think i know how to do it.

I'll see if i can cherry pick your deadline implementation since i know it works very well.
[Nexus S Android Development] :
Okay, that wasn't what I had in mind, there was just one line to change. While I was at it, I added PM_FAST for fast wifi with the screen off. So here is v0.5: http://d-h.st/brN
[Nexus S Android Development] DaXmax:
@bedalus nice for trying to pull my ass here (meaning, i like your kang...) Could you add 1200mhz step, cuz i want it for Brave, Temple Run....
[Nexus S Android Development] :
Hey, for you, anything. I'll look into it
[Nexus S Android Development] y3mita:
For some odd reason youtube stopped working with .5
[Nexus S Android Development] JokerAce:
SmartassV2 + noop VS Ondemand + deadline, which is better?

I've read that SmartassV2 + noop is the best combination. Balance between battery and performance. But I have stuttery performance with it. For instance, when I try to add a widget. There's 2 sec delay before the widget dialogue appears. Typing fast during text messaging also have some stuttering.

Ondemand + deadline is your fav right bedalus? But you mentioned that Ondemand scales up to 100% too often, so.. battery life is an issue here aye?

Additional info: 1000/100 for cpu speed. DI off (no need for it cause I don's use anything when phone is asleep.) BLX 97%. BLN off.

I am very keen to use your kernel, because you had had done such deep research on kernels. You are like a filter funnel: Tons of kernel in the funnel, and what comes out of the filter are pure contents, waiting to be crystallized.
[Nexus S Android Development] KalimochoAz:
Sure Bedalus I will take a look at your patch :)
[Nexus S Android Development] KrisMurdrum:
It hasn't crashed on me yet, but I've not been able to play with my phone all that much since I got to work. In the last 6½ hours I've only clocked 52 minutes of on screen time... Which is the least I've clocked in any given 6 hour period all week. Heck, any five hour period prior to this one. (I work 3rd shift, plus school, plus taking care of kids. If it ain't a day off I barely manage to sleep)
[Nexus S Android Development] y3mita:
Something went wrong with 1.4b it kept my phone awake and went from 100 charge to 44 in about eight hours
[Nexus S Android Development] caliban2:
So I'm off the testing-waggon until bedalus brings up a jb-kernel (please base it on 1.4-test...? ^^). Running stock-jb and comparing it to the very fast combination cm9+bedalus, it's terribly sluggish. Still better than stock-ics, but yeah, I'm spoiled. :)
[Nexus S Android Development] migueldbr:
are you serious?i just tried [ROM]DoubleX-JRO03E ota in the development section and even being stock, its faster and more responsive than any combination of ics rom+kernel i tried before...
[Nexus S Android Development] caliban2:
Of course I am serious.

a) for the moment I'm running full stock, not some deodexed version (will later today)

b) bedalus boosted my cm9-sys to new heights. In the past few days I tried different kernels and different roms, but every combination had to go after 20 minutes. They simply didn't stand up. But let's not go off topic about this. :)
[Nexus S Android Development] :
Well, kalim's says he's looking at the patch, so maybe he can see what's wrong with it. The kernel couldn't handle dereferencing a null pointer, which in plain English means that at least one variable I used isn't initialised correctly. This happened a lot with the early test versions, and seems to have occurred again since I re-arranged the code into a function. It's because pointers and dereferencing are confusing! Also, I've been so addicted to this that I end up doing a lot of programming when I'm exhausted.

Still, 1.4b which I'm still using hasn't gone wrong for me at all, and I'm six hours away from two days.

But the future is JB, and so I'm going to download the kernel source and start with a stock base. Then I'll integrate Deep Idle, and then my patch.
[Nexus S Android Development] doc_v15:
V.1.4 is the best bedalus kernel ever! I havent got any problem. Battery seems to be more efficient.

Ondemand/deadline
[Nexus S Android Development] Blackcrx:
I had that problem with an earlier version of 1.4

all I did was reboot my phone after I noticed it and the problem never came back
[Nexus S Android Development] jabbeboy:
This doesnt work on the official ota version of jelly bean to the nexus s? really would like to have voodoo colors again,
[Nexus S Android Development] Blackcrx:
check simple kernel: http://xdaforums.com/showthread.php?t=1420542

reports say it works now with BLN and voodoo colors
[Nexus S Android Development] jabbeboy:
Okey, i think il wait, Im seeing that its problems with the jb kernel. But this kernel is battery friendly? I want as good battery as possible
[Nexus S Android Development] KrisMurdrum:
In my experience it's User Behavior rather than kernel that determines battery life. Although, I will admit that a badly coded kernel will drain the battery. You will, however find that Marmite is not one of those.
[Nexus S Android Development] :
Okay, I've built a test kernel with lots of debugging bits in it, a contingency against variables being NULL (even though I think it's impossible) and a spinlock around the whole function. I don't exactly know what a spinlock does, but I was having instant reboots on the new test version, and my debug info was pointing at latency. I used intuition, not knowledge, just instinct... but I now have a version working at 200MHz!

So, a test version at 400 MHz will be uploaded shortly...

EDIT: Damn, it froze up! Every time I get my hopes up... :(
[Nexus S Android Development] y3mita:
Waiting for update, latest no stable for me. I lost data connection I had to reboot
[Nexus S Android Development] atxbang56:
I can't play videos on youtube or in browser....using bedalus 1.4 on MIUI 2.7.20

Envoyé depuis mon Nexus S avec Tapatalk
[Nexus S Android Development] Blackcrx:
waiting for update also. been charging my phone waiting so i get a full charge before i flash the new kernel. haha
[Nexus S Android Development] :
Holy crap, spinlocks are complex: http://www.makelinux.net/ldd3/chp-5-sect-5

Once I've finished scratching my head, I'll have a look at what a mutex does. I think what's happening with the freezes may be some kind of deadlock.
[Nexus S Android Development] Blackcrx:
I'm confused and a little slow..... so does that mean no release today? haha
[Nexus S Android Development] :
thalamus was right a few days ago when he said I shouldn't post every release. I thought I'd cracked it when the 200MHz version I just made seemed stable (until it proved not to be). If I'd released that, with a big "woohoo! it works!" I think I'd have been pretty embarrassed.

Also, now that I've read a little about spinlocks and mutexes, I think I may have a deadlock problem. What I'm going to try next is for the system to release the spinlock before calling my new code, then re-apply the lock after my code is done. If there is a spinlock causing a deadlock, then this will solve it. I've got a few different things I want to try. But I think unless I run a kernel without problems for at least 12 hours, I probably shouldn't release it, even as a testing version.
[Nexus S Android Development] kiko22:
i used 7.0.3 becouse it was the last version with extra ram from camera too.. Now I reversed to 6.7 version, that liked too much to my nexus :P

probably th problem isn't the kernel, but i will try everything!!