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

Search This thread

jesec

Inactive Recognized Developer / Contributor
Jan 29, 2015
804
6,183
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,183
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,183
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:

redplate

Senior Member
Feb 8, 2009
867
248
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:
 

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,524
    950
    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