5,605,250 Members 38,446 Now Online
XDA Developers Android and Mobile Development Forum

[Kernel][Jan 14]Experimental v12[JB 4.1.2]

Tip us?
 
etch04
Old
(Last edited by etch04; 14th January 2014 at 09:23 AM.)
#1  
etch04's Avatar
Senior Member - OP
Thanks Meter 1411
Posts: 375
Join Date: Jan 2010
Default [Kernel][Jan 14]Experimental v12[JB 4.1.2]

This kernel is self-used.
So something has not been added.
If you want,just tell me and problem you encounter.

Kernel Features:

General:
- Kernel version 3.0.y
- 390MB RAM
- Useful optimization flags
- jRCU [Joe Korty]
- Dynamic dirty page writebacks
- Timer slack controller
- Dynamic management of the minimal timer slack value during suspend/resume
- LowMemoryKiller management of not killable processes
- Android Logger Disabled(++Performance) (Check HOW TO on how-to enable)
- Frandom Read Me!
- Entropy tweaks.
- Cleaned off Debug stuff, which slows down the Kernel (FRAME POINTER, Log Buffer Size is 64KB).
- CWM 5
- LZ4 for Zram swap.
- Elf.3 included for better battery.
- DVFS(Dynamic Voltage and Frequency Scaling).What is DVFS? [Cocafe]
- Disable sched debug stuff
- Optimized SLUB memory allocator
- Optimized ARM RWSEM
- Low memory killer updated to Android 3.10
- Do not kill process
- ARM ThumbEE
- Build with neon
- Remove old version sha1 implementation
- Optimized AES and SHA1 routines for ARM cpu architecture
- Optimized string and memcopy libs
- Ram Console support
- L2 cache max reads writable
- Disable mali state tracking

I/O and Filesystem
SIOplus
CFQ
Deadline
ROW
V(R)
Zen
Noop


CPU
Pegasusq
Conservative
Ondemand
Performance
Interactive
Lazy
Wheatley
Sakuractive
Hotplug
SmartAssV2
Lionheart
Lulzactiveq
Nightmare
Dyninteractive

Download:
Experimental v12

Credits:
cocafe
Mujeni
stratosk
Christopher83
xx214718247

Source:
Github
The Following 152 Users Say Thank You to etch04 For This Useful Post: [ Click to Expand ]
 
etch04
Old
(Last edited by etch04; 14th January 2014 at 09:22 AM.)
#2  
etch04's Avatar
Senior Member - OP
Thanks Meter 1411
Posts: 375
Join Date: Jan 2010
Changelog:

14/01/2014
-clean and fixed source
-UKSM(disbaled by default)
-ABBamp Audio(thanks @cocafe)
-SLQB memory allocator
-CWM 6

12/12/2013
-removed all experimental stuff
-removed DVFS
-white cwm touch
-fixes and tweaks

04/12/2013
-updated source to 3.0.101
-changed default lmk values
-KSM
-fix and tweaks

11/11/2013:
-fixed reboot problem
-remove compressed copy from zram in-memory
-backport zram from 3.7 kernel
-backport zsmalloc from 3.7 kernel
-lz4 compression for zram
-lz4 compressor module
-lz4 Cryptographic API
-included more Governor
-included more IO scheduler

27/09/2013
-interactive gov updated
-compiled usung linaro 4.8.2
-O3 optimisation

20/09/2013
-Clean Source
-Kexec support
-Dynamic dirty page writebacks
-Dynamic management of the minimal timer slack value during suspend/resume
-Automatic zipalign and fstrim
-Not Killable Processes
-DVFS(Dynamic Voltage and Frequency Scaling)
-added dyninteractive
-added Sakuractive governor
-added SIOplus IO
-increased RAM to 390MB
-600mhz freq
-added HotplugX and Lazy governor

19/06/2013
Version 8.0
-kernel updated to 6.2.A.1.100
-fixed led permission
-fixed camera
-changed CWM recovery
-Minor Tweaks

Version 6b
-390MB RAM
-added Lulzactivew,Lulzactiveq and Lazy Governor
-added zen and row IO
-minor fixes

Version 5
-Started from sratch
-Added 600Mhz
Experimental:
-ported and tweaked some Governor(Hyper,Dynainteractive,InteractiveX,Pegasu sq,Hotplug,Interactive) for sola from latest Nexus kernel.
-Tweaks and fixes

07/06/2013
Version 4
-Added some new governor
-Remove some mali tweak
-Removed some governor
-Fixes

05/06/2013
Version 3
-Compiled using latest Linaro 4.8 with optimisation
-Frandom as module
-Logger compiled as module(free up some memory)
-other fix and tweak

04/06/2013
Version 2
-Fix Mali Tweak

03/06/2013:
Version 1
-Initial Version


TODO:
1.Update to latest kernel version
2.Add/Remove governor
4.Fsync control
5.Add more TCP congestions
3.More features
The Following 57 Users Say Thank You to etch04 For This Useful Post: [ Click to Expand ]
 
etch04
Old
(Last edited by etch04; 15th January 2014 at 10:58 AM.)
#3  
etch04's Avatar
Senior Member - OP
Thanks Meter 1411
Posts: 375
Join Date: Jan 2010
HOW TO:
Here are some intructions/tips about how to play with the kernel.
Terminal is needed.
If you want to change the values,it needs su permission.
If you get 'Permisson denied',you need su permisson.
If the devices lost responses,hold power button 8s to reboot.
You can cd to the folder first,then do echos.

( CPU Freqs )
 

With DVFS,we cannot tweak min/max scale freqs via apps like SetCPU or nofrill.
but there are two ways you can change cpu freq:
by using this appor

by using terminal
Quote:
cd /sys/power
For example: set 800Mhz as max limited
Quote:
echo 800000 > cpufreq_max_limit
* When you switch on/off,power saving mode,this tweak will be overrided.
* If you want it to be permanet edit 05exp file in init.d.

No-fills CPU shows a wrong freqs
Quote:
This is NOT issue. No-fills will show you Dynamic Min/Max scaling freqs,DVFS(dynamic voltage and frequency system) will adjust Min/Max freq according to system load.
Open SetCPU,it shows you real freqs.Or check sysfs directly.


ABBamp Audio
 
Please note that listening to too high volume music over 1 hour or more can damage your ears.
Too high volume can make your external speakers/headset overload or damage them.

First, why do i call it `AMP`?
Because most of our tweaks are about gain(volume)
Our codec is simple, It doesn't have any hardware EQ (although i want...)

ABBamp sysfs entries are in:
Quote:
Quote:
/sys/kernel/abbamp
* Use RootExplorer to view this folder,there are lots files

Tweaks will take effects immediately!
Most tweaks will accept inputs like "on", "off" (no quotes)...
So, say "on" to enable this tweak, then this tweak will apply the value stored/inputed
View(cat) these files, most of them will give you useful infomation about this tweak.
They will show you the volume in dB of gain

`cd` to /sys/kernel/abbamp first then do echos, will be more convenient.

[AnaGain3] (Headset analog gain path):
Enable tweaks:
Quote:
echo on > /sys/kernel/abbamp/anagain3
Disable tweaks:
Quote:
echo off > /sys/kernel/abbamp/anagain3
Gain control: (min:0 ,max: 15) Lower value,higher volume (default: 0[+4dB])
Quote:
echo left=?? > /sys/kernel/abbamp/anagain3
Quote:
echo right=?? > /sys/kernel/abbamp/anagain3
Write both left and right channels:
Quote:
echo gain=?? > /sys/kernel/abbamp/anagain3


Not Killable Processes
 

This feature allows to define processes and system processes white-lists filled with the preferred process names and to not be killed by lowmemorykiller, unless it is absolutely necessary.

[APP][ROOT][4.0+] Performance Control - Open Source


Logcat
 

I have made android logger(logcat) as module to free more RAM.
Create a new init.d script:
Quote:
Quote:
#!/system/bin/sh
insmod /system/lib/modules/logger.ko
Then you can use logcat command.


EGL Driver
 

To use Mali hardware egl driver only:
Edit /system/lib/egl.cfg
Quote:
Quote:
0 0 android
0 1 mali
To
Quote:
Quote:
0 0 mali


Init.d script
 

Please install busybox in system first
I recommend you install busybox via apps
Create a new folder named 'init.d' in /system/etc
Set the permisson of init.d foler to 0777(rwxrwxrwx) (at least has read and exec permission)
Set the owner to 0.0 (root root)
Put some scripts (any name you like) in init.d folder with permisson 0777 (rwxrwxrwx) (at least has read and exec permission)
Scripts with right permisson will be runned when system boots.


zRAM/SWAP

 
zRAM is optimized for Android. It is not lazy anymore.
Using zRAM will take a little CPU, because it needs to compress/decompress memory.
Recommended compressing about 18% of RAM, about 100 mb.

Setup disksize first: (example: 96mb= 96×1024×1024)
Quote:
echo 100663296 > /sys/block/zram0/disksize
* Larger size more RAM will be compressed.
* Too large size might make phone lag

To enable:
Code:
mkswap /dev/block/zram0
swapon /dev/block/zram0
To check how many does it use:
Quote:
cat /sys/block/zram0/num_reads
cat /sys/block/zram0/num_writes
cat /proc/meminfo | grep swap
* We can get other info in its sysfs

[SWAP]
1. Format/resize external SDCard via computer first.
Enable:
Quote:
mkswap /dev/block/mmcblk1p1
swapon /dev/block/mmcblk1p1
2. Using a FILE as swap RAM: (Create a continuity file first)
Quote:
su
cd /cache
dd if=/dev/zero of=swapfile bs=1024 count=81920
mkswap swapfile
swapon swapfile
Then we will have an 80mb swap RAM.


Last_dmesg
 
Some Help about posting kernel bugs -last_kmsg:
After you have a random reboot do this to get last_kmsg.txt file:
- via Terminal Emulator apk form play store : do
this:
Open the app, type:
Quote:
su
hit enter.
type(withoutall the spaces) :
Quote:
cat(space)/proc/last_kmsg(space)>(space)/sdcard/last_kmsg.txt
and hit enter.Then go to your internal memory with any
file explorer and you will finde the last_kmsg file
and please post it here.


UKSM

 
UKSM is more advanced than KSM algorithm which is developed by Chinese.
UKSM is faster 20x than KSM, and it has been disabled by default.
Here is a document about HOW-TO use UKSM in its WebSite.

http://kerneldedup.org/en/projects/u...ge/usage0-1-2/

if you want stop uksm run:
Quote:
echo 0 > /sys/kernel/mm/uksm/run
for (re)activating:
Quote:
echo 1 > /sys/kernel/mm/uksm/run
* I have set cpu_governor mode to quiet by default in order to get smooth.
* If feel laggy, try to disable UKSM.
The Following 48 Users Say Thank You to etch04 For This Useful Post: [ Click to Expand ]
 
etch04
Old
#4  
etch04's Avatar
Senior Member - OP
Thanks Meter 1411
Posts: 375
Join Date: Jan 2010
reserved
The Following 14 Users Say Thank You to etch04 For This Useful Post: [ Click to Expand ]
 
apex_predator619
Old
#5  
Member
Thanks Meter 37
Posts: 87
Join Date: Mar 2013
Location: Chandigarh
Will try it out soon. Please add Lionheart.
 
jatinrungta
Old
(Last edited by jatinrungta; 16th June 2013 at 05:41 PM.)
#6  
jatinrungta's Avatar
Senior Member
Thanks Meter 2324
Posts: 1,905
Join Date: Nov 2012
Seems good
1)Recovery is 6.0.1.2
2) Recovery usb mount does not work
 
troullis2004
Old
#7  
troullis2004's Avatar
Senior Member
Thanks Meter 70
Posts: 536
Join Date: Mar 2012
I will definitely test and report. You look pretty good at what you do. I like that you are thorough to explain what you have included.

Sent from my ST25i using xda app-developers app
 
etch04
Old
#8  
etch04's Avatar
Senior Member - OP
Thanks Meter 1411
Posts: 375
Join Date: Jan 2010
I don't own this device...so it would be great if somebody would test and report back.
The Following 3 Users Say Thank You to etch04 For This Useful Post: [ Click to Expand ]
 
sonyfan45
Old
#9  
sonyfan45's Avatar
Senior Member
Thanks Meter 66
Posts: 164
Join Date: Jan 2013
Location: Pondicherry
Going to flash I ll report soon..

Sent from my Xperia U JB
 
jatinrungta
Old
#10  
jatinrungta's Avatar
Senior Member
Thanks Meter 2324
Posts: 1,905
Join Date: Nov 2012
1)Recovery is 6.0.1.2
2) Recovery usb mount does not work
3)Battery running quickly

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes