更新日志
R17
- 合并CAF "LA.UM.9.12.r1-12500-SMxx50.0"
- 更新dts到 "LA.UM.9.12.r1-12000-SMxx50.0"
- 更新ion驱动
- 更新simple lmk 驱动
- 修复 "优化触摸屏延迟和中断CPU使用" 可能存在的问题
- 稍微提升了一点调度激进程度以优化缓慢滑动时的抖动情况
R16.3
- 回退到CAF基线(4.19.157),不再追Linux Stable
( 至少修复了睡死,也许还能解决一堆奇奇怪怪的问题 )
- 内联编译自旋锁相关函数以优化性能
- 修复了能量模型中错误的大核IPC
R16.2
- Linux 4.19.198
- 换回了原来的调度策略
R16.1
- 合并CAF "LA.UM.9.12.r1-12200-SMxx50.QSSI12.0"
- 调度上的一点点优化
- 也许修复了wifi有时断开连接
R16
- Linux 4.19.197
- 合并CAF "LA.UM.9.12.r1-12000-SMxx50.0"
- 重做调度策略
- 优化触摸屏延迟和中断CPU使用
R15.1
- Linux 4.19.196
- 修复投屏后一段时间死机
- 修复第三方ROM上,VPN启动后网速跑的飞快并且手机严重卡顿
(不再默认使用BBR拥塞算法,如有需要请手动在 Horizon内核控制中心 中开启)
- 重新使用 Simple LMK
- Horizon内核控制中心 已更新至1.1版本
R15
- 合并CAF "LA.UM.9.12.r1-11800-SMxx50.QSSI12.0"
- 修复了上一版可能存在的随机严重卡顿
- 放宽了一些处理器性能限制,使高频使用变得积极一些
- 为WALT负载追踪使用更小的时间窗口,减少响应延迟
- 清理了一下电量监控驱动的屎山,修复了一堆官核上存在的问题
(比如:熄屏后电流刷新频率失去限制、一加8T上smooth parameter永远无法被应用、有时电流数据很长时间不更新)
(外加,禁用了非常NT的熄屏时每隔N分钟就唤醒设备刷新电量 和 每隔N分钟或M次唤醒就保持唤醒P秒来刷新电量的经典操作)
(副作用:深度睡眠时电量不再刷新,刚唤醒时掉电可能变快)(但也比睡眠时额外耗电来刷新电量要好的多)
R14.3
- Linux 4.19.195
- 修复第三方ROM上谷歌相册视频播放卡顿
R14.2
- Linux 4.19.193
- 换回了userspace lmkd
( 改善了后台能力 )
- 同步一加源码更新
R14.1
- 修复打开终端时死机
R14
- 合并CAF "LA.UM.9.12.r1-11500-SMxx50.0"
- 合并Linux 4.19.192
- 优化相机启动速度
R13.3
- 修复子系统错误时,设备被强制重启 (比如wifi崩溃)
R13.2
- 合并Linux 4.19.191
- 修复基带崩溃时无法自行恢复
- 清理了一些无用的一加代码
- Lineage版本:同步代码更新,适配新的FOD实现
(注意:如果第三方ROM侧未适配本次指纹更新,可能出现掉指纹,请等待维护者适配)
R13.1
- 合并Linux 4.19.190
- 修复一加8T上ZRAM压缩算法未正确设置为lz4
- 强制负载PID map生成到小核上,也许能进一步改善原神gc时掉帧
R13
- 合并CAF "LA.UM.9.12.r1-11300-SMxx50.0"
- 加入了 fuse short circuit 以改进 /sdcard 目录下的存储性能
- 尝试忽略基带崩溃事件,我也不知道会怎么样
R12.4
- 合并Linux 4.19.186 187 188 189
- 修复一加8T上无法安装系统更新
- 20倍加速了PID map生成,也许能改善原神在运行gc时的掉帧
- 延长了vmstat更新时间以减小开销
- 修复三段式按键被拨动时产生kernel warning
- 应用了一些vmalloc和jump label的补丁
- 启用了jump label以进行分支优化
- 启用了ZRAM碎片整理
- 上游更新Simple LMK
- 还有一些杂项优化,懒得说了
R12.3
- 也许修复了USB和PD充电可能存在的问题
- 基带崩溃不再会导致内核崩溃,但是你依然需要手动重启设备才能使基带再次正常工作
R12.2
- 合并Linux 4.19.184 185
- 加入来自arter97的f2fs rapid gc
- 稍微加快了一点UFS闪存在无操作时休眠的速度
- 也许能阻止基带崩溃导致内核崩溃
R12.1
- 修复随机死机重启 (主要发生在8T上)
R12
- 合并Linux 4.19.183
- 合并CAF "LA.UM.9.12.r1-11000-SMxx50.0"
- 从一加开源代码更新了一堆驱动
( 似乎修复了 8T低电量时充电反复中断 和 某些更新批次的8T无法使用wifi )
- 启用UFS HPB特性
- 可选启用UFS Turbo Write特性
- 支持了类原生
- 加入了一个控制中心软件以方便操作游戏模式、强制240Hz采样率、UFS TW等特性
- 上述三条特性详见主帖中的“下载与安装版块”
R11.2
- 合并Linux 4.19.180
- 合并Linux 4.19.181
- 合并Linux 4.19.182
- 加入了震动马达强度调节
(很阴间 不推荐乱改)
- 为中核加回了1.2GHz频率
- 使用来自sultan的重写ashmem驱动
R11.1
- 合并CAF “LA.UM.9.12.r1-10800-SMxx50.0”
- 合并Linux 4.19.179
- 修复日志中SurfaceFlinger报错
R11
- 合并CAF “LA.UM.9.12.r1-10700-SMxx50.0”
(包括内核本体、wifi、音频、视频驱动更新)
- 合并Linux 4.19.178
- 上游更新lz4 内存压缩算法到linux主线
- 使用swappiness=160的积极内存压缩策略
- 启用4GB ZRAM
- 为小核加回了691mhz
- 阻止EAS对cpuidle的影响
- 还有些常规优化补丁懒得说了
R10.5
- 合并Linux 4.19.177
- 移除内核侧cpu & devfreq温控驱动,现在打原神不会出现中核突然掉到最低频,大核满载的情况了
- 改善了移动数据下的深度休眠,现在不再会出现移动数据下深度休眠时间极少的情况了
(实测和wifi下差不多)
(大幅度改善了移动网络下的待机功耗,从原来的4%-5%/h 到现在的 约2%/h)
(也许会有副作用,但是还没有试出来)
- 应用一些常规的优化补丁
R10.4
- 合并Linux 4.19.176
- 上游更新kernel devicetree到"LA.UM.9.12.r1-10000-SMxx50.0"
- 为中核和大核加回能效最高的最低频
- 修复优化过的能量模型未能完全覆盖默认能量模型
R10.3
- 合并Linux 4.19.175
- 从官方系统 qssi-user-11-RP1A.201005.001-2102011801-release-keys 更新dtbo中显示面板相关命令
R10.2
- 修复氢OS云同步
- 修复赛博朋克主题
R10.1
- 合并Linux 4.19.174
- 精简优化config
- 不再编译非本机型的dtbo,现在刷错机型会直接fb
- 上面两条使内核包尺寸缩小~30%
R10
- 合并CAF "LA.UM.9.12.r1-10300-SMxx50.0"
(包括内核本体,wifi,音频,显示驱动更新)
- 清理wifi驱动的调试内容和无用代码,缩小内核尺寸500kB
- 不再允许用户空间直接触发process reclaim,后台保活能力似乎明显增强了
- 移除振动驱动对于cpuidle的控制,不再允许任何东西修改cpuidle开关
R9.3
- 合并Linux 4.19.173
- 从这一版开始不再上传boot镜像,而是上传可刷写的内核包。上方的刷入教程已经发生改变。
R9.2
- 合并Linux 4.19.172
- 修复ufs调频造成的工作队列过载
- 优化memcpy,memmove,memcmp,crc32,checksum,xor等库
- 强制将unbound工作队列负载在小核上
- 提高devfreq监控的工作队列优先级
- 启用定期的熄屏后内存碎片整理
- 还有些乱七八糟
- dtbo镜像相比R9.1没有改变,无需重刷
8P有个9.2.1
- 修复插帧花屏
R9.1
- 合并Linux 4.19.168 169 170 171
- 切换到高频方案
(我既没有说高频方案一定耗电也没说高频方案一定流畅)
(以后也有可能换回去)
- 可能修复了新批次8T wifi打不开的问题
- 不再在游戏时限制CPU频率
- 优化高刷下GPU调频器的表现
- dtbo镜像相比R9没有改变,无需重刷
R9
- 合并CAF "LA.UM.9.12.r1-10000-SMxx50.0"
(包括内核本体、显示驱动、音频驱动、视频驱动、wifi驱动更新)
- 合并Linux 4.19.166
- 合并Linux 4.19.167
- 加入通过内核日志查看CPU电压的支持
- dtbo镜像相比R8.4没有改变,无需重刷
R8.4
- 合并Linux 4.19.165
- 移除ZRAM & SWAP支持
(我简单在后台堆应用试了下,Simple LMK下ZRAM对后台能力似乎并没有什么加成,那不如关了来省电)
- dtbo镜像相比R8.3没有改变,无需重刷
R8.3
- 合并Linux 4.19.164
- dtbo镜像相比R8.2没有改变,无需重刷
R8.2
- 不再强制显示、触摸屏中断及线程运行在大核以节省电量
- 不再在切换应用时主动升频小核,反正也没什么用
- 为“显示”CPU组的任务启动动态CPU组分配,在切换应用时强制将其丢到大核以保障性能
- 修复小核负载过高时界面可能卡顿的问题
- 放宽触摸屏对CPU延迟的要求以节省电量
- 放宽UFS闪存对CPU延迟的要求以节省电量
- 将各处放宽的延迟要求与骁龙865的各C-State对齐
- 移除了schedhorizon调速器的iowait升频
- 不再强制ION进行4k页面分配
- 更新一加8/8P的基准boot镜像到氧OB5
- 更新一加8T的基准boot镜像到最新氢稳定版
- 修复强制240Hz在进入,退出游戏后失效的问题
- 更新内置Magisk到v21.2
- 还有啥我忘了
- dtbo镜像相比R8.1没有改变,无需重刷
- 特此庆祝865战未来
R8.1
- 重新编译所有触摸驱动
- dtbo镜像相比R8没有改变,无需重刷
R8
- 合并高通CAF "LA.UM.9.12.r1-09500-SMxx50.0"
(包括内核本体、wifi驱动、音频驱动、视频驱动、显示驱动更新)
- 编译一加的param分区读写驱动,现在也许不会丢赛博朋克主题了?
- 优化一加8/8P触摸屏驱动的pm_qos使用
- 为ufs驱动重新启用pm_qos
- 不再编译无用触摸屏驱动
-----以下调整全部来自kerneltoast-----
- 使用100Hz的时钟中断频率以节能
- 不再允许中断依附多个CPU
- 加入了一些对pm_qos框架的优化调整
- 优化ufs驱动的pm_qos使用
- 优化cpuidle框架
- 强制将显示驱动、触摸驱动以及lmk的重要任务及中断运行在大核上
- 清理显示驱动代码,并优化pm_qos的使用
- 使用重写的iommu与ion驱动
- 还有一大堆杂七杂八的调整和优化
d34f71c8198a irqchip/gic-v3: Remove pr_devel message containing smp_processor_id()
4a3b0212cc2e mbcache: Speed up cache entry creation
04fa02b80b63 pinctrl: msm: Remove explicit barriers from mmio ops where unneeded
3c2aa77fcad7 locking/rwsem: Don't hog RCU read lock while optimistically spinning
c12e1628287c locking/mutex: Don't hog RCU read lock while optimistically spinning
12489b96dc7d android_kabi: Don't carve out ABI reservations in various structs
7bbcf4d97367 scatterlist: Don't allocate sg lists using __get_free_page
16756e7c4903 dma-buf/sync_file: Remove debug names from sync data structures
- 至于这些到底是正优化还是负优化,得用一段时间才知道
- dtbo镜像相比R7.2没有改变,无需重刷
R7.2
- 合并Linux 4.19.163
- dtbo镜像相比R7.1没有改变,无需重刷
R7.1
- 合并Linux 4.19.162
- 重新启用cpuidle lpm-level的预测功能
- 使用fq_codel流控算法
- 默认启用tcp的ecn机制
- 不再强制面板使用ULPS休眠
- dtbo镜像相比R7没有改变,无需重刷
R7
- 合并高通CAF "LA.UM.9.12.r1-09300-SMxx50.0"
(包括内核本体,wifi驱动,音频驱动,显示驱动更新)
- 合并Linux 4.19.161
- 编译并启用了vDSO32(32位应用的虚拟动态共享对象支持)
谷歌说:可以使电池续航时间提升 0.4%,并有助于改进其他方面的性能
- 不再在熄屏时主动下线大核,现在熄屏指纹唤醒更快,而且某些需要熄屏工作的应用响应慢的情况也应该得到了改善
- 不再使用s2idle的休眠模式,原因是上一条更新内容
- 不再为一加8T和一加8P强制240Hz触控采样率,但是你依旧可以通过往/proc/touchpanel/force_game_switch_enable写1来在8T/8P上启用全局240Hz触控采样率
- 清理了wifi驱动的rx唤醒锁
- 禁用了wifi驱动的一些调试代码
- 重新对齐了GPU休眠延迟、输入升频延迟与面板ULPS(Ultra Low Power State)模式的延迟
- 强制允许面板使用ULPS模式与ULPS休眠
- 强制允许面板在休眠时禁用phy电源供应
- 启用Clang ThinLTO编译优化
- 降低f2fs gc线程的优先级以避免资源争用
- 禁用了"加急RCU"以省电
- 移除一处调试内存空间,内存总量增加8MB
- 禁用了cpuidle lpm_level驱动的预测功能以增加深度C-State的时间
- 启用了arm64的快速引用计数检查
- 使用预读以优化内核原子操作速度
- 还有啥我忘了
- dtbo镜像相比R6.4没有改变,无需重刷
R6.4
- 合并Linux 4.19.160
- dtbo镜像相比R6.3没有改变,无需重刷
R6.3
- 合并Linux 4.19.159
- dtbo镜像相比R6.2没有改变,无需重刷
R6.2
- 合并Linux 4.19.158
- 使用s2idle休眠模式
- 应用了一些触摸屏驱动的精简优化
- dtbo镜像相比R6.1没有改变,无需重刷
R6.1
- 更新Proton Clang编译器版本
dtbo镜像已更新:
- 修复上一版由于释放了过多内存导致可能随机死机的问题
R6
- 合并Linux 4.19.157
- 合并高通CAF “LA.UM.9.12.r1-09000-SMxx50.0”
(包括:内核本体、wifi驱动、显示驱动、音频驱动、视频驱动更新)
- 合并Simple Lmk上游更新
- 更新内置的wireguard版本到v1.0.20201112
- 为一加8T & 8Pro默认启用全程240Hz触控采样率 (一加8由于硬件限制,只能全程180Hz)
- 允许在低刷新率模式下使用高触控采样率,现在60Hz模式下也默认使用180Hz(一加8)/240Hz(8Pro&8T)的触控采样率
- 更新镜像的内置Magisk版本到v21.1
dtbo镜像已更新:
- 系统可用内存总量增加12MB
R5.5
- 合并Linux 4.19.156
- 启用 Simple Lmk 作为低内存回收机制
- 禁用用户空间内存回收机制
- 为vdso启用用户空间的CNTVCT_EL0访问以加速vdso请求
- dtbo镜像相比R5.4没有改变,无需重刷
R5.4
- 合并Linux 4.19.155
- dtbo镜像相比R5.3没有改变,无需重刷
R5.3
- 修复AOD指纹解锁时核心震荡上下线
- 修复一处屏幕开关判断逻辑
- 优化AOD指纹解锁动画流畅度
- dtbo镜像相比R5.2没有改变,无需重刷
R5.2
- 优化熄屏指纹加速逻辑,修复有时CPU4莫名下线
- 修复了一个由于之前驱动更新导致调整指纹hal优先级的东西失效的问题
- 优化进入多任务界面时的流畅性
- 优化应用启动速度
- 优化应用切换流畅性
- dtbo镜像相比R5.1没有改变,无需重刷
R5.1
- 改进熄屏(AOD)指纹识别速度
- dtbo镜像相比R5没有改变,无需重刷
R5
- 合并Linux 4.19.154
- 修复一加8T相机
- 移植了一个来自Linux 5.0+的补丁,使得大内存的区域的虚拟地址映射提速20倍
- 禁用特权访问仿真,提速系统调用2倍
- dtbo镜像相比R4没有改变,无需重刷
R4
- 合并Linux 4.19.153
- 合并高通CAF “LA.UM.9.12.r1-08900-SMxx50.0”
(包括内核本体、wifi驱动、显示驱动、音频驱动、视频驱动更新)
- 更新一加8和8Pro的boot分区基础镜像至氧OB3
- 8T相机尚未修复
- dtbo镜像相比R3没有改变,无需重刷
R3
- 合并一加最新开源驱动更新
- 加入一加8T支持
- 移除大核1.6GHz和中核1.2GHz过滤频率
- 启用动态升压升频
- 启用中核1.2GHz升频
- 允许前台任务优先负载大核
- 放宽最大允许的无输入事件持续升频时间至3s(改善滑屏后松手的掉帧)
- 以上5条改善了国内毒瘤掉帧,但是代价是~1%/h的额外耗电,换算过来就是纯亮屏续航减少~1小时
- 以上几条造成的性能改变:
UI Bench
- Jitter: ~0.3ms -> ~0.2ms
- Total duration: ~4ms -> ~3ms
- 本版本dtbo镜像相比于R2有改变,加入了一加8T支持
R2
- 合并Linux 4.19.152
- 内核本体合并更新高通CAF "LA.UM.9.12.r1-08600-SMxx50.0"
- wifi驱动合并更新到"LA.UM.9.12.r1-08600-SMxx50.0"
- 显示、视频驱动合并更新到"LA.UM.9.12.r1-08600-SMxx50.0"
- dtbo镜像相比R1.1没有改变,无需重刷
R1.1
- 合并Linux 4.19.151
- dtbo镜像相比R1没有改变,无需重刷
R1
- 没啥bug那就正式版了
- 合并Linux 4.19.150
- 启用了ntfs & exfat 文件系统驱动
- dtbo镜像相比B2没有改变,无需重刷
B2
- 上游更新到Linux 4.19.149
- 上游更新显示&音频&视频驱动到CAF"LA.UM.9.12.r1-08300-SMxx50.0"
- 加入了Klapse支持
- 清除了一些无用的架构勘误
- 为小8移除无线充电驱动
- 为小8移除插帧驱动
- 这一版开始编译dtbo,刷入后会多一个触摸屏手套模式特性(然并卵)
( 只需往文件 /proc/touchpanel/glove_mode_enable 写1即可开启 )
B1
- 第一版