Development [Kernel][12.04.2023][Android 13] Kirisakura 3.0.1 for Sony Xperia 1 III aka "Sagami"

Search This thread

Freak07

Recognized Developer / Recognized Contributor
Jan 2, 2011
6,348
22,459
Thank you for a Great kernel!
Is it possible to add support for nethunter pr just support for adding wifi adapters?

@Freak07
Sorry I don´t have any plans for that and I´m not familiar with this.
Do you have a resource where I can look at it?

Is it possible to force enable 4k from the kernel or does it need a custom ROM?
If you don't want it enabled automatically (like Sony does) you need to flash a custom rom but if you want it on stock you need to flash some module idk I haven't looked into it
There's currently no way to always enable 4k on Android 13 sadly, not even magisk modules, unless I use a custom ROM (which I don't want because they are all in a testing phase and not 100% stable)
I guess it's my fault to have upgraded from A11...
Are you 100% sure custom ROMs actually do proper 4k? I´m not familiar with custom ROMs on this device, but if you use the vendor display hals and don´t build everything from source it might not.


I can modify the display nodes via kernel on stock rom so only the 4k nodes are present. That will make the phone run always in "4k" mode, that´s usually only triggered on supported content. However that´s still "only" upscaled 2k quality and not completely 4k as it used to be in Android 11.
Since that behaviour started on A12 Sony has improved that mechanism of upscaling multiple times, which results in better upscaled quality, but it´s still not the same as running "proper" 4k rendering (as was possible in A11)
What´s happening at the moment: On supported content, the phone switches to 4k display timings for the panel itself but the rendering is upscaled 2k.
 
Last edited:

MK73DS

Senior Member
Dec 25, 2014
228
46
25
Asus ZenFone 2
Samsung Galaxy S7
Are you 100% sure custom ROMs actually do proper 4k? I´m not familiar with custom ROMs on this device, but if you use the vendor display hals and don´t build everything from source it might not.


I can modify the display nodes via kernel on stock rom so only the 4k nodes are present. That will make the phone run always in "4k" mode, that´s usually only triggered on supported content. However that´s still "only" upscaled 2k quality and not completely 4k as it used to be in Android 11.
Since that behaviour started on A12 Sony has improved that mechanism of upscaling multiple times, which results in better upscaled quality, but it´s still not the same as running "proper" 4k rendering (as was possible in A11)
What´s happening at the moment: On supported content, the phone switches to 4k display timings but the rendering is upscaled 2k.

I never tried it myself but I thought AOSP does true 4k. Maybe I'm wrong.

However, it's really disappointing that 4k rendering is not possible on A13. I genuinely dinner understand why they put a 4k(ish) pannel on their phone if we can't even use it. Upscaled 2k, even with good algorithms, still looks worse than native 2k on a 2k panel...
 

Freak07

Recognized Developer / Recognized Contributor
Jan 2, 2011
6,348
22,459
Do you mean before or after I flash A13? I hope I'm not a pain, I was on unrootable phones for far too long.
Update the phone to the A13 firmware. That will overwrite the kernel anyway, as it flashes entire firmware.
Then re-root your phone and flash the kernel for A13.
 
  • Like
Reactions: derin38

steso90

Senior Member
Jan 15, 2014
221
44
Sweden
Sony Xperia XZ Premium
I think it will work if you add wifi adapter driver.

Im running nethunter via app and if i run lsusb in terminal it finds my wifi adapter but it wont come on.

here is a guide how to port nethunter to a device but i dont know if its enough

Sorry I don´t have any plans for that and I´m not familiar with this.
Do you have a resource where I can look at it?
@Freak07
 

Sakuu

Senior Member
Mar 29, 2020
325
123
Sony Xperia 10 III
Sony Xperia 1 III
Sorry I don´t have any plans for that and I´m not familiar with this.
Do you have a resource where I can look at it?




Are you 100% sure custom ROMs actually do proper 4k? I´m not familiar with custom ROMs on this device, but if you use the vendor display hals and don´t build everything from source it might not.


I can modify the display nodes via kernel on stock rom so only the 4k nodes are present. That will make the phone run always in "4k" mode, that´s usually only triggered on supported content. However that´s still "only" upscaled 2k quality and not completely 4k as it used to be in Android 11.
Since that behaviour started on A12 Sony has improved that mechanism of upscaling multiple times, which results in better upscaled quality, but it´s still not the same as running "proper" 4k rendering (as was possible in A11)
What´s happening at the moment: On supported content, the phone switches to 4k display timings for the panel itself but the rendering is upscaled 2k.
Yes custom roms do 100% use it since I and bbn were the only testers for a while and I was daily driving his LOS builds for a few months and with certainty I can tell you the 4k switch worked, now I can't tell you if that switch is in spark though since it was built by noodle and not bbn but I don't see any reason it shouldn't aside from it being a different rom I guess.
 

Sakuu

Senior Member
Mar 29, 2020
325
123
Sony Xperia 10 III
Sony Xperia 1 III
Sorry I don´t have any plans for that and I´m not familiar with this.
Do you have a resource where I can look at it?




Are you 100% sure custom ROMs actually do proper 4k? I´m not familiar with custom ROMs on this device, but if you use the vendor display hals and don´t build everything from source it might not.


I can modify the display nodes via kernel on stock rom so only the 4k nodes are present. That will make the phone run always in "4k" mode, that´s usually only triggered on supported content. However that´s still "only" upscaled 2k quality and not completely 4k as it used to be in Android 11.
Since that behaviour started on A12 Sony has improved that mechanism of upscaling multiple times, which results in better upscaled quality, but it´s still not the same as running "proper" 4k rendering (as was possible in A11)
What´s happening at the moment: On supported content, the phone switches to 4k display timings for the panel itself but the rendering is upscaled 2k.
Also about that upscaling thing... It's interesting gphotos says the screenshot is in 4k. Also about the switching... Well it's a bit different on custom ROM it's more like how Samsung does it not instantaneous and it kinda messes the DPI but I am 99% sure it's 4k since the 1096p part gets shoved in 1 corner, like on a 4k display which is 4x 1080l (kinda hard to explain but all you need to do is go back to the home screen and you'll notice it's way sharper)
 

bentree

Senior Member
Apr 30, 2011
203
70
cooktown
Sony Xperia 1 III
Update to 3.0.0

Hey guys and girls,

Alright. The source code for Xperia 1 III for Android 13 firmware was released a few days ago. Quite a nice surprise as I anticipated a longer waiting time.
I rebased the entire kernel on top of the A13 source code from Sony spending the better part of my free time over the weekend. :)
The kernel is fully compiled from source with a lot of optimizations as well as latest CAF-Upstream and linux-stable.

I´ll update the OP to reflect all the changes.

More changes can be found in the Changelog below:


Changelog:
- Import kernel source from 61.2.A.0.382
- Linux-Stable upstream bumped to 5.4.229
- latest qcom-upstream
- add ssg-io scheduler from samsung and make it default (less overhead and better tuned towards android)
- slight update to RCU
- keep all previous features and improvements intact
- for more details please check the first post
- other improvements and tweaks please check github if you´re interested in details


Download:
Attached to this post as AFH is currently not working correctly.



Instructions can be found in the OP!
But look at this post too :)

Have fun, enjoy the kernel and your phone.

Donations are not mandatory but very welcome.
If you like my work and want to buy me a coffee/green tea to keep development going: http://paypal.me/freak07
I can confirm this also works with the latest update for Taiwan and SEA users. 61.2.A.0.388. Boots nice and fast.
 

Refuzeiv

New member
Feb 7, 2019
1
0
Sony Xperia 1 V
I can confirm this is working on my Sony Xperia 5 III. I flashed this in hopes to gain better temps. I try to use this phone for livestreaming but whenever the battery goes over 40c it hard throttles my phone and camera performance. My stream will drop frames heavily and looks god awful. Is there any way to fix this?

Like can you modify the kernel a bit to increase the thermal limit on the battery?

Right now I cant stream inside at normal ambient room temps without it causing performance drop after heating up. It works perfectly okay outside tho.
 

Freak07

Recognized Developer / Recognized Contributor
Jan 2, 2011
6,348
22,459
Is it possible to lower voltage on cpu or gpu?
I think someone else was talking about it but cant remember where @Freak07
CPU I don't know but for GPU use KonaBess
Just a word of advise. There have been dead devices due to undervolting on other devices with sd888 before resulting in a damaged mobo that needed to be replaced.

I know it's "generally only known" to happen on overvolting or too much overclock, but there have been a few cases.

The second advise. The gains are marginal at best. :)

Understand those two points and continue at your own risk if . :)

To answer the initial question: GPU possible, CPU not possible.
 
  • Like
Reactions: Pandemic
Just a word of advise. There have been dead devices due to undervolting on other devices with sd888 before resulting in a damaged mobo that needed to be replaced.

I know it's "generally only known" to happen on overvolting or too much overclock, but there have been a few cases.

The second advise. The gains are marginal at best. :)

Understand those two points and continue at your own risk if . :)

To answer the initial question: GPU possible, CPU not possible.
Thats very clear bro, thanks 🤜🤛
 

MK73DS

Senior Member
Dec 25, 2014
228
46
25
Asus ZenFone 2
Samsung Galaxy S7
Just a word of advise. There have been dead devices due to undervolting on other devices with sd888 before resulting in a damaged mobo that needed to be replaced.

I know it's "generally only known" to happen on overvolting or too much overclock, but there have been a few cases.

The second advise. The gains are marginal at best. :)

Understand those two points and continue at your own risk if . :)

To answer the initial question: GPU possible, CPU not possible.

Yeah, you always need to be careful when messing with voltage. I found the gains to be more than negligible thought. As always, your mileage may vary.
 

steso90

Senior Member
Jan 15, 2014
221
44
Sweden
Sony Xperia XZ Premium
anyone know any guide how to add nethunter support to a kernel?
Every guide i find is in a diffrent language or not dumb enough so i can understand.
I have my own linux computer and some basic knowledge
 

Freak07

Recognized Developer / Recognized Contributor
Jan 2, 2011
6,348
22,459
  • Like
Reactions: FiDra and Pandemic

Top Liked Posts

  • There are no posts matching your filters.
  • 11
    Kirisakura-Kernel for the Sony Xperia 1 III

    Hello everyone,

    To keep it short: Here is Kirisakura - Kernel for the Sony Xperia 1 III aka Sagami. Sagami is the internal codename for this years development platform of Sony Mark III devices. Please note this kernel is made to run only on Xperia 1 III.
    I would appreciate if everybody that flashes the kernel, reads at least once through this opening post and the following ones.

    Kirisakura - Kernel is designed to bring a handful of beneficial features to the device, while ensuring excellent performance and smoothness to get you safely through the day!
    If you expect a custom kernel to magically improve your devices battery life manifold and this is your only priority then this might not be the right place for you.
    However the kernel is built to keep battery life close to the same as you would experience the on stock kernel while being tuned to perform better in various UI related benchmarks. The same benches are used by google to verify and ensure UI smoothness on the Pixel devices.
    There´s also a cpu-battery saver mode that cuts back the CPU max- freqs, but without the disadvantages like delayed notifications from built into the system user-space power-saving modes.
    If that got your curious, I welcome you to continue reading if you´re still interested!

    The kernel includes a lot of improvements and contributions from other developers as well. Without this kernel would not exist.
    A big part of improvements originate from @arter97´s, @kdrag0n´s and @Sultanxda´s work. Many others contributed in some way or another to this kernel.
    A big thanks to all of them at this place!

    Now lets continue with a list of features in the next paragraph!


    Main Features:
    - Based on latest kernel sources from Sony for Android 12 and intended to be used on the latest Stock-Firmware
    - compiled with Clang 14.0.7 and built with -O3 speed optimizations
    - Linux-Stable-Upstream included to 5.4.202
    - upstreamed CAF base for the Snapdragon 888 (qcoms internal codename "lahaina")
    - CPU-Battery saver to be able to restrict max cpufreqs on the fly, without enabling powersaving modes that might cause missed notifications (more info here)
    - include important fixes/improvements from kernel/common
    - reduce power consumption during deep sleep
    - remove logging while device is suspended
    - add SSG-IO scheduler from samsung (less overhead, better tuned towards android)
    - disable various debugging mechanisms for drivers which are not needed on a perf build (e.g. binder)
    - disable selinux auditing (we don´t have to adress selinux denials running a stock rom)
    - disable unnecessary CPU errata for our specific SoC
    - implement LRNG (thanks @arter97, see arter kernel OP for more info )
    - Flashing the kernel will keep root!
    - Flashable via EXKM, FKM or TWRP (if available) on a rooted system!


    EAS related features:
    - Implement dynamic WALT-Window size depending on current FPS, collecting information about CPU-Load to provide more precise information for the scheduler
    - EAS implementation patched up to latest CAF state
    - updates from kernel/common
    - scheduler updates from sd888/ 5.4 kernel

    CPU related features:
    - Power saving workingqueues enabled by default (toggleable in EXKM)
    - Change various drivers (WLAN, MM, audio, charger, power, thermal, glink etc) to use power efficient workingqueues. This compliments EAS in general
    - improvements to cpufreq/times/stats
    - vdso32 patches as found on Google Pixel devices (brief documentation here) (CAF 5.4 default, keep for documentation)
    - remove event debug logging
    - disable broken irq detection, disable debugmon
    - improve suspend/resume from audio driver (caf-upstream for audio-kernel)
    - cpuidle: wake only cpus for which qos has changed (this allows cores to keep idle states better)
    - disable debugging during sleep states as per qcom recommendation
    - remove RTB logging to reduce overhead
    - disable trace_printk as it shouldn´t be used on production/perf kernel builds
    - enable suspend_skip_sync to save power during suspend/resume
    - disable edac and coresight (following google on the pixel kernels)
    - disable jtagv8 debugging as recommended by qcom for perf builds to avoid potential power, performance and memory penalty
    - disable s2idle in favor of deep idle state -> improves deep sleep drain (google initially used 2idle for improved suspend/resume latency on pixel 3 and pixel 4, but disabled it on pixel 5. qcom followed suit for sd 888, but apparently didn´t see google reverting it on pixel 5. Other OEMs such as Xiaomi or OnePlus already disabled s2idle on their SD888 devices in favor of deep- read more about s2idle vs deep here)

    GPU related features:
    - GPU driver updated to latest CAF-State
    - gpu/kgsl improvements from pixel 4/pixel 5 kernel
    - add low_prio_worker thread for gpu driver (Improves performance when tearing down processes (eg, via LMK) and not blocking currently running UI from submitting work to the GPU

    File System related features:
    - upstream BFQ-MQ to latest state in linux-mainline and default to 128KB readahead
    - improve memory allocations in kernfs
    - ufs improvements from pixel 4/ pixel 5 kernel
    - improve GC as to not interfere while user interaction is happening and prevent possible jitter or latency spikes

    Network related features:
    - Wireguard Support (Details)
    - advanced TCP algorithms enabled
    - use bbr as default TCP congestion algorithm (fasted algo according to this excellent research from @kdrag0n found here )
    - improved networking drivers from caf-upstream (especially wifi)
    - remove unnecessary wakelock from WLAN driver to reduce thousands of very short wakeups during a 7 hour deep sleep period
    - improved bluetooth performance (¹, ²)
    - Enable support for TTL spoofing

    Memory related features:
    - Speculative Page Faults left enabled (1. 2) (CAF 5.4 default, keep for documentation)
    - Fix various memory leaks in different subsystems
    - improved mm with patches from mainline
    - patches from kernel/common
    - improve memory allocations in various subsystems, video encode/decode, kernfs, cgroup
    - Backport to enable CONFIG_HAVE_MOVE_PMD (see here) , thanks @arter97
    - Backport to enable CONFIG_HAVE_MOVE_PUD (commit here) , thanks @arter97
    - free more RAM by removing unused reserved memory regions
    - mm: Micro-optimize PID map reads for arm64 (improves game performance, especially unity based games such as genshin impact)
    - MGLRU added (info here and here

    Security related features:
    - Control-Flow-Integration (CFI) and Link-Time-Optimization (LTO) (CAF 5.4 default, keep for documentation)
    - Use ThinLTO which was first used in the Pixel 4 XL Android R-Kernel instead of full LTO (CAF 5.4 default, keep for documentation)
    - Shadow Call Stack (SCS) Security-Feature ( 5.4 default, keep for documentation)
    - enable init_on_alloc for even more security, more information can be found in the commit message (CAF 5.4 default, keep for documentation)


    Misc Features:

    Wakelock Blocker:
    - advanced wakelock blocker with the ability to block any wakelocks (dangerous, use with caution)
    - please read [URL="https://arstechnica.com/gadgets/2018/08/p-is-for-power-how-google-tests-tracks-and-improves-android-battery-life/"]this for further info
    - blocking a kernel wakelock should only be done in case of firmware incompatabilities (WiFi network at work (can´t be changed) causes deep sleep to not work on the phone.) That´s the only use case I see for this feature. The kernel does not features this to improve battery life!

    Other features:
    - clean up asus drivers and fix a few warnings in kernel log
    - disable logging and debugging to make the kernel more lightweight in various places (includes binder, mm, vma, gpu, ipa etc)
    - fix several coding issues detected by newer Clang-Toolchains
    - enlarge dmesg size to ease debugging


    Flashing Guide, Download and Changelog

    Requirements:
    - unlocked Bootloader
    - USB-Debugging in developer options enabled
    - latest adb and fastboot binaries
    - working adb and fastboot environment
    - magisk root
    - a backup of stock boot.img or your magisk patched boot.img in case you want to go back to stock.

    How to flash the Kernel:
    1. Download the latest kernel.zip and make sure you have properly updated to the latest matching Firmware (check the feature list for the current firmware the source is based on). When there´s an OTA update for the Sony Xperia 1 III it takes Sony a while to release the source code for the new OS and me a while to build a new kernel. If you don´t want to face any issues, wait until I either release an updated kernel or give green light because there were no kernel changes.
    If you want to be sure there are no issues, always make sure to run the firmware the kernel is built for!
    If you feel adventurous and try in advance, make sure you have a backup ready!

    2. Flash the kernel.zip via latest TWRP (if available), EXKM or FKM app and do a full reboot.

    3. Reboot and profit.


    DOWNLOAD:
    Download is located always in this folder:

    Or attached to the release post starting with Android 13 as AFH is currently not working correctly

    Important: Read after Download
    Please take a look at the second post after flashing the kernel!

    Changelog:

    Android 11

    1.0.0 Initial Release
    1.0.1 https://forum.xda-developers.com/t/...xperia-1-iii-aka-sagami.4377449/post-86140929

    Android 12
    2.0.0
    Android 13
    3.0.0 https://forum.xda-developers.com/t/...xperia-1-iii-aka-sagami.4377449/post-88048199
    3.0.1 https://forum.xda-developers.com/t/...xperia-1-iii-aka-sagami.4377449/post-88404445

    Donations:
    Donations are not mandatory but very welcome if you want to support development or just buy me a coffee/tea :)
    If you like my work: http://paypal.me/freak07

    Credits:
    Sony for the development device, giving me the opportunity to create this project!
    @osm0sis for all his work, including the ak3 installer!
    @tbalden for being the best HTC, Pixel, OnePlus and now Asus wingman!
    @LeeDroid and @mwilky for their awesome roms and work I used on multiple devices!
    @Captain_Throwback for all the mentoring and guidance!
    @Eliminater74 for bringing me into the game and the Inspiration
    @nathanchance for his upstream guidance and assistance
    @RenderBroken for helping me out
    @flar2 for all his work
    @joshuous for all the help he provided to me in the past!
    @arter97 for giving me advice
    @kdrag0n for his help and advices!
    @topjohnwu for magisk!


    Source Code: https://github.com/freak07/Kirisakura_Sagami
    5
    Update to 2.0.0

    Hey guys and girls,


    Alright. The source code for Xperia 1 III for Android 12 firmware was finally released after 6 months of waiting time. 🥳
    USB connection issues are fixed now. Charger detection is fixed. Smart charging features work fine as well.

    The kernel is fully compiled from source with a lot of optimizations as well as latest CAF-Upstream and linux-stable.
    I´ll update the OP to reflect all the changes.

    More changes in the Changelog below:


    Changelog:
    - Import kernel source from 61.1.A.1.149 (works fine on latest a12 firmware)
    - Linux-Stable upstream bumped to 5.4.201
    - use prebuilt clang 14.0.7 for compilation
    - latest caf-upstream
    - for more details please check the first post
    - other improvements and tweaks please check github if you´re interested in details


    Download:



    Instructions can be found in the OP!
    But look at this post too :)

    Have fun, enjoy the kernel and your phone.

    Donations are not mandatory but very welcome.
    If you like my work and want to buy me a coffee/green tea to keep development going: http://paypal.me/freak07
    4
    Android 12 Kernel

    Hey everyone :)


    So I have to be honest with this post. It´s extremely frustrating for me that there´s no source code pushed yet for the Android 12 firmware. The first Android 12 Firmware (.149) was released at the beginning of January, with another update to .211 a while ago.

    No source whatsoever for A12 at this point. It´s frustrating after 2 months.
    I understand not every OEM has the ecosystem and means of google to push the source hours after the OTA is live, but 2 months is a really long time. It´s still a long time considering the kernel is based on a completely new qcom base and probably needs to be "re-edited" (deleting comments, wip progress marks, etc) before uploading the source archive in contrast to the more "simple" A11 updates, which is probably just a drag and drop operation and happened way more quickly.
    Given Sony more or less advertises their open source ambitions in various places it´s disappointing from my perspective.


    The A11 kernel source isn´t compatible with A12 and doesn´t boot.

    However the more I got frustrated over time I more or less hacked together a kernel for A12, which is working as best as its going to get without a matching source.
    That kernel is based on latest linux-stable and latest caf-upstream, with loads of other optimizations that were not in the A11 kernel, but were contained in my other kernels for 5.4 devices.

    The only real issue on that kernel is that usb port detection is wonky. It takes a while to detect a pc and for the usb file transfer dialog to pop up.
    My old Pixel charging brick works fine ( it takes a little while to get detected sometimes), while the stock charger only works if I connect the phone to my PC usb and directly afterwards to the stock sony charging brick.
    Otherwise there are no real issues for me.


    Feel free to test, but I probably won´t be able to fix any problems until we have a source code for the A12 kernel.
    4
    Feature Documentation:
    Here´s a brief documentation about some of the features included in the kernel that can be changed as the user desires.
    They can be accessed via either terminal, scripts or for example EXKM manager ( tools -> user settings).

    CPU-Frequency Limiting:
    Another option is CPU-Freq Limiting. You can now limit the CPU frequency to a few different levels with a sysfs interface. Original implementation is from @tbalden, I only changed it to be accessible via traditional root methods.
    Main Switch:
    sys/module/cpufreq/parameters/batterysaver
    Set this option to "1" to enable the feature

    Max-Frequency Selection (Input boosts, such as scrolling boost or app launching boosts will still apply, if touch boost restriction is not set to 1)
    sys/module/cpufreq/parameters/batterysaver_level
    Set this to "1" to restrict the max CPU-Freqs to 1,7GHZ/2,1GHZ/2,49GHZ (Little Cluster/Big Cluster/Prime Core)
    Set this to "2" to restrict the max CPU-Freqs to 1,6GHZ/1,7GHZ/2,0GHZ (Little Cluster/Big Cluster/Prime Core)
    Set this to "3" to restrict the max CPU-Freqs to 1,49GHZ/1,4GHZ/1,6GHZ (Little Cluster/Big Cluster/Prime Core)

    Touch-Boost Restriction
    sys/module/cpufreq/parameters/batterysaver_touch limiting
    Set this to "1" to restrict the powerhal from boosting over the limit defined in batterysaver_level
    Set this to "0" to allow the powerhal to boost above the values defined in batterysaver_level, but only during interaction with the Phone!

    Screenshots:
    View attachment 5309899View attachment 5309901View attachment 5309903


    This is for example very useful during gaming to prevent additional heat, if not the highest performance from the CPU is required. Check if the game is running fine on level 1 or 2, and you´ll notice much less heat. Powerdraw will be reduced as well.
    Another very useful trick while doing video calls or long extended navigation sessions with google maps to preserve battery or keep the phone from heating. Especially during summer if the ambient temperatures are high.
    This is a very easy way to preserve battery or reduce heat without toggling the battery save mode in settings as that restricts background data usage, which can lead to delayed notifications.
    4
    How to pass Safetynet after unlocking the bootloader

    With the introduction of hardware backed safetynet attestation, passing safetynet has become a lot more complicated.
    Some probably remember a while ago, flashing a kernel that forced some flags was enough to pass it. However these days are gone.
    Below is a short guide how to pass safetynet on phones that are flagged to use HW attestation (such as the ROG 5).

    1. Make sure you´re running latest magisk canary.
    2. In Magisk Manager enable both zygisk and deny list.
    4. Download the latest Universal Safety Net Fix from @kdrag0n ´s github for zygisk cand flash it in Magisk Manager. Reboot.
    5. Profit