[KERNEL][RAY][JB 4.1 & 4.2] LuPuS-JBv9 [LINARO 4.7.3][UPDATED 08-06-13]

wedgess

Retired Forum Moderator / Inactive Recognized Deve
Apr 23, 2012
3,229
14,093
0
Dublin, Ireland
www.pac-rom.com
LuPuS JellyBean Kernel



This kernel can be used on any JB CM BASED JB 4.1 or 4.2

Disclaimer

Code:
[COLOR="DarkOrchid"]#include[/COLOR] [COLOR="Magenta"][/COLOR]
[COLOR="Blue"]/*
* Your warranty is now void.. LOL I guess you knew it already.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, you getting dumped or you getting fired because your phone 
* bootloops and alarm does not go off. Please do some research if you have any  
* concerns about features included in my kernel before using it! YOU and only 
* YOU are choosing to make these modifications.
*/

[COLOR="Magenta"]#ifdef[/COLOR]
You have a [COLOR="DarkGreen"]question[/COLOR] post it in the [COLOR="DarkRed"]thread[/COLOR],
Instead of [COLOR="DarkGreen"]Pm'ing me[/COLOR], as other users may
experience you [COLOR="DarkRed"]problems[/COLOR]
[COLOR="Magenta"]#endif[/COLOR][/COLOR]

What Works --
  • Wifi - (flash modules)
    Bluetooth
    Everything Else that works on FXP and any other JB kernel

What doesn't work --

  • Anything that doesn't work on FXP and any other JB kernel

Added Io-schedulers --
  • - Noop
    - Anticipatory
    - Deadline
    - CFQ
    - BFQ
    - SIO
    - ZEN

Added Governors --
  • - lagfree
    - brazillianwax
    - smoothass
    - scary
    - savagedzen
    - smartass
    - smartassv2
    - smartassH3
    - interactivex
    - minmax
    - + the 5or6 that are there with FXP

    Lulzactive - Thanks to Tegrak
    Based on Interactive and Smartass. When workload is greater than or equal to 60%, the governor scales up
    CPU to next higher step. When workload is less than 60%, governor scales down CPU to next lower step.
    When screen is off, frequency is locked to global scaling minimum frequency

    Virtuous
    Virtuous is a modded smartassV2 which gives even more battery time then smartassV2:)

    Intellidemand - Thanks to faux123
    This is an intelligent ondemand that enters browsing mode to limit max frequency when GPU is idling,
    and (exits browsing mode) behaves like ondemand when GPU is busy; to deliver performance for gaming and such.
    Intellidemand does not jump to highest frequency when screen is off.

    Lazy - Thanks to Ezekeel
    The Idea here is to eliminate any instabilities caused by fast frequency switching by ondemand.
    Lazy governor polls more often than ondemand, but changes frequency only after completing min_time_state
    on a step overriding sampling interval.
    Lazy also has a screenoff_maxfreq parameter which when enabled will cause the governor to always
    select the maximum frequency while the screen is off.


    -Ondemandx:
    Basically an ondemand with suspend/wake profiles. This governor is supposed to be a battery friendly ondemand. When screen is off, max frequency is capped at 500 mhz. Even though ondemand is the default governor in many kernel and is considered safe/stable, the support for ondemand/ondemandX depends on CPU capability to do fast frequency switching which are very low latency frequency transitions. I have read somewhere that the performance of ondemand/ondemandx were significantly varying for different i/o schedulers. This is not true for most of the other governors. I personally feel ondemand/ondemandx goes best with SIO I/O scheduler.

    -Lionheart:
    Is a conservative-based governor. The tunables (such as the thresholds and sampling rate) were changed so the governor behaves more like the performance one, at the cost of battery as the scaling is very aggressive.

    To 'experience' Lionheart using conservative, try these tweaks:
    sampling_rate:10000 or 20000 or 50000, whichever you feel is safer. (transition latency of the CPU is something below 10ms/10,000uS hence using 10,000 might not be safe).
    up_threshold:60
    down_threshold:30
    freq_step:5
    Lionheart goes well with deadline i/o scheduler. When it comes to smoothness (not considering battery drain), a tuned conservative delivers more as compared to a tuned ondemand.

    BadAss Governor:
    Badass removes all of this "fast peaking" to the max frequency. Badass will also take the gpu load into consideration. If the gpu is moderately busy it will bypass the above check and clock the cpu with 1024Mhz. If the gpu is crushed under load, badass will lift the restrictions to the cpu.

    Superbad -
    A "superbad" super smooth rendition of a highly optimized "smartass" governor!

    Darkside -
    A "slightly more agressive smart" optimized governor!

    Intellidemand2 - Thanks to faux123 and CosmicDan for mods
    Uses d_bus ramping, quick and smooth and performance based, do not complain about battery drain on this
    governor but it will make everything feel more like project butter :p

What else-----

  • -SLQB - (SLAB allocator with Queue)
    This memory allocator is designed for small number of CPUs system (such as desktop or smart phone devices). This allocator is design to be simple and it is optimized for using order-0 pages as much as possible (order-0 pages are the simplest therefore quickest type of memory in a Linux system to allocate).

    - Alot of changes to code to try improve smoothness ect
    - Wifi signal lock on should now be quicker / stronger then before


--When LEDS change green, pink then blue press volume down to enter CWM Recovery


I would like to say a big thanks to -

  • slz.kiev - for amazing PACman ROM & Testing:)
    FXP - Sources
    Cyanogenmod - Souces
    DooMLoRD - Everything he's done for XPeria
    wechy77 - For helping me test:)
    tempest918 - For the New Logo
    xeozus
    NobodyAtAll
    Faux123
    Erasmus
    Leedroid
    Phil3759
    CTCaer
    Anyone missing please PM me



Github Sources
-b jellybean
https://github.com/garwedgess/semc-kernel-msm7x30

CWM source -- https://github.com/garwedgess/android_bootable_recovery -b lupus-cwm
 
Last edited:

wedgess

Retired Forum Moderator / Inactive Recognized Deve
Apr 23, 2012
3,229
14,093
0
Dublin, Ireland
www.pac-rom.com

LuPuS MENU



You can run lupus menu from terminal or scriptmanager or similar, you must run as root or script will exit with a message

in terminal

Code:
su
lupus

* information is in lupus menu

1/ CIFS Menu *
  • Enable
    Disable

2/ zRam Menu *
  • Enable
    Disable
    Set zRam size ( default is 60)

3/ Frandom Menu *
  • Enable
    Disable

4/ USB OTG *
  • Enable
    Disable

5/ Clean and Remove tweaks
  • Remove init.d's

6/ Tweak Menu
Note all tweaks are preset from here and option to set as init.d's
  • Clean all temp files
    SQLITE optimizations
    LMK Optimizations
    Network optimizations
    Defend against ARP spoofing
    Remove android logger
    SDcard speed tweak
    Flag blocks as non-rotational

7/ Performance Menu
Note all options are se by user input from here and option to set as init.d's
  • Set CPU frequencies
    Set Governor
    Set IO-Scheduler
    Voltage Control
    VM tweaks (explained below)

VM Tweaks


dirty ratio and dirty background ratio 1 & 2
This controls how often the kernel writes data to "disk" (in our case the internal microSD system card, not the removable microSD card). When your apps write data to disk, Linux actually doesn't write the data out to the disk right away, it actually writes the stuff to system memory and the kernel handles when and how the data is actually going to be flushed to the disk. These values represent a percentage, the higher the percentage, the longer it waits to flush, the lower the percentage, the more often flushes will occur. Now remember, we are dealing with solid state storage, not the traditional disk platter and spindle. So we are actually able to delay flushes a little longer with solid state versus a traditional hard drive disk.


dirty_expire_centisecs
How old "dirty" data should be before the kernel considers it old enough to be written to disk. It is expressed in 100ths of a second.

dirty_writeback_centisecs

This is the interval of when the writeback daemons periodically wake up and write "old" data out to disk. It is expressed in 100ths of a second.

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. Default is 2048kb.

overcommit_memory
This 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.

Swappiness
A property for the Linux kernel that changes the balance between swapping out runtime memory, as opposed to dropping pages from the system page cache. Swappiness can be set to values between 0 and 100 inclusive. A low value means the kernel will try to avoid swapping as much as possible where a higher value instead will make the kernel aggressively try to use swap space.

VFS Cache Pressure
File system cache (dentry/inode) is really more important than the block cache above in dirty ratio and dirty background ratio, so we really want the kernel to use up much more of the RAM for file system cache, this will increas the performance of the system without sacrificing performance at the application level. The default value is 100, as a percentage, and what you want to do is lower the value to tell the kernel to favor the file system cache and not drop them aggressively.


If you like my work please consider buying me a beer or something else ;)
by clicking the DONATE ME button, of course it isn't needed but greatly appreciated and keeps me motivated.
 
Last edited:

wedgess

Retired Forum Moderator / Inactive Recognized Deve
Apr 23, 2012
3,229
14,093
0
Dublin, Ireland
www.pac-rom.com
Changelog ...............


Code:
[hide]
[B][v1] [/B]
- Initial release
- 25 Governors
- 6 Io-Schedulers
- SLQB memory allocator
- Built with linaro 4.6 toolchains
- Swap
- Zram enabled
- Custom voltage control supported
- Supports USB OTG
- Supports ext2, 3 & 4


[B][U]v2[/U][/B]

- Couple of extra tweaks - improvements to battery
- Fixed Wifi issues
- Reverted my disabling of disabling sched_feautures if you get that :P
- Added USB OTG modules needed for USB OTG ( find attached zip at the end of the post)
- Added stable freq-table for higher OCing upto 2ghz

[B][U]v3[/U][/B]

- Completely scrapped previous sources and started fresh
- CWM fixed thanks @ Scritch007
- Built with Linaro 4.7
- Optimized for Linaro
- Thumbee
- Reverted to 1.6 max OC
- Lzo patched
- Use Google Snappy Compression / Decompression
- Added TINY RCU
- Fixed Battery drain ( Tester lost 0.2% overnigh with wifi on ) :victory:
- Uses uncompressed Image {why .img size is bigger)
- Custom improvements for overall smoother performance

[B][U]v4[/U][/B]

- built with latest linaro 4.7.3 (02-01-2013) - Thanks @ ChainFirex
- Added memcopy
- Added compaction
- Lowered vfs_cache_pressure
- LMK (lowmemorykiller) optimizations
- Improved CIFS support
- Enabled USB tether
- Disabled gentle_fair_sleepers
- Updated video drivers
- Clean up on wifi config
- Back-ported binder changes
- TWRP recovery - thanks @ championswimmer & TWRP team

[B][U]v5[/U][/B]
- Built with Linaro 4.7.3 (02-01-2013)
- Free'd RAM (disabled 720p) now 381mb - Thanks at Paul678 
- Makefile optimisations (snapdragon & neon) - Thanks at Paul678 
- Tweaked permormance on interactive governor - Thanks at Paul678 
- Tweaked SIO io sched - Thanks at Paul678 
- Free'd some RAM from loggers
- Reduce swappiness
- Fix PageHead
- Fix binder. use of uninitialized variable.
- Fix kernel/net Memory Leaks
- Eliminate kstrdup memory leak 
- ipv4: force_igmp_version ignored when a IGMPv3 query received 
- Fix Entropy Depleting (no more depleting) - Thanks @ Kees Cook
- enable ipsec tunnel support in kernel (Latest FXP Change)
- ARM7 optimsations + more in config
- TWRP v2.4 - Thanks @ Championswimmer, TWRP Team
- Thanks        [user=4402161]@Wechy77[/user] for LuPuS TWRP theme

[B]v6[/B]
- Supports both 4.1 & 4.2 JB
- New IIO Scheduler ZEN thanks        [user=2632235]@bbedward[/user]
- New Governor smartassH3 thanks        [user=3057569]@Hero[/user]
- Tweaked Deadline IO scheduler
- Tweaked smartassv2
- Frandom
- SFB Net scheduler
- OC up to 1804.8MHz
- Logger backported from CAF
- Free RAM from logger
- LMK updated and optimized + various LMK tweaks
- Various ARM & RAM changes
- TinyRCU optimizations
- Optimized crc32 lib
- various VM changes
- Improved cleancache
- Undervolt LCD display, touch sensor proximity sensor & Wi-Fi thanks @ M66B
- Entropy tweaks
- Try fix for CRT animation        [user=4266283]@paul678[/user]
- TWRP & CWM
- LuPuS Menu
- Auto Loading wifi
- All modules and init.d's included No need to flash anything after kernel
Plus alot more changes see [URL="https://github.com/garwedgess/semc-kernel-msm7x30/commits/jellybean"] for full list of credits and patches used[/URL]


[B]v6[/B]
- Latest changes to ALS and Button Backlight -- Thanks @ FXP
- Lowered OC to 1612.8Mhz
- Remove ALS and Button Backlight option from LuPuS Menu (no longer needed)
- Random reboots should be fixed ( for those who where having such issues )


[B]v7[/B]
- Fixed 3D from hanging under high intensity
- Fix pmem for HDPI Mike NG] (no more reboots??)
- CWM Recovery = VOLUME DOWN
- TWRP Recovery = VOLUME UP
- Clean up on LuPuS Menu
- Better wifi check
- KEY RESET ( Menu and POWER)
- Tuned Smartassv3 and SmartassH3        [user=2799345]@M66B[/user]


[B]v8[/B]
- Fixed reboot to recovery on 4.2 (not sure if i broke it on 4.1)
---- Custom CWM
- Clean-up of menu
- Added own wipe options menu -- with extra options
- Aroma File Manager from CWM --- Must have aroma ([COLOR=Red]aromafm.zip) placed on root of sdcard[/COLOR]) 
- Multi zip installer
- Reboot options - Power off re-added under this menu
- Pointless but people keep asking me for it so re-added wipe battery stats also.
- LuPuS themed...
- Fixed "dancing android"
[/hide]

[B]v9[/B]
- Added option to enable Quick Key Reset (enable / disable via LuPuS Menu)
- Tuned Governors 
  * superbad
  * lionheart
  * virtuous
  * darkside
  * conservative
  * smartassH3
- Really use google snappy zRam (improves zRam)
- Added zCache
- Removed persistent RAM
- Removed some more kernel debugging
- uninterruptible sleep
- Update SIO & CFQ
- Added Ultra-KSM
- Removed optimized AES & SHA1 routines
- Updated TWRP to 2.4.4
   *Fixed Mount USB Storage in TWRP
- Updated CWM to latest Official CWM source
   *Removed reboot options
   *Re-added power off and reboot system now to main menu
- Improved wifi-loading scripts
- Clean up of lupus menu
- Fixed root issue on some devices
- Reworked kernel logs (can  be found in /data/local/tmp)
- Boot.d - If phone is taking a long time to start move suspicious init.d scripts to /system/etc/boot.d
  They will be run in background and won't affect boot time.

LuPuS-Jellybean-DOWNLOADS


If you like my work please consider buying me a beer or something else ;)
by clicking the DONATE ME button, of course it isn't needed but greatly appreciated and keeps me motivated.



480p

LuPuS_urushi_jBv9-ram.img
md5 = 3ff24d7e343beb483aa81d7bcfa1b5f5
[/LIST]

720p

LuPuS_urushi_jBv9.1-full.img
md5 = 1effb6e2ba80afbb55d1bd9d30a426fd
[/LIST]

Mirrors -- all LuPuS Kernels can be found here
www.goo.im/devs/wedgess

Wifi is built in to kernels ramdisk NO MODULES NEEDED

If your MD5 doesn't match re-download
 
Last edited:

justmpm

Retired Senior Moderator
Dec 22, 2010
4,226
4,859
0
Jumpston Junction
Wow...nice one! Really responsive! Just wanted to point out that in addition to all the features listed in the OP, that you can undervolt
with this kernel....didn't see it as a feature in the OP...

Thanks!
 

wedgess

Retired Forum Moderator / Inactive Recognized Deve
Apr 23, 2012
3,229
14,093
0
Dublin, Ireland
www.pac-rom.com
Wow...nice one! Really responsive! Just wanted to point out that in addition to all the features listed in the OP, that you can undervolt
with this kernel....didn't see it as a feature in the OP...

Thanks!
Lol ye i forgot to add it in to op thanks for reminding me.

Edit- Put of couple of more things into 3rd post, anymore I can remeber will be added :)

Sent from my GT-I9300 On Official JB
 
Last edited:

feelow

Member
Mar 31, 2010
23
8
23
Lol ye i forgot to add it in to op thanks for reminding me.

Edit- Put of couple of more things into 3rd post, anymore I can remeber will be added :)

Sent from my GT-I9300 On Official JB
very smooth, but has a problem the wifi seems works not stablely, sometimes cause reboot and sometimes cannot been disconnected.
 

Wechy77

Senior Member
Dec 26, 2011
1,544
1,732
0
Here
very smooth, but has a problem the wifi seems works not stablely, sometimes cause reboot and sometimes cannot been disconnected.
Did you reboot? I have no problem with wifi. Only at first boot I had this problems.

Sent from my Xperia Ray using xda premium
 

dreezz

Senior Member
Feb 24, 2011
660
122
0
testing...
(thx for your effort sofar :good:)

1st impression: lower scores on Antatu than with standard PAC-kernel.

i'd like to have a better battery life, so now testing "virtuous/sio, 806/134".
or are there better suggestions?
(like to keep a snappy Ray ;))
 

justmpm

Retired Senior Moderator
Dec 22, 2010
4,226
4,859
0
Jumpston Junction
"Custom voltage control supported" not working. The PAC romcontrol says: not supported by your kernel
I don't think that part of RC has been activated....it also doesn't work with the kernel from champilnswimmsr's aokp build. I am using incredicontrol from the play store...but a lot of other apps will let you change the volts.
 
  • Like
Reactions: Wechy77

dreezz

Senior Member
Feb 24, 2011
660
122
0
I don't think that part of RC has been activated....it also doesn't work with the kernel from champilnswimmsr's aokp build. I am using incredicontrol from the play store...but a lot of other apps will let you change the volts.
is there a list of recommended (or safe) voltage settings for the Ray?
 

wedgess

Retired Forum Moderator / Inactive Recognized Deve
Apr 23, 2012
3,229
14,093
0
Dublin, Ireland
www.pac-rom.com
Yes i know in rom control it still says not supported not sure why but u can always use SetXperia app from playstore to change it

And poster who asked about safe settings. Try down step -25mv at a time and see what is stable for you. If u get reboots then its obviously not stable.

Or else safest way if your wortied then dont undervolt at all. What maybe stable for someone might not be stable for you

Sent from my GT-I9300 On Official JB
 
  • Like
Reactions: Wechy77

_TREM_

Member
Apr 2, 2012
27
0
0
I tryed thi kernel for my CM10 rom. And it seems buggy. Antutu points is lower than on stock kernel, and the perfomance is bad too, including games and UI.
 

wedgess

Retired Forum Moderator / Inactive Recognized Deve
Apr 23, 2012
3,229
14,093
0
Dublin, Ireland
www.pac-rom.com
I tryed thi kernel for my CM10 rom. And it seems buggy. Antutu points is lower than on stock kernel, and the perfomance is bad too, including games and UI.
lol ok first off this is not stock kernel so you can't compare it to STOCK,Ssecondly i'm not sure what governors, io scheds and frequencies you are using. People who have tested have reported it being smooth and performance being greater not worse. Also I obviously use my own kernels on my own device and my experience is the complete opposite of yours. You sure it not 'your' CM10 rom. Buggy!! how? please do elaborate.

Anyone else confirm what the above pster has said ??
 

[GER]Roxxor

Senior Member
Sep 5, 2010
513
290
93
Nürnberg
Using it now for some hours with Virtous and SIO and looks very promising. Speed of ROM is for me the same and I dont play games. But Battery seems to be great! I left the screen off a lot and have like 95% deep sleep, so pretty well battery ;D I use FXP142.
EDIT: just tested the game "granny smith'. Runs good! But I didnt test with another kernel.
 
Last edited:

wedgess

Retired Forum Moderator / Inactive Recognized Deve
Apr 23, 2012
3,229
14,093
0
Dublin, Ireland
www.pac-rom.com
Using it now for some hours with Virtous and SIO and looks very promising. Speed of ROM is for me the same and I dont play games. But Battery seems to be great! I left the screen off a lot and have like 95% deep sleep, so pretty well battery ;D I use FXP142.
EDIT: just tested the game "granny smith'. Runs good! But I didnt test with another kernel.
Ye virtuous is supposed to be more battery friendly then smartassv2
Intellidemand2 would be best performanced based but not the best on battery.

Sent from my GT-I9300 On Official JB
 

dreezz

Senior Member
Feb 24, 2011
660
122
0
I left my ray on during the night, to see what the battery would do...
(i mean screen off, but wifi+3g on)

from 100 to 74% in 9 hours.
8:40 deep sleep (94%)

806/134 virtuous/sio

I cannot compare btw, usually i charge at nighttime, but usage seems quite high?
was hoping for about 90% battery left or something, but like i said, not tested with other kernels.
 

justmpm

Retired Senior Moderator
Dec 22, 2010
4,226
4,859
0
Jumpston Junction
I think I caught a "wifi" bug. Yesterday the wifi cut out and wouldn't turn back on...after rebooting everything was fine for a few hours and then wifi stopped working. I am not sure if it is really wifi or something else, because if I go into settings I see that wifi is on, I can turn it off but it won't turn back on...if I leave settings and pull down the status bar it show wifi as "on"...when I go back into settings it shows wifi as "on"...and no networks are shown that can be connected. You can do this over and over and every time you reenter settings it says wifi is on. I think it also causes a wakelock from wifestatemanager.

I went into recovery and formatted system and reinstalled PACman v15...a few hours later the problem returned. I flashed in a different kernel and it seemed OK....now I have your kernel on ChampionSwimmer's AOKP ROM and I am waiting to see if the bug returns.

I am not sure if there is something specific I do that activates the bug, so I don't have a logcat of it happening. I attached a logcat of me trying to turn on and off wifi in settings. I also attached the battery stats report from Better Battery Stats in case the wakelock is informative....
 

Attachments