Remove All Ads from XDA

 View Poll Results: What do you think of this KERNEL? (after some use) and reading!

It's just AWESOME! + Good Developer!
756 Vote(s)
It's Good and i like it more than any other.
217 Vote(s)
It's can be better, for now also trying others.
89 Vote(s)
I like OTHER KERNEL. this one is not for me.
33 Vote(s)

[Kernel 3.12.rc6][24 OCT][DEV THREAD!] Dorimanx 8.43 ONLY JB I9100 +RECOVERY+ROOTED.

12,320 posts
Thanks Meter: 90,607
Thread Closed Email Thread

Dorimanx Kernel for SGII-I9100
Supporting 5 ROM Platforms!

My kernel was based on SiyahKernel 4.0 long time ago in other realty,
Kernel Tree is 3.12.rc6-R101, + Samsung JB updates + my tweaks and lots of tuning!

Thank you Gokhanmoral for your great work in the past!


Do not install this kernel on any Android version lower than 4.1.Y
Do a Nandroid Backup of your ROM before first try it! just in case
Constant OC will drain more battery! use low speeds on screen off! min 200/100 max 800
CPU will shutdown in case of over-volt or under-volt so be careful
I'm no responsible for any hardware damage or system corruption that can happen after using this kernel,
you are using this kernel from your own will and accept any responsibility by using it.
If you install this kernel your warranty will be void!

Of course you can be relaxed, I'm trying every release on my phone several hours before of release it so,
if something wrong, i will get the damage first, you get a tested and tuned working kernel...

« Thread rules

« Which kind of posts are allowed in this thread?
  • Report of bugs after test it personally and including the proper log (Please refer to the Voku's guide of How to report bugs for further information about logs.)
  • Feedback that could genuinely helps to the development of the kernel, for example tests of a new feature including a complete explanation, documentation and results.
  • Requests of new features for the next versions of the kernel with the proper explanation of why you expect to see it and why do you think that will be an improve to the kernel.

« Which kind of posts are not allowed here and belongs only to the discussion thread?
  • Battery life related, which include: Discussion of battery life, statistics of your battery life, screenshots about your configuration, your configuration itself (with the intention of help another users)
  • Reports of SOD if you undervolt / overclock your phone
  • General discussion about settings of the kernel, which include: Governors, schedulers, I/O, dual-boot, etc.
  • Requests of new features for the next versions of the kernel without the proper explanation of why you expect to see it and why you think that will be an improve to the kernel.
  • Bug reports with the proper attachments like logcat and kernel log (This is the exception, you can post it here and in the development thread, again, only with the log attached, otherwise the report will be ignored), please refer to the voku's guide of How to report bugs for further information about logs.
  • Deep sleep issues. Mostly of this issues are not kernel dependent, the rogue apps cause wakelocks and other weird behavior so, the first suggestion will be go to the BBS (Better Battery Stats) thread, install the app, and drop the log in there but as complement you can expose your issue here.

« Useful Links and Guides

Official Dorimanx's site

Facebook Fan Page

Kernel GIT Repository

INITRAMFS Repository (recovery)

Dorimanx change logs by kantjer

How to save battery by Voku

All you need to know about UV/OC by the professional chip designer Vikas [Very important to read]

[GUIDE] CPU Governors, TCP algorithms, Android Tips, & IO Schedulers: In my Own Words by MBQsniper

Kernel Governors, Modules, I/O Schedulers, CPU Tweaks, AIO App Configs by droidphile

How to make your own .TAR kernel file to flash with ODIN by dorimanx and a ready to use .TAR by kantjer

How to tune the touch screen if you need it by Crescendo Xenomorph

Kernel Gestures Builder by Flint2


[Tutorial] How To Logcat by paxChristos

Dorimanx kernel ICS/JB - Dummies Guide by ironass

  • Kernel is updated to 3.12.Y and beyond.(hybrid)(we have 93% from 3.12.Y kernel!)
  • Kernel SUPPORT JB 4.1.x/4.2.x/4.3.x
  • This is JB Tuned Kernel only! not supporting any 2.x.x/4.0.x roms!
  • Dual CPU support
  • Default CPU governor: HYPER
  • Default CPU frequency: 200-1200 MHz (MAX OC up to 1.6Ghz speed!)
  • Kernel Support STweaks and 5 Profiles.
  • Overclocking to 1600 MHz. (via ANY CPU Tweak Apps or STweaks)
  • Kernel support 16 CPU steps! 1600Mhz->100Mhz by static default!
  • You can set MIN/MAX CPU Freq in STweaks app! + lots of CPU tweaks.
  • Kernel will sleep in deep sleep on 200Mhz->800Mhz as Samsung requesting to prevent SOD.
  • Support undervolt/overvolting via sysfs interface/apps interface. and STweaks (800-1500mV) (all set to best)
  • Be very careful with voltage settings! (all set already)
  • Default I/O Scheduling: BFQ
  • More I/O Scheduling present in kernel: DEADLINE, VR, NOOP, FIFO, CFQ, SIO, ZEN, BFQ
  • Native USB Tethering.
  • Native Wi-Fi Tethering
  • File systems support: Ext3/4, FAT32, CIFS, NTFS, EXFAT
  • Added tweaks to increase I/O Speed.
  • Added tweaks to increase CPU speed
  • Removed all the debuggers to free kernel from unneeded jobs, and logs.
  • More Govs present, HYPER, conservative, performance, pegasusq, nightmare, darkness, zzmoove, ondemand(default sleep gov), sleepy.
  • ZRAM SWAP add more 150/300/600MB compressed RAM, activated by STweaks, set to off by default.
  • Tweak camera (better picks quality)
  • Kernel Include Siyah Recovery with Dual ROM support!
  • In Recovery you have section to select kernel profile. Performance, default, battery, the default is DEFAULT.
  • Kernel will Auto ROOT your device!
  • You can disable ROOT in STweaks app!
  • Tuned for I/O Mega Speed SQLite is injected to ROM after install.
  • BLN by GM! lights time out, and blink/breathing effect, see STweaks BLN tab to activate! (READ ABOUT BLNWW!)
  • New Kernel Management app STweaks by GM! installed with kernel.
  • BLN without Wakelock to save battery when BLN active till timed out. by GM.
  • Touch Keys Light change with the screen brightness! by GM.
  • Massive script for kernel/ROM management made by Voku,Alucard and me
    It's will work by auto and set lots of tweaks: NET tweaks, GPU tweaks, CPU management, Deep Sleep Tuning, Charging states, and more!

    It's name is
  • WE SAFE (MMC_CAP_ERASE not present) in kernel MMC Code!
  • MMC code merged with SAMMY Update 10 + 3.10.y updates!
  • FM-RADIO WORKING! (you need Spirit FM PAID!!!!) or Sammy ROM with FM APP.
  • Touch screen color + touch thresholds are in STweaks,
  • Kernel Cleaning Script is build IN! by VOKU.
  • BT Support for SAMMY 4.1.2 and all 4.2.X + 4.3.x
  • Video(GPU) + Camera Driver from SAMMY JB/CM10.1 + patches
  • WIFI Driver 1.61.56 ported from SG4
  • Modem Driver from SAMMY JB SOURCE
  • SMP Processor code updated from Kernel 3.12.Y
  • RCU + SRCU Processor code updated from Kernel 3.12.Y
  • Kernel Code for on screen gestures by Tungstwenty fixed by MARIO1968
  • All FS used Code merged with 3.12.Y kernel
  • SLUB fully merged with 3.12.Y Google Android kernel
  • SCHED CORE fully merged with 3.12.Y kernel.
  • RAM merged with 3.12.Y + Google Android kernel.
  • VFP updated to MAX from 3.12.Y
  • Slide2Wake by FLUXI, (swipe from left to right on turned off screen to wakeup device, tweak can be turned on/off in STweaks, this mod use 5% battery! (Modded by GM for less battery drain)
  • Sound boost controls by FLUXI in STweaks.
  • New Mali V2 Video Driver combined with old to support JB STOCK in one kernel(8.X branch) by Gokhanmoral/me/CM-TEAM!
  • In 9.X branch we have MALIv2 ONLY video driver for CM/AOKP new ROMS! no STOCK SUPPORT!.
  • Added mdnie interface and made hardcore’s sharpness tweaks optional by GM!
  • 5 GPU FREQ Steps from 108Mhz to 520Mhz by GM!
  • Ultra KSM from 3.9.y kernel.
  • Powered by SuperSU "Please support SuperSU" dev Chainfire!
  • Recovery can backup/restore STOCK ROM! include the preloaded partition!


It's not possible to dual-boot with the JB SAMMY ROMs in any combination.
So, please! don't try it and don't report it as a bug, it's a known issue.


Every user must use his / her own criteria to report the off-topic posts,

The rules are just a guide to what is expected to see in a development thread,
But if you don't want report posts at least don't answer the repeated questions,

This open the door to the spoon feeders to ask again and again and again...

Live Change Logs from GITHUB:
Kernel 8.x
Kernel 9.x

(To download kernel, go to links at bottom of >this page!< YES the OP PAGE!)

ICS is no longer supported!
for ICS ROMS use 5.x/7.x/8.1 only!

Discussion, Q&A Dorimanx Thread Go >HERE< For Help.

Change logs:

24/10/13 time 12:50

Kernels 8.43 + 9.43 <Stable>
Kernels 8.42 + 9.42 <Major BUG found and fixed in x.43>

Kernels 8.41 + 9.41

03/09/13 time 16:10

Kernels 8.40 + 9.40 < NEW BETA TEST! >

Kernels 8.39 + 9.39 <stable but with small bugs in ram count>

Added 4.3 support!
Kernels 8.38 + 9.38 <STABLE BUILD!>

15/08/13 time 04:00AM

Kernels 8.37 + 9.37 <DELETED! BUGGED>

"Declared as 3.10.rc5 in X.36 build"
Kernels 8.36 + 9.36 <DELETED! BUGGED>

Kernels 8.35 + 9.35 <MASSIVE UPDATE! V2 Stable for most users>

Kernels 8.34 + 9.34 <MASSIVE UPDATE! Stable for most users>

Kernels 8.33 + 9.33 <Stable for most users! BUT do backups! to PC>

Kernels 8.32 + 9.32 <Considered stable by many, but still some got SODS(for some users). (bugs fixed)>

Kernels 8.31 + 9.31 < test V7, STABLE 90% but low vibrate and small bugs.>

Kernels 8.30 + 9.30 < test V6 STABLE 93%, OOM profiles still broken.>

Kernels 8.29 + 9.29 <new beta test V5, OOM FIXED! stable, but oom profiles broken.>

Kernels 8.28 + 9.28 <new beta test V4, half stable, 80% OK.>

Kernels 8.27 + 9.27 <STILL SODS, OOM Broken!>

Kernels 8.26 + 9.26 <STILL SODS, OOM Broken!>
Kernels 8.25 + 9.25 <DELETED, SYNC BUG>

27/05/13 time 02:50

Kernels 8.24 + 9.24 <Reported as 90% Stable release!>

Kernels 8.23 + 9.23 < DELETED SOD BUG>

Kernels 8.21 + 9.21 < DELETED SOD BUG>
kernels 8.20/9.20 < DELETED SOD BUG>

Kernels 8.19 + 9.19 < DELETED SOD BUG>

Kernels 8.18 + 9.18 < DELETED SOD BUG>

Kernels 8.17 + 9.17 < DELETED SOD BUG>

04/05/13 time 14:45

Kernels 8.16 + 9.16
<Reported as 95% Stable release!>

16/04/13 time 11:35

Kernels 8.14 + 9.14 <STABLE and WORKING OK!>

04/04/13 time 00:10

Kernels 8.13 + 9.13 <STABLE and WORKING OK!>

Kernels 8.12 + 9.12 <STABLE, but with WIFI BUG!>

23/03/13 time 23:40

Kernels 8.11 + 9.11

Kernels 8.10 + 9.10

Kernels 8.4/9.2 -> 8.9/9.9 DELETED! <MEM SOD BUG>

Kernels 8.3 + 9.1
Kernel 8.2 + 9.0

Old History:

24/02/13 time 05:22 (Advanced BETA II)

Kernel 7.49 <Advanced Beta Tuning FIX>
Kernel 7.48 <Advanced Beta Test>
Kernel 7.47 <Improved Beta Test>
Kernel 7.46 <MEGA BETA TEST>

01/12/12 time 19:15 (STABLE)
Kernel 7.26 ICS+JB-MALI

Kernel 7.26

20/10/12 time 16:15
Kernel 5.90 / 7.4 JB-MALI

Change Log for 5.90 ICS / 7.4 JB-MALI ONLY!

2/10/12 time 22:48
Kernel 5.84

*VOKU and me, we restored function that check DATA + CACHE file system before boot, for errors and damaged blocks and more.
it's can be requested for one time run by user via extweaks misc tab.
DO NAN DROID BACKUP VIA RECOVERY BEFORE ANY ATTEMPT TO USE IT! (if your phone will not boot, and you don't have backup, don't blame me for that)
If your data has allot of corrupted files. then first boot with this kernel will take longer! do not panic. let it work.
no more than 10MIN, if still no boot, then you need to restore your nand backup and never use this function!
your hardware is not ready for DATA partition clean up. forget it.
you will get new file /log-data and /log-cache
after boot you can check if you had any errors in data or cache.
To activate just "push the ATOMIC button " or push again to ABORT!
function will work after reboot, and never again, till requested by user.
If you do nan droid backup and then restore it, you restore all the errors and junk with it. (just for the info)

Goals for next builds:
  • Debug and find more code errors! (always something new)
  • Add cool features and tweaks
  • Extend battery life.
  • Boost performance.

« Installation
  • Download the file
  • Place it on your SD card
  • Reboot into recovery
  • Flash the file
  • Reboot

In case of a new installation on a non rooted or non recovery device:

You can Download ODIN 3.04 attached to page.
  • Reboot to Download mode (Hold Power + Home + Vol down, then vol up when you see the download menu)
  • Connect USB, wait until the drivers be installed
  • Install kernel via ODIN, choosing the option PDA, search for the file that you downloaded and push start
  • If all going fine the phone will reboot and you done

Mirror #1 by Bmbm
Mirror #2 by Willflint

Mirror #1 Here

Mirror #2 Here

Dev-Host mirror (just in case that main mirror be overloaded)

Alternative mirror provided by Looki75
> Server in standby, no content <

« Credits
  • Gokhanmoral (Siyah Kernel)
  • Myfluxi (xxICSKernel)
  • Pinpong (Thoravukk_i9100)
  • Voku1987(This Kernel)
  • Alucard_24(This Kernel)
  • STANTRC(This Kernel)
  • Halaszk (siyahkernel-sgs3)
  • AndreiLux(Perseus-S3 Kernel)
  • Teamhacksungb (CM Kernel)
  • Pershoot (Galaxy-2636)
  • Dror2169 (KernelSanders-OMAP)
  • Faux123 (Great Mega Elite Dev, many kernels)
  • Simone201 (Neak-ICS kernel)
  • Angelom (Abyss kernel)
  • DerTeufel (Samsung kernel - Aries)
  • Entropy512 (CyanogenMod)
  • Talustus ( Dream Kernel - ICS)
  • Tungstwenty (On screen gestures addon)
  • Renaudallard (GNexus kernel)
  • Torvalds (Kernel 3.6.Y maintainer)
  • Robertobsc (Siyah kernel 3)
Second kernel developer voku1987, GIT
Please treat him as full time developer for this kernel, any of his answers are considered as if i have answered.
Thanks a lot for your help and support!

Third Kernel developer Alucard_24 GIT
Please treat him as full time developer for this kernel, respect his answers as he know much and helping in development!
Thanks a lot for your help and support!

Forth Kernel developer StanTRC GIT
Please treat him as full time developer for this kernel, respect his answers as he know much and helping in development!
Thanks a lot for your help and support!

Great Fearless Beta Test Team!
  • Eskriminal
  • Rkoby13
  • Infatality
  • Shahan_mik3
  • Computoncio
  • Metalgearhathaway
  • PSyCh¤_O_O
  • Crazy-Silver
  • Cybernetus
  • Bogdan1980
  • Markox89
  • Stopro
  • Misk77

The most active and honored team members are:
  • Voku1987 ★
  • Alucard_24 ★
  • StanTRC
  • Manulemaboul ★
  • GaboWinter ★
  • Johnbeetee
  • Xanthrax
  • Cybernetus
  • Big_bum
  • Rkoby13
  • Unexist6969
  • Bologna
  • Kantjer
  • Crazy-Silver
  • Sybregunne
  • #illidan
  • It_ler
  • Flint2
  • Wonsky21
  • Zeppelinrox
  • Fhasovic
  • Lyndonguti
  • Nasty_z
  • Krishnadusad
  • Crescendo Xenomorph
  • Jgcaap
  • Bleuxeon
Respect them and read there posts, ask them questions, and you will be happy and safe with us


  • Donation from a XDA Guests x36
  • Bmbm (Huge donation! Great Main Mirror!)
  • Willflint(Huge donation! Great Second Mirror!)
  • Bleuxeon x5
  • Sun90 X3
  • Rkoby13 X3
  • Xanthrax x2
  • Kantjer x2
  • Flint2 x2
  • PigMachine x2
  • Nuclear******* x2
  • Jgcaap X2
  • Didgesteve X2
  • Toffiko X2
  • Ercxar X2
  • NeGriTa79 x2
  • O0boiboi0o x2
  • Axonn x2
Bologna, Avinashadvani, Ciribaski, Freewind29, Johnbeetee, Malavan, , Pender666,, Duykhang524, Fictisio, Americoz, Den15, Jomaga, GregX80, Nokia-xxx, Steili, Ulver7, Mr_omega, Haramizuki, Mofeywalker, Puppyko, Computoncio, Ophirb, Iron@ss, Sasho36, ADABman, Follettoverde, AMDPOWERFIST, Quijote1, GeScha, Trevfee, Cybernetus, Drinky, JulianXhokaxhiu, Thijssie909, Dick Gordon, Gippy2, Mario1968, Godzifa, Maulattu, Manczyslaw1], Fakhersidhu, Davidb89, Dynomot, MrMastodon, Calanizzle, Nogo8888, Dongerado, H4cker77, GieltjE, Blaex, N1m0Y, Lukign0, Ruk_design, Bubble-be, Chivas112, Vexxx, ,Spinik, Minidou-77, Amber_Oomb, Oriundo, Imilic, Liorreem, GieltjE, Knהההrz, TrallaP, LegnaDegna, Fliron, Mrjl, Mmca, Adyjl, KqK, Xsycox, Gatsu84, Oshmoun, Poseben, R3dDr4g0n, Walter White, Arpinacio, TyDraniu, Livefortoday, Dox81, BigGiantFish, Blaex, Metalgearhathaway, HorstiG, Sgauge, ZeroLight, Leo2589, Cr3ck3r5, FaTa1-Err0r, 99x, Pitzyper, 1.000.0000Dollar, Renemt, Cool1007, Sibero80,

« Extras


Here you can download the app to set the script to make your own gestures.

*Added gestures script that connected with cortex and can be managed by user and system in harmony!

The script is located at /data/ do not move it, if you have already any gestures scripts in init.d delete them and move your custom stuff to this script.

It will work with the screen on, and be shut on screen off, to get rid of one more loop that wait forever, we dont need it on screen off! So i give you 5 preconfigured gestures! max supported is 10! max finger touches supported also 10.

Script will be copied to data if not exist on boot, if exist then, nothing. You can shut this function in STweaks or restore to default gestures if you mess with it

On restore you will get backup of your current running file at /data/ + just in case.


I am here for you so, ask, debug and comment!
Help me to make this kernel as good as possible!

Recognized by followers
Great Developer DORIMANX

Page modifications by GaboWinter!

Attached Files
File Type: zip - [Click for QR Code] (466.6 KB, 4222 views)
The Following 984 Users Say Thank You to dorimanx For This Useful Post: [ View ]
24th April 2012, 07:02 PM |#2  
dorimanx's Avatar
OP Recognized Developer
Flag TERA Prime.
Thanks Meter: 90,607
Donate to Me
Kernel Info about Tweaks / Mods

Here I will post about things that exist in kernel

First of all here are some guides made by VOKU also developer for this kernel.

Android: How to report bugs

How to use "ADB" - Command Line Tool

You get ZRAM SWAP.

In short, it's compressed RAM, that by using our mighty CPU compress 150MB of Real RAM into 300MB ZRAM!

This is simple math:
we have 848MB RAM, + 300ZRAM - 150 Needed for ZRAM = 1GB RAM

You can see it work by entering terminal app, or connection by ADB
And type:


you will see this..
root@android:/ # free
             total         used         free       shared      buffers
Mem:        848164       801800        46364            0        13456
-/+ buffers:             788344        59820
Swap:       292968        23420       269548
in SWAP filed you see it exist and works!

Also there is one more advanced check



you get:

127|root@android:/ # zram_stats
Swaps Status
Filename                                Type            Size    Used    Priority
/dev/block/zram0                        partition       97656   7804    20
/dev/block/zram1                        partition       97656   7804    20
/dev/block/zram2                        partition       97656   7808    20
disksize:          100003840
num_reads:               474
num_writes:             2013
invalid_io:                0
notify_free:              61
zero_pages:              105
orig_data_size:      7565312
compr_data_size:     3465633
mem_used_total:      3563520
avg_compr_ratio:          45 %
mem_overhead:              2 %

disksize:          100003840
num_reads:               473
num_writes:             2013
invalid_io:                0
notify_free:              61
zero_pages:              106
orig_data_size:      7561216
compr_data_size:     3447524
mem_used_total:      3584000
avg_compr_ratio:          45 %
mem_overhead:              3 %

disksize:          100003840
num_reads:               477
num_writes:             2014
invalid_io:                0
notify_free:              61
zero_pages:               99
orig_data_size:      7593984
compr_data_size:     3444863
mem_used_total:      3559424
avg_compr_ratio:          45 %
mem_overhead:              3 %
You see 3 ZRAM swaps each 100MB and they work in load balance!
All filled/released in one push, it's fully auto! it's will help on heavy RAM load!

================================================== ================

Touch Recovery:

Made by ELITE DEVELOPER Gokhanmoral!
I have added tweaks and my configurations.

You can move in menu by finger, and by pushing arrows at the bottom, also hard keys work.

You can have 2 ROMS installed in one phone
See menu and check for full instruction on Developer Thread!

You can backup and restore / format / mount / install from ZIP / or from zImage!

You can set / reset your kernel profiles

there are 3:

Battery saver: reduced performance, but long battery life.
Default: normal performance, normal battery life
Performance: Boosted allot for performance, but faster drain of battery.

In order to use performance profile and not to drain your battery too much,
you need to set profiles in any app for CPU tweaking, that can give you profiles for:
Screen ON
Screen OFF
ON LOW Battery.

For screen ON you can use Full OC (200-1500) and have fun.
On Screen OFF: use 200-800/1000 speed
On Call use: 200-800 to save power.
On low battery use 200-1000/800/500 as you like..


You get tuned SQLite for CM9 or PURE ICS ROMS.

Its set to reduce the "sync command" when writing and reading tables in apps and system data.

So it's will "sync" on finish write, and not every small operation that its doing.
By this, read/write ( I/O) performance boosted allot!

If you install any other kernel after my, the sqlite will remain in ROM till ROM will be replaced.


More to be added later.

22/7/12 time 19:00
Kernel 1.0 -> 5.2

*Restored lot's of code that i and voku ported, to restore stability,  much from that code was exp, so it's moved to EXP branch, i will test it  offline.
*Changes to cortex for stability, see git.
*Messed with profiles save, should be ok now.
*Improved stability!
*Improved performance!
*Updated to 3.0.38!
*Fixed GPS
*Added wifi supplicant tuning to extweaks and to cortex.
*Added FIX for Korean GPS
*Added BT fix for SAMMY 4.0.4 ROMS by  Gokhanmoral! TNX!
*More code porting for better deepsleep! and network fixes.
*Tuned hyper gov and renamed to HYPER!
*Updated to Samsung Update 5 + 6
*Lots of changes to TVOUT driver, it's may now work on custom roms!
*Removed ondemand, HYPER is the same gov but more advanced!
*Fixed intellidemand now it's stable.
*Ported more code fixes from 3.5-rc7
*Added new tweaks in extweaks and converted many to checkboxes.
*More patches to WIFI driver.
*Battery life improved allot! thanks to code changes that put more drivers to sleep!
*Removed KSM and ZCACHE from config, ZCACHE is damaged after merging  with kernel 3.5-rc7 and KSM eat battery and dont really help. no big  change in performance, still fast and smooth. (zcache no longer used in  3.x.x so we disable it too) 
*Kernel is stable! 2 days with full cortex and performance profile.
*Updated to 3.0.37!
*I have ported lots of code changes from kernel 3.5-rc7 (about 2000+ code lines changed)
all about file system and cache memory and compression.
*VOKU has ported lots of new code for process control and kill + memory control. from 3.1.Y
*Fixed wakeup booster, it's more smart!, now i boost the freq to max but with your GOV not with performance, and add +25mV to all steps for time that wakeup booster works, then it's will set speed to normal and reduce voltage by -25 and all will be as you set.
*Cleaned code from unused functions.
*Extended light sensor and battery sensor pulling time, to reduce battery use, and CPU use (done by voku)
*Tuned voltage for HIGH steps 1000 --> 1500 added more +25mV each. for stability.
*Fixed the Touch keys timeout stuck at 5 sec. now should obey your settings.
*Added check if cortex background process is OFF or ON for real.
*Added new GOVs intellidemand and wheatley they are good for battery save, and can be fast if tuned via setcpu app! or they SLOW by default but very smart.
*Fixed all GOVS code about idle time statistics and wait for IDLE, should help reduce battery drain.
*Restored some define values to default, this small things can make big problems, we made some changes to them without fully understanding if it's OK or may damage some thing, like front camera!
*Kernel size is FULL, 8.10MB so very soon i will have to cut some tuning to gain more room for code changes...
*Fixed BLN still ON after main BLN switch off!
*Fixed small bug in kernel optimization.
*Tuned brightness for simple auto brightness (modded by VOKU)
*Improved stability and performance.
*File system corruption protection. by using FSYNC function to sync all changes to file system more often.
Added extweaks MISC option to disable the FSYNC to get little more performance, but reduce to less safe from damage file system (DEFAULT for all KERNELS!) this function is external! option will be updated only on reboot! not as you set it.
*Removed cortex background process for default and battery profiles, so user can use it or not. see extweaks, (without cortex, wake up booster + sleep gov change + dynamic GOV modding will not work!) for some ROMS, it's GOOD! since they get SOD all day with cortex ON, so try without, if OK, try with, if OK, have fun, if SOD, disable again.
It's ON for performance profile!
*Battery life improved.
*Added code fix that reduce CPU usage on idle to 1~15% on 100Mhz! was 15~30% now more battery will be saved.
*Rebuilded the root add/remove now it's used as buttons. install , remove , check
*Retuned Touch screen CODE, screen will not stuck now, 70% of SOD, not really stuck the phone, it's only the screen stuck! via adb i see that all OK! and system working as was, so now problem is fixed!
*New code fix for WIFI, now if not used and disabled in ROM, driver will cut power to WIFI chip! till now it's was still idle and drained power. not any more 
*Finally i made my kernel STABLE! no more SOD and great battery life!
I have reverted from Linaro 12.06 GCC 4.7.1 builder to Android GCC 4.3 builder
that used to build all ROM and Default kernels!
So no more SOD! and battery is 1.1%/h -15mA :)
*Added more fixes to code from FLUXI kernel, TNX Myfluxi!
*Set 15 CPU freq steps for all profiles and removed settings to change it, there are many code trigers that depend on 15 freq steps, so best to have all for all profiles, then reduce the MAX freq to what needed, (already set)
*if you have added any INIT.D scripts that mess with my settings, REMOVED THEM, then test my kernel,
For some phones to low settings will always kill the phone,
I am asked all people that post INIT.D scripts in this thread, STOP/REMOVE. keep them to your self. thanks.
*Found and removed SOD bug on screen off/on and in deepsleep.
OK for me, need more people to test!
*Ported some stuff from GM SG3 kernel, better video sharpness and some restores for Video driver GPU freq lock on screen ON.
*Tuned all profiles, with min/max cpu on suspend, now we can use 200 to 700, please do not change it for now.
*Lots of new code ported by VOKU from 3.1.Y kernel! see GIT
*Some clean ups, and kernel optimizations FLAGS.
*Removed hotplug and interactive govs, we have lot better govs to use.*fixed small but critical bugs! (reuploaded kernel last at 18:59)
*I have reverted all CODE for CPU Idle and Suspend from Source (GM Thanks again!) now i hope the SOD will be wiped!
*Reduced Kernel size thanks to VOKU new reconfiguration of Kernel flags.
*Added new CPU calibration code form 3.4.y tree.
*Added more fixes for Kernel scheduler.
*Tuned all profiles, now sleep gov is pegasuq for all!
Fixed all missing config triggers and added more protection from battery gauge reset by extweaks without need.
*New Updates to SLUB scheduler that we use for memory management.
*Added new stuff to extweaks!
Now we have:
bln tab:
SWITCH to turn of BLN!
SWITCH to turn ON led lights on touch! it's use the led time out!
Fixed BLN test button.
cpu tab:
SWITCH to turn on/off wakeup booster and set the boost delay!
*Reverted last USB code update from NOTE, found that driver stuck after long charge and we can get to storage via USB, we have SG3 driver, so to mix them probably bad idea,
*Restored CPU code that needed for SAMMY rom stability to prevent SOD, so i hope it's will be ok now.
*Small fixing and cleaning. see  GIT's
*Fixed WIFI wakelocks by removing latest patches, need to work on them first.
*Added CPU patches from GM
*Added Audio Amplifier GAIN for headphones 0DB 1.5DB 3-6DB addon by GM! see extweaks.
*Tweaked all profiles! set the suspend freq to min 700 max 800! as Samsung request! lest stop the SOD! please do not change that settings.
*Added new Patch for WIFI filter found by Entropy512 seems that we had an open packet filter that helped to drain battery with wakelocks!
*Fixed some cortex code, all should be good. and fast!
*Removed EXP ver, need to work on it.
*For now this kernle not include new Power Manager by VOKU, we still testing!
*Fixed Wakeup booster script, now will wake and power the phone for 10 sec on max we can get! the reduce to normal as user set in extweaks! will work only if background process is ON,
*Changed all profiles! boosted GPU freq and voltage for all, after testing with heavy games! now stable! + govs change.
*Cleaned and updated HYPER + ONDEMAND govs to 3.0.Y tree + mods.
*Lots of new stuff ported by voku for WIFI driver, so test it as much as you can.
*Fixed some bugs in cortex script, removed not used stuff from crypto module.
*Fixed SAMMY boot (reverted some stuff)
*Fixed led_timeout bug in extweaks.
*Fixed zram stats info for roms without BASH, it's temp solution till we can fix the main script.
*Added new tweaks, Negative mod On/Off via checkbox + advanced wakelock mod, will show all wakelocks that was ON and ended! so we can debug, who drained battery! it's OFF, by default, see MISC tab! added by GM! :)
*Updated New USB drivers from NOTE Update 3, need to test all we got (usb devices and external storage via usb)
*Reduced compression via XZ and reduced memory used for it, kernel bigger but little faster on boot.
*Small new fix to WIFI driver.
*Added interactive to govs, updated to max by myfluxi
*Added code correction for suspend freq + max freq for performance gov.
*Tuned touch screen wakeup and responce, very smooth now.
*Fix to pegasusq by GM
*Fixed GPU undervoltage script, (by myfluxi)
*And more, see GIT's
*Fixed boot for SlimICS!
*Fixed Battery charge low power mode + updated images from SG3
*Added full support for JellyBean ROM from working source thanks for huge help on that with the INIT root files!
*Fixed lots of mall bugs / syntax / descriptions, in all kernel scripts (extweaks and more)
*Added new stuff to extweaks (usb mod change, auto brightness)
*New fix to WIFI driver.
*Improved I/O latency
*Improved disk write to USB storage
*Improved screen wakeup
*Improved screen off state battery saver. (cortex)
*Lots of code fix and porting as always
*Reduced logs to dmesg and logcat, less chat, maybe less drain..
*Restored luzactive gov and removed tweaks for it on screen on/off now people can use the app for it  to control settings.
If someone using apps like SETCPU with his own profiles, please do DISABLE in extweaks cortexbrain tab for CPU-TWEAKS! then your profiles will make difference, if it's enabled, then internal script do the work.
*Improved brightness levels, now more bright, was too dark on min..
*Updated to last released recovery by gokhanmoral!
*Reworked all boot structure to support 4 major branches and still give all that i have to all.
*Small change for kernel name, now it's better to find the last update in recovery!
*Tuned the background control process to wait 10 sec on screen off before do all the system/cpu/voltage/and more changes, just give us time to think if we finished with phone :) before it's shutdown to minimum :)
*Uploaded also in .TAR as promised.*Made lots of code fix and BOOT fix, should be ok now.
*VOKU ported new code for RAM, CPU, Power manager from 3.1.Y good work!
*Added boot progress bar, nice to have :)
*FIXED GPS Activation, deleted 4.1C/D (bugs)
*Fixed New boot order for MIUI and SAMMY and SlimICS
Need to test it.
*Fixed the screen shake on touch hold.
*Huge amount of changes to RAM, CPU, Kernel Operations (merged from 3.1.Y + 3.4.Y)
*Found and removed wakeup bug on lock screen!
*Tuned all govs and ported pegasusq from last siyah kernel to restore normal operation with it.
*Added tweak in extweak in screen tab for managing the negative color mod :)
*Voku ported lots of good stuff including new patch to WIFI driver, some problems resolved, need to test for long term.
*Fixed luzactive gov from been too slow.
*Added support for JellyBeens ROM branch! (by gokhanmoral)
*Lots of tuning and code fix, see GIT, it's too much for change log page*Massive PORT and adapt from 3.1.Y kernel by VOKU!
New code for: CPU, RAM, FS, Kernel operations and lots more! see GIT!
Now cpu used 1~10% on 100Mhz! and was like 25~35% so more battery save and more performance.
*Fixed Voltage for cpu reset on screen on/off
*Added new LOGO :) by Crazy-silver
*Arranged CPU govs by performance for awake, and by power save in deepsleep
See Extweaks CPU tab.
*Fixed battery reset on recovery.
*Added new Tweaks to CFS scheduler in CPU tab. tune it only if you know what is it and what it's set.
*Added more tuning, now we get more performance!
*Battery drain reduced due to low cpu use, and allot of stuff.
*Fixed oom_kill_allocating_task set to 0, now it's 1 as recommended.
*Fixed CFS tweaks activation.
*Added CORTEXBRAIN tab in extweaks, now you can control it, best not, but if you like to mess with stuff, then see what it do in initramfs git and change.
*Tuned scary gov should be better now, and removed it from defaul/battery just in case. added abyssplug.
*Switched to more stable compression and optimization level -O3 from Ofast
Should be more stable now. i even see some better benchmarks.
*Improved ROOT Install/Remove in extweaks + check button :)
*Fixed SCARY gov to be more adapted for this kernel.
*Allowed Abyssplug gov to control second CPU on/off
*Ported fix for vibrate for Samsung roms, TNX Gokhanmoral.
Need to test it! so please do.
*FIXED the BATTERY fuel gauge bug! now it's stable as should!
Give it some time to recover from bug to show good drain results.
but it's will stay correct after reboot, (did 10! no problemo!)
*New CPU idle code ported from 3.1.y kernel by VOKU! we now have the most advanced CPU code for SG2 :)
*Lots of changes and restoring and tuning CPU,GOVS,RAM,TWEAKS.
*Tuned data partition to be more resistant to sudden power loose (sod/batt pull and stuff) this is the android default, data=ordered, we had data=writeback, it's faster but less recommended for phones...
So now its safe again.
*Kernel Cleaning Script is build IN! by VOKU no need to run any external clean scripts.
*Small change to BLN, now will obey touch key voltage! only on blink and steady.
*Locked vibrate to min 25% (max 100%) and added code, if less than 25% set 75%, lets see if OK now after long sleep.
*More code updates from mainstream 3.0.y (some stuff was lost, so now i have my own mainstream kernel to update from)
*Tuned MAX freq for standby to 700Mhz
*Fixed UV reset after screen on/off
*Small config changes in INIT scripts / profiles.
*Added scary gov :) it's SLOW gov, good for battery save and will be used for deepsleep, also tuned it to wakeup fast!
added it to all profiles for deepsleep, and to extweaks
*Added more Voltage to CPU, now it's default ICS kernel voltage.
You can now reduce it by using asv group 4 or undervolt by -25 / -50 but test some time if no SOD. or just leave it alone.
*Updated to 3.0.36
*Added TNT to many bugs :laugh:
*Fixed slow wakeups
*Added more +25mv to lower cpu freq ranges to add more stability.
*boosted boot speed.
*Voku helped allot! he added lots of code fixing and updates to filesystem drivers and memory.
*Added new button at extweaks for checking current gps zone config.
*if you like to fix permissions, just push the button at extweaks misc and turn off the screen! fix will begin instantly! if you really need the phone, use it, but best to let it work top 2~3 min, depending on amount of mess and installed apps, it's done my 450 apps in 2 min :)
*we tuned profiles and voku added new stuff to conservative gov! so it's now the most saving battery gov! try it only for deepsleep (screen of gov)
it's slow, but this is what we need! less activity more battery!
*Vibrate should be OK now.
*now if phone is over 50c heat, and you turn off and on the screen. it's will auto drop to 1Ghz and to hotplug gov to cool off..
after temp will drop, and you turn screen on/off all your extweaks settings will be active again! so if was oc to max then you get it back :)
I care about my people :)
*Fixed the vibrate low after some time. + added extweaks interface for it.
*Added touch screen tuning
*Added screen color tuning (extweaks SCREEN tab)
*fixed WIFI driver
*Reduced batt drain
*Added HYPER gov, it's the most powerful gov in my kernel. :)
*Added New BLN from Myfluxi, it's works with aokp and cm9, need to check with original ics.
Lots of new tweaks in BLN tab
*Added lots of new code/bug fix for CPU / RAM / SYSTEM
*Corrected small bugs in extweaks,
*Updated to 3.0.35
*Reverted some commits that i think we can ignore for now. too much experimental.
*Added some more code fixes,
*Ported updated Vibrator driver code.
*Restored USB drivers, usb otg/disk-on-key should work.
*Added ZCACHE and CLEANCACHE this will boost I/O performance and help with heavy loads!
*Added massive amount of code fixing and tuning to RAM, CPU, NET.
*Added ability to boot in to DOWNLOAD(odin) mode from ROM->bootloader (credits to gokhanmoral)
*Tuned all profiles,
*Fixed ZRAM / GPS settings in extweaks!
*Added Fix permissions to extweaks MISC
*Added to system tweak to check if you have AD blocker file already, and if you do, then my adblocker will not be installed, if you dont, then you get one :)
*Added Zram turn off! not recommended, it's will shut down the zcache also. (no battery save from it, just little amount of cpu.)
*Added to GPSREGION option to restore your ROM default config! and one for not to change any config. (default!)
But restore will really work after you reinstall your rom, if you already changed it with my previous kernel version, (if not, new kernel users, then you set to go)
*Added lots of WIFI driver fixing! now Ch 13/14 will work as planed, and 5GHZ band will work as should.
*Added more pressure to save battery tweaks on screen off.
*Added ability to change the sleeping gov in extweaks + sleeping charging gov.
*Rearranged the extweaks CPU tab. now all in good order.
*Restored the Undervolt menu option. use it with care..
*Reduced undervoltage groups from 7 to 5, 6+7 are to low for our CPU.
*Updated to newest Linaro 12.05 GCC 4.7.1 ICS kernel builder! :) + patches to kernel for it to work.
*Patched All GOVS for more speed and battery save on screen off.
*Removed lots of logs generated from kernel to dmesg and logcat, now more quiet kernel and i hope it's will reduce some small battery drain.
*Blocked access to some logs that are written all the time to flash to save the flash and reduce internal cpu operations that we dont need.
*Fixed permissions to /data/anr! (no reboots any more)
*Ported more CPU code fixes.
*Fixed all kind of functions that can crash kernel and stuck the phone. there are more... there are always some more left... but we will get to them :)
*Updated to 3.0.34 Tree
*Added More EXtweaks Options:
Bus Freq, Bus Thresholds, Under voltage Groups, Suspend Freq, Zram Settings, Zram Stats, GPS Time Zone, GENTLE_FAIR_SLEEPERS, ARCH_POWER.  
*Fixed and tuned lots of things in script Cleaned old unused settings from extweaks xml
*Tuned all profiles.
*Tuned Network scripts, now i get a lot faster data connection!
*Added changes in CPU cores/voltage based on screen on/off
*Added cleaning of lost+found folders on each boot.
*Added WIFI fast sleep on standby.
*Code fixes and charge voltage config.
*Looks like the DATA partition fix at boot working great, and no serious problems, so i removed warning from change log, all cool :)
*Updated to 3.0.33 Tree
*Added Sec Rom NAND backup by gokhanmoral.
*Added lots of updates from SG3 kernel and NOTE(n7000) kernel.
*Added Abyssplug gov from Abyss kernel :) it's set as sleep gov in kernel operation script.
*Added one more level to BUSFREQ 100MHZ was lowest 133Mhz, may save some battery.
*Added LAZY gov and Hotplug
*I have reduced CPU global voltage! to save more power!
*Tuned all GOVS for less freq jumps and more stability,
*Added lowest power to GPU to 700mv by Myfluxi
In my profiles i use MIN 800mv, just in case, but you can test it.
*Made lots of profiles changes, please reset in recovery and set your preferred.
*Added changes to ADB operation, and lots of updates to USB and Misc code fixes.
*Massive script for kernel/rom management made by voku and me :)
It's will work by auto and set lots of tweaks: NET tweaks, GPU tweaks,  CPU management, Deep Sleep Tuning, Charging states, and more!
 It's name is :)
*Added DATA, CACHE, PRELOAD(sec-rom-system) partitions scan for errors and FIX! every boot!
I hope you want clean partition! there is no kernel / rom that will do that for you. :)
So errors are gathering slowly and some weird problems appear!
Well not any more :)
If no damage then no problems :) and no boot delay!.
*Added TAR kernel 3.2 for ODIN install to fix the recovery.
*Added new WIFI driver from SG3 :)
*Added ported changes to pegasusq GOV
*Tuned all profiles, (please reset and use one that you prefer.)
*New SD FAT32 driver from N7000 ported by Gokhanmoral
*CPU code restore, as was in 2.9 (no sod any more)
*Added fix_permissions script, you can run it via any terminal app or adb.
*Many drivers fixed by many devs, i have ported all :) Thanks to voku, gokhanmoral, myfluxi!
*New ZRAM compression from google, called snappy, it's use very little CPU to work. so ZRAM driver improved allot.
*Updated from source, recovery files and busybox.
*Reduced video ram from 32MB to 16MB, we had 9MB as default, so now more free ram shown. (try to run 1080p video and report if ok, or crap :) )
*Replaced WIFI driver from NOTE N7000 + fixes from lot of sources.
*Added BT drivers (more support, i hope it's will give someone any better compatibility with other devices.)
*Updated CPU code from source (siyah kernel)
*Tuned govs for more power save and performance. (ondemand + pegasusq) now back to ONDEMAND as DEFAULT.
*Added new option to dual mount sdcard+emmc via USB cable, and be able to use them in process of connection :) (one click connect)
See MISC tab in extweaks app :) after you disconnect usb, setting is released.
*Added new voltage code for GPU card and updated to source 3 N7000(NOTE) by myfluxi!
*Fixed STUCK after install on AOKP roms! (if you wait 60 sec with 2.8, rom will boot! now no wait, will boot as normal)
*New WIFI driver ported from N7000 (NOTE phone)
*New updated GPU driver (mali update 3)
*Tuned profiles, switched to pegasusq as default, (i am working on cool tweaking for it)
*Restored ntfs-3g if any one need it, + tweaks for it by gokhanmoral
*Some code fixing and settings tuning.
*Updated to 3.0.32 (lots of fixing)
*Updated new WIFI driver. (siyah kernel)
*Updated CPU code fixes from SOURCE(siyah kernel)
*Added all kind of tweaks and code fix from main line kernels.
*Improved support for SAMMY ROMS (ICS original)
*Improved battery drain, (Now Less drained on standby)
*Removed some addons that made SOD in many cases, now stable.
*Tuned my tweaks and scripts. (see initramfs) + updates from (siyah)
*Fixed init for MIUI roms, (restored + small changes)
*Added more cpu stability code from faux123
*Fixes to logger code and android binder.
*Messed allot with WIFI driver, work ok now.
*Tuned GPS permissions, should work now with non aokp roms.
*Added all new updates from all great devs :)
*fixed the init scripts to remove the encryption on boot.
*changed the charger voltage to 700mv and misc charger to 650, usb to 500.
cant be changed to different state via extweaks.
*compressed with XZ compression to allow moving all the modules inside the kernel image, now it's can be used as tar for odin.
*Added siyah in kernel name to activate dual boot support, as requested by Gokhan.
*tuned touch screen.
*tuned cpu
*tuned network
*updated recovery from ghokan.
*many new/updated drivers.
for full log see my git for initramfs and kernel.
kernel compressed with zlo the lowest compression for max speed.
so its was to big to fit the boot partition, i had to move the modules out of kernel.
so from version 2.3 you cant update via tar and odin.
so use recovery only.
or update the supplied modules to /system/lib/modules/
if you install via recovery, nothing needs to be done.
in case of emergency use 1.1 kernel in tar, then go to recovery and update to 2.X :)
*Tuned kernel for more battery saving
without reducing performance,
Now kernel will hold more in deep sleep.
*Switched to Linaro 12.4 gcc 4.7 toolchain. kernel is smaller now.
*Added CPU power management ported from NEXUS kernel.
*Made all kind of fixing and function exporting and cleaning warnings,
*Battery life improved by reducing activity in  deep sleep, changes by myfluxi
*Added WIFI code fixes
*Added Network code fixes
*Tuned kernel tweak
*Added touch screen control by user, ground base code by myfluxi , now i need to put it to extweaks, still work to do..
*Updated to 3.0.31!
*Lots of cleanup and tuning to system tweaks,
*Lots of changes to recovery by gokhanmoral all for second rom and options to control it.
*Ported massive amount of code from sensation device kernel!
it's common Linux changes only, lots of bug fixing and function speedups!
see git, if you like something to read before bed :)
*Added some change to wifi to preserve more battery on sleep and wifi on.
*Fixed support for voodoo louder driver/app.
*Added lots of fixing to WIFI driver. see git.
*Fixed code for USB host and mouse/keyboard plug in.
*Added ability to change cpu min/max frequency in extweaks app.
*I have made huge amount of changes to kernel code, lots of ports from other great developers!
*tuned all profiles! you MUST clear profiles in recovery after install, and set one you like.
*For now we have static 15 CPU freq steps 1500->100, no change can be done without hot boot, so for stability i set it static.
*Added fix for cpu stats and stalls(hangs).
*New WIFI driver + lots of changes to it already.
*support for NTT-Docomo variant (you will need to “echo 16 >  /proc/sys/kernel/rom_feature_set” to get gps working.

Step Table:
5-steps: 1200, 1000, 800, 500, 200
6-steps: 1400, 1200, 1000, 800, 500, 200
7-steps: 1500, 1400, 1200, 1000, 800, 500, 200 (default.)
8-steps: 1600, 1400, 1200, 1000, 800, 500, 200, 100
9-steps: 1600, 1500, 1400, 1200, 1000, 800, 500, 200, 100
15-steps: 1500, 1400, 1300, 1200, 1100, 1000, 900, 800, 700, 600, 500, 400, 300, 200, 100
Have fun
The Following 165 Users Say Thank You to dorimanx For This Useful Post: [ View ]
24th April 2012, 07:02 PM |#3  
dorimanx's Avatar
OP Recognized Developer
Flag TERA Prime.
Thanks Meter: 90,607
Donate to Me
Information Page

ZRAM (aka CompCache aka RAMZSwap)

ZRAM is an updated version formally known as CompCache and RAMZSwap. It was originally designed for 2.6.38.xx kernels, I have backported to our 3.0.xx kernel. ZRAM allows real-time compression of memory objects in RAM thus reducing memory pressure for the Linux kernel and can keep more apps in memory longer (more apps in RAM == better performance, less fetching from slower MMC or SDCard). Compression, however, is not Free. Some CPU cycles are required to do the compress/decompression, so there's a slight penalty for it. The original CompCache / RAMZSwap required a user space binary to control its behavior which adds additional penalty to performance, but the new version ZRAM eliminated the need for a separate dedicated daemon, thus reducing the overhead and increased performance from the old CompCache by 20%. Therefore, with the newer implementation of ZRAM interface, the performance penalty is almost negligible.

Info about and more!

# ================================================== ============
# Logic Explanations
# This script will manipulate all the system / cpu / battery behavior
# Based on chosen EXTWEAKS profile+tweaks and based on SCREEN ON/OFF state.
# When User select battery/default profile all tuning will be toward battery save!
# But user loose performance -20% and get more stable system and more battery left.
# When user select performance profile, tuning will be to max performance on screen ON!
# When screen OFF all tuning switched to max power saving! as with battery profile,
# So user gets max performance and max battery save but only on screen OFF.
# This script change governors and tuning for them on the fly!
# Also switch on/off hotplug CPU core based on screen on/off.
# This script reset battery stats when battery is 100% charged.
# This script tune Network and System VM settings and ROM settings tuning.
# This script changing default MOUNT options and I/O tweaks for all flash disks and ZRAM.
# TODO: add more description, explanations & default vaules ...

# ================================================== ============
# Explanations
# ================================================== ============

# oom_kill_allocating_task: If this is set to zero, the OOM killer will scan through the entire tasklist and select a task based on heuristics to kill.
# This normally selects a rogue memory-hogging task that frees up a large amount of memory when killed.
# If this is set to non-zero, the OOM killer simply kills the task that triggered the out-of-memory condition.
# This avoids the expensive tasklist scan.
# echo XXX > /proc/sys/vm/oom_kill_allocating_task;

# dirty_expire_centisecs: This tunable is used to define when dirty data is old enough to be eligible for writeout by the pdflush daemons.
# It is expressed in 100'ths of a second. Data which has been dirty in memory for longer than this interval will be written
# out next time a pdflush daemon wakes up.
# echo XXX > /proc/sys/vm/dirty_expire_centisecs;

# dirty_writeback_centisecs: The pdflush writeback daemons will periodically wake up and write "old" data out to disk.
# This tunable expresses the interval between those wakeups, in 100'ths of a second.
# Setting this to zero disables periodic writeback altogether.
# echo XXX > /proc/sys/vm/dirty_writeback_centisecs;

# drop_caches: Writing to this will cause the kernel to drop clean caches, dentries and inodes from memory, causing that memory to become free.
# To free pagecache:
# echo 1 > /proc/sys/vm/drop_caches
# To free dentries and inodes:
# echo 2 > /proc/sys/vm/drop_caches
# To free pagecache, dentries and inodes:
# echo 3 > /proc/sys/vm/drop_caches

# page-cluster: page-cluster controls the number of pages which are written to swap in a single attempt. The swap I/O size.
# It is a logarithmic value - setting it to zero means "1 page", setting it to 1 means "2 pages", setting it to 2 means "4 pages", etc.
# The default value is three (eight pages at a time). There may be some small benefits in tuning this to
# a different value if your workload is swap-intensive. (default 3)
# echo XXX > /proc/sys/vm/page-cluster;

# laptop_mode: laptop_mode is a knob that controls "laptop mode". When the knob is set, any physical disk I/O
# (that might have caused the hard disk to spin up, see /proc/sys/vm/block_dump) causes Linux to flush all dirty blocks.
# The result of this is that after a disk has spun down, it will not be spun up anymore to write dirty blocks,
# because those blocks had already been written immediately after the most recent read operation.
# The value of the laptop_mode knob determines the time between the occurrence of disk I/O and when the flush is triggered.
# A sensible value for the knob is 5 seconds. Setting the knob to 0 disables laptop mode.
# echo XXX > /proc/sys/vm/laptop_mode;

# rr_interval: rr_interval or "round robin interval". This is the maximum time two SCHED_OTHER (or SCHED_NORMAL, the common scheduling policy)
# tasks of the same nice level will be running for, or looking at it the other way around, the longest duration two tasks
# of the same nice level will be delayed for. When a task requests cpu time, it is given a quota (time_slice) equal to the
# rr_interval and a virtual deadline, while increasing it will improve throughput, but at the cost of worsening latencies.
# echo XXX > /proc/sys/kernel/rr_interval;

# dirty_background_ratio: Contains, as a percentage of total system memory, the number of pages at which the pdflush background writeback daemon will
# start writing out dirty data.
# echo XXX > /proc/sys/vm/dirty_background_ratio;

# dirty_ratio: Contains, as a percentage of total system memory, the number of pages at which a process which is generating disk writes will itself start writing out dirty data.
# echo XXX > /proc/sys/vm/dirty_ratio;

# iso_cpu: Setting this to 100 is the equivalent of giving all users SCHED_RR access and setting it to 0 removes the ability to run any pseudo-realtime tasks.
# echo XXX > /proc/sys/kernel/iso_cpu;

# ===============
# Kernel-Settings
# ===============

# msgmni: The msgmni tunable specifies the maximum number of system-wide System V IPC message queue identifiers (one per queue).
# echo XXX > /proc/sys/kernel/msgmni;

# sem: This file contains 4 numbers defining limits for System V IPC semaphores. These fields are, in order:
# SEMMSL - the maximum number of semaphores per semaphore set.
# SEMMNS - a system-wide limit on the number of semaphores in all semaphore sets.
# SEMOPM - the maximum number of operations that may be specified in a semop(2) call.
# SEMMNI - a system-wide limit on the maximum number of semaphore identifiers.
# The default values are "250 32000 32 128".
# echo XXX XXX XXX XXX > /proc/sys/kernel/sem;

# ===============
# CPU-Settings
# ===============

# scaling_governor: Using Frequency Scaling Governors -> cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
# ->
# conservative - Increases frequency step by step, decreases instantly
# ondemand - Uses the highest CPU frequency when tasks are started, decreases step by step
# performance - CPU only runs at max frequency regardless of load
# powersave - CPU only runs at min frequency regardless of load
# echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

# sched_latency_ns: Targeted preemption latency for CPU-bound tasks.
# echo XXX > /proc/sys/kernel/sched_latency_ns;

# sched_batch_wakeup_granularity_ns: Wake-up granularity for SCHED_BATCH.
# echo XXX > /proc/sys/kernel/sched_batch_wakeup_granularity_ns;

# sched_wakeup_granularity_ns: Wake-up granularity for SCHED_OTHER.
# echo XXX > /proc/sys/kernel/sched_wakeup_granularity_ns;

# sched_compat_yield: Applications depending heavily on sched_yield()'s behavior can expect varied performance because of the way CFS changes this, so turning on the sysctls is recommended.
# echo XXX > /proc/sys/kernel/sched_compat_yield;

# sched_child_runs_first: The child is scheduled next after fork; it's the default. If set to 0, then the parent is given the baton.
# echo XXX > /proc/sys/kernel/sched_child_runs_first;

# sched_min_granularity_ns: Minimum preemption granularity for CPU-bound tasks.
# echo XXX > /proc/sys/kernel/sched_min_granularity_ns;

# sched_features: NO_NEW_FAIR_SLEEPERS is something that will turn the scheduler into a more classic fair scheduler ?!?
# echo NO_NORMALIZED_SLEEPER > /sys/kernel/debug/sched_features;

# sched_stat_granularity_ns: Granularity for collecting scheduler statistics. [1/0]
# echo XXX > /proc/sys/kernel/sched_stat_granularity_ns;

# sched_rt_period_us: The default values for sched_rt_period_us (1000000 or 1s) and sched_rt_runtime_us (950000 or 0.95s).
# This gives 0.05s to be used by SCHED_OTHER (non-RT tasks). These defaults were chosen so that a run-away realtime
# tasks will not lock up the machine but leave a little time to recover it. By setting runtime to -1 you get the old behaviour back.

# threads-max: Gets/sets the limit on the maximum number of running threads system-wide.
# echo XXX > /proc/sys/kernel/threads-max;

# ===============
# Memory-Settings
# ===============

# swappiness: Swappiness is a parameter which sets the kernel's balance between reclaiming pages from the page cache and swapping process memory.
# The default value is 60. If you want kernel to swap out more process memory and thus cache more file contents increase the value.
# Otherwise, if you would like kernel to swap less decrease it. A value of 0 means "do not swap unless out of free RAM",
# a value of 100 means "swap whenever possible".
# echo XXX > /proc/sys/vm/swappiness;

# overcommit_memory: Controls overcommit of system memory, possibly allowing processes to allocate (but not use) more memory than is actually available.
# 0 - Heuristic overcommit handling.
# Obvious overcommits of address space are refused. Used for a typical system.
# It ensures a seriously wild allocation fails while allowing overcommit to reduce swap usage.
# root is allowed to allocate slighly more memory in this mode. This is the default.
# 1 - Always overcommit.
# Appropriate for some scientific applications.
# 2 - Don't overcommit.
# The total address space commit for the system is not permitted to exceed swap plus a
# configurable percentage (default is 50) of physical RAM. Depending on the percentage you use,
# in most situations this means a process will not be killed while attempting to use already-allocated memory but
# will receive errors on memory allocation as appropriate.

# overcommit_ratio: Percentage of physical memory size to include in overcommit calculations.
# Memory allocation limit = swapspace + physmem * (overcommit_ratio / 100)
# swapspace = total size of all swap areas
# physmem = size of physical memory in system

# vfs_cache_pressure: Controls the tendency of the kernel to reclaim the memory which is used for caching of directory and inode objects.
# At the default value of vfs_cache_pressure = 100 the kernel will attempt to reclaim dentries and inodes at a "fair" rate with respect
# to pagecache and swapcache reclaim. Decreasing vfs_cache_pressure causes the kernel to prefer to retain dentry and inode caches.
# Increasing vfs_cache_pressure beyond 100 causes the kernel to prefer to reclaim dentries and inodes.
# echo XXX > /proc/sys/vm/vfs_cache_pressure;

# min_free_kbytes: This is used to force the Linux VM to keep a minimum number of kilobytes free.
# The VM uses this number to compute a pages_min value for each lowmem zone in the system. Each lowmem zone gets a number of reserved
# free pages based proportionally on its size.
# echo XXX > /proc/sys/vm/min_free_kbytes;

# ===============
# I/O-Settings
# ===============

# read_ahead_kb: Optimize for read-throughput (cache-value).
# example of C-program for finding correct vaules for Linux
# ->

# fifo_batch: Controls the maximum number of requests per batch.
# This parameter tunes the balance between per-request latency and aggregate
# throughput. When low latency is the primary concern, smaller is better (where
# a value of 1 yields first-come first-served behaviour). Increasing fifo_batch
# generally improves throughput, at the cost of latency variation.

# back_seek_max: This parameter, given in Kbytes, sets the maximum גdistanceג
# By default, this parameter is set to 16 MBytes.
# This distance is the amount of space from the current head location to the sectors that are backward in terms of distance.
# This idea comes from the Anticipatory Scheduler (AS) about anticipating the location of the next request.
# This parameter allows the scheduler to anticipate requests in the גbackwardג

# back_seek_penalty: This parameter is used to compute the cost of backward seeking.
# If the backward distance of a request is just (1/back_seek_penalty) from a גfrontג
# the seeking cost of the two requests is considered equivalent and the scheduler will not bias toward one or the other
# (otherwise the scheduler will bias the selection to גfront direction requests).
# Recall, the CFQ has the concept of elevators so it will try to seek in the current direction as much as possible to avoid the latency associated with a seek.
# This parameters defaults to 2 so if the distance is only 1/2 of the forward distance, CFQ will consider the backward request to be close enough
# to the current head location to be גcloseג

# fifo_expire_async: This particular parameter is used to set the timeout of asynchronous requests.
# Recall that CFQ maintains a fifo (first-in, first-out) list to manage timeout requests.
# In addition, CFQ doesnגt check the expired requests from the fifo queue after one timeout is dispatched (i.e. there is a delay in processing the expired request).
# The default value for this parameter is 250 ms. A smaller value means the timeout is considered much more quickly than a larger value.

# fifo_expire_sync: This parameter is the same as fifo_expire_async but for synchronous requests.
# The default value for this parameter is 125 ms.
# If you want to favor synchronous request over asynchronous requests, then this value should be decreased relative to fifo_expire_asynchronous.

# slice_sync: Remember that when a queue is selected for execution, the queues IO requests are only executed for a certain amount of time (the time_slice) before switching to another queue.
# This parameter is used to calculate the time slice of the synchronous queue.
# The default value for this parameter is 100 ms, but this isnגt the true time slice.
# Rather the time slice is computed from the following: time_slice = slice_sync + (slice_sync / 5 * 4 ג io_priority)).
# If you want the time slice for the synchronous queue to be longer (perhaps you have more synchronous operations), then increase the value of slice_sync.

# slice_async: This parameter is the same as slice_sync but for the asynchronous queue.
# The default is 40 ms. Notice that synchronous operations are preferred over asynchronous operations.

# slice_asyn_rq: This parameter is used to limit the dispatching of asynchronous requests to the device request-queue in queueגs slice time.
# This limits the number of asynchronous requests are executed (dispatched).
# The maximum number of requests that are allowed to be dispatched also depends upon the io priority.
# The equations for computing the maximum number of requests is, max_nr_requests = 2 * (slice_async_rq + slice_async_rq * (7 ג io_priority)). The default for slice_async_rq is 2.

# slice_idle: This parameter is the idle time for the synchronous queue only.
# In a queueגs time slice (the amount of time operations can be dispatched), when there are no requests in the synchronous queue CFQ will not switch to another queue
# but will sit idle to wait for the process creating more requests. If there are no new requests submitted within the idle time, then the queue will expire.
# The default value for this parameter is 8 ms. This parameters can control the amount of time the schedulers waits for synchronous requests.
# This can be important since synchronous requests tend to block execution of the process until the operation is completed. Consequently,
# the IO scheduler looks for synchronous requests within the idle window of time that might come from a streaming video application or something that needs synchronous operations.

# quantum: This parameter controls the number of dispatched requests to the device queue, request-device (i.e. the number of requests that are executed or at least sent for execution).
# In a queueגs time slice, a request will not be dispatched if the number of requests in the device request-device exceeds this parameter.
# For the asynchronous queue, dispatching the requests is also restricted by the parameter slice_async_rq. The default for this parameter is 4.

# ===============
# BFQ-Settings
# ===============

# timeout_sync, timeout_async: The maximum amount of disk time that can be given to a task once it has been selected for service, respectively for synchronous and asynchronous queues.
# It allows the user to specify a maximum slice length to put an upper bound to the latencies imposed by the scheduler.

# max_budget: The maximum amount of service, measured in disk sectors, that can be provided to a queue once it is selected (of course within the limits of the above timeouts).
# According to what we said in the description of the algoritm, larger values increase the throughput for the single tasks and for the system,
# in proportion to the percentage of sequential requests issued. The price is increasing the maximum latency a request may incur in.
# The default value is 0, which enables auto-tuning: BFQ tries to estimate it as the maximum number of sectors that can be served during timeout_sync.

# max_budget_async_rq: In addition to the max_budget, limit, async queues are served for a maximum number of requests, after that a new queue is selected.

# low_latency: If equal to 1 (default value), interactive and soft real-time applications are privileged and experience a lower latency.

# more Informations can be found here ->
The Following 126 Users Say Thank You to dorimanx For This Useful Post: [ View ]
24th April 2012, 07:04 PM |#4  
XDA mark's Avatar
Senior Member
Flag Rotterdam (NL) & Timisoara (RO)
Thanks Meter: 465
The Following 9 Users Say Thank You to XDA mark For This Useful Post: [ View ] Gift XDA mark Ad-Free
24th April 2012, 07:04 PM |#5  
dorimanx's Avatar
OP Recognized Developer
Flag TERA Prime.
Thanks Meter: 90,607
Donate to Me
Originally Posted by ram3n

Hey welcome matey,

Nice to see another awesome kernel.

Hope you the best!

Sure this one will rock against siyah.


Sent via my s2 monster

You fast!

I added 2 post for more info..

If you took the second page, i will ask you in future to add some stuff about kernel for all people
The Following 45 Users Say Thank You to dorimanx For This Useful Post: [ View ]
24th April 2012, 07:05 PM |#6  
Senior Member
Flag maribor
Thanks Meter: 29
thanks dorimanx
now i will try your kernel
can i use setcpu to set cpu Govs?

thank you
The Following 3 Users Say Thank You to robertus23 For This Useful Post: [ View ] Gift robertus23 Ad-Free
24th April 2012, 07:08 PM |#7  
dorimanx's Avatar
OP Recognized Developer
Flag TERA Prime.
Thanks Meter: 90,607
Donate to Me
Originally Posted by robertus23

thanks dorimanx
now i will try your kernel
can i use setcpu to set cpu Govs?

thank you

yes you can, all that you want, will work

Freedom for all
The Following 46 Users Say Thank You to dorimanx For This Useful Post: [ View ]
24th April 2012, 07:14 PM |#8  
Senior Member
Flag maribor
Thanks Meter: 29
thank you dorimanx
The Following User Says Thank You to robertus23 For This Useful Post: [ View ] Gift robertus23 Ad-Free
24th April 2012, 07:15 PM |#9  
beston94's Avatar
Senior Member
Flag Stockholm
Thanks Meter: 432
Originally Posted by dorimanx

yes you can, all that you want, will work

Freedom for all

If I remember your kernel from the htc hd2 then I'll expect nothing less
Will test it and report back as soon as possible :]

Have a good day :]
The Following 3 Users Say Thank You to beston94 For This Useful Post: [ View ] Gift beston94 Ad-Free
24th April 2012, 07:37 PM |#10  
tinuz97's Avatar
Senior Member
Thanks Meter: 47
Good to see you here dorimanx. Loved the hd2 kernels!

Sent from my GT-I9100 using xda premium
The Following 3 Users Say Thank You to tinuz97 For This Useful Post: [ View ] Gift tinuz97 Ad-Free
24th April 2012, 07:57 PM |#11  
sam razzy's Avatar
Senior Member
Flag Ma sweet home
Thanks Meter: 561
This is bomb ... Bomb kernel for all ics Rom... see its benchmark...!! Its really a beast of all kernel...

What about zram? How to check and activate..? Till today I cud not get it to work on your pre release kernel... sorry..!! I will wait for it..

TapaTalk Gnex Galaxy Sii
Thread Closed Subscribe to Thread

battery life, best kernel, best kernel so far for s2 with jb, cm10-kernel, cm10.2, dorimanx, dorimanx best, jellybean-kernel, linaro, new jb mali kernel by dorimanx!!!!!!!, non stop support!, performance, slimbean vs dorimanx, stweaks
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes