Related
Mugetsu is a package for Urushi (SE Ray) comprised of:
Custom kernel
Patched libsqlite.so
/sd-ext tools
Even though it's a single package, I've split everything between 3 posts according to the above schematic.
Clicking on each one will take you to its own dedicated section.
I have reserved a last post for instructions on how to port this over to other XPERIA 2011 devices.
Mugetsu is mainly a custom kernel based on FXP's source up until 3/11. The credit of every work prior to this date, as well as providing the wlan source needed to compile wireless modules, belongs to FXP team. I've just tweaked and messed a bit in order to optimize performance, internet speed, battery and memory management, while keeping it as light as possible.
Currently working for:
CyanogenMOD 7 (lastly tested with FXP045)
SEMC 4.0.2.A.0.42 *
MIUI (lastly tested with MIUI 1.10.21)
* wifi is broken since I'm unable to compile wlan modules for stock
Features\Changelog:
Code:
[I]version two[/I]:
- Increased OC support up to 2.0 Ghz.
- [URL="https://market.android.com/details?id=com.skvalex.callrecorder"]Added support for voice calls recording[/URL]. (experimental)
- Further optimizations to Deadline I/O Scheduler.
- Lowmemorykiller.c parameters tuned.
[I]version one[/I]:
- Bumped version to 2.6.32.18
- Overclock support up to 1.6 Ghz
- Tiny RCU (+ optimizations)
- SLQB memory allocator
- Many new CPU freq governors (+ optimizations)
- Many new I/O schedulers (+ optimizations)
- Bumped BFQ to last version
- Support for CPU unaligned access
- Veno TCP Congestion control *
- Stochastic Fair Blue network scheduler *
- Bumped jHash to last version *
- Improved RWSEM algorithm
- Improved CRC32 algorithm
- Disabled swappiness
- Increased Config_HZ
- Increased data transfer rate
- Sysctl and lmk tweaking
- Stripped of unnecessary crap. So you have an idea, stock kernel has 3.2 MB, FXP has 3.0 and this one has 2.6 MB.
* huge internet/market page loading boost
CM version is updated to the latest build so it has wifi, haptic feedback and vibration working.
SEMC has an insecure boot.img so it can be rooted with SuperOneClick and I've also added CWM recovery.
Available modules:
Code:
- TUN
- CIFS
- Powersave governor *
- Performance governor *
- Logcat
* since powersave lowers cpu max frequency to same value as the min frequency and performance the other way around, these just seem kind of irrelevant when you have cpu sliders; however, I've included them as a module for advanced users
For activating a module, run this command on terminal: insmod /system/lib/<module.ko>
You may want to add afterwards a line to a init.d for automatic insmod.
Available governors:
Code:
- Ondemand
- Conservative
- Interactive
- InteractiveX
- Smartass2 *
- Smoothass
- BrazillianWax
- SavagedZen
- MinMax
- Scary
* default
For choosing the governor use CM settings > performance, SetCPU, ROM Toolbox or any other app.
More information: http://forum.xda-developers.com/showpost.php?p=17131902&postcount=1
Available I/O schedulers:
Code:
- Noop
- BFQ
- CFQ
- Deadline *
- Simple
- VR
- Anticipatory
* default
For choosing the I/O scheduler use No-Frills app or the following command:
echo "scheduler-name" > /sys/block/mmcblk0/queue/scheduler (cat this path for the names)
More information: http://forum.xda-developers.com/showpost.php?p=17131914&postcount=2
Download (SE Ray only):
v1: SEMC 4.2.0.A.0.42 - 414c02bb24712eec04e92d1ec858c9f0 || CM/FXP - c058878d24f90871ee808e18c3f6b8f1 || MIUI - (check in MIUI thread)
v2: removed for giving wifi problems to some people.
Instructions:
Download the package.
[CM7] Copy the package to your microSD card.
Extract boot.img from it.
Boot your phone into fastboot mode: turn off, plug USB cable while holding vol+ (blue light).
Use fastboot tools to flash the kernel: fastboot -i 0xfce flash boot boot.img
Unplug cable, turn on phone.
[CM7] Keep hitting vol- while the phone is booting to get into CWM.
[CM7] Flash the package in CWM (flash zip from sdcard).
[CM7] Reboot.
[CM7-Optional] Read about /sd-ext tools.
I'll try to update it as frequently as I'm able to but don't be expecting much, I don't have much spare time and this is only a hobby for me; I'm not a computer engineer, I do this mainly for myself and to keep the brain sharp and always learning.
If you go back to another kernel (boot.img) you may find yourself without wireless if you're using CM.
In this case, just flash this in CWM, no wipe required: http://www.multiupload.com/LIX7E96BGX
I have patched the libsqlite.so present in /system/lib/ in order to disable the sync feature for a higher write efficiency. So basically this will return more I/O performance while observable gains should be through a faster opening/closing of applications.
Currently working for:
CyanogenMOD 7 (lastly tested with FXP045)
It is already included in the package that you flash on kernel section instructions.
More information: http://forum.xda-developers.com/showthread.php?t=903507
My past devices always had ext3 native filesystem (eMMc devices), instead of XPERIA's yaffs2 (MTD devices). I usually upgraded these to ext4, removed journalism and with proper mount flags I have found its I/O performance much better than yaffs2 or anything else.
However, in MTD as far as I know there's no such way to format it to ext4 but there's a way around: move applications, data and dalvik-cache to a partition in microSD card called /sd-ext and have it formatted as ext4. Like for the patched libsqlite.so, a higher I/O performance equals to gains in overall smoothness.
Currently working for:
CyanogenMOD 7 (lastly tested with FXP045) *
* even though it's possible in theory for SEMC ROM I will not describe it here
Unfortunately there seems to be no official support for /sd-ext and CWM recovery on CM doesn't have the option to partition the sdcard so we have to find another way to create the /sd-ext partition and force the mount.
Requirements:
Mugetsu package already flashed through CWM (it has essential binaries)
MicroSD card of, at least, class 6 (higher the class, better the performance)
S2E application by Oleg Krikun which can be downloaded from the market
Terminal application (already included on CM but can be downloaded from the market) or ADB
Make sure to backup your microSD card contents as it will be fully wiped.
Instructions:
Navigate to settings > storage and unmount the microSD.
Open terminal/ADB shell and run these commands:
su (allow superuser access so the symbol turns # if it isn't already)
parted /dev/block/mmcblk0
print
Take note of the size of microSD card (in my case is 7937 MB), now remove the existing partitions:
rm 1
[Optional]rm 2 (remove n partitions until when you run the print command you won't have any)
Now we create the partitions. Let's go with a 512 MB /sd-ext and the rest for storage (FAT32). Now you'll need to write that (total space - 512 MB) - in my case 7425:
mkpartfs primary fat32 0 7425
mkpartfs primary ext2 7425 7937
Remember to change these values according to your own microSD card storage capacity; if you mess up, go to point 6 and repeat.
Now, we upgrade ext2 to ext3 and then to ext4, but first, exit parted with:
quit
Now back on to terminal/adb shell, run these commands to force ext3 and ext4 upgrade:
mount -o remount,rw /system
echo "" > /system/etc/mtab
tune2fs -j /dev/block/mmcblk0p2
tune2fs -O extents,uninit_bg,dir_index /dev/block/mmcblk0p2
e2fsck -fpDC0 /dev/block/mmcblk0p2
The crucial part now, we need to force the mount of /sd-ext so S2E can recognize it and take it from there:
mount -t ext4 /dev/block/mmcblk0p2 /sd-ext
After this open S2E and choose to move everything to the microSD card. You may need to enable advanced menu in S2E settings in order to be able to move data (reboot was required in my case); also make sure to enable "mount sd-ext as ext4 without journaling" and "set read buffer". If you run into problems with S2E recognizing the /sd-ext (everything is disabled) you need to mount it with the command above. You can check if it's mounted with the following command: "mount".
This way your applications as well as application data will be moved to /sd-ext, thus improving overall snappiness through a greater I/O performance. If on the opposite, you notice any sluggishness is because your microSD card isn't fast enough (slower than yaffs2). I recommend microSD cards who bench at least 8 MB on write test in the SDtools application.
Every time you plug and enable USB connection you'll also see that the new partition gets mounted and can be accessed.
Given the similarity and common core source between all XPERIA 2011 devices, this kernel can be easily ported to others such as Arc and Neo, as well as the patched libsqlite (it needs to be compiled for each device though) and /sd-ext tools. At least for CM7 it will work, this much I can guarantee.
I could release a version for these other devices but since I don't have one for more objective testing and debugging and I really don't have the time to follow the many threads I'd have to create, it's best if I go at this in another way which I'll now describe.
If you wish to port this to your device, make sure that:
You have a linux distro and you're familiar with it.
You know your way around kernels and android.
You have a device to which you want to port to.
You have time and you're active.
Anyone interested who meet the above criteria can contact me through PM, Google+, Twitter or whatever. I'll build everything you need at first for testing purposes and if it returns satisfying results I'll guide you through the rest in order to set it up. In exchange I only ask for you to keep the name and add a link to the original thread (this one).
hi, can i give you a suggestion? there's a way to improve wifi signal? my lg optimus one is much more better than ray.
Have you an idea?
powerfull kernel!
I successfully install it in _semc_ variant. trying to enter to recovery show many text strings (warnigs or what else) but show menu.
in normal mode all ok. there are many modern governeur variants. wifi just not turned on, say 'error' (not hang or reboot as official fxp))).
all other described features of kernel explode my brain)). I will read next times your links for understanding all features.
knzo, can you embed external cards support into kernel? (OTG) or this hard? as in Doomlords' arc kernel.
Thanks for your work!
Sadly SEMC's version has broken wifi (which can be seen in #2 post).
The reason for this is because:
1. FXP wlan source can compile SEMC modules but they don't work.
2. SEMC wlan source can't compile modules.
From what I gather it seems SEMC sources need to be cleaned but I haven't had the time to take a good look at it, it doesn't seem that easy to do.
Anyway, I'm going to study an Arc version for release, then I can take a look at that.
coolkaas said:
knzo, can you embed external cards support into kernel? (OTG) or this hard? as in Doomlords' arc kernel.
Click to expand...
Click to collapse
knzo said:
My past devices always had ext3 native filesystem (eMMc devices), instead of XPERIA's yaffs2 (MTD devices). I usually upgraded these to ext4, removed journalism and with proper mount flags I have found its I/O performance much better than yaffs2 or anything else.
However, in MTD as far as I know there's no such way to format it to ext4 but there's a way around: move applications, data and dalvik-cache to a partition in microSD card called /sd-ext and have it formatted as ext4. Like for the patched libsqlite.so, a higher I/O performance equals to gains in overall smoothness.
Currently working for:
CyanogenMOD 7 (lastly tested with FXP045) *
* even though it's possible in theory for SEMC ROM I will not describe it here
Unfortunately there seems to be no official support for /sd-ext and CWM recovery on CM doesn't have the option to partition the sdcard so we have to find another way to create the /sd-ext partition and force the mount.
Requirements:
Mugetsu package already flashed through CWM (it has essential binaries)
MicroSD card of, at least, class 6 (higher the class, better the performance)
S2E application by Oleg Krikun which can be downloaded from the market
Terminal application (already included on CM but can be downloaded from the market) or ADB
Make sure to backup your microSD card contents as it will be fully wiped.
Instructions:
Navigate to settings > storage and unmount the microSD.
Open terminal/ADB shell and run these commands:
su (allow superuser access so the symbol turns # if it isn't already)
parted /dev/block/mmcblk0
print
Take note of the size of microSD card (in my case is 7937 MB), now remove the existing partitions:
rm 1
[Optional]rm 2 (remove n partitions until when you run the print command you won't have any)
Now we create the partitions. Let's go with a 512 MB /sd-ext and the rest for storage (FAT32). Now you'll need to write that (total space - 512 MB) - in my case 7425:
mkpartfs primary fat32 0 7425
mkpartfs primary ext2 7425 7937
Remember to change these values according to your own microSD card storage capacity; if you mess up, go to point 6 and repeat.
Now, we upgrade ext2 to ext3 and then to ext4, but first, exit parted with:
quit
Now back on to terminal/adb shell, run these commands to force ext3 and ext4 upgrade:
mount -o remount,rw /system
echo "" > /system/etc/mtab
tune2fs -j /dev/block/mmcblk0p2
tune2fs -O extents,uninit_bg,dir_index /dev/block/mmcblk0p2
e2fsck -fpDC0 /dev/block/mmcblk0p2
The crucial part now, we need to force the mount of /sd-ext so S2E can recognize it and take it from there:
mount -t ext4 /dev/block/mmcblk0p2 /sd-ext
After this open S2E and choose to move everything to the microSD card. You may need to enable advanced menu in S2E settings in order to be able to move data (reboot was required in my case); also make sure to enable "mount sd-ext as ext4 without journaling" and "set read buffer". If you run into problems with S2E recognizing the /sd-ext (everything is disabled) you need to mount it with the command above. You can check if it's mounted with the following command: "mount".
This way your applications as well as application data will be moved to /sd-ext, thus improving overall snappiness through a greater I/O performance. If on the opposite, you notice any sluggishness is because your microSD card isn't fast enough (slower than yaffs2). I recommend microSD cards who bench at least 8 MB on write test in the SDtools application.
Every time you plug and enable USB connection you'll also see that the new partition gets mounted and can be accessed.
Click to expand...
Click to collapse
Thx for your efforts, if u have time take a look on dooms latest modified cwm in arc thread, it has ext support, app2sd in arc android thread is working for ray, I use it now with an ext4 partition but cwm in cm does not recognize it.
funiewski said:
Thx for your efforts, if u have time take a look on dooms latest modified cwm in arc thread, it has ext support
Click to expand...
Click to collapse
Ext and sd-ext support are 2 different things. This kernel also has ext support.
knzo said:
Ext and sd-ext support are 2 different things. This kernel also has ext support.
Click to expand...
Click to collapse
sorry for my bad and incorrect english, if I understand it correct dooms modified cwm had sd-ext support, link:
http://forum.xda-developers.com/showthread.php?t=1172885
first post
here is app2sd witch use sd-ext:
http://forum.xda-developers.com/showthread.php?t=1201902
once more, thx for your work it is highly appreciated
Hm, he says only support for backup/restore when the really handy thing would be partition sdcard support. If CWM had this option then most steps on post #4 would be redundant. However, it would still need to have its mount forced so S2E can recognise it! But this could also be easily added to the RAMdisk.
Added MIUI support.
Just pulled this one:
Could you please add the ability to use the accelerometer by other applications when the screen is locked?
Please
working flawlessly so far, thx for urs hard work
Working like a charm with Cm7 FXP45 Thank you so much and keep up the good work
I found this app on the Market: https://market.android.com/details?id=com.skvalex.callrecorder&hl=en
Requires the kernel with 2-way call recording patch and ROOT permissions:
Click to expand...
Click to collapse
Does your kernel has this patch?
veimus said:
I found this app on the Market: https://market.android.com/details?id=com.skvalex.callrecorder&hl=en
Does your kernel has this patch?
Click to expand...
Click to collapse
I'll try to add support for that today.
Sent from my ST18i using XDA App
[21st Feb][Rc-4][JB][3.0.65][CWM] SIRI KERNEL ★ Making your S Advance Fly! :D ★
Hello,
So I am finally here! As I promised, I'll be hacking Kernels when Jellybean is out!
READ THE OP AND EVERYTHING PROPERLY BEFORE ASKING ANY QUESTIONS!
Just a small introduction:
Through this Kernel, my aim is to provide a fast yet bloat-free user experience. Hence , I have decided against adding 30 different governers or 10 different I/O Schedulers. I like to keep stuff neat and minimalistic. Big thanks to Cocafe, Diego and Shaan for their testing, help and especially Cocafe for whatever patches I have used from his Kernel and for helping me out with the recovery.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
DISCLAIMER:
** I do not own the device **
INDEX:
1] Frequently asked Questions + Instructions (Read this well once)
2] Changelogs
3]"] Download Links
FEATURES
General Features
Updated to LATEST Linux 3.0.65
Compiled with Linaro Toolchain GCC 4.6 with Optimizations
Cleaned off Debug stuff, which slows down the Kernel (FRAME POINTER, Log Buffer Size is 64KB)
Hacks to improve battery! (Disabled SVNET Wakelocks, Removed APE Request from vibrator driver)
Optimized CRC32 Algorithms
Optimized Filesystem Mounts for better Disk I/O
Code rewrites whereever necessary.
Charger Current Control! (Refer to FAQ!)
Sound Boost Control! (Refer to FAQ!)
Android Logger Disabled(++Performance) (Check FAQ on how-to enable)
Lowmemory Killer and Logger updated to Android-3.4
All Section Mismatch Warnings fixed, since they could cause bugs.
ARM Specific Features
ARM specific optimizations and other compiler optimizations
Optimized ARM RWSEM Algorithm
Enabled ARCH Power and Disabled GENTLE FAIR SLEEPERS
ARM: Add optimised swahb32() byteswap helper for v6 and above
Removed Force Upload Mode (Causes A forced Kernel panic when you press Volume down + headset jack plugged in)
REMOVED ALL OF SAMSUNG's DEBUG CRAP which slowed down the Kernel!
Freed the Kernel of almost every possible debug that could slow it down.
JRCU (Improves smoothness and responsiveness)
Optimized ARM AES and SHA1 Routines
I/O and Filesystem
Cleancache Enabled
CIFS Enabled
IO SCHEDULERS: SIO,VR,ROW,CFQ.
Some I/O Related patches.
NOATIME and NODIRATIME mounts set as default.
Fsync Toggle (Ezekeel)
Network
Proportional Rate Reduction in TCP - By Google
TUN/TAP Enabled
Support to change WiFi Power Management Policy to PM_FAST (Read FAQ)
Vpnclient support (Module)
Added more TCP Congestion Avoidance Algorithms: Westwood, Veno, Illinios, Vegas. Cubic(default). [ Choose which gives you the best speed! ]
Linux Memory Management
SLUB Memory Allocator (Better than the SLUB -> Default)
Tweaked all VM parameters for best performance
Upstream Linux memory management patches merged.
RAMDISK
No Compression for RAMDISK (++boot speed)
XZ Compressed Kernels.
Auto-Root Feature
Support to run init.d scripts on boot
Auto /efs backup (Needs testing)
CPU
Governers: Interactive,Conservative,Performance,Hotplug,PegasusQ
Performance Governer is now core-aware, both cores are turned on for max performance (AndreiLux)
Interactive Governer synced with Android 3.4 Kernel.
Touch to boost CPU (Refer to FAQ!)
Lots more! Flash and see for yourself!!
Reserved
changelogs
Code:
[b][color="red"]SIRI Kernel[/color][/b]
[u][b][color="darkred"]SIRI Kernel rc-1[/color][/b][/u]
[list]
[*][b]Initial release[/b]
[/list]
[u][b][color="darkred"]SIRI Kernel rc-2[/color][/b][/u]
[list]
[*][b][u][b][color="red"]Updated to latest Linux 3.0.60[/color][/b][/u][/b]
[*] Fixed sound boost control
[*] Added WiFi PM FAST toggle (Check FAQ)
[*] Disabled all samsung debug crap drivers for a faster kernel
[*] Disabled lots of debug (KGDB,FRAME POINTER) that can slow down the kernel
[*] Other patches from Mainline Linux and other repos
[/list]
[u][b][color="darkred"]SIRI Kernel rc-3[/color][/b][/u]
[list]
[*][b][u][b][color="red"]ClockworkMod Recovery! (big thanks to cocafe and diego) [/color][/b][/u][/b]
[*][b][u][b][color="red"]Updated to Linux 3.0.65[/color][/b][/u][/b]
[*] Fsync on/off toggle (Ezekeel)
[*] JRCU Forward Ported (original patch by Joe Korty :) )
[*] PegasusQ governer added (On public demand! )
[*] Improvements to the sound control driver, the ab8500 asoc is now powered on when sound control is enabled.
Added code for jack detection, which will be useful for future use. Fixed the balancing issues.
Improved it to work better!
[*] Samsung phone svnet wakelocks disabled. Should improve battery.
Svnet wakelocks held the highest wakelock timeouts.
[*] charger control interface-
I wrote an interface to change the usb and ac charger currents.
You can now increase the speed of USB and AC charge.
Simply by increasing the charge currents. (Refer to FAQ)
Max for usb and ac is 900mA, the device will charge fast, but use at your own risk.
[*] Interactive governer synced with google's android 3.4 repo.
[*] Touch to boost interface-
rewrote a better implementation for this.
You can boost the cpu to a selected speed when you touch the screen. (refer to faq)
will boost overall performance and smoothness when enabled.
[*] Android low-memory killer driver synced with Google's android 3.4 repo.
[*] Android logger driver (logcat) synced with Google's android 3.4 repo.
[*] Android logger (logcat) is disabled for better performance.
You can enable it if you wish (refer to faq)
[*] Optimized crypto arm aes and sha1 routines.
[*] Performance governer is now core-aware. Both cores will be turned on when governer is enabled.
(thanks to andreilux for this patch)
[*] Toggle for mali l2 max reads (thanks cocafe!)
[*] Fixed all section mismatches. These could cause issues. But i have fixed them.
[*] Disabled lots of verbose debugging.
[*] Rewritten tspdrv vibrator driver-
Rewrote the i2c_write function for efficiency.
Removed all the crap debug macros, and removed the request_ape_opp
which would cause battery drains.
[*] [url="https://github.com/Adipat/android_kernel_samsung_janice/commit/28bb445211ed41ff2d1f9c7a8f395de55bfd789b"]patch to fix depleting entropy[/url] (please refrain from using seeder and other fixes)
[/list]
[u][b][color="darkred"]SIRI Kernel rc-4 (Coming soon!) [/color][/b][/u]
[list]
[*] Charging derps fixed. Also temporarily disabled Charge Control, will be added back in rc-5 with fixes.
[*] Vibrator(Haptic Feedback) Fixed.
[*] J4FS partly fixed. Will add full fix in next release.
[STRIKE]J4FS works perfectly now! reboot recovery and reboot download commands work like a charm.[/STRIKE]
[*] Added TCP Congestion Avoidance Algortithms: westwood, vegas, illinios, veno. (Refer to FAQ's!)
[*] Added easy control scripts, you can now tweak stuff easily! ;)
[/list]
FAQ- (READ this well before asking me anything!)
1] I am not responsible for any hard/damage caused. You are choosing to make these modifications at your own risk!
2] Do not use any third party init.d scripts!
3] Configurable Tweaks- You can choose to enable/disable some of my Kernel implementations.
EASIER WAY TO TWEAK! READ THIS !!
OR
[*] Sound Boost-
By enabling sound boost, you can get a considerable improvement in the overall headset volume output.
Connect your headphones/earphones, then enable it with the below command.
Code:
echo "1" > /sys/kernel/sound_control/sound_boost
[B]To Disable, echo "0" .[/B]
[*] Touch Boost Feature-
Touchboost feature , when enabled boosts the CPU speed on touch input.
So, whenever you touch the screen or are scrolling through, the CPU speed will get boosted(locked) to a set frequency.
This could possibly improve the gaming performance.
Code:
echo "1" > /sys/kernel/touchboost/enable
[B]To Disable, echo "0" .[/B]
After enabling it. You can tweak some more stuff.
Boost Frequency: Change the frequency of CPU boost. Default is 800Mhz.
Code:
echo "1000" > /sys/kernel/touchboost/freq_boost
[B]Above command sets it to 1Ghz boost. You can try 200, 400, 800 which are the supported values.[/B]
Boost Timeout Time to keep CPU Boosted. Whenever the timeout ends, the CPU will be restored back to normal. Default is 0.
Max supported is 10 seconds. To change the value.
Code:
echo "3000" > /sys/kernel/touchboost/timeout
[B]Above command sets it to 1 seconds. Value is in milli seconds, 1000 milliseconds = 1 second.[/B]
[*] Enable Logger (Logcat)
Logger is disabled by default to improve performance.
However, app debugging won't work. Even the logcat command won't work.
Code:
insmod /lib/modules/logger.ko
[B]To enable Android logger.[/B]
Code:
rmmod logger.ko
[B]To disable Android logger.[/B]
[*] Fsync On/Off
Fsyncs are enabled by default in my Kernel for safety purposes.
You can choose to disable it-
Effects of disabling Fsyncs:
Pros:
When Fsyncs are disabled, the Filesystem I/O operations are reduced. This could result in a possible increase in I/O benchmarks.
Other advantages could be increase in device responsiveness,performance and battery improvements since the disk I/O is reduced.
Cons:
It can cause filesystem corruption if there is a system freeze. Could have other side effects too.
Code:
echo "0" > /sys/class/misc/fsynccontrol/fsync_enabled ("1" to enable, default is enabled)
[*] Charger Current Control-
You can increase the charger input current for fast charge.
The default for USB is 500mA and AC Charger is 600mA.
Max supported value is 900mA for safety!
You can try values between 300-900mA.
Example-
Code:
echo "700" > /sys/class/misc/charge_control/usb_current
echo "700" > /sys/class/misc/charge_control/ac_current
[*] Mali L2 Cache Max Reads-
Default: 28KB
You can try 48.
-> You can try other values.
Example-
Code:
echo xx > /sys/module/mali/parameters/mali_l2_max_reads
[*] TCP Congestion Avoidance-
You can now change the TCP Congestion Avoidance Algorithm used in the Kernel as per the one which works best for you!
Personally, I prefer using westwood as I get better speeds with it. But you are free to try others too.
Default is cubic.
Other supported ones in my Kernel are westwood, veno, vegas, illinios.
You could read more about it here.
Example-
Code:
echo "westwood" > /proc/sys/net/ipv4/tcp_congestion_control
Choose the options and configs that work best for you!
Settings get resetted on reboot.
For permanent settings, add the commands to a text file and push them to /system/etc/init.d .
This will preserve the settings every time you reboot.
[*] INSTRUCTIONS (READ THIS CAREFULLY! AND FLASH! )
-> Download the zip from Downloads Section (rc-4 and above)
-> Extract it, you will find two files.
-> I9070_CWM_FLASHABLE_SIRI_KERNEL_rc-XX.zip (This zip is a CWM/TWRP Flashable zip)
-> I9070_SIRI_KERNEL_rc-XX.bin.md5 (This is flashable via dd method or frapetis app)
Method 1: (Flash via Recovery)
rc-4 Onwards-
-> Make sure you have CWM or TWRP Installed, if no, then install the recovery.
-> Place zip in sdcard
-> Install zip via CWM Recovery
-> Enjoy!
Method 2:
Versions Before rc-4.
-> Download Kernel (.bin.md5)
-> Place it in your Internal sdcard.
-> Open terminal emulator or ADB Shell.
-> Run EXACTLY the commands given below.
-> Wrong command will brick, so be careful.
Code:
$ su
# dd if=/sdcard/I9070_SIRI_Kernel-rc-3.bin.md5 of=/dev/block/mmcblk0p15
# reboot
Method 3:
YOU CAN ALSO USE THIS EXCELLENT APP TO FLASH YOUR KERNELS!
Enjoy tweaking your device!
DOWNLOADS
DOWNLOAD SIRI KERNEL - rc 4
(Download and extract the zip, and then check the README or read the above post for instructions on how to flash)
Click this button-
--------------------- OLD VERSIONS NOT RECCOMENDED -------------------------
DOWNLOAD SIRI KERNEL - rc 3
DOWNLOAD SIRI KERNEL - rc 2
Download Siri Kernel - rc 1
------------------------------------------------------------------------------
A NOTE-
Just a statement regarding kernel source: The Kernel Source is of course covered under GPL version 2. Free software does NOT mean no work or time was spent working on it. I have donated a large sum of my free time to this kernel. If you want to include my kernel in your project or use my source code, please mention it in your post, give proper credits.
Opensource does not mean 'Out-of-credit'
ROM cooks/kangers: Please do not bake my Kernel in your ROMs. If the user wishes, he/she can flash the ROM and then flash my Kernel seperately.
Sources
CREDITS-
shut_down (For Extensive testing!)
Cocafe, Diego (CWM Recovery, testing, Big thanks! )
Shaan (Testing and feedbacks!)
gokhanmoral , AndreiLux (For their inspiring work! )
simone201 (For replying to my queries)
okay just tested it...
kernel log: http://pastebin.com/qaivmJxm
cifs module wont load, dhd module fails to bring the interface up (check the log).
Code:
$ lsmod
scsi_wait_scan 557 0 - Live 0xbf082000
bthid 4940 0 - Live 0xbf01f000
param 11349 0 - Live 0xbf017000 (P)
j4fs 67164 1 - Live 0xbf000000 (P)
$ mount | grep mmc
/dev/block/mmcblk0p3 /system ext4 ro,relatime,barrier=1,data=ordered 0 0
/dev/block/mmcblk0p2 /modemfs ext4 rw,nosuid,nodev,relatime,barrier=1,data=ordered 0 0
/dev/block/mmcblk0p4 /cache ext4 rw,nosuid,nodev,relatime,barrier=1,data=ordered 0 0
/dev/block/mmcblk0p7 /efs ext4 rw,nosuid,nodev,noatime,barrier=1,data=ordered 0 0
/dev/block/mmcblk0p5 /data ext4 rw,nosuid,nodev,relatime,barrier=1,data=ordered,noauto_da_alloc 0 0
/dev/block/mmcblk0p1 /mnt/.lfs j4fs rw,relatime 0 0
what else do you need?
diego-ch said:
okay just tested it...
kernel log: http://pastebin.com/qaivmJxm
cifs module wont load, dhd module fails to bring the interface up (check the log).
Code:
$ lsmod
scsi_wait_scan 557 0 - Live 0xbf082000
bthid 4940 0 - Live 0xbf01f000
param 11349 0 - Live 0xbf017000 (P)
j4fs 67164 1 - Live 0xbf000000 (P)
$ mount | grep mmc
/dev/block/mmcblk0p3 /system ext4 ro,relatime,barrier=1,data=ordered 0 0
/dev/block/mmcblk0p2 /modemfs ext4 rw,nosuid,nodev,relatime,barrier=1,data=ordered 0 0
/dev/block/mmcblk0p4 /cache ext4 rw,nosuid,nodev,relatime,barrier=1,data=ordered 0 0
/dev/block/mmcblk0p7 /efs ext4 rw,nosuid,nodev,noatime,barrier=1,data=ordered 0 0
/dev/block/mmcblk0p5 /data ext4 rw,nosuid,nodev,relatime,barrier=1,data=ordered,noauto_da_alloc 0 0
/dev/block/mmcblk0p1 /mnt/.lfs j4fs rw,relatime 0 0
what else do you need?
Click to expand...
Click to collapse
So wifi is broken.
CIFS I will build into the Kernel, Module is too big. Btw is that a ram console dump?
Sent from my GT-I9003 using XDA Premium HD app
Adi_Pat said:
So wifi is broken.
CIFS I will build into the Kernel, Module is too big. Btw is that a ram console dump?
Sent from my GT-I9003 using XDA Premium HD app
Click to expand...
Click to collapse
thats kmsg output
Sent from my GT-I9070 using xda app-developers app
Two great developers cooking something....waiting for the dish... keep going guys you rock
@Adi_Pat @diego-ch
Can you add some ingridients too cook from this sources also kernel for I8160? I would love to test one.
arroyo said:
@Adi_Pat @diego-ch
Can you add some ingridients too cook from this sources also kernel for I8160? I would love to test one.
Click to expand...
Click to collapse
That's the Ace 2 right? I am waiting for Samsung to drop Jellybean, pointless working on old kernel when we are going to get something better. I will merge both the sources then.
Sent from hell..!
Adi ..
I am some how not confident of samsung releasing the new JB in november.
I am no techie. But i have a question.. I was using Spice mi 410 and developers have ported cm10 on 2.6.35 kernel yes with some bugs but it still working smoothly ..
and several versions of ICS
Is it not possible to do the same on our device i know JB is kernel version 3.0
Sent from my GT-I9070 using xda app-developers app
Any update on this?
varun.chitre15 said:
Any update on this?
Click to expand...
Click to collapse
Thought of waiting for Samsung to drop JB.
Adi, i know you. Why don't you help me port CM.
Besides, even i am thinking of delaying CM.
The devs at Samsung know how to clusterfck the device. Waiting for JB now. I was going to start working on OC, but i see you have already begun.
I will fork your repo and look into it now.
Cheerz..
Shaaan said:
Adi, i know you. Why don't you help me port CM.
Besides, even i am thinking of delaying CM.
The devs at Samsung know how to clusterfck the device. Waiting for JB now. I was going to start working on OC, but i see you have already begun.
I will fork your repo and look into it now.
Cheerz..
Click to expand...
Click to collapse
I thought its pointless to waste time on GB (Linux 2.6.35) now. Samsung would surely release a better Kernel source (3.0 or maybe 3.1.10) . Plus I don't have the device with my so my focus is presently on other Projects at the moment(i9003). PM me your gtalk , we can continue out chat there
So this Project is on a hold.
Oh hey there Adi , seems like you're not just working on the R o.o
Sent from my GT-I9070P using xda app-developers app
CallMeVentus said:
Oh hey there Adi , seems like you're not just working on the R o.o
Sent from my GT-I9070P using xda app-developers app
Click to expand...
Click to collapse
Uh.. didn't get you dude.
Adi_Pat said:
Uh.. didn't get you dude.
Click to expand...
Click to collapse
Weren't you involved in the Galaxy R forums ?
Sent from my GT-I9070P using xda app-developers app
CallMeVentus said:
Weren't you involved in the Galaxy R forums ?
Sent from my GT-I9070P using xda app-developers app
Click to expand...
Click to collapse
Yeah I still am!
Sent from my GT-I9003 using xda premium
Erm..bump
Sent from my u8800
Hi Mini lovers
this mod (Script) can improve speed on x10 mini/pro. this script combination of multiple script from PIMP My ROM. Thanks to Androguide.fr
Features:
-Disable I/O Stats: it can increasing the overall I/O speed.
-Scheduler Sysctl Tweaks: Will enhance the behavior of your I/O scheduler to improve I/O performance
-Optimize sqlite3 Database: Defragment all databases at each boot. this will make apps that use db's launch faster
-Ext4 File-System Tweaks: Improve I/O performance on ext4 partition by enabling data_writeback
-Internal Memory I/O Tweaks: Internal Memory will Mount faster, and read/write speed will be increased
-Zipalign all APKs at each boot: Zipaliging will optimize the apps and make them launch and run faster. Increases boot-time
-Disabled Android Logger: Will provide a small performance
Requirements:
Rooted Phone
MiniCM7 - 2.2.1 ROM by nobodyAtall
How to install:
Download pimp.zip file from attachment and copy it to your sd card
reboot to recovery and install it
reboot
done.
Good Luck
Thanks
Thanks alot its work for me
Pimp My X10 mini/pro
erfandl said:
Hi Mini lovers
this mod (Script) can improve speed on x10 mini/pro. this script combination of multiple script from PIMP My ROM. Thanks to Androguide.fr
Features:
-Disable I/O Stats: it can increasing the overall I/O speed.
-Scheduler Sysctl Tweaks: Will enhance the behavior of your I/O scheduler to improve I/O performance
-Optimize sqlite3 Database: Defragment all databases at each boot. this will make apps that use db's launch faster
-Ext4 File-System Tweaks: Improve I/O performance on ext4 partition by enabling data_writeback
-Internal Memory I/O Tweaks: Internal Memory will Mount faster, and read/write speed will be increased
-Zipalign all APKs at each boot: Zipaliging will optimize the apps and make them launch and run faster. Increases boot-time
-Disabled Android Logger: Will provide a small performance
Requirements:
Rooted Phone
MiniCM7 - 2.2.1 ROM by nobodyAtall
How to install:
Download pimp.zip file from attachment and copy it to your sd card
reboot to recovery and install it
reboot
done.
Good Luck
Click to expand...
Click to collapse
thanks bro for the script...
Renz29 said:
thanks bro for the script...
Click to expand...
Click to collapse
Task was, bro
thanks.worked fine for me.
Thank you!
Enviado desde mi U20a
Hey Everyone,
I'm by no means a pro at kernel building but I've put lots of effort into this kernel so I thought I'd share it with you. After a very long inner conflict period I've decided to post in the android development forum instead of the original android development. I've included features of my own as well as patches and other features of many other top notch kernel developers. I would prefer if you make your way over to my source (link below) and read the commits so you can get to know them and how they have contributed but alas I not that naive enough to think any of you really would actually go and do that so I've included a nice feature list in post 2 with proper credits (at least for the big stuff).
I am a huge fan of giving you options which is why I build my kernel with multiple toolchains and multiple sound options for you to test out and decide which option you find works best for you.
I also made a Release Folder that contains kernels that do not contain any CPU or GPU overclock to keep things more stable for you. This kernel is built with UBERTC 4.9.4 since I feel like that give the best battery. Choose this option for stability.
I frequently get asked if this kernel works with the many AOSP projects. The answer is YES! I haven't found an AOSP ROM yet that won't boot with this kernel. The only potential issue is that the ROM you flashed this kernel with has modified the ramdisk from stock or doesn't have a root containing sepolicy for Lollipop. Make sure to flash back to a stock ROOTED kernel and then flash UBER. My kernel uses you ramdisk while flashing for great ROM compatibility but sometimes this backfires.
Do not flash on CM or CM-based ROMs! This kernel is not currently compatible with those "CAF-based" ROMs.
WARNING!!! Even though I don't post anything unless it works (in this case on most if not all AOSP ROMs) I still don't want to be liable for user errors. In other words, if you flash one of these Kernels your warranty is void and I AM NOT RESPONSIBLE for any data loss or bricked devices etc.
For more info see this video
[AOSP 5.1 UBER KERNEL LINKS]
Mirror #1: https://s.basketbuild.com/devs/Cl3Kener/HAMMERHEAD/UBER-L/
Mirror #2: https://renderserver.net/browse?path=Cl3Kener/HAMMERHEAD/UBER-L
Mirror #3: uber.oceighty.co/HAMMERHEAD/UBER-L/
If you still want access to Kitkat Kernels Go to:: https://s.basketbuild.com/devs/Cl3Kener/HAMMERHEAD/UBER/
Comprehensive Changelog of Everything (Aka Source Code)
https://github.com/Cl3Kener/UBER-L/commits/master
Code:
[SIZE=4]
[B][SIZE="6"]UBER Changelogs[/SIZE][/B]
[B]10/03/15[/B]
- 3.4.109
- F2FS updates
- Backlight Dimmer from Kitkat Kernel Returns!
- KCAL updates
- Better BFQ/CFQ tunings
[B]09/18/15[/B]
- Enable BFQIO Cgroup
- Merge android-msm-hammerhead-3.4-lollipop-mr1.1 tag (no significant change)
- Remove UBERTC 4.8.5 Kernel and add UBERTC 5.2.1 Faux and Francosound versions
- Update Toolchains to 9/18/15 Snapshot
[B]09/11/15[/B]
- Returned SELinux Toggle to CFG (it was removed on accident)
- 8555f12 lz4: fix system halt at boot kernel on x86_64
- 264f011 Makefile: sort list of defconfig targets in make help output
- 7cc54ca kbuild: remove warning about "make depend"
[B]09/05/15[/B]
- Merge latest F2FS from upstream
- Kernel source bump to 3.4.108
- Update Toolchains to 9/5 (see github.com/UBERTC for details)
- Other misc bug fixes
[B]5/13/15[/B]
6cb9d79 f2fs: fix counting the number of inline_data inodes
f2f065b f2fs: don not re-lookup nat cache with same nid
189ca9c f2fs: remove unneeded f2fs_make_empty declaration
29b6fe9 f2fs: issue discard with finally produced len and minlen
611b6ee f2fs: introduce discard_map for f2fs_trim_fs
55efe4c f2fs: revmove spin_lock for write_orphan_inodes
30a0e33 f2fs: split find_data_page according to specific purposes
aa6141b f2fs: add need_dentry_mark
11a3834 f2fs: fix race on allocating and deallocating a dentry block
9f96171 f2fs: introduce dot and dotdot name check
e37bfdd f2fs: move get_page for gc victims
4dc9fb0 f2fs: add sbi and page pointer in f2fs_io_info
ccd6bae f2fs: add f2fs_may_inline_{data, dentry}
6779a11 f2fs: clean up f2fs_lookup
b60987f f2fs: introduce f2fs_commit_super
21087dc f2fs: add f2fs_map_blocks
36ec73a f2fs: add feature facility in superblock
a907c38 f2fs: move existing definitions into f2fs.h
06efb1d f2fs: add missing version info in superblock
39ee8dd f2fs: fix not to check IS_ERR for null pointer
aa9f5f4 f2fs: make has_fsynced_inode static
8ef6ea8 f2fs: add offset check routine before punch_hole() in f2fs_fallocate()
5cc5ac1 f2fs: use is_valid_blkaddr to verify blkaddr for readability
b5731af f2fs: fix wrong error hanlder in f2fs_follow_link
41a82f9 Revert "f2fs: enhance multi-threads performance"
74e1c0f Defconfig: Use XZ Compression
3296fd2 Defconfig: Use regular gzip compression
9c0a666 ipv4: Missing sk_nulls_node_init() in ping_unhash().
4213a5d SELinux: ss: Fix policy write for ioctl operations
a317da7 seccomp: Replace BUG(!spin_is_locked()) with assert_spin_lock
73d6b2c nf: IDLETIMER: Adds the uid field in the msg
b0064e6 ARM: add documentation for finding start of physical memory
4609cfd ARM: 8294/1: ATAG_DTB_COMPAT: remove the DT workspace's hardcoded 64KB size
40a96c1 ARM: 8191/1: decompressor: ensure I-side picks up relocated code
f53b231 ARM: compressed/head.S: remove s3c24xx special case
950e423 hashtable: introduce a small and naive hashtable
bd0707b lib/lz4: Pull out constant tables
666f751 SELinux: use deletion-safe iterator to free list
057b63c SELinux: per-command whitelisting of ioctls
e979523 security: lsm_audit: add ioctl specific auditing
b813589 SELinux: Update policy version to support constraints info
d464f89 SELinux: add default_type statements
6be5d3b SELinux: allow default source/target selectors for user/role/range
9529eb0 selinux: add SOCK_DIAG_BY_FAMILY to the list of netlink message types
efff44c selinux/nlmsg: add XFRM_MSG_MAPPING
d1d6e3b selinux/nlmsg: add XFRM_MSG_MIGRATE
1c24c4a selinux/nlmsg: add XFRM_MSG_REPORT
19bf436 selinux/nlmsg: add XFRM_MSG_[NEW|GET]SADINFO
bb0858e selinux/nlmsg: add XFRM_MSG_GETSPDINFO
cfe7f96 selinux/nlmsg: add XFRM_MSG_NEWSPDINFO
27c0a2f pstore: selinux: add security in-core xattr support for pstore and debugfs
7380a43 f2fs:sync with upstream branch
b0afd9f VFS: Make more complete truncate operation available to CacheFiles
[B]4/24/15[/B]
129daf9 Revert "usb-storage/SCSI: blacklist FUA on JMicron 152d:2566 USB-SATA controller"
41003d9 Linux 3.4.107
5af9f19 PCI: Handle read-only BARs on AMD CS553x devices
b167462 lib/checksum.c: fix build for generic csum_tcpudp_nofold
0f3307a mm: fix anon_vma->degree underflow in anon_vma endless growing prevention
419bc8f net: compat: Update get_compat_msghdr() to match copy_msghdr_from_user() behaviour
e370ccd nilfs2: fix deadlock of segment constructor during recovery
26c0d38 spi: dw: revisit FIFO size detection again
79940b6 ntp: Fixup adjtimex freq validation on 32-bit systems
6a5e559 s390/3215: fix tty output containing tabs
84630a5 x86, cpu, amd: Add workaround for family 16h, erratum 793
fc431d8 fsnotify: next_i is freed during fsnotify_unmount_inodes.
c7d8a3b net:socket: set msg_namelen to 0 if msg_name is passed as NULL in msghdr struct from userland.
7fbd1ca sched/rt: Reduce rq lock contention by eliminating locking of non-feasible target
cf11b56 Bluetooth: ath3k: workaround the compatibility issue with xHCI controller
53b3052 staging: comedi: cb_pcidas64: fix incorrect AI range code handling
99ce0af ipvs: rerouting to local clients is not needed anymore
294b66d jfs: fix readdir regression
dd3ef12 pagemap: do not leak physical addresses to non-privileged userspace
418605d Drivers: hv: vmbus: incorrect device name is printed when child device is unregistered
1f833bc nilfs2: fix deadlock of segment constructor over I_SYNC flag
bad8e6c ASoC: sgtl5000: add delay before first I2C access
d481c9e net: sctp: fix passing wrong parameter header to param_type2af in sctp_process_param
faca147 net: sctp: fix NULL pointer dereference in af->from_addr_param on malformed packet
27fb1ba gpio: sysfs: fix memory leak in gpiod_sysfs_set_active_low
407e221 gpio: sysfs: fix memory leak in gpiod_export_link
b9c0ed3a MIPS: Fix kernel lockup or crash after CPU offline/online
383e2c7 caif: remove wrong dev_net_set() call
0a533c8 lib/checksum.c: fix carry in csum_tcpudp_nofold
a096ac4 ALSA: ak411x: Fix stall in work callback
2c43d74 ASoC: atmel_ssc_dai: fix start event for I2S mode
93625b6 MIPS: IRQ: Fix disable_irq on CPU IRQs
b8efe516 x86, mm/ASLR: Fix stack randomization on 64-bit systems
666b625 net: sctp: fix skb_over_panic when receiving malformed ASCONF chunks
af58a41f net: sctp: fix panic on duplicate ASCONF chunks
61294cb vm: make stack guard page errors return VM_FAULT_SIGSEGV rather than SIGBUS
dd37b66 vm: add VM_FAULT_SIGSEGV handling support
31eae22 ipv6: replacing a rt6_info needs to purge possible propagated rt6_infos too
afd1787 net: sctp: fix slab corruption from use after free on INIT collisions
7e346ae ALSA: seq-dummy: remove deadlock-causing events on close
1cc70a9 drm/i915: Only fence tiled region of object.
dbabba0 USB: Add OTG PET device to TPL
32a4cb1 usb-core bInterval quirk
c3dbb4a usb-storage/SCSI: blacklist FUA on JMicron 152d:2566 USB-SATA controller
3e2ff0a nl80211: fix per-station group key get/del and memory leak
9048158 powerpc/xmon: Fix another endiannes issue in RTAS call from xmon
284dbe8 regulator: core: fix race condition in regulator_put()
73b7a4a ASoC: wm8960: Fix capture sample rate from 11250 to 11025
7477cfd spi: dw-mid: fix FIFO size
625dac0 spi: dw: Fix detecting FIFO depth
09089c8 x86, hyperv: Mark the Hyper-V clocksource as being continuous
884c3b1 libata: prevent HSM state change race between ISR and PIO
c5e388a scripts/recordmcount.pl: There is no -m32 gcc option on Super-H anymore
5804da9 libata: allow sata_sil24 to opt-out of tag ordered submission
208d3e5 ALSA: usb-audio: Add mic volume fix quirk for Logitech Webcam C210
33033f8 gpio: sysfs: fix gpio attribute-creation race
cc46bd9 gpio: sysfs: fix gpio device-attribute leak
01ae018 gpiolib: Refactor gpio_export
66f9bf0 gpio: sysfs: fix gpio-chip device-attribute leak
391bbd9 driver core: Introduce device_create_groups
b295f4b sysfs.h: add ATTRIBUTE_GROUPS() macro
d350632 can: dev: fix crtlmode_supported check
685bcb9 ftrace/jprobes/x86: Fix conflict between jprobes and function graph tracing
4f338c7 gpio: fix memory and reference leaks in gpiochip_add error path
67fbd53 mm: fix corner case in anon_vma endless growing prevention
6255515 mm: Don't count the stack guard page towards RLIMIT_STACK
b7bd760 USB: console: fix potential use after free
5e3c147 OHCI: add a quirk for ULi M5237 blocking on reset
e5b68b3 HID: roccat: potential out of bounds in pyra_sysfs_write_settings()
b5f80db mm: protect set_page_dirty() from ongoing truncation
9e2a7ed mm: prevent endless growth of anon_vma hierarchy
cc4a897 mac80211: fix multicast LED blinking and counter
1b6398d Input: I8042 - add Acer Aspire 7738 to the nomux list
d4211e2 Input: i8042 - reset keyboard to fix Elantech touchpad detection
ab8f85c time: adjtimex: Validate the ADJ_FREQUENCY values
e9dbd12 time: settimeofday: Validate the values of tv from user
6973163 sata_dwc_460ex: fix resource leak on error path
c463826 mm: propagate error from stack expansion even for guard page
70946fb USB: cp210x: add IDs for CEL USB sticks and MeshWorks devices
c8eb987 virtio_pci: document why we defer kfree
7586079 virtio_pci: defer kfree until release callback
be42ade virtio: use dev_to_virtio wrapper in virtio
86f0a0b ALSA: hda - Fix wrong gpio_dir & gpio_mask hint setups for IDT/STAC codecs
436f6e5 x86, um: actually mark system call tables readonly
a1c9f2c USB: cp210x: fix ID for production CEL MeshConnect USB Stick
536d010 video/logo: prevent use of logos after they have been freed
4b2d8f9 net: Fix stacked vlan offload features computation
9f9e0eb crypto: af_alg - fix backlog handling
8714253 udf: Check component length before reading it
e8ccb36 x86_64, vdso: Fix the vdso address randomization algorithm
381e190 udf: Check path length when reading symlink
a1d9cdb udf: Verify symlink size before loading it
5e5b0ad udf: Verify i_size when loading inode
aa4a4d8 isofs: Fix unchecked printing of ER records
2beaf0f ocfs2: fix journal commit deadlock
47d92db ALSA: usb-audio: extend KEF X300A FU 10 tweak to Arcam rPAC
c0f882a iscsi-target: Fail connection on short sendmsg writes
5bf2cf1 isofs: Fix infinite looping over CE entries
b43f5a7 storvsc: ring buffer failures may result in I/O freeze
0171dc6 x86/tls: Don't validate lm in set_thread_area() after all
fe0e500 x86/tls: Disallow unusual TLS segments
ccbdf10 genirq: Prevent proc race against freeing of irq descriptors
070cfb0 x86_64, switch_to(): Load TLS descriptors before switching DS and ES
3b6254d ncpfs: return proper error from NCP_IOC_SETROOT ioctl
1f8e97d Btrfs: fix fs corruption on transaction abort if device supports discard
ee88360 KEYS: Fix stale key registration at error path
d33fb04 ALSA: usb-audio: Don't resubmit pending URBs at MIDI error recovery
218ba26 can: peak_usb: fix cleanup sequence order in case of error during init
583aecd can: peak_usb: fix memset() usage
fdfce29 drm/radeon: check the right ring in radeon_evict_flags()
f712352 hp_accel: Add support for HP ZBook 15
e03e5f4 drm/vmwgfx: Fix fence event code
313249d drm/vmwgfx: Don't use memory accounting for kernel-side fence objects
b78be84 iommu/vt-d: Fix an off-by-one bug in __domain_mapping()
59075a8 ath5k: fix hardware queue index assignment
ec453d0 ath9k: fix BE/BK queue order
1e4f9ee ath9k_hw: fix hardware queue allocation
b0003ef serial: samsung: wait for transfer completion before clock disable
f703d74 mfd: tc6393xb: Fail ohci suspend if full state restore is required
ff130a1 USB: cdc-acm: check for valid interfaces
1f9db86 cdc-acm: memory leak in error case
52f7ea1 megaraid_sas: corrected return of wait_event from abort frame path
3c1b66b ASoC: sigmadsp: Refuse to load firmware files with a non-supported version
566423d genhd: check for int overflow in disk_expand_part_tbl()
9a95a6f scsi: correct return values for .eh_abort_handler implementations
e97273c PCI: Restore detection of read-only BARs
2c41cbd drbd: merge_bvec_fn: properly remap bvm->bi_bdev
482d22e driver core: Fix unbalanced device reference in drivers_probe
8ca5f89 UBI: Fix invalid vfree()
2f3b2e1 usb: renesas_usbhs: gadget: fix NULL pointer dereference in ep_disable()
7a2d438 writeback: fix a subtle race condition in I_DIRTY clearing
347ac8b writeback: Move I_DIRTY_PAGES handling
62f5128 eCryptfs: Force RO mount when encrypted view is enabled
bba4bdb i2c: davinci: generate STP always when NACK is received
1b231ad ahci: disable MSI on SAMSUNG 0xa800 SSD
2575c22 ahci: disable MSI instead of NCQ on Samsung pci-e SSDs on macbooks
9219bb3 ahci: disable NCQ on Samsung pci-e SSDs on macbooks
badcbca mm: fix swapoff hang after page migration and fork
81d169a drm/radeon: kernel panic in drm_calc_vbltimestamp_from_scanoutpos with 3.18.0-rc6
90f3dfb sata_fsl: fix error handling of irq_of_parse_and_map
f1c27d0 AHCI: Add DeviceIDs for Sunrise Point-LP SATA controller
e8fb016 drm/i915: Unlock panel even when LVDS is disabled
f67a7bb powerpc/pseries: Fix endiannes issue in RTAS call from xmon
0f0a13e Input: xpad - use proper endpoint type
9ac30f5 usb-quirks: Add reset-resume quirk for MS Wireless Laser Mouse 6000
77ff742 MIPS: Loongson: Make platform serial setup always built-in.
b17289a ALSA: hda - Limit 40bit DMA for AMD HDMI controllers
2568455 usb: xhci: rework root port wake bits if controller isn't allowed to wakeup
1b7b64f USB: xhci: Reset a halted endpoint immediately when we encounter a stall.
52647cb USB: xhci: don't start a halted endpoint before its new dequeue is set
b4205de ARM: 8216/1: xscale: correct auxiliary register in suspend/resume
71a57fa bnx2fc: do not add shared skbs to the fcoe_rx_list
f29bef1 nfsd: Fix slot wake up race in the nfsv4.1 callback code
bc8a39f SUNRPC: Fix locking around callback channel reply receive
496ed1e USB: ssu100: fix overrun-error reporting
454e251 USB: keyspan: fix overrun-error reporting
b80b73b USB: keyspan: fix tty line-status reporting
6327481 usb: serial: ftdi_sio: add PIDs for Matrix Orbital products
54e74b3 iio: Fix IIO_EVENT_CODE_EXTRACT_DIR bit mask
7170965 USB: serial: cp210x: add IDs for CEL MeshConnect USB Stick
cd571b4 spi: dw: Fix dynamic speed change.
a50a1ca f2fs: flush symlink path to avoid broken symlink after POR
4b73e2d f2fs: avoid abnormal behavior on broken symlink
edfd750 f2fs: change 0 to false for bool type
78760c3 Support GCC 6.0
317bb9d LZ4 : fix the data abort issue
be937e1 crypto: sha512 - Expose generic sha512 routine to be callable from other modules
077393f crypto: add crypto_[un]register_shashes for [un]registering multiple shash entries at once
db7f9b3 ARM: add support for kernel mode NEON
fe0a05a ARM: 7837/3: fix Thumb-2 bug in AES assembler code
99c2444 ARM: 7626/1: arm/crypto: Make asm SHA-1 and AES code Thumb-2 compatible
d060373 ARM: add .gitignore entry for sha256-core.S
2511498 arm: crypto: Add optimized SHA-256/224
7f6ad8f crypto: arm/aes update NEON AES module to latest OpenSSL version
bfeb2f7 vfs: make it possible to access the dentry hash/len as one 64-bit entry
ca8a95e vfs: move dentry name length comparison from dentry_cmp() into callers
a0848829 vfs: do the careful dentry name access for all dentry_cmp cases
2387abd vfs: remove unnecessary d_unhashed() check from __d_lookup_rcu
587ae11 vfs: clean up __d_lookup_rcu() and dentry_cmp() interfaces
700622d f2fs: avoid punch_hole overhead when releasing volatile data
b97d018 f2fs: do not recover wrong data index
1444e0f f2fs: do not increase link count during recovery
94a1fbe f2fs: assign parent's i_mode for empty dir
34bce52 f2fs: add F2FS_INLINE_DOTS to recover missing dot dentries
[B]4/04/15[/B]
eb3042e f2fs: fix mismatching lock and unlock pages for roll-forward recovery
63803ca f2fs: limit b_size of mapped bh in f2fs_map_bh
aa01503 msm: mdss: KCAL: Update Kconfig description
d220216 Revert "msm: mdss: KCAL: Check panel power state before applying values"
2ca0f0e crypto: msm: Update clock vote for improved performance
3c0c2ca msm: mdss: KCAL: Update according to linux guidelines and checkpatch.pl
03049a3 msm: mdss: KCAL: Check panel power state before applying values
2c6b7f2 soc: qcom: smd: Fix SMD packet sync loss issue
ed728c1 vfs: read file_handle only once in handle_to_path
2ac20db mm: Fix NULL pointer dereference in madvise(MADV_WILLNEED) support
f86c2e1 f2fs: persist system.advise into on-disk inode
4ebe176 f2fs: avoid NULL pointer dereference in f2fs_xattr_advise_get
eae07f7 f2fs: preallocate fallocated blocks for direct IO
54b3e53 f2fs: enable inline data by default
3778d5c f2fs: preserve extent info for extent cache
9eae818 f2fs: initialize extent tree with on-disk extent info of inode
270d9bf f2fs: introduce __{find,grab}_extent_tree
4d1d685 f2fs: split set_data_blkaddr from f2fs_update_extent_cache
e593abe f2fs: enable fast symlink by utilizing inline data
f545fdf f2fs: add some tracepoints to debug volatile and atomic writes
bab1b76 f2fs: set SBI_NEED_FSCK when encountering exception in recovery
77a1d2e f2fs: avoid wrong f2fs_bug_on when truncating inline_data
e131be1 f2fs: enhance multi-threads performance
3f434ce f2fs: set buffer_new when new blocks are allocated
dc04eca f2fs: fix to cover sentry_lock for block allocation
e6f5b86 f2fs: fix to check current blkaddr in __allocate_data_blocks
b341170 f2fs: fix to truncate inline data past EOF
0f7c2b2 f2fs: fix to calculate max length of contiguous free slots correctly
8b45aaf f2fs: fix unlocked nat set cache operation
2d99836 f2fs: cleanup statement about max orphan inodes calc
276e1f8 f2fs: remove unnecessary condition judgment
fb7e065 f2fs: set the correct place of initializing *res_page
e00264c f2fs: reduce searching region of segmap when set free section
7496d83 f2fs: fix extent cache memory leak
fc94db1 f2fs: relocate Kconfig from misc filesystems
798a549 f2fs: Update for AIO_OPTIMIZATION
0862871 F2FS: Small Fixup
9da735d xfs: introduce a generic shutdown ioctl
0fef042 Update F2FS to Latest
5d05017 Revert "FS: import F2FS"
c7823f7 Revert "Update F2FS"
fbe2f98 Revert "f2fs: fix wrong statistics of inline data"
b894aa8 Revert "F2FS: Update Inode Compatibility"
011f5f3 Revert "f2fs: Fix Compile"
675bc72 ARM: 8160/1: drop warning about return_address not using unwind tables
6a61897 ARM: 8158/1: LLVMLinux: use static inline in ARM ftrace.h
937edd7 gpu:msm: Fix 5.0 compile
7f8067a msm: mdss: Keep KCAL within its own source file [Squashed]
99b7d5b Revert KCAL bits in prepration for update
[B]3/20/15[/B]
- Merge 5.1 Kernel Sources
[B]3/06/15[/B]
18c1482 mmc: Do not build tests
564473b diag: Make fixes to diag_switch_logging
a4a108b Readahead: Optimize divide/multiply by power of 2 using L/R shift
ab96dc0 eCryptfs: Remove buggy and unnecessary write in file name decode routine
5c1fc3f mmc: core: Silence log spam
[B]2/28/15[/B]
- Merged latest Color Drivers for N5 (neobuddy)
- Changed Toolchains from SaberMod (Now partially closed source so that you cannot build for yourself anymore) to an AOSP-based open source toolchain called UBERTC. Many patches from Linaro have been included in source and also some GCC build fix patches from SaberMod to allow for the latest toolchain components. All sources are GPL and can be found [URL="https://github.com/UBERTC/"]https://github.com/UBERTC/[/URL]. New toolchains have less of a tendency to lag in scrolling and other screen transitions in comparison to SaberMod and I think are better suited for UBER.
[B]01/31/15[/B]
- Merged 3.4.106
- Bugfix: Small Potential Memory Leak
[B]01/31/15[/B]
dcd2770 memory hotplug: reset pgdat->kswapd to NULL if creating kernel thread fails
4028fbb memcg: further prevent OOM with too many dirty pages
86aa61a memcg: prevent OOM with too many dirty pages
04848e5 kernel: cgroup: push rcu read locking from css_is_ancestor() to callsite
fed88ee mm: vmscan: remove reclaim_mode_t
28907d4 mm: vmscan: do not stall on writeback during memory compaction
fdc5efe mm: vmscan: remove lumpy reclaim
ecb6e1a mm: remove swap token code
3786e5f sched: Fix reference to stale task_struct in try_to_wake_up()
6ced785 KEYS: close race between key lookup and freeing
3604d7d ARM: pull in <asm/simd.h> from asm-generic
c48e1eb msm: watchdog_v2: Print IRQ during bark
4e46170 ASoC: msm: qdsp6v2: Silence some noise
5466e82 net: wireless: bcmdhd: Silence some unnessecary noise
c726ad0 netfilter: x_tables: Silence some debug info
bd23093 Defconfig: Remove lots of Debugging
5cfb502 Makefile: Make more consistent
ba54a8f Makefile: -O3 instead
1cc151d Makefile: Disable annoying warnings
c8fe6d2 Makefile: Rethink flags and ordering
d5d8089 Makefile: Add -floop-nest-optimize everywhere
d55d009 block: Tune SIO and remove dead code/white spaces
f11eac5 Makefile: Try floop-nest-optimize
[/SIZE]
If you are unsatisfied with UBER you can uninstall it. Here is the link to the uninstaller http://d-h.st/y1k
Features
Code:
* Based upon Google's msm 3.4.y source for Hammerhead
* Updated to 3.4.109 from Kernel.org
* MultiROM Compatible (has Kexec patch)
* Compatible with Stock as well as AOSP projects (CAF-based do not work sorry CM fans, CAF-kernel is just not as stable and battery friendly imao so I'll stay AOSP for now). If it doesn't work on a ROM let me know!!!
* CPU Governors added: Intellidemand, Intelliactive, Adaptive, Lionheart, AbyssplugV2, Ondemandplus, Badass, Wheatley, Hyper, Lazy, PegasusQ, Nightmare, DanceDance, Darkness, Slim, Intellimm, Optimax. and Uberdemand
* GPU Governors: Performance, Ondemand, and Interactive (Franco)
* IO Schedulers: Noop, Deadline, VR, SIO, ROW, CFQ, BFQ, FIOPS, FIFO, ZEN and Tripndroid
* Compiled with Custom Linaro ARM EABI 4.9.3 toolchains (Cl3Kener) (see https://github.com/UBERTC/)
* Compiled with Custom Linaro GNUEABI 4.9.3 (Christopher83)
* Compiled with Custom UBERTC 4.9.3/5.2.1 (Cl3Kener) (see https://github.com/UBERTC/)
* -Ofast optimized with neon and graphite enhancements (Cl3Kener)
* Linaro compiler flags for greater optimization build wide (Cl3Kener)
* Snapdragon & CortexA15 optimizations (Tons of Contributors)
* Non-Stock Hotplug and Thermal regulator (from showp1984)
* Touch Boost - Showp1984 (comes with hotplug)
* GPU OverClock up to 650 MHz (27 MHz is still default idle with lowest frequency being underclocked to 100 MHz) (Cl3Kener)
* Allow CPU OverClock up to 3.0 Ghz (Cl3Kener)
* Allow CPU UnderClock to 96Mhz (showp1984 implementation)
* L2 Cache OverClock (flar2)
* Ramdisk Edits on the fly for greater compatibility. (Strongly based on Showp1984 implement)
* Undervolting Control (Franco)
* LZ4 support implemented kernel wide - fastest compression/decompression available (Cl3Kener)
* Google Snappy Compression/Decompression support (just in case you want it)
* XZ Compression to latest 3.17.y (Cl3Kener)
* KSM (Kernel Samepage Merging)
* Faux Sound (Faux123)
* Franco Sound (Franco)
* Sweep2Wake, Sweep2Sleep, Double Tap 2 Wake (Showp1984 with Faux123 verticle s2w support and flar2 dt2w enhancements)
* Powerkey suspend for S2W/DT2W (Flar2 version)
* Wake timeout for S2W/DT2W/ (Flar2)
* Dynamic and Asynchronous Fsync (Faux123)
* USB Fast Charge with many voltage options (Faux123)
* Gamma Control (Various Contributers)
* Color Control (savoca)
* Fstrim (reduces lag see more: http://man7.org/linux/man-pages/man8/fstrim.8.html)
* ExFat Support (you'll need to load it via this init.d https://www.dropbox.com/s/tfm8k9vmskuhs4v/loadexfat) Updated to latest version (Neobuddy)
* Low Memory Killer - Many patches from Neobuddy
* Zram support upstreamed to 3.17.y branch (Cl3Kener)
* Zram supports lz4 compression now (kernel.org)
* Zcache, and Cleancache support updated to 3.14.y (Cl3Kener)
* BLX - Battery Life Extender (See here http://forum.xda-developers.com/nexus-s/development/mod-battery-life-extender-blx-t1257497) Ported by Ayysir to msm8974 devices
* F2FS file system support from Samsung
* Mount internal storage as CDROM (Frozen Cow)
* Advanced TCP Congestion Options (Veno as default, all 12 from http://kernel.org)
* Stereo Call Recording Support
* Uber.cfg for tuning kernel thanks to @janres155 & @Williamsss
* Many patches to improve various parts of the kernel (see source)
* Full Source including defconfig is available for you use/learn from. (Not a feature but I feel it is important that my source is complete so you can build directly from it if you want to learn and experiment)
JOIN MY DEVELOPMENT COMMUNITY ON GOOGLE PLUS (CLICK LINK) Come join for more fun! I've got some tutorials, ROMs, and other things I share with community members and well.
Installation Instructions
1. For best results a install these kernel after a fresh ROM install (although it still should work if you don't do that)
2. Reboot into recovery (TWRP 2.8+ or compatible recovery)
3. Flash Kernel Zip
4. Reboot and let Settle for ~10 minutes (optional but recommended)
5. Navigate to system/etc/uber_v1.3.cfg using your favorite root file browser and change values based on descriptions to whatever you want.
6. Enjoy!!!
Note: In Android Lollipop while Superuser kinks are still being worked out you may need to reflash root after you flash kernel.
CREDITS & SPECIAL THANKS TO:
Dennis Rassmann - for all of his kernel work. I'm in love with all of his features and you'll find them all in my kernel.
Ayysir - for his wonderful tutorial on making a bash script to build kernels.
Other great kernel devs Francisco Franco, Faux123, Flar2, Neobuddy89, FrozenCow, Christopher83, Savoca, Hellsgod and any other mentioned in the above feature list or changelog - I cherry-pick work of all of the kernel greats!
Google - for kernel base and Android Open Source Project!
Linaro - for some really great toolchain patches!
Code Aurora Forum (CAF) - for some really great kernel patches!
Gnu.org - for always improving the C Compiler for better made code!!!
SaberMod - for making patches to fix any errors in GCC code!
LG - for manufacturing this awesome phone!
UBER Kernel sources can be found at https://github.com/Cl3Kener/UBER-L
Toolchain Sources can be found at https://github.com/UBERTC/
Config Sources can be found at https://github.com/wSedlacek/cfg
Informational Links
Comprehensive Guide to Android Development
Here is a fantastic guide on "Innards" of Kernels
Building a Bash Script to make Kernels
XDA:DevDB Information
[KERNEL][3.4.109][10/03/15] UBER-L | LINARO & UBERTC 4.9.4 -O3 Graphite F2FS, Kernel for the Google Nexus 5
Contributors
Cl3Kener
Source Code: https://github.com/Cl3Kener/UBER-L
Kernel Special Features:
Version Information
Status: Stable
Created 2014-01-27
Last Updated 2015-12-01
Solutions/Ideas to the Most Common Issues
I cannot seem to flash UBER Kernel why is that? Some ROMs come with these build.prop lines which are unacceptable to TWRP but work fine as far as the ROM goes. You will have to remove these lines from the build.prop for it to flash.
dalvik.vm.dex2oat-flags "--compiler-filter=interpret-only"
dalvik.vm.image-dex2oat-flags ""After you have installed the kernel you can re-add these lines to your build.prop. If you don't have these lines in your build.prop it is most likely a bad download.
I have RRs with this kernel but not with others, why is that? I have undervolted some other kernel features besides the cpu that you cannot change to save you battery. On some N5s (since not all are created equal) you may actually have to increase voltages on cpu or else you keep getting RRs. Try +25 across CPUs and see if that fixes your RRs. If not keep going down the list.
Having issues with Undervolting? The chief complaint about this kernel is that "I can't uV as much as I can with other kernels." I have undervolted other kernel features (ie cpu regulators) that you cannot change to save you battery. This makes it hard for you to uV the cpu voltages as far but rest assure you'll still be getting better battery for it. Also, be aware that undervolting is a little dangerous in this kernel because of the potential of data loss when dynamic fsync is enabled. If you do decide to undervolt make a backup first so when your phone crashes you can restore. Also be aware that most of the logs ending in wdog_reset are caused by too much uV so before you post a log that ends in wdog_reset please stop undervolting first to see if the RRs persist. Below -25 uV seems to be the point where most users experience issues. Also keep in mind that voltage is important in benchmarking. Many people are benchmarking at incorrect voltages for their devices. I have to add +25 mV to all values so that it doesn't RR during benchmark. Each phone is a little different so some of you may be fine as is and some of you may need to go +50 mV or even potentially more. You'll have to experiment to see where your phone's "sweet spot" is. I again recommend also disabling Dynamic Fsync until you have figured out where that sweet spot is to prevent data loss.
Why am I having issues with ROMs on MultiROM? From my experiences, Custom Kernels and MultiROM have always not played well together. Flashing a custom kernel on Internal ROM has never been an issue you try and flash a custom kernel on ROMs 2-whatever you have weird permission issues which can cause all sorts of problems for you (apps crashing, RRs, loss of root, etc). This is probably why the kernel sharing feature was added which is good but has it's own set of problems when using UBER. (See post directly below) To reiterate, this is not a bug in UBER or MultiROM just a slight incompatibility between the two we have to overcome by hand.
UBER works fine on Internal ROM but has issues on ROMs 2 and beyond when using MultiROM and sharing UBER why is this? UBER is not specifically geared for use in MultiROM, not because I don't like multiROM but simply because of Uber's nature. UBER uses showp1984's custom msm_mpdecision and thermal which conflict with proprietary mpdecision and thermal regulators and cause RRs if these files are present. During normal kernel flash these files are renamed and don't conflict with UBER. When you share this kernel during ROMs 2 and beyond can still be used safely if you know what you're doing. In order to allow ROMs 2, 3, and beyond to share the kernel you must delete N5 proprietary files found at system/bin/mpdecision and system/bin/thermal-engine-hh when running those ROMs. It is a fairly easy process, just install a Root File Browser, locate then, and delete. Normally in kernel flashing process I rename those files to mpdecision_bck and thermanl-engine-hh_bck for you so you never have to see or worry about them. If you use Sharing Feature on MultiROM you'll have to deal with these yourself. I apologize for this inconvenience but there is nothing I can do from my end. Flashing UBER on ROM 2 breaks it and sharing has problems until you remove these two files.
Why are certain apps crashing on me? Most likely it is due to Frandom. I have implemented Frandom by default in this kernel and to my knowledge I'm the only developer that does that by default. Some apps or mods may not be frandom compatible. Most are 100% compatible but not all. If you notice programs stop opening or are having constant reboots try removing 00_frandom from the init.d folder and reboot. I think for stable releases which I plan on posting on XDA this weekend I will not have frandom implemented by default but in nightlies it will always be implemented. Also if you keep having random reboots this is something to try as well.
Not booting? Maybe you have Ramdisk Incompatibility. This kernel uses your ramdisk. Most of the time that works well. Sometimes it does not. Make sure to flash http://goo.im/devs/Cl3Kener/HAMMERHEAD/KERNELS//STOCK-BOOT_IMAGE-4.4.3.zip and try again if it doesn't boot. If it still doesn't boot make sure to verify that it is not CAF. Some ROMs fail to mention they are CAF-based but they really are.
My phone crashed once during benchmarking or for no apparent reason and now keeps randomly rebooting. My guess is you have Data Corruption. If you crash your phone out benchmarking or have a frandom related RR and you still keep getting RRs you might have data corruption. This usually happens when you have Dynamic Fsync enabled because Fsync is disabled when screen is on. When testing I crash my phone all of the time and apps and things get messed up. Having a backup is good but if you don't want to waste time backing up all of the time you can salvage things still. Here is what I do when I've crashed the phone and continue to get soft reboots: 1) I install SD Maid from the Google Play store. (I have pro version so I can clean more but free version should work well enough) 2) I use SD Maid to clean all of the app data. (don't worry it is smart enough to not loose your passwords so you won't have to resign into your apps) Then I download ROM Manager by Koush. I don't actually use ROM Manager I just think it has the best permissions fixing feature of any app I've tried (including recoveries). I select the option Fix Permissions toward the bottom of the free version. It then prompts a reboot and then I reboot and life is good again.
I have battery drain when nobody else does.... help!!! Install a wakelock detector and figure out what is keeping your CPU awake. If it's an app. Fix permissions, clear app data, reinstall app, disable app, etc. until is stops having issues.
Still have problems? Search my Google+ community in the questions category. If you don't find anything see below:
ERROR REPORTING
I am always open to hearing about your errors although just telling me something went wrong without giving me details does me absolutely no good. So here are my expectations if you do want to complain about something not working:
1. Please list the ROM you are using,
2. The IO scheduler you were using
3. The CPU governor you were using
4. The CPU frequency range
5. What you have done to attempt to fix it.
6. If you were able to simulate it again using the same settings.
7. Anything else you think is applicable to the issue
I would also hope that you would consider trying some of the following things to fix your issue before you ever report it because most of these things will fix the problem without me even having to change a thing.
1) Fix file permissions using a program that does a thorough job. I recommend using the fix file permissions in ROM manager because it is the best I’ve seen. For the record, I don’t actually use ROM manager for anything other than fixing permissions. Please consider trying this first because it tends to fix most of the FC/RR/SOD errors you might have.
2) Make a backup and install a clean version of the ROM you are running and see if you are still experiencing those same errors. You may have corrupted files if you’ve been dirty flashing.
3) If that doesn’t solve it, redownload and reflash, maybe something got corrupted but it still managed to flash. This happens sometimes and I can cause you grief.
4) Pull a logcat. MAKE SURE TO DISABLE DYNAMIC FSYNC BEFORE LOGGING!!! LEAVING IT ENABLED WILL CORRUPT YOUR LOG!I know not everyone knows how to do this but you can learn if you check out this OP or if you aren't comfortable with using terminal commands to pull a log just install Bootlog Uptime and set it up to autocopy log on RR. Opening the program after crash will autocopy your log and you send it to me.
QUICK GUIDE TO TUNING YOUR KERNEL
Thanks to the uber.cfg you no longer need to tune manually because you have the following already in the kernel:
1. BOOT SETTINGS
1.1 KERNEL SWITCH
1.2 GRACE TIME
1.3 WAIT TIMERS
1.4 FILE SYSTEM TRIM
2. CPU SETTINGS
2.1 CPU SETTINGS SWITCH
2.2 CPU FREQUENCY SCALING
2.2.1 CPU FREQUENCY SCALING SWITCH
2.2.2 CPU MAX FREQUENCY
2.2.3 CPU MIN FREQUENCY
2.3 CPU GOVERNOR
2.3.1 CPU GOVERNOR SWITCH
2.3.2 CPU GOVERNORS
2.4 CPU MULTICORE POWER SAVING
3. CPU VOLTAGE SETTINGS
4. HOTPLUG SETTINGS
4.1 MPDECISION SWITCH
4.1.1 MPDECISION SCREEN-OFF MAX FREQUENCY
4.1.2 MPDECISION SCREEN-OFF SINGLE CORE
4.1.3 MPDECISION TOUCHBOOST
4.1.4 MPDECISION MIN CPUS
4.1.5 MPDECISION MAX CPUS
4.1.6 MPDECISION HOTPLUG CONTROL
4.1.7 MPDECISION UNPLUG CONTROL
5. I/O SETTINGS
5.1 I/O SCHEDULER
5.2 I/O READ SPEED
5.3 I/O READ SPEED FOR SD CARD
6. GPU SETTINGS
6.1 GPU SETTINGS SWITCH
6.2 GPU FREQUENCY SCALING
6.2.1 GPU MAX FREQUENCY
6.2.2 GPU MIN FREQUENCY
6.3 GPU GOVERNOR
6.3.1 GPU GOVERNORS
6.3.2 GPU UP THRESHOLD
6.3.3 GPU DOWN THRESHOLD
7. GAMMA SETTINGS
7.1 GAMMA PRESET
7.2 BACKLIGHT DIMMER
7.2.1 BACKLIGHT DIMMER SWITCH
7.2.2 MINIMUM BRIGHTNESS
8. SOUND SETTINGS
8.1 SOUND ENGINE
8.2 FRANCO SOUND SETTINGS
8.2.1 FRANCO MIC INPUT LEVEL
8.2.2 FRANCO CALL OUTPUT LEVEL
8.2.3 FRANCO SPEAKER OUTPUT LEVEL
8.2.4 FRANCO HEADPHONE OUTPUT LEVEL
8.3 FAUX SOUND SETTINGS
8.3.1 FAUX MIC INPUT LEVEL
8.3.2 FAUX MIC INPUT LEVEL FOR CAM
8.3.3 FAUX SPEAKER OUTPUT LEVEL
8.3.4 FAUX HEADPHONE OUTPUT LEVEL
8.3.5 FAUX POWER AMP LEVEL
8.3.6 FAUX LOCK
9. MEMORY SETTINGS
9.1 ZRAM SETTINGS
9.1.1 ZRAM SWITCH
9.1.2 ZRAM COMPRESSION
9.1.3 ZRAM DISK SIZE (MB)
9.2 VIRTUAL MACHINE SETTINGS
9.2.1 SWAPPINESS
9.2.2 DIRTY RATIO
9.2.3 DIRTY BACKGROUND RATIO
9.2.4 DROP CACHES
9.2.5 FS WRITEBACK DELAY MODE
9.3 KERNEL SAMEPAGE MERGING
10. WAKE SETTINGS
10.1 WAKE CONTROL SWITCH
10.2 DOUBLE TAP TO WAKE
10.3 SWEEP TO WAKE/SLEEP
10.4 POWERKEY SUSPEND
10.5 WAKE TIMEOUT
11. MISCELLANEOUS SETTINGS
11.1 TCP CONGESTION CONTROL
11.2 DYNAMIC FSYNC
11.3 POWER SUSPEND
11.4 VIBRATION INTENSITY
11.5 USB FAST CHARGE
11.5.1 FAST CHARGE SWITCH
11.5.2 FAST CHARGE LEVEL
11.6 BATTERY LIFE EXTENDER
12. MODULES
12.1 FRANDOM
12.2 EXFAT
I still left these commands for people that like to see them anyways:
Set Color Profiles
See here http://forum.xda-developers.com/showpost.php?p=52926016&postcount=866
Dynamic Fsync
To enable - echo 1 > /sys/kernel/dyn_fsync/Dyn_fsync_active
To disable - echo 0 > /sys/kernel/dyn_fsync/Dyn_fsync_active
KSM (Kernel Samepage Merging)
To enable - echo "1" > /sys/kernel/mm/ksm/run
To disable - echo "0" > /sys/kernel/mm/ksm/run
USB Fast Charge
To enable - echo 1 > /sys/kernel/fast_charge/force_fast_charge
This makes USB to computer connections transfer current the same as the wall charger. (Classical version)
Faux123 added the a ability to change currents to 500 900 1200 1500 2000. Enable by doing this
To enable custom - echo 2 > /sys/kernel/fast_charge/force_fast_charge
Then
echo 1500 > /sys/kernel/fast_charge/fast_charge_level
change value 1500 to whatever you want (as long as it's one of those 5 values)
To disable - echo 0 > /sys/kernel/fast_charge/force_fast_charge
Set Default IO Scheduler
IO Acceptable values are bfq, cfq, deadline, fifo, fiops, noop, row, sio, vr, zen
echo "bfq" > /sys/block/mmcblk0/queue/scheduler
Set Default CPU Governor
Acceptablevalues are adaptive, badass, intelliactive, dancedance, wheatley, abyssplugv2, ondemandplus, intellidemand, interactive, conservative, userspace, powersave, lionheart, ondemand, performance and others mentioned in kernel features above.
echo "1" > /sys/devices/system/cpu/cpu0/online;
echo "ondemand" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor;
echo "1" > /sys/devices/system/cpu/cpu1/online;
echo "ondemand" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor;
echo "1" > /sys/devices/system/cpu/cpu2/online;
echo "ondemand" > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor;
echo "1" > /sys/devices/system/cpu/cpu3/online;
echo "ondemand" > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor;
Backlight Dimmer
N is disabled, Y is enabled.
echo "N" > /sys/module/lm3630_bl/parameters/backlight_dimmer
Touch Boost
Toggle 0 is disabled 1 is enabled.
echo "0" > /sys/kernel/msm_mpdecision/conf/boost_enabled
Double Tap To Wake
There are three options here:
0 is disabled
1 is normal dt2w (bottom half of screen)
2 is full screen dt2w
echo "0" > /sys/android_touch/doubletap2wake
Sweep2Wake/Sweep2Sleep
This one is tricky because there are two files to change. If you want both only run
echo "1" > /sys/android_touch/sweep2wake
If you only want sweep2sleep you'll have to run this as well.
echo "1" > /sys/android_touch/s2w_s2sonly
To disabled run both run these commands but with 0s instead.
GPU Governor Toggle
Acceptable values are "performance" "simple" or "ondemand". Ondemand is default so I placed simple here. Performance will freeze system is placed at full OC (at lest for me so be careful!)
echo "ondemand" > /sys/class/kgsl/kgsl-3d0/pwrscale/trustzone/governor
Frequency options (Use values on the left for init.d script)
533333000-> 533 Mhz
487500000-> 487 Mhz
450000000-> 450 Mhz
389000000-> 389 Mhz
320000000-> 320 Mhz
200000000-> 200 Mhz
150000000-> 150 Mhz
Set Max GPU:
echo "320000000" > /sys/devices/fdb00000.qcom,kgsl-3d0/kgsl/kgsl-3d0/max_gpuclk
Set Min GPU:
echo "150000000" > /sys/devices/fdb00000.qcom,kgsl-3d0/kgsl/kgsl-3d0/min_pwrlevel
Pwrkeysuspend (disables s2w, dt2w)
# 0 = disabled, 1 = enabled
echo "1" > /sys/module/qpnp_power_on/parameters/pwrkey_suspend
Wake Timeout of S2W/DT2W
Note: # is in minutes (not seconds)
echo "#" > /sys/android_touch/wake_timeout
Load ExFat Module
insmod /system/lib/modules/exfat.ko
SET DEFAULT BOTTOM CLOCK SPEEDS
(If you want to set max change crom scaling_min_freq to scaling_max_freq on bottom four) Acceptable values any of the clock speeds.
echo "96000" > /sys/devices/system/cpu/cpufreq/ondemand/optimal_freq
echo "96000" > /sys/devices/system/cpu/cpufreq/ondemand/sync_freq
echo "96000" > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
echo "96000" > /sys/devices/system/cpu/cpu1/cpufreq/scaling_min_freq
echo "96000" > /sys/devices/system/cpu/cpu2/cpufreq/scaling_min_freq
echo "96000" > /sys/devices/system/cpu/cpu3/cpufreq/scaling_min_freq
Vibrator Level
Stock Value is 63. Range of acceptable values is 0-100
echo "63" > /sys/class/timed_output/vibrator/amp
Dirty Ratios
# dirty_background_ratio default is 10 (background meaning screen is off usually)
echo "20" > /proc/sys/vm/dirty_background_ratio
# dirty_ratio default is 20.
echo "40" > /proc/sys/vm/dirty_ratio
Set MPDecision Values
Note: Only change these values after you've played with them in your favorite kernel tuning app. I recommend figuring out your settings then finding these files with a root browser then you can fill these init.d lines in with your root browser of choice.
echo "1" > /sys/kernel/msm_mpdecision/conf/enabled
echo "0" > /sys/kernel/msm_mpdecision/conf/boost_enabled
echo "300000" > /sys/kernel/msm_mpdecision/conf/idle_freq
echo "4" > /sys/kernel/msm_mpdecision/conf/max_cpus
echo "1" > /sys/kernel/msm_mpdecision/conf/min_cpus
echo "12" > /sys/kernel/msm_mpdecision/conf/nwns_threshold_0
echo "0" > /sys/kernel/msm_mpdecision/conf/nwns_threshold_1
echo "25" > /sys/kernel/msm_mpdecision/conf/nwns_threshold_2
echo "7" > /sys/kernel/msm_mpdecision/conf/nwns_threshold_3
echo "30" > /sys/kernel/msm_mpdecision/conf/nwns_threshold_4
echo "10" > /sys/kernel/msm_mpdecision/conf/nwns_threshold_5
echo "0" > /sys/kernel/msm_mpdecision/conf/nwns_threshold_6
echo "18" > /sys/kernel/msm_mpdecision/conf/nwns_threshold_7
echo "1" > /sys/kernel/msm_mpdecision/conf/scroff_single_core
echo "140" > /sys/kernel/msm_mpdecision/conf/twts_threshold_0
echo "0" > /sys/kernel/msm_mpdecision/conf/twts_threshold_1
echo "140" > /sys/kernel/msm_mpdecision/conf/twts_threshold_2
echo "190" > /sys/kernel/msm_mpdecision/conf/twts_threshold_3
echo "140" > /sys/kernel/msm_mpdecision/conf/twts_threshold_4
echo "190" > /sys/kernel/msm_mpdecision/conf/twts_threshold_5
echo "0" > /sys/kernel/msm_mpdecision/conf/twts_threshold_6
echo "190" > /sys/kernel/msm_mpdecision/conf/twts_threshold_7
Set Thermal Values
Go to /sys/kernel/msm_thermal/conf/ in a root file browser and change the values
I recommend that you figure out what you like and then create your own init.d script like I did. Here is the link to my example Script. I have 99 appended to the front so that it will run last resetting any previously set settings.
https://copy.com/cyApOWNSjPs1
Here is my init.d tweak folder. https://www.dropbox.com/sh/88sqwe9q018pcne/xCzZBKAJTt Make sure to give them a number in the front if you decide to add them. Like 01_blahblah or 02_blahblah.
will it work in all roms (aosp,cm,...)?
Nice. I'll give it a try (stock rom).
Finally.. Thanks man.. Will try ASAP and let you knw
Sent from my Nexus 5 using Tapatalk
mondaza said:
will it work in all roms (aosp,cm,...)?
Click to expand...
Click to collapse
Read the op man
Sent from my Nexus 5 using Tapatalk
Djmattox08 said:
Read the op man
Sent from my Nexus 5 using Tapatalk
Click to expand...
Click to collapse
What Is this read and how can I do it.lol.All seriousness this is a badass kernel.
Sent from my Nexus 5 using Tapatalk
What about changelog?
Bam ROM installed and working fine.Thanks for the work and greetings from Spain, HTCMania.
I've been running the linaro 4.7.4 version of Uber on Blue Lightning and it works great! Is there any reason I should switch to the 4.8.3 version?
Jephre said:
I've been running the linaro 4.7.4 version of Uber on Blue Lightning and it works great! Is there any reason I should switch to the 4.8.3 version?
Click to expand...
Click to collapse
Yeah, it's got bigger numbers
Sent from my Nexus 5 using Tapatalk
Chester welcome! I fcking love it kernels..... Flashing now
Sent from my Nexus 5 using Tapatalk
sinkster said:
Yeah, it's got bigger numbers
Sent from my Nexus 5 using Tapatalk
Click to expand...
Click to collapse
Harhar, very funny
Sorry, I'm not very technical, but I'm interested in learning more about kernels. Aside from the bigger numbers, is there some sort of performance or efficiency difference between the two? Pros and Cons of each?
Much appreciated!
iPsychoGeek said:
What about changelog?
Click to expand...
Click to collapse
Well the op said that if a ROM didn't boot up on this kernel we are to let you know. Well guess what? Latest cm nightly doesn't boot up. That's because cm decided to merge a bunch of caf stuff and now virtually all custom kernel are unbootable. Just saying. :crying:
Jsparta26 said:
Well the op said that if a ROM didn't boot up on this kernel we are to let you know. Well guess what? Latest cm nightly doesn't boot up. That's because cm decided to merge a bunch of caf stuff and now virtually all custom kernel are unbootable. Just saying. :crying:
Click to expand...
Click to collapse
Hope the OP can fix this
---------- Post added at 10:56 PM ---------- Previous post was at 10:10 PM ----------
Does anyone else ecounter random reboots when locking the screen?
What scheduler and governor are you guys using on 4.8.3 for better performance? There's so many to choose from and I'm having a difficult time telling which ones work better.
Good kernel
Sent from my Nexus 5 using Tapatalk
t1.8matt said:
What scheduler and governor are you guys using on 4.8.3 for better performance? There's so many to choose from and I'm having a difficult time telling which ones work better.
Click to expand...
Click to collapse
It's basically suck it and see. Here's a description of governors: http://forum.xda-developers.com/showthread.php?t=1792369
Sent from my Nexus 5 using Tapatalk
Hey Everyone!
So once again I'm having to rebuild my kernel thanks to CM. I uploaded yesterdays kernels early this morning after good day of testing with Stock. I have now created a branch for Stock as a backup and I guess we'll see if somehow the new kernel with CM updates is still compatible later. I hope to knock out the whole things today which will be difficult because it looks like somewhere in the ballpark of 200-250 commits. Assuming I have an error 1 every 10 that should only take me about several hours to do.
Anyways, so someone asked about changelogs. It's not that I don't believe in super detailed changelogs but I find that unless it's a tangible features nobody really understands/cares which is why I just include major features on Post #2. I've include the link to my github source which I find it best because iif you don't understand the commit message you can just click on the commit and read about the changes. Or I guess if you really wish I can just grab a log and paste it here like this
Code:
eac11e6 workqueue: fix mismatch
364f2a7 lib: spinlock_debug: increase spin dump timeout to one second
8f8e924 lib: spinlock_debug: increase spin dump timeout
1b51e62 sched/debug: Make sysrq prints of sched debug data optional
e3aab22 msm: cpuidle: use format string in snprintf
aba2b89 msm: gdsc: Make enable/disable function clock controls symmetric
83ddecf ARM: dts: msm: Add additional GDSC devices
5c07136 msm: subsystem_restart: Correct state transition even in absence of PIL
36f3fa0 msm: Fix NULL pointer dereference in sensors ADSP driver.
76b41a8 msm: msm_bus: Don't touch ID array in case of invalid IDs
ca44047 msm: msm_bus: fix memory leak in msm_bus_fabric_probe
26a3de9 msm: Fix compiler error due to CONFIG_HIGHMEM being disabled
7c14347 msm: Update the kernel log messages
19dd8b4 msm: msm_bus: Fix the type error causing bandwidth overflow
76bb790 add extra free kbytes tunable
638a2f6 ARM: Flush the caches for non panicking CPUs in case of a kernel panic
1ca0aca ARM: smp: fix incorrect per-cpu definition of regs_before_stop
82cd77a ARM: smp: Save CPU registers before IPI_CPU_STOP processing
1344e17 ARM: 7816/1: CONFIG_KUSER_HELPERS: fix help text
70f5ee2 ARM: 7819/1: fiq: Cast the first argument of flush_icache_range()
522611e ARM: Fix FIQ code on VIVT CPUs
c50dd00 ARM: Fix the world famous typo with is_gate_vma()
a354187 ARM: fix nommu builds with 48be69a02 (ARM: move signal handlers into a vdso-like page)
7249d66 ARM: fix a cockup in 48be69a02 (ARM: move signal handlers into a vdso-like page)
85e9ad0 ARM: make vectors page inaccessible from userspace
f56fc17 ARM: move signal handlers into a vdso-like page
cdbe879 ARM: allow kuser helpers to be removed from the vector page
ec85740 ARM: update FIQ support for relocation of vectors
8e3a8a1 ARM: fiq: change FIQ_START to a variable
6dc1962 ARM: move vector stubs
065cf0f ARM: poison memory between kuser helpers
b3e9875 ARM: poison the vectors page
a2a12a7 ARM: 7735/2: Preserve the user r/w register TPIDRURW on context switch and fork
c18c81f ARM: 7693/1: mm: clean-up in order to reduce to call kmap_high_get()
2902c6e ARM: dts: msm: Remove dual configuration for CPU on msm8974
bf41f92 msm: msm_bus: Changes for QOS computation at BIMC
212375b msm: msm_bus: Change priority overrides based on master configuration
571edf5 ARM: dts: msm: remove ebi cache dump reservation for 8974
1b752b9 coresight: enable flush-on-flushin for periodic flush to usb
6655519 coresight: use dma_alloc_coherent for allocating tmc-etr memory
ae85721 coresight: Add support for byte counter interrupt feature
62c4004 coresight: add lpae support for coresight tmc driver
d2e3216 ARM: dts: msm: remove contiguous etr memory reservation support for 8610
fc30c37 ARM: dts: msm: remove contiguous etr memory reservation support for 8226
8e08231 ARM: dts: msm: remove contiguous etr memory reservation support for 9625
465f943 ARM: dts: msm: remove contiguous etr memory reservation support for 8974
84f8b02 ARM: dts: msm: modify memory reservation requirements for tmc-etr on 8610
ebbb2e9 ARM: dts: msm: modify memory reservation requirements for tmc-etr on 8226
63d10d8 ARM: dts: msm: modify memory reservation requirements for tmc-etr on 9625
04eb909 ARM: dts: msm: modify memory reservation requirements for tmc-etr on 8974
4cdbd69 ARM: dts: Enable additional GDSC collapse modes based on HW version
e67d6ee workqueue: Remove gcwq_has_idle_workers
70a7f5d workqueue: simplify CPU hotplug code
5627e14 workqueue: remove CPU offline trustee
0ba7786 workqueue: don't butcher idle workers on an offline CPU
7fdf3cb workqueue: reimplement CPU online rebinding to handle idle workers
afd342d workqueue: drop @bind from create_worker()
f601fe0 workqueue: use mutex for global_cwq manager exclusion
153b22f workqueue: ROGUE workers are UNBOUND workers
8beff10 workqueue: drop CPU_DYING notifier operation
0a5bb32 Defconfig: SMH
0384859 Revert " DRIVERS: SLIMBUS: Initial OC of Slimbus"
Those were my changes yesterday. (I having a feeling most of you just skipped over it)
As far as which do I think is better I personally like bleeding edge (and it seems like most of you do too) so I run Linaro 4.8.3. To me it feels a little snappier (on stock that is, I use stock for any of the battery life tests etc). Battery life seems to be about the same between the two though so again it's not like a big deal one way or another. I just like to give you all options instead of only making one kernel. Because I have build scripts and a fast computer it takes me about 5 minutes to build one kernel so I can make both in about 10 minutes. That's no big deal for me. The part that takes the time is the patching, coding, tweaking, and testing.
Speaking of testing, I still haven't really figured out my dream IO and CPU Gov combo yet. I've been playing around alot and hopefully some of you will too. I can tell you that I always default to CFQ or BFQ with Ondemand since I really like those combos but I am also starting to like several other combos. If you find a combo you think is awesome please post it and a screenshot if you want to convince us it is good for battery or whatnot.
Anyhow, enjoy the 1/27 kernel from yesterday! I'll be working on a CM compatible kernel today.
Cheers!
Cl3Kener
This is a small mod for Sultanxda's CAF kernel. It's intended to ONLY be used with his CM 12.1 and his CM13, but it *might* work with other CAF ROMs.
The zip also replaces the fstab in the ramdisk to support the F2FS filesystem in /data and /cache (both ext4 and f2fs are supported for these, like the official CM builds), and the fsck.f2fs binary in /system/bin to the latest version (1.5.0).
The only kernel changes are:
- Added F2FS filesystem code. I keep it up-to-date with the Motorola github (right now the latest code is from the Moto X 2014 6.0 release): https://github.com/MotorolaMobilityLLC/motorola-kernel/tree/marshmallow-6.0.0-release-victara.
- Added and improved @sollapse's OTG-Y support patch.
- Eventual cherry picked commits from @sultanxda's Marshmallow branch.
- Updated CIFS/NFS code to the latest 3.4 version.
- Improved support for HIDs (joysticks, keyboards, etc.)
I compiled with GCC 4.8 (the same toolchain @sultanxda uses).
All the mods have been tested and I'm using them personally.
To install, you just need to flash his ROM, and then my zip. Then format /data and /cache to F2FS with TWRP if you wish to use F2FS.
I also made a recovery based on the 2.8.7.0-4 unofficial TWRP, it's rebased on the Sultan CM12.1 ROM and this kernel mod, plus it has:
- updated TWRP code (from the 5.1 branch)
- mounts /data and /cache as F2FS by default, with the same mount options as the fstab in my kernel mod
- theme replaced with the "Materialised Play" one
- updated mkfs.f2fs and fsck.f2fs to 1.5.0.
I included all the source code for the kernel changes, you only need to replace the GCC directory in the bash script and then execute it.
Changelogs:
01/13:
- Updated Sultan's kernel sources for CM13 and CM12.1.
- Updated NFS driver to the latest 3.4 code.
- Merged Sultan's charger improvements to the CM12.1 kernel.
- Enabled support for Force Feedback for a lot of controllers - you can enable this in Input.
- Enabled LED and Force Feedback support for the Xbox controllers (fixes the LED blinking forever).
- Fixed Wiimote support - sadly we can't have support for newer Wii Remotes (the "MotionPlus" ones) with a 3.4 kernel, but older ones are working.
- Cherry picked HID commits from the official CyanogenMod kernel, this improves the Wiimote support (Classic Controllers, Nunchucks etc. are supported) and adds/improves support for a lot of joysticks/keyboards/mice/etc.
01/05:
- Updated Sultan's kernel sources for CM13 and CM12.1.
12/30:
- Updated the F2FS driver with the one from Motorola's 6.0.0 release for Moto X 2014 (it's a couple months newer).
- Updated the fstab accordingly, the "nobarrier" option should bring a small performance improvement.
12/29:
- Actually fixed reboots when inserting OTG-Y devices in deep sleep.
- Fixed OTG-Y not starting when the charger is detected *prior* to the USB device (rare cases in which a charger/OTG-Y setup is disconnected and the driver takes a bit to detect that, and an OTG-Y setup is inserted before that).
12/23:
- Updated Sultan's kernel sources for CM13 (fixes inserting OTG devices in deep sleep and being unable to use USB again).
- Fixed reboots when inserting OTG-Y devices in deep sleep (thanks to the above patch!).
- Further clean-up of the OTG-Y patch code.
12/21:
- OTG-Y improvements and general clean-up. Code is cleaner, some race conditions and corner cases when toggling the parameter are handled better, low power mode is enabled when it's possible, and the charging notification going off, on and off again very fast sometimes after unplugging an OTG-Y setup has been fixed.
- Updated Sultan's kernel sources for CM13 and CM12.1
12/16:
- Overhaul of the OTG-Y patch. Now it's less "hacky" and it detects the charger properly. This removes the false charging notifications when connecting a regular OTG cable+device, makes it possible to use OTG again if charging is stopped and restarted, allows for faster charging rates, and fixes kernel panics when the OTG-Y cable/device are removed *after* charging was stopped.
- Updated Sultan's kernel sources for CM13 and CM12.1 (slow charging fixed)
12/12:
- Improved the OTG-Y patch (again): if you mistakenly connected a regular OTG cable+device when OTG-Y was set to Yes, a charging notification would be shown, and it wouldn't go away after disconnection. Now it properly disappears after the device has been disconnected.
12/10;
- Updated Sultan's kernel sources for CM13 and CM12.1 (including a couple changes still not present in the 12/1 CM12.1)
- Merged some changes from the CM13 kernel into the CM12.1 one: 1 2
- Improved the OTG-Y patch. It's now possible to charge the phone normally in AC mode while the OTG-Y parameter is set to Yes, and there are no more kernel panics or inability to use OTG up to the following reboot when you use OTG-Y inappropriately (disconnecting the OTG devices after changing the parameter status).
- Updated f2fs.fsck in the CM12.1 version and the init.rc in the CM13 version.
12/01:
- Updated Sultan's kernel sources for CM13 and CM12.1
11/28:
- Switched the F2FS code to the Motorola Moto G 5.1.1 F2FS branch: https://github.com/MotorolaMobilityLLC/motorola-kernel/tree/lollipop-5.0.2-release-falcon
- Updated Sultan's kernel sources for CM13
- Merged the new touchscreen fixes and CPU boosting logic to the CM12.1 kernel from the CM13 one.
Important: I'd recommend making a nandroid backup, formatting and restoring. This driver is technically older than upstream, and it might have issues with inlined dentries (the new fstab reflects the mount point configuration of the Moto X 2014 - so no inline_dentry).
11/25:
- Bug fix for F2FS from the dev-test branch
- Updated Sultan's kernel sources for CM13
- Included the touch screen bugfix from Sultan from the CM13 branch in the CM12.1 one.
11/18:
- Added other bug fix commits for F2FS from the dev-test branch
- Updated Sultan's kernel sources for both CM12.1 and CM13
- CM13 build should actually be functional now (thanks to @DerRomtester for the init.rc)
- Recovery has been rebuilt from sources, it now uses the Sultan CM12.1 kernel mod and source tree for his ROM.
11/10:
- Added two bug fix commits for F2FS from the dev-test branch (one of them is a fix to potential data corruption)
- Switched to CM's version of Google GCC
XDA:DevDB Information
Mod for Sultanxda's CAF kernel, Kernel for the OnePlus One
Contributors
Phoenix Wright
Kernel Special Features:
Version Information
Status: Stable
Current Stable Version: 01/13
Stable Release Date: 2016-01-13
Created 2015-11-07
Last Updated 2016-01-13
Have you already tried marshmallow with f2fs? I dont get it working. Cache on f2fs is bootlooping and data on f2fs shows that the phone is encrypted. And it wants a pw. to decrypt it.
DerRomtester said:
Have you already tried marshmallow with f2fs? I dont get it working. Cache on f2fs is bootlooping and data on f2fs shows that the phone is encrypted. And it wants a pw. to decrypt it.
Click to expand...
Click to collapse
I'm not that interested in marshmallow right now (I'll wait until things get stable and xposed is ported over). Have you checked that the fstab is edited properly?
Phoenix Wright said:
I'm not that interested in marshmallow right now (I'll wait until things get stable and xposed is ported over). Have you checked that the fstab is edited properly?
Click to expand...
Click to collapse
The fstab should be ok. I use the same kernel in 5.1.1. I will inform you if i get it working. It is time to debug.
Hey am still facing the same error upon attempting to mount cifs. I believe it's not due to your mod but some dumb thing I might be missing. Can you post using what tools you mount cifs using the command you specified on the sultan thread?
UPDATE I tried using adb shell(which i guess you would've) and still get the same "No such device" error. dmesg doesn't show anything useful (atleast to my knowledge). But 'cat /proc/filesystems' does NOT show cifs(it does show f2fs). Is it normal?
Sent from my A0001 using Tapatalk
Links?
j1i2a3n4g5 said:
Links?
Click to expand...
Click to collapse
Check the downloads tab / section... Not sure if it works on tapatalk.
Sent from my A0001 using Tapatalk
Added to OnePlus One index thread:
[INDEX] OnePlus One
Added to OnePlus One index thread:
[INDEX] OnePlus One
Phoenix Wright said:
I'm not that interested in marshmallow right now (I'll wait until things get stable and xposed is ported over). Have you checked that the fstab is edited properly?
Click to expand...
Click to collapse
I tried sultans mm version with f2fs. And this log looks quite interesting. I am running f2fs on cache and data but it is looking for ext4.
Code:
EXT4-fs (mmcblk0p14): mounted filesystem with ordered data mode. Opts: barrier=1
fs_mgr: __mount(source=/dev/block/platform/msm_sdcc.1/by-name/system,target=/system,type=ext4)=0
EXT4-fs (mmcblk0p28): VFS: Can't find ext4 filesystem
fs_mgr: __mount(source=/dev/block/platform/msm_sdcc.1/by-name/userdata,target=/data,type=ext4)=-1
fs_mgr: fs_mgr_mount_all(): possibly an encryptable blkdev /dev/block/platform/msm_sdcc.1/by-name/userdata for mount /data type ext4 )
EXT4-fs (mmcblk0p16): VFS: Can't find ext4 filesystem
fs_mgr: __mount(source=/dev/block/platform/msm_sdcc.1/by-name/cache,target=/cache,type=ext4)=-1
fs_mgr: Failed to mount an un-encryptable or wiped partition on/dev/block/platform/msm_sdcc.1/by-name/cache at /cache options: barrier=1,data=ordered,noauto_da_alloc,errors=panic error: Invalid argument
EXT4-fs (mmcblk0p15): recovery complete
EXT4-fs (mmcblk0p15): mounted filesystem with ordered data mode. Opts: nomblk_io_submit,errors=remount-ro
fs_mgr: check_fs(): mount(/dev/block/platform/msm_sdcc.1/by-name/persist,/persist,ext4)=0: Success
fs_mgr: check_fs(): unmount(/persist) succeeded
fs_mgr: Running /system/bin/e2fsck on /dev/block/platform/msm_sdcc.1/by-name/persist
e2fsck: e2fsck 1.42.9 (28-Dec-2013)
e2fsck: /dev/block/platform/msm_sdcc.1/by-name/persist: clean, 29/320 files, 1088/1280 blocks
EXT4-fs (mmcblk0p15): mounted filesystem with ordered data mode. Opts: barrier=1,data=ordered,nodelalloc,nomblk_io_submit,errors=panic
Edit i know the problem already
I guess it is a ramdisk problem
ramdisk/sbin/mkfs.f2fs
/system/bin/fsck\.f2fs
Formatting fo f2fs takes a long time
I tried it with the latest 12.1 ROM from 01112015 and it works very fast!
When there's trick to do it with the 6.0 ROM I will try.
ph1dft said:
I tried it with the latest 12.1 ROM from 01112015 and it works very fast!
When there's trick to do it with the 6.0 ROM I will try.
Click to expand...
Click to collapse
It works with my (Tyr) kernel and Sultans CAF 6.0 Rom.
DerRomtester said:
I tried sultans mm version with f2fs. And this log looks quite interesting. I am running f2fs on cache and data but it is looking for ext4.
Code:
EXT4-fs (mmcblk0p14): mounted filesystem with ordered data mode. Opts: barrier=1
fs_mgr: __mount(source=/dev/block/platform/msm_sdcc.1/by-name/system,target=/system,type=ext4)=0
EXT4-fs (mmcblk0p28): VFS: Can't find ext4 filesystem
fs_mgr: __mount(source=/dev/block/platform/msm_sdcc.1/by-name/userdata,target=/data,type=ext4)=-1
fs_mgr: fs_mgr_mount_all(): possibly an encryptable blkdev /dev/block/platform/msm_sdcc.1/by-name/userdata for mount /data type ext4 )
EXT4-fs (mmcblk0p16): VFS: Can't find ext4 filesystem
fs_mgr: __mount(source=/dev/block/platform/msm_sdcc.1/by-name/cache,target=/cache,type=ext4)=-1
fs_mgr: Failed to mount an un-encryptable or wiped partition on/dev/block/platform/msm_sdcc.1/by-name/cache at /cache options: barrier=1,data=ordered,noauto_da_alloc,errors=panic error: Invalid argument
EXT4-fs (mmcblk0p15): recovery complete
EXT4-fs (mmcblk0p15): mounted filesystem with ordered data mode. Opts: nomblk_io_submit,errors=remount-ro
fs_mgr: check_fs(): mount(/dev/block/platform/msm_sdcc.1/by-name/persist,/persist,ext4)=0: Success
fs_mgr: check_fs(): unmount(/persist) succeeded
fs_mgr: Running /system/bin/e2fsck on /dev/block/platform/msm_sdcc.1/by-name/persist
e2fsck: e2fsck 1.42.9 (28-Dec-2013)
e2fsck: /dev/block/platform/msm_sdcc.1/by-name/persist: clean, 29/320 files, 1088/1280 blocks
EXT4-fs (mmcblk0p15): mounted filesystem with ordered data mode. Opts: barrier=1,data=ordered,nodelalloc,nomblk_io_submit,errors=panic
Edit i know the problem already
I guess it is a ramdisk problem
ramdisk/sbin/mkfs.f2fs
/system/bin/fsck\.f2fs
Click to expand...
Click to collapse
interesting, when I use disc info (without executing the ramdisk command) I see that both /data and /cache are show as f2fs. Curious to know if you still belief it is nessesary to solve the ramdisk problem?
---------- Post added at 02:44 PM ---------- Previous post was at 02:42 PM ----------
A question for everyone, why would you chose for f2fs on /data has it not be shown that f2fs is not faster than ext4 on /data and only has benefit on /cache?
joefso said:
interesting, when I use disc info (without executing the ramdisk command) I see that both /data and /cache are show as f2fs. Curious to know if you still belief it is nessesary to solve the ramdisk problem?
---------- Post added at 02:44 PM ---------- Previous post was at 02:42 PM ----------
A question for everyone, why would you chose for f2fs on /data has it not be shown that f2fs is not faster than ext4 on /data and only has benefit on /cache?
Click to expand...
Click to collapse
Already solved the ramdisk problem.
I think the benchmarks on android are similar. http://www.phoronix.com/scan.php?page=article&item=linux-40-ssd&num=2
Also Antutu scores are proofing that.
DerRomtester said:
It works with my (Tyr) kernel and Sultans CAF 6.0 Rom.
Click to expand...
Click to collapse
Tried the rom and it works, but not for daily use. Multirom and f2fs doesn't seem to work so back to 5.1.1. Thanx anyway!
sorry where is the download link?
manup85cupra said:
sorry where is the download link?
Click to expand...
Click to collapse
The links are on Downloads tab. Don't use Tapatalk though. This was discussed a few posts above yours.
I added a new version. I just added two bug fix commits for F2FS from the dev-test branch (one of them is a fix to potential data corruption), and switched to CM's version of Google GCC (previously I used the one from the Google repos).
Also, I added a version for CM13. Functionality of the kernel is the same (latest CIFS, UTF8, latest F2FS & fstab, OTG-Y). However, I don't use CM13 yet so I'd need testing This zip *doesn't have* an updated "fsck.f2fs" binary, as that would require downloading the CM13 source tree (25GB) and I can't do that. I'll do it when I switch to CM13. @DerRomtester I saw your kernel replaces the whole boot.img, I don't think it's wise to do (the ramdisk contains some binaries - adbd, the sepolicy binary etc. and configuration files which get updated frequently). You can use my script to automate fstab replacement if you want!
Hey @PhoenixWright I used your command
Code:
busybox mount -t cifs -o username=xxxx,password=yyyyy,rw,noatime,iocharset=utf8,noperm,nounix,noserverino,sec=ntlmssp,dir_mode=0775,file_mode=0775,uid=1023,gid=1023,context=u:object_r:fuse:s0 //192.168.x.x/yourshare /data/media/0/CIFS
after flashing your latest zip. While it mounts without any errors, the folders are not visible on any file manager.
But i can cd into the directory from terminal and it displays the files.
Any suggestions to get it viewable on file managers?