[KERNEL] [AOSP] [LINARO 4.9.1] nebula kernel [v3.20]

Search This thread

xenon92

Inactive Recognized Developer
May 20, 2013
762
3,469
shubhangrathore.com
OnePlus 9 Pro
nebula_logo_monotone_white_small.jpg



nebula kernel is for AOSP based KitKat android 4.4+ ROMs
and AOSP based Lollipop android 5.0+ ROMs



Supports both GT-i9105 and GT-i9105P


Original nebula kernel thread for i9082 is HERE

I do not own Samsung Galaxy S2 Plus




Download the latest PERFORMANCE CONTROL APP to utilize the full potential of the kernel.

Brief explanation of few of the features in nebula can be found in the third post. For more info, use Google.​




FEATURES
  • Compiled using Linaro 4.9.1 2014-05 toolchain
  • Based on kernel version 3.0.101
  • Additional Governors: SmartassV2, SmartassH3, Lulzactive, LulzactiveQ
  • Additonal I/O Schedulers: ROW, SIO, SIOPLUS, VR, ZEN, BFQ
  • Overclock: 1.3 Ghz, 1.4 Ghz, 1.5 Ghz, 1.6 Ghz
  • F2FS support
  • CPU Boost driver
  • UKSM (Ultra KSM) support (enable it in Performance Control app)
  • Frandom
  • Dynamic Sync Control (enable it in Performance Control app)
  • Asynchronous FSync ported from HTC One
  • Cross Memory Attach
  • Entropy tweaks
  • Increased read-ahead from 16/128 to 32/2048 (can be customized in Performance Control app)
  • Disabled Cyclic Redundancy Checks (CRC) for better performance
  • Many patches, fixes and improvements from codeaurora
  • Many more performance and battery friendly tweaks





INSTALLATION

  • Download the latest nebula zip
  • Flash using CWM recovery
  • Wipe cache
  • Wipe dalvik cache
  • Reboot





DOWNLOADS


nebula kernel

(Please don't make mirror links of the kernel)





SOURCE
Source code of the kernel can be found at my Gihub.




CREDITS
- pawitp - nebula is based on his kernel source for CM11
- to all the developers whose mods I have included in my kernel
- @k2wl - for his extensive guide on kernel compilation. Big thanx to him.
- @CoolDevelopment - for maintaining the kernel source at SamsungBCM-Cyanogenmod repo and testing the 1st build
- @beastaki23 - for vibration fixes
- @SH1M4BD3 - for testing the 1st build


 
Last edited:

xenon92

Inactive Recognized Developer
May 20, 2013
762
3,469
shubhangrathore.com
OnePlus 9 Pro
CHANGELOG



Changelog is available on nebula kernel wiki too


v3.20

- Fixes to network related kernel code


---x---x---x---


v3.18

- Stability fixes (check source code commits for details)


---x---x---x---


v3.16

- Backport timed General-Purpose Input/Ouput from hammerhead (Nexus 5)
- Improve multi-touch event handling
- Improve compiled kernel code
- Other fixes and improvements


---x---x---x---


v3.14

- Fix CVE-2014-3153


---x---x---x---


v3.13

- Add support for s2ve (GT-i9105)
(This and all future versions will work on both, GT-i9105 and GT-i9105P)


---x---x---x---


v3.12

- Compiled using the latest Linaro 4.9.1 - 2014.05 toolchain
- New I/O scheduler - BFQ (latest version - v7r4 - released on 18th May 2014)
- Memory Management: pass readahead info down to the I/O scheduler
- lib/memcopy: use glibc version


---x---x---x---


v3.10

- Compiled using the latest Linaro 4.9.1 - 2014.04 toolchain
- Memory management - lazy cache flushing on non-mapped pages
- Many updates to Device Mapper
- Use proper memory barriers for bitops
- softirq: reduce latencies
- sync: don't block the flusher thread waiting on IO
- ext4: Speed up FITRIM by recording flags in ext4_group_info
- ext4: speed up truncate/unlink by not using bforget() unless needed
- vmscan: add customisable shrinker batch size
- Other fixes and performance tweaks


---x---x---x---


v3.04

- CPU boost driver - set tunables
- New governor - LulzactiveQ
- New I/O scheduler - SIOPLUS
- Wait just 1 second, instead of 4 seconds for other CPU core to halt
- Other fixes and performance tweaks


---x---x---x---


v3.00

- Initial release


---x---x---x---


 
Last edited:

xenon92

Inactive Recognized Developer
May 20, 2013
762
3,469
shubhangrathore.com
OnePlus 9 Pro
BRIEF EXPLANATION ABOUT KERNEL FEATURES




UKSM
UKSM is about de-duplication of data in system memory rather than being another de-duplicating file-system. This improves RAM usage.

Dynamic Sync Control
The dynamic sync control interface uses Android kernel's unique early suspend / late resume interface. While screen is on, file sync is disabled. When screen is off, a file sync is called to flush all outstanding writes and restore file sync operation as normal.

Frandom
Frandom is a Linux kernel random number generator, which is 10-50 times faster than what you get from Linux' built-in /dev/urandom. It uses very little (/dev/frandom) or none (/dev/erandom) of the kernel's entropy pool, so it is very useful for applications that require a handy source for lots of random data.

CPU Boost driver
When certain bursty and important events take place, it might take a while for the current cpufreq governor to notice the new load and react to it. That would result in poor user experience. To alleviate this, the cpu-boost driver boosts the frequency of a CPU for a short duration to maintain good user experience while the governor catches up.





FAQ



On which ROM can I install nebula?
- nebula can be used on any AOSP kitkat 4.4+ based ROM. (Carbon, SlimKat, CM11)


What is the best and most stable configuration for nebula?
- Configuration depends from user to user. Still, the most stable configuration according to me and that I use is below. It might differ for you.
- Governor: SmartassV2
- Max. freq: 1.2 Ghz (OCing doesn't really have an increased and noticeable performance, rather it heats the processor and wastes battery for a marginal gain in performance as well as creates instability - random reboots etc. Google more about OC.) (Read the description on this commit.)
- I/O Scheduler - SIO
- Enable UKSM (from Performance Control app)
- Enable Dynamic FSync (from Performance Control app)
- I'll update this configuration as more tweaks are added to nebula


I get random reboots, what should I do?
- I am working on the kernel for myself and the kernel is quite stable for me. Still, if you face reboots see below:
- Make sure you followed the installation instruction written in Post #1.
- Make sure you "Fix permissions".
- OCing will always cause instability. Try reducing the max frequency to 1.2 Ghz
- It is quite possible that you don't know how to use a custom kernel. Not everything needs to be set at HIGHEST. Just because an "option" is there doesn't mean you have to select it. Try changing the configuration that meets your needs and satisfies you. If you set up the kernel properly, it would stop giving you random reboots.
- The only way to get things fixed is to provide logs. I cannot fix that I cannot see. Google, how to take logs to find and solve kernel issues. (kmsg/last_kmsg)
- Tell me a way in which I can reproduce the issue on my phone.
 
Last edited:

DeKiesel

Senior Member
Feb 7, 2012
492
77
Hi,

thanks for a new kernel!

Does anyone know whether calls via bluetooth (not the same as music via bt) work?
 

Top Liked Posts

  • There are no posts matching your filters.
  • 23
    nebula_logo_monotone_white_small.jpg



    nebula kernel is for AOSP based KitKat android 4.4+ ROMs
    and AOSP based Lollipop android 5.0+ ROMs



    Supports both GT-i9105 and GT-i9105P


    Original nebula kernel thread for i9082 is HERE

    I do not own Samsung Galaxy S2 Plus




    Download the latest PERFORMANCE CONTROL APP to utilize the full potential of the kernel.

    Brief explanation of few of the features in nebula can be found in the third post. For more info, use Google.​




    FEATURES
    • Compiled using Linaro 4.9.1 2014-05 toolchain
    • Based on kernel version 3.0.101
    • Additional Governors: SmartassV2, SmartassH3, Lulzactive, LulzactiveQ
    • Additonal I/O Schedulers: ROW, SIO, SIOPLUS, VR, ZEN, BFQ
    • Overclock: 1.3 Ghz, 1.4 Ghz, 1.5 Ghz, 1.6 Ghz
    • F2FS support
    • CPU Boost driver
    • UKSM (Ultra KSM) support (enable it in Performance Control app)
    • Frandom
    • Dynamic Sync Control (enable it in Performance Control app)
    • Asynchronous FSync ported from HTC One
    • Cross Memory Attach
    • Entropy tweaks
    • Increased read-ahead from 16/128 to 32/2048 (can be customized in Performance Control app)
    • Disabled Cyclic Redundancy Checks (CRC) for better performance
    • Many patches, fixes and improvements from codeaurora
    • Many more performance and battery friendly tweaks





    INSTALLATION

    • Download the latest nebula zip
    • Flash using CWM recovery
    • Wipe cache
    • Wipe dalvik cache
    • Reboot





    DOWNLOADS


    nebula kernel

    (Please don't make mirror links of the kernel)





    SOURCE
    Source code of the kernel can be found at my Gihub.




    CREDITS
    - pawitp - nebula is based on his kernel source for CM11
    - to all the developers whose mods I have included in my kernel
    - @k2wl - for his extensive guide on kernel compilation. Big thanx to him.
    - @CoolDevelopment - for maintaining the kernel source at SamsungBCM-Cyanogenmod repo and testing the 1st build
    - @beastaki23 - for vibration fixes
    - @SH1M4BD3 - for testing the 1st build


    9
    nebula kernel update v3.21 [UNOFFICIAL]

    - Updated ROW I/O
    - Fixed Vibrator intensity
    - Added cdrom option to UMS-lun-devices
    - Updated Linaro toolchain to 4.9.3-2015.03
    - Other fixes and improvements
    - Bump to v3.21

    https://basketbuild.com/devs/GHsR/galaxys2plus/kernel/nebula

    Only for lollipop-5.x.x and CM11 M12
    9
    nebula kernel updated to v3.20.

    - Fixes to network related kernel code

    nebula kernel is android lollipop compatible.
    7
    BRIEF EXPLANATION ABOUT KERNEL FEATURES




    UKSM
    UKSM is about de-duplication of data in system memory rather than being another de-duplicating file-system. This improves RAM usage.

    Dynamic Sync Control
    The dynamic sync control interface uses Android kernel's unique early suspend / late resume interface. While screen is on, file sync is disabled. When screen is off, a file sync is called to flush all outstanding writes and restore file sync operation as normal.

    Frandom
    Frandom is a Linux kernel random number generator, which is 10-50 times faster than what you get from Linux' built-in /dev/urandom. It uses very little (/dev/frandom) or none (/dev/erandom) of the kernel's entropy pool, so it is very useful for applications that require a handy source for lots of random data.

    CPU Boost driver
    When certain bursty and important events take place, it might take a while for the current cpufreq governor to notice the new load and react to it. That would result in poor user experience. To alleviate this, the cpu-boost driver boosts the frequency of a CPU for a short duration to maintain good user experience while the governor catches up.





    FAQ



    On which ROM can I install nebula?
    - nebula can be used on any AOSP kitkat 4.4+ based ROM. (Carbon, SlimKat, CM11)


    What is the best and most stable configuration for nebula?
    - Configuration depends from user to user. Still, the most stable configuration according to me and that I use is below. It might differ for you.
    - Governor: SmartassV2
    - Max. freq: 1.2 Ghz (OCing doesn't really have an increased and noticeable performance, rather it heats the processor and wastes battery for a marginal gain in performance as well as creates instability - random reboots etc. Google more about OC.) (Read the description on this commit.)
    - I/O Scheduler - SIO
    - Enable UKSM (from Performance Control app)
    - Enable Dynamic FSync (from Performance Control app)
    - I'll update this configuration as more tweaks are added to nebula


    I get random reboots, what should I do?
    - I am working on the kernel for myself and the kernel is quite stable for me. Still, if you face reboots see below:
    - Make sure you followed the installation instruction written in Post #1.
    - Make sure you "Fix permissions".
    - OCing will always cause instability. Try reducing the max frequency to 1.2 Ghz
    - It is quite possible that you don't know how to use a custom kernel. Not everything needs to be set at HIGHEST. Just because an "option" is there doesn't mean you have to select it. Try changing the configuration that meets your needs and satisfies you. If you set up the kernel properly, it would stop giving you random reboots.
    - The only way to get things fixed is to provide logs. I cannot fix that I cannot see. Google, how to take logs to find and solve kernel issues. (kmsg/last_kmsg)
    - Tell me a way in which I can reproduce the issue on my phone.
    6
    nebula kernel updated to v3.18.

    - Stability fixes (check source code commits for details)