Eclipse-Kernel Changelog

Eclipse-Kernel Changelog

Julival Bittencourt

Device: Xiaomi Stone (SM6375 / Snapdragon Holi)


πŸ”’ KernelSU & Root

[UPDATE] KernelSU inline driver update

Synced with backslashxx/KernelSU on 02/17/2026.

🌑️ CPU, Thermal & CPUFreq

[OPT] thermal: cpu_cooling: Optimize cpu_limits_set_level lookup (Holi)

Replaces sscanf with cpumask_test_cpu() to correctly identify the CPU cluster under thermal load. Reduces overhead and prevents null access.

[FIX] cpufreq: qcom-hw: Do not reduce frequency when freq_limit exceeds request

Fixes throttle exit condition: now always stops when DOMAIN_STATE >= PERF_STATE.

[FIX] cpufreq: cpu-boost: No boost when input_boost_ms <= 0

Prevents unnecessary boosting when boost interval is zero or negative.

[OPT] perf: Limit CPU event sampling to 5%

Restricts perf event CPU time usage to reduce overhead.


πŸ’Ύ Storage, Block & UFS

[CONFIG] stone_defconfig: F2FS with LZ4/ZSTD compression enabled

Active compression reduces physical I/O. Filesystem debugging disabled (CHECK_FS, STAT_FS, IO_TRACE).

[CONFIG] stone_defconfig: UFS HPB + QTI Inline Crypto enabled

Host Performance Booster reduces random read latency; hardware inline encryption enabled.

[CONFIG] stone_defconfig: WBT (Write-Back Throttling) enabled

CONFIG_BLK_WBT, BLK_WBT_SQ and BLK_WBT_MQ enabled. Reduces read latency during heavy writes.

[CONFIG] stone_defconfig: OPAL SED and cgroup I/O throttling

Hardware storage security and per-process/app QoS control.

[CONFIG] stone_defconfig: Storage optimization flag in cmdline

Adds ro.storage.optimize=1 to kernel cmdline to signal userspace optimizations.

[OPT] blk-throttle: 1ms latency target for flash storage

Flash has very low latency; threshold adjusted to 1ms.

[OPT] block: Interruptible waits in core/mq

Tasks can be preempted, reducing latency.

[OPT] blkdev: SSD mode and entropy collection enabled

Optimized for flash storage.

[OPT] blkdev: Max request size increased to 256

Improves sequential throughput.

[OPT] blkdev: Write Back Caching enabled

Reduces write operations to cache and backing storage.

[OPT] block: I/O statistics collection disabled

Removes extra latency caused by preemption disable during stats collection.

[OPT] block: ssg-iosched: Read/write expiration times adjusted

Previous values were too high for flash storage.

[OPT] ssg: max available ratio set to 25

Significant sequential read/write improvements observed in testing.

[FIX] scsi: ufs: Doorbell timeout increased to 40s

Prevents false timeouts during long UFS operations.

[FIX] scsi: ufs: Query request timeout increased to 3s

[FIX] scsi: ufs: UIC command timeout increased to 3s

[OPT] scsi: ufs: HBA enters LPM during clock gating

Saves more power by placing HBA into Low Power Mode after clocks are disabled.

[OPT] scsi: ufs: Reduced clock scaling latency

Doorbells rechecked every 20ms at most.

[FIX] scsi: ufs: System resume bug fix

RPM status properly updated after suspend resume.

[CLEAN] scsi: ufs: Multiple cleanups and refactors

Removed ufshcd_valid_tag(), converted quirks/caps to enum, WB buffer cleanup, grouped WB flags.


πŸ“ F2FS β€” Filesystem

[OPT] f2fs: I/O optimization β€” forced OPU and fixed prealloc

Removes check that forced IPU on small dirty pages; fixes permanent prealloc disable due to temporary ENOSPC.

[OPT] f2fs: Reduced latency GC in urgent mode

Limits victim search and fixes sleep in urgent mode (5ms instead of 5 minutes).

[OPT] f2fs: GC thread moved to idle scheduler class and ioprio idle

GC no longer interferes with user experience or other I/O.

[OPT] f2fs: Expanded NAT node cache and NID read-ahead

DEF_NAT_CACHE_THRESHOLD = 1,000,000; DEF_RA_NID_PAGES = 4. Improves app launch and gallery loading.

[OPT] f2fs: Extent cache with reduced lock contention

LRU update skipped if node is already hot.

[OPT] f2fs: Increased checkpoint interval and relaxed shrinker

Default checkpoint interval increased to 120s; shrinker less aggressive (nr >> 2).

[FIX] f2fs: Removal of uninitialized_var() and unused parameter

Code cleanup; removed unused variable and redundant parameter.


πŸ–₯️ Display & DRM

[REVERT] Revert: msm: kgsl: Disable GPU memory usage tracing

Reverts commit 3fbbe68 that disabled GPU memory usage tracing.

[FEAT] drivers: gpu: trace: CONFIG_TRACE_GPU_MEM selectable

Fixes kernel configuration requirement for matrix level 6.

[FEAT] techpack: drm/msm/sde: sysfs node for early wakeup

Allows triggering early wakeup via:

echo 1 > .../early_wakeup

[FIX] techpack/display: Idle state properly defined

Idle state now based on encoder SDE rc state.


πŸ‘† Input & Touchscreen

[FIX] input: focaltech: Simplified reset sequence and fixed AVDD GPIO

Removes unnecessary AVDD power cycling, fixes error paths and GPIO handling.


πŸ“Š Memory & ZRAM

[CONFIG] defconfig: ZRAM writeback enabled

Offloads cold pages to storage under high memory pressure.

[CONFIG] defconfig: ZRAM memory tracking enabled

Per-page access statistics for optimized writeback.


βš™οΈ Kernel & General Configuration

[CONFIG] stone_defconfig: RELR relocation packing enabled

Reduces relocation size and improves boot with modern toolchains (clang/lld).

[CONFIG] stone_defconfig: vDSO for 32-bit (COMPAT) apps

clock_gettime and gettimeofday without syscall for legacy apps.

[CLEAN] stone_defconfig: Removed duplicate SLUB_DEBUG entry

Avoided Kconfig override warning.

[FIX] drivers: block: zram: Removed invalid semicolon from Kconfig

Fixed Kconfig syntax in ZRAM_DEF_COMP.

[FIX] fs: bmap() now properly returns errors

Uses return value for errors and pointer for mapped block.

[FIX] fs/buffer.c: Add fscrypt support in block_read_full_page()

Decrypts after block read; required for ext4 encryption with blocksize != PAGE_SIZE.

[MISC] ANDROID: GKI: ANDROID_OEM_DATA in blk_mq_ctx

OEM field for custom GKI implementations.


🧩 BPF Backport Log β€” Linux 5.10

[BACKPORT] Include BPF from LineageOS Gerrit.

Report Page