[Samsung Galaxy S9 & S9+ (Snapdragon) ROMs, Kernels] klabit87:
As most of you guys know Magisk will not work for us on the international snapdragon S9 and S9+

So, I have made a custom kernel that will allow us to have root on stock pie firmware.

You will need to format data unless you want to stay encrypted. If you wish to stay encrypted you can.

Files needed:

klabit kernel V6.5

FK Manager g9650 kernel download configuration link

FK Manager g9600 kernel download configuration link

FK Manager g9650 GSI kernel download configuration link

FK Manager g9600 GSI kernel download configuration link

Copy the g96x0_q_vx.zip to your external sd card.

Make sure you have TWRP installed

Flash the g96x0_q_vx.zip

Flash Magisk

Reboot to system.

If you currently do not have a working lockscreen/pin/fingerprint setup, you will need to restore your stock boot.img either via backup or extract your boot.img from the official firmware and flash the img then flash my kernel.

Changelog:

V6.5
[LIST]
Merge OSRC: N9600ZHU5FTK1
[/LIST]
V6.4
[LIST]
Merge OSRC: G9650ZHS6DTG2
Merge OSRC: G9650ZHS7ETH1
Remove additinal SafetyNet flags from /proc/cmdline
Proc: Fake CMDline
Merge OSRC: G9650ZHU7ETI3
Merge OSRC: G9650ZHU7ETJ2
Expanded GSI kernel compatibility for Android 11 support
[/LIST]
V6.3
[LIST]
Merge OSRC: G9650ZHS6DTF1
Merge OSRC: G9650ZCU6ETF6
[/LIST]
V6.2
[LIST]
Merge OSRC: G9650ZCS6DTD5
[/LIST]
V6.1
[LIST]
Add powersave governor
Add conservative governor
Add ondemand governor
[/LIST]
V6.0
[LIST]
[*]7e123dad108c Import crownqlte && starqlte defconfigs
[*]824f70f8d070 Add .gitignore
[*]7d3612a88cbf Import G9600 and N9600 defconfig && initialize
[*]c1e7a35e59a7 Import G9600 and N9600 dts with verity removed
[*]0a587fae1745 Add option for gsi mtp driver
[*]10b851dfaa03 star2qlte: Initialize defconfig
[*]5f38f4cc0d99 Remove verity
[*]101dedaf7aec scripts: remove localversion + from kernel version strings
[*]c1b726584344 selinux: enable selinux faking
[*]70ed91e9c15a star2qltechn: Enable Samsung MTP driver
[*]9c88019d96fd drivers: usb: add separated Samsung MTP option
[*]6c54f88a648b star2qltechn: Update defconfig
[*]13a223ea3ed9 dts: disable avb,verify
[*]5c36fed8d37b Regen configs
[*]9a37c1921037 (osrc) OSRC: G9650ZCU6DTA9
[/LIST]
V5.9
- Small version bump to 5.9.
- Integrate auto patch of security patch date since Samsung slow af. (Credit to [user=4280397]@djb77[/user])
- Better GSI compatibility.
- Better OneUI compatibility for recent/most up-to-date firmwares.
V5.8
- Fix compilation issue for n9600
- Version update to V5.8
- Add changelog
- Update crownqlte defconfig
- OSRC: G9650ZCU6CSJ2
- Merge SM-N9600 defconfig and dts
V5.7
- Merge G9650ZHU5CSH6 source which includes fix for the recent zero day on android binder driver
- Prevents potential wake-lock while on wireless charger
- Merge G9650ZCU5CSI3 source which includes some Note9 camera integrations
- Adds support for wireless adapters based on Broadcom 43436 chipset
- Increased wifi security
- Increased wifi hotspot security
- DHD 100.13.36.1 - 2019.07.31
Security Patch
- CS8424803(By Choi Hyeonu) SI-14869: Moved the length check routine for the nlioc variable before accessing it in the wl_cfgvendor_priv_string_handler() function

DHD 100.13.36 - 2019.05.24
New Feature
- CS5350346(By Jung Junyeop) Fake AP - Fixed to provide correct channel information for beacon receive result
- Enable to support Fake AP
(This patch should be sync up with FW 13.38.60(4361B0), FW 13.50.10(4361B2) or higher version)
- WIPS attack warning reporting
(This patch should be sync up with FW 13.38.60(4361B0), FW 13.50.10(4361B2) or higher version)

Security Patch
- CS8069399(By Kang Hyung Wook) SI-13926 Fixed use-after-free in the wl_cfg80211_set_mgmt_vndr_ies function

Others
- CS7939107(By Kim Tae-Yong) Included memdump value prints in the dump information
- Added missing options into the Kconfig file

DHD 100.13.32 - 2019.04.26
Kernel Panic
- CS7696936(By Min SungBin) Fix misspelling of CUSTOMER_HW4_DEBUG definition
- CS7706946(By Min SungBin) Fixed to avoid kernel panic due to race condition of cfg->scan_request

Security Patch
- CS7860687(By Kang Hyung Wook) SI-12455: Fixed use-after-free write in dhd_set_monitor() function
- CS7949699(By Choi Hyeonu) SI-14074: Fixed Security issue, Potential stack-based buffer overflow in dhd_pktfilter_offload_set
- CS7956197(By Choi Hyeonu) SI-14130: Fixed the multiple NULL pointer dereference in wl_cfgvendor.c

Others
- CS6844193(By MinSoo Kim) Changed log level of LQCM report
- CS7099653(By Nitesh Suthar) Enabled frameburst to enhance throughput for BCM43436 projects
- CS7362375(By Gu Ja Heon) Added Private command in order to receive every beacon in Suspend
- CS7526157(By Suthar Nitesh) Fixed DualBandConcurrency field in .softap.info
- CS7765577(By Park Heebae) Wifi-on time reduction by reading necessary CIS information
- CS7827257(By Choi Hyeonu) Fixed kernel panic caused by invalid memory access
- CS7834653(By Kang MinHo) Removed redundant TX error prints during suspend in SDIO
- CS7884436(By Beom Jip Kim) Fixed to cancel p2p listen offloading by framework scan request
- CS7892037(By Sun Yinghan) Fixed to support W2018/KELLY Android P OS upgrade

DHD 100.13.31.1 - 2019.04.19
Others
- CS4726130(By Min Hyun-Ki) Added User priority to AC mapping in case of various DSCP types that may not compatible with RFC8325
- CS6951980(By Min Hyun-Ki) Changed the UP to AC mapping of CS6 based on the RFC8325

DHD 100.13.31 - 2019.02.15
Others
- CS7241767(By LEE EONJI) Added more logs for the DPC schedule error debugging
- CS7299641(By Kim MinSoo) Enabled LB_TXP for MSM8998 Platform
- CS7323375(By kwon Jaecheol) Enabled the softap.info file support in BCM4359 platform
- CS7362527(By Hyeonu Choi) Cancel P2P listen offloading operation when SoftAP brings up
- CS7363197(By Junhak Lim) Fixed prevent issues
- CS7386068(By Lee Gibum) Disabled frameburst for "2.4Ghz + SoftAP" (Drame & Great projects)
- Fixed the scan failure when p2p listen offload is triggered
- Fixed to abort scan when connection/disconnection requested
- Prevented the bus suspend by the PCIe Runtime PM from abnormal ISR status

V5.5
- Merge G9650ZHU5CSG8 source which includes some stock Samsung debugging sanity checks and increase of stability
- Prevent possible IO/wake-locks when accessing sdcard
V5.4
- Merge G9650ZCU5CSFB source which includes additional ethernet support and additional battery stats support
- Removed more verity from the appended dtb
- Finally fixed FK Manager compatibility!! (ie no longer need to reflash Magisk)
V5.3
- Added Conservative gov for G9600 (sorry I could have sworn I included this in V5.2)
- Fix stability issues
- Remove Interactive governor
V5
- Removed Defex
- Removed Samsung rooting protections
- Removed RKP (Realtime Kernel Protection)
- Added Conservative cpu governor
- Sanity checks for video drivers and the power share feature
- Added support for broadcom 43456 wireless cards
- Added ddhd random mac scanning
- Added more security to wifi hotspot to protect from ARP attacks,
- CS7111512(By LEE EONJI) Detect turn on failure in factory binary
- CS7299329(By Kim Yu-Kyoung) Fixed SoftAP CTS fail due to interface creation failure
- Blocked WLC_E_ROAM event to fix wakes-up frequently under weak signal AP
- Changed error results of GETSTAINFO private command to BCME_UNSUPPORTED if the BIGDATA_SOFTAP is not supported
- Fixed kernel panic during mfg mode interface creation
- CS7091164(By Kang Hyung Wook) SI-13561: Fixed kernel heap overflow security issue at dhdpcie_downloadvars
- CS7091371(By Kang Hyung Wook) SI-13584: Fixed kernel panic due to access to not allocated memory
- CS6785460(By Jeong Min Cheol) Send HANG event to the framework for the sequential private command failure
- CS7003600(By Kang MinHo) Support android private command for restoring roam/scan parameters
- CS7094302(By Yoon YeJi) Fixed connect failure caused by connection information not initialized
- CS7103552(By LEE EONJI) Fixed the recovery routine to fix the D3_ACK timeout issue
- CS7119174(By Kim Seong Hwan) Avoid HANG event indication due to sequential private command failures in case of unsupported error
- CS7137399(By Yoon YeJi) Fixed connect failure caused by connection information not initialized
- CS7141596(By Suthar Nitesh) Fixed MHS operates with STA mac address
- Control HANG report for consecutive Android private command failure by sysfs
- Increased the NUMBER_SEQUENTIAL_PRIVCMD_ERRORS from 4 to 7
- Taking a SOCRAM dump in the sequential private command error case
- CS6935603(By Hong Min Whoa) SI-13638: Fixed Kernel warning message by restructuring the DMA_LOCK and DMA_UNLOCK
- CS7091347(By Kang Hyung Wook) SI-13585: Fixed kernel panic due to write buffer exceeds the size
- CS6650676(YeJi Yoon) Fixed mismatch connect status between framework and DHD
- CS6678972(By Hwang MinSik) Fixed TIS/TRP test failure and high current issue from sysfs change
- CS6715508(By Choi Hyeonu) Exported sysfs for ADPS bad AP list
- CS6744438(By Yoon Jae Ho) Fixed duplicated roaming notification to WPA supplicant during FT roaming
- CS6769798(By Kim Beom Jip) Fixed for GraceR/4359c0 P OS P2P connection failure issue
- CS6856753(By kwon Jaecheol) Added the dual interface capability filed in the SoftAP info file (.softap.info)
- CS6870793(By Tae-Yong Kim) Fixed prevent issues
- CS6871138(By Lee Gibum) Configure AER registers to debug PCIE ERROR ATTN issues
- CS6880409(By Sung-gi Choi) Fixed prevent issues
- CS6887298(By Min Whoa Hong) Fixed prevent issues
- CS6928243(By Sung-gi Choi) Fixed prevent issues
- CS6935678(By Hwang MinSik) Fixed array out of bound issue from sysfs mac address
- CS6984743(By Min SungBin) Print DPC schedule request timestamp for ROT issue
- CS6985032(By LEE EONJI) Enabled DHD_RECOVER_TIMEOUT for D3_ACK missing case on 4359C0 and 4361B0
- CS6993967(By Jeong Min Cheol) Added last_d3_inform_timestamp to check root cause of ROT
- CS7042030(By Min SungBin) Implemented the new API to sync up the status between RC and EP to avoid unwanted L1ss configuration
- Changed the DHD_COMMON_DUMP_PATH for non-BCM4375 Android P OS projects
- DHD driven random mac enable by default for 4361B0
- Enable frameburst for standalone 2.4GHz SoftAP on Dream and Great project
- Wi-Fi Sharing-Lite feature support for Android P OS
- CS6461136(By Min SungBin) Fixed for kernel panic due to stack overflow at get_roamscan_channel_list()
- CS6302259(By Kang Hyung Wook) Supported DHD driven Random MAC feature
- CS6324532(By Choi Hyeonu) Port files under /data/vendor/conn to sysfs after Android P OS
- CS6396705(By Min SungBin) Added additional timestamp log to debug resumed on timeout issue
- CS6398346(By Hyeonu Choi) Fixed prevent issues
- CS6516071(By Choi Hyeonu) Fixed for corner case of schedule_timeout() API at dhd_timeout_expired()
- CS6536174(By Choi Hyeonu) CS6433018(By Choi Hyeonu) Fixed prevent issues
- CS6594869(By Min SungBin) Triggering Kernel panic for the scheduling problem only if the memdump mode is enabled
- CS6600348(By LEE EONJI) Implemented 4359c0/GraceR P OS Wi-Fi sharing feature
- CS6658253(By Choi Hyeonu) Fixed random mac setting issue instead of otp mac
- CS6678972(By Hwang MinSik) Fixed TIS/TRP test failure and high current issue from sysfs change
- CS6713692(By Kim MinSoo) Fixed NET_RX delay issue
- CS6769798(By Kim Beom Jip) Fixed for GraceR/4359c0 P OS P2P connection failure issue
- CS6791516(By Lee Gibum) Fixed the unexpected frameburst enable on standalone SoftAP in 2GHz
- CS6791556(By Hwang MinSik) Removed CR/LF character at .cid.info including sysfs
- CS6809444(By Hwang MinSik) Unified DHD_COMMON_DUMP_PATH for the Android P OS project of all chips
- Changed the timestamp value to Kernel local time to debug resumed on timeout and scan timeout issues
- Defer RxBuf post size based on the rxbufpost_sz iovar return value for monitor mode
- Disabled DHD_LB_IRQSET for Exynos8890 platform
- Dump AER HeaderLog registers in configuration space for PCIe debugging
- Dumping PCIe registers for PCIe debugging enhancement
- Fixed VHT features enable issue from GraceR project
- Fixed unexpected RSDB mode configuration for legacy RSDB chip
- Implemented the debug code to check if the scan timeout or resumed on timeout happens due to the DPC scheduling problem
- Refined TDLS initialization code

Kernel source: https://github.com/klabit87/android_kernel_samsung_sdm845

Thanks to @tylerhole and the @stang5litre test group for testing anything I throw at them!

Thanks to @djb77 for the ramdisk patches

You guys are the best!