[KERNEL] Jesse's Kernel for Galaxy S8 and S8+ (Exynos)

Search This thread

jesec

Inactive Recognized Developer / Contributor
Jan 29, 2015
804
6,214
SF Bay Area
Jesse's Kernel (I am not good at naming sth.) ;)
for Galaxy S8 and S8+ (Exynos)
(G950F/FD/X/N) and (G955F/FD/X/N)


This kernel is designed to be SIMPLE and STABLE with improved performance and battery life.
Just flash and enjoy your phone. No additional setting required.

This kernel has 3 series,
  • Early-Testing: Contains latest changes, experimental features. This build will be released to testers only.
  • Stable: Changes, features in early-testing build will be picked into stable once they are confirmed to be stable.
  • Semi-Stock: For those who want maximum stability or ROM developers who want to integrate with their ROMs. This build is very similar to stock but it will have some useful changes like SELinux permissive, disabled security features, etc. This build will be released to public in low update frequency(usuallly based on stock kernel changes).

LICENSE:
Kernel sources:
GPL 2.0: https://www.gnu.org/licenses/gpl-2.0.html


Kernel binaries, patches to system, ramdisk modifications, etc.:
Code:
You can use, mirror, modify and/or integrate it/them with your own works, WITHOUT inform me, subject to the following conditions:
1. Credit MUST be given. (a possible form: thanks *** for ***)
2. Warranty is NOT provided. I am not responsible for any possible losses. 
3. Authorization may be TERMINATED for selected person without prior notice under certain conditions (subject to my sole discretion). 
4. Above conditions must be preserved. (You have the responsibilities to inform your users about these conditions. A possible way is to add "LICENSE: (link to this post)" to "thanks *** for ***")

Features:
STABLE: (Mainline)
  • Toolchain: Linaro GCC 7
  • Linux 4.4.79 (updated from 4.4.13)
  • Always SELinux Permissive (with fake SELinux Enforcing status.)
  • Kernel Security Features, Root Restrictions are DISABLED
  • Linux mainline random generator driver backported
  • Max frequency of big cores set to 2.5GHz
  • Other optimizations, backports for best performance and power efficiency
  • BFQ I/O scheduler
  • Versioning: VERSION x.x
  • Release Frequency: Regularly

SEMI-STOCK:
  • Toolchain: Linaro GCC 7
  • Linux 4.4.79 (updated from 4.4.13)
  • Always SELinux Permissive (with fake SELinux Enforcing status.)
  • Kernel Security Features, Root Restrictions are DISABLED
  • Versioning: RELEASE x
  • Release Frequency: Rare (only stock kernel updates and bug fixes)

NOTE: As of VERSION 0.3 and SEMI-STOCK RELEASE 6, AQG5 or newer bootloader is required.
Download:
STABLE:
VERSION 0.3: (Source Tag)
https://www.androidfilehost.com/?fid=673368273298975229

SEMI-STOCK:
RELEASE 6: (Source Tag)
https://www.androidfilehost.com/?fid=889764386195919462

NOTE:
1. Existing Bluetooth Pairs, Wi-Fi Passwords will be forgot when you flash this kernel for the first time.
2. You need to flash root package (Magisk or SuperSU) AFTER flash kernel if you want root access.

Show your appreciation:
Click Thanks!, Rate 5-star or/and Donate to me. ;)

Get informed about news and updates:
Join Official Telegram Channel
AND/OR
Follow this project on XDA

XDA:DevDB Information
Jesse's Kernel for Galaxy S8 and S8+, Kernel for the Samsung Galaxy S8+

Contributors
jesec
Source Code: https://github.com/jesec/android_kernel_samsung_universal8895

Kernel Special Features:

Version Information
Status: Stable

Created 2017-05-08
Last Updated 2017-07-30
 

jesec

Inactive Recognized Developer / Contributor
Jan 29, 2015
804
6,214
SF Bay Area
Changelog:

STABLE:

VERSION 0.3, July 29th:
Merge AQG5 kernel updates from Samsung
Merge Linux 4.4.79
Merge BFQ-v8r12
Backport latest F2FS
Switch to latest Linaro GCC 7 toolchain with processor specific tunes.
Use -Ofast optimization.


VERSION 0.2.2, June 26th:
Merge AQF7 kernel updates from Samsung
Merge Linux 4.4.74

VERSION 0.2.1, May 27th:
Merge AQE5 kernel updates from Samsung
Merge Linux 4.4.69
Update system patches

VERSION 0.2, May 19th:
Updated to Linux 4.4.68
Full F2FS file system support (with latest driver backported from Linux 4.12) is added.
Possible kernel panic (random reboots) addressed.
Possible battery life improvements for CPU frequency boosts.
BFQ is added and set as the default I/O scheduler.
VoLTE & VoWiFi problem fixed. (verified by testers)
NOTE: VoLTE logo may not be an accurate indicator of VoLTE support.

VERSION 0.1, May 11th:
Initial Release.


SEMI-STOCK:

RELEASE 6, July 29th:
Merge AQG5 kernel updates from Samsung
Merge Linux 4.4.79
Backport latest F2FS
Switch to latest Linaro GCC 7 toolchain with processor specific tunes.
Use -Ofast optimization.

RELEASE 5, June 26th:
Merge AQF7 kernel updates from Samsung
Merge Linux 4.4.74

RELEASE 4, May 27th:
Merge AQE5 kernel updates from Samsung
Merge Linux 4.4.69
Update system patches

RELEASE 3, May 19th:
Updated to Linux 4.4.68
Switched to GCC 8.X
Full F2FS file system support (with latest driver backported from Linux 4.12) is added.
Possible kernel panic (random reboots) addressed.
VoLTE & VoWiFi problem fixed. (verified by testers)
NOTE: VoLTE logo may not be an accurate indicator of VoLTE support.

RELEASE 2, May 11th:
Storage and CPU performance problems fixed.
 
Last edited:

jesec

Inactive Recognized Developer / Contributor
Jan 29, 2015
804
6,214
SF Bay Area
Guides:

HOW-TO FLASH THIS KERNEL:
1. Make sure TWRP is installed. (https://forum.xda-developers.com/showpost.php?p=72004368&postcount=3)
2. Download the flashable zip from download section in OP.
3. Transfer the zip to your phone.
4. Go to "Install" menu of TWRP and flash the zip.



(for devs) HOW-TO PROPERLY INTEGRATE THIS KERNEL TO YOUR ROM:
1. Download the flashable zip from download section in OP.
2. Rename the downloaded zip to "jesse-kernel.zip".
3. Delete original boot.img of your ROM.
4. Place the zip to kernel (create if not exists) folder of your ROM.
Example Structure:
->META-INF
->->com
->->...
->system
->->app
->->priv-app
->->...
->kernel
->->jesse-kernel.zip
->...
5. Delete original kernel flashing lines from installation script (META-INF/com/google/android/updater-script) of your ROM.
tip: usually start with package_extract_file("boot.img" after "ui_print("Extracting boot image...");".
6. Add these lines to the installation script of your ROM:
Code:
ui_print("Installing Jesse's Kernel...");
package_extract_dir("kernel", "/tmp/kernel");
run_program("/sbin/busybox", "unzip", "/tmp/kernel/jesse-kernel.zip", "META-INF/com/google/android/*", "-d", "/tmp/kernel");
set_perm(0, 1000, 0755, "/tmp/kernel/META-INF/com/google/android/update-binary");
run_program("/tmp/kernel/META-INF/com/google/android/update-binary", "3", "1", "/tmp/kernel/jesse-kernel.zip");
ui_print("Jesse's Kernel Installed");



(for devs) Tips about kernel compile: (Note: NO technical support for such things. Inquires will be ignored.)
1. There is a kernel build script in my kernel. (build_kernel.sh)
2. Two variables must be specified before you can run it.
export $KERNEL_TOOLCHAIN=/path/to/your-toolchain/bin/toolchain-prefix-
export $KERNEL_DTBTOOL=/path/to/dtbtool/dtbhtoolExynos
3. If you are building for Galaxy S8 (dreamlte), run it with "bash build_kernel.sh dreamlte".
If you are building for Galaxy S8+ (dream2lte), run it with "bash build_kernel.sh dream2lte".
4. Default output dir is "../kernel_out". "dt.img" and "Image" will be generated.
 
Last edited:

Tok11

Member
Dec 21, 2015
16
7
State-wide provider blackout the very second i flashed. No worries!
 
Last edited:

redplate

Senior Member
Feb 8, 2009
874
254
what is the difference between stock and semi stock?
Got the same question.. I've installed it, but it doesn't seem to have any advanced governors, etc on board.

But still very nice to have the first kernel on!!!!! :cool:

Jesec, you're just great :cowboy:

Btw: does the name Jesse's kernel was chosen on purpose or just a mistake? :eek:
 

tiho5

Senior Member
Jun 21, 2010
2,639
999
Bulgaria
Thank you for the first custom kernel

Can we expect a permissive kernel for this device soon?
 

jesec

Inactive Recognized Developer / Contributor
Jan 29, 2015
804
6,214
SF Bay Area
It is SELinux permissive. That enforcing is fake actually. (just let userspace think status change is successful) ;)

Changelog: (May. 9th)
I fixed a bug of script. Now new build (May. 9th) should work fine on non-plus variants.
 

metuskale

Senior Member
Aug 3, 2010
208
24
Feels good to see development here, used to love ur work on GS7.
One question, where can I get the Magisk Flashable? I got it when flashed the ROM but I cant flash the ROM over the kernel or I will lose the kernel :eek:
 

tiho5

Senior Member
Jun 21, 2010
2,639
999
Bulgaria
It is SELinux permissive. That enforcing is fake actually. (just let userspace think status change is successful) ;)

Changelog: (May. 9th)
I fixed a bug of script. Now new build (May. 9th) should work fine on non-plus variants.

Great.
Thanks. That's what I've been waiting for.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 99
    Jesse's Kernel (I am not good at naming sth.) ;)
    for Galaxy S8 and S8+ (Exynos)
    (G950F/FD/X/N) and (G955F/FD/X/N)


    This kernel is designed to be SIMPLE and STABLE with improved performance and battery life.
    Just flash and enjoy your phone. No additional setting required.

    This kernel has 3 series,
    • Early-Testing: Contains latest changes, experimental features. This build will be released to testers only.
    • Stable: Changes, features in early-testing build will be picked into stable once they are confirmed to be stable.
    • Semi-Stock: For those who want maximum stability or ROM developers who want to integrate with their ROMs. This build is very similar to stock but it will have some useful changes like SELinux permissive, disabled security features, etc. This build will be released to public in low update frequency(usuallly based on stock kernel changes).

    LICENSE:
    Kernel sources:
    GPL 2.0: https://www.gnu.org/licenses/gpl-2.0.html


    Kernel binaries, patches to system, ramdisk modifications, etc.:
    Code:
    You can use, mirror, modify and/or integrate it/them with your own works, WITHOUT inform me, subject to the following conditions:
    1. Credit MUST be given. (a possible form: thanks *** for ***)
    2. Warranty is NOT provided. I am not responsible for any possible losses. 
    3. Authorization may be TERMINATED for selected person without prior notice under certain conditions (subject to my sole discretion). 
    4. Above conditions must be preserved. (You have the responsibilities to inform your users about these conditions. A possible way is to add "LICENSE: (link to this post)" to "thanks *** for ***")

    Features:
    STABLE: (Mainline)
    • Toolchain: Linaro GCC 7
    • Linux 4.4.79 (updated from 4.4.13)
    • Always SELinux Permissive (with fake SELinux Enforcing status.)
    • Kernel Security Features, Root Restrictions are DISABLED
    • Linux mainline random generator driver backported
    • Max frequency of big cores set to 2.5GHz
    • Other optimizations, backports for best performance and power efficiency
    • BFQ I/O scheduler
    • Versioning: VERSION x.x
    • Release Frequency: Regularly

    SEMI-STOCK:
    • Toolchain: Linaro GCC 7
    • Linux 4.4.79 (updated from 4.4.13)
    • Always SELinux Permissive (with fake SELinux Enforcing status.)
    • Kernel Security Features, Root Restrictions are DISABLED
    • Versioning: RELEASE x
    • Release Frequency: Rare (only stock kernel updates and bug fixes)

    NOTE: As of VERSION 0.3 and SEMI-STOCK RELEASE 6, AQG5 or newer bootloader is required.
    Download:
    STABLE:
    VERSION 0.3: (Source Tag)
    https://www.androidfilehost.com/?fid=673368273298975229

    SEMI-STOCK:
    RELEASE 6: (Source Tag)
    https://www.androidfilehost.com/?fid=889764386195919462

    NOTE:
    1. Existing Bluetooth Pairs, Wi-Fi Passwords will be forgot when you flash this kernel for the first time.
    2. You need to flash root package (Magisk or SuperSU) AFTER flash kernel if you want root access.

    Show your appreciation:
    Click Thanks!, Rate 5-star or/and Donate to me. ;)

    Get informed about news and updates:
    Join Official Telegram Channel
    AND/OR
    Follow this project on XDA

    XDA:DevDB Information
    Jesse's Kernel for Galaxy S8 and S8+, Kernel for the Samsung Galaxy S8+

    Contributors
    jesec
    Source Code: https://github.com/jesec/android_kernel_samsung_universal8895

    Kernel Special Features:

    Version Information
    Status: Stable

    Created 2017-05-08
    Last Updated 2017-07-30
    27
    Changelog:

    STABLE:

    VERSION 0.3, July 29th:
    Merge AQG5 kernel updates from Samsung
    Merge Linux 4.4.79
    Merge BFQ-v8r12
    Backport latest F2FS
    Switch to latest Linaro GCC 7 toolchain with processor specific tunes.
    Use -Ofast optimization.


    VERSION 0.2.2, June 26th:
    Merge AQF7 kernel updates from Samsung
    Merge Linux 4.4.74

    VERSION 0.2.1, May 27th:
    Merge AQE5 kernel updates from Samsung
    Merge Linux 4.4.69
    Update system patches

    VERSION 0.2, May 19th:
    Updated to Linux 4.4.68
    Full F2FS file system support (with latest driver backported from Linux 4.12) is added.
    Possible kernel panic (random reboots) addressed.
    Possible battery life improvements for CPU frequency boosts.
    BFQ is added and set as the default I/O scheduler.
    VoLTE & VoWiFi problem fixed. (verified by testers)
    NOTE: VoLTE logo may not be an accurate indicator of VoLTE support.

    VERSION 0.1, May 11th:
    Initial Release.


    SEMI-STOCK:

    RELEASE 6, July 29th:
    Merge AQG5 kernel updates from Samsung
    Merge Linux 4.4.79
    Backport latest F2FS
    Switch to latest Linaro GCC 7 toolchain with processor specific tunes.
    Use -Ofast optimization.

    RELEASE 5, June 26th:
    Merge AQF7 kernel updates from Samsung
    Merge Linux 4.4.74

    RELEASE 4, May 27th:
    Merge AQE5 kernel updates from Samsung
    Merge Linux 4.4.69
    Update system patches

    RELEASE 3, May 19th:
    Updated to Linux 4.4.68
    Switched to GCC 8.X
    Full F2FS file system support (with latest driver backported from Linux 4.12) is added.
    Possible kernel panic (random reboots) addressed.
    VoLTE & VoWiFi problem fixed. (verified by testers)
    NOTE: VoLTE logo may not be an accurate indicator of VoLTE support.

    RELEASE 2, May 11th:
    Storage and CPU performance problems fixed.
    23
    Guides:

    HOW-TO FLASH THIS KERNEL:
    1. Make sure TWRP is installed. (https://forum.xda-developers.com/showpost.php?p=72004368&postcount=3)
    2. Download the flashable zip from download section in OP.
    3. Transfer the zip to your phone.
    4. Go to "Install" menu of TWRP and flash the zip.



    (for devs) HOW-TO PROPERLY INTEGRATE THIS KERNEL TO YOUR ROM:
    1. Download the flashable zip from download section in OP.
    2. Rename the downloaded zip to "jesse-kernel.zip".
    3. Delete original boot.img of your ROM.
    4. Place the zip to kernel (create if not exists) folder of your ROM.
    Example Structure:
    ->META-INF
    ->->com
    ->->...
    ->system
    ->->app
    ->->priv-app
    ->->...
    ->kernel
    ->->jesse-kernel.zip
    ->...
    5. Delete original kernel flashing lines from installation script (META-INF/com/google/android/updater-script) of your ROM.
    tip: usually start with package_extract_file("boot.img" after "ui_print("Extracting boot image...");".
    6. Add these lines to the installation script of your ROM:
    Code:
    ui_print("Installing Jesse's Kernel...");
    package_extract_dir("kernel", "/tmp/kernel");
    run_program("/sbin/busybox", "unzip", "/tmp/kernel/jesse-kernel.zip", "META-INF/com/google/android/*", "-d", "/tmp/kernel");
    set_perm(0, 1000, 0755, "/tmp/kernel/META-INF/com/google/android/update-binary");
    run_program("/tmp/kernel/META-INF/com/google/android/update-binary", "3", "1", "/tmp/kernel/jesse-kernel.zip");
    ui_print("Jesse's Kernel Installed");



    (for devs) Tips about kernel compile: (Note: NO technical support for such things. Inquires will be ignored.)
    1. There is a kernel build script in my kernel. (build_kernel.sh)
    2. Two variables must be specified before you can run it.
    export $KERNEL_TOOLCHAIN=/path/to/your-toolchain/bin/toolchain-prefix-
    export $KERNEL_DTBTOOL=/path/to/dtbtool/dtbhtoolExynos
    3. If you are building for Galaxy S8 (dreamlte), run it with "bash build_kernel.sh dreamlte".
    If you are building for Galaxy S8+ (dream2lte), run it with "bash build_kernel.sh dream2lte".
    4. Default output dir is "../kernel_out". "dt.img" and "Image" will be generated.
    17
    Changelog: (July 29)

    STABLE:
    VERSION 0.3:
    Merge AQG5 kernel updates from Samsung
    Merge Linux 4.4.79
    Merge BFQ-v8r12
    Backport latest F2FS
    Switch to latest Linaro GCC 7 toolchain with processor specific tunes.
    Use -Ofast optimization.

    SEMI-STOCK:
    RELEASE 6:
    Merge AQG5 kernel updates from Samsung
    Merge Linux 4.4.79
    Backport latest F2FS
    Switch to latest Linaro GCC 7 toolchain with processor specific tunes.
    Use -Ofast optimization.
    16
    New builds released.
    VERSION 0.2.1:
    https://www.androidfilehost.com/?fid=673368273298957840
    SEMI-STOCK RELEASE 4:
    https://www.androidfilehost.com/?fid=745425885120735048

    This is a small update.
    Changelog:
    1. Merge AQE5 kernel updates from Samsung.
    2. Merge Linux 4.4.69
    3. Update system patches