From 668636253971be8c918f995ac2f81f84b0a2de10 Mon Sep 17 00:00:00 2001 From: Axymorrsen Date: Wed, 29 Jul 2026 14:46:53 +0800 Subject: [PATCH 1/3] docs: record OnePlus 13 16.0.9.401 upstream conflicts --- docs/UPSTREAM_SYNC_16.0.9.401.md | 170 +++++++++++++++++++++++++++++++ 1 file changed, 170 insertions(+) create mode 100644 docs/UPSTREAM_SYNC_16.0.9.401.md diff --git a/docs/UPSTREAM_SYNC_16.0.9.401.md b/docs/UPSTREAM_SYNC_16.0.9.401.md new file mode 100644 index 000000000000..7e334a81a415 --- /dev/null +++ b/docs/UPSTREAM_SYNC_16.0.9.401.md @@ -0,0 +1,170 @@ +# OnePlus 13 common 上游同步核验:16.0.9.401 + +更新时间:2026-07-29 + +## 1. 核验结论 + +| 项目 | 结果 | +|---|---| +| 本地分支 | `6.6-final` | +| 本地提交 | `83026e393bfba415d829516dcb6886d5070a12ed` | +| 本地 Makefile 版本 | Linux `6.6.126` | +| 官方版本 | `PJZ110_16.0.9.401(CN01)` | +| 官方 common 提交 | `e1b346b6b4f4096eb342ae3684838a942fd6f6c4` | +| 官方 Makefile 版本 | Linux `6.6.118` | +| Android common tag | `android15-6.6-2026-01_r22` | +| 共同祖先 | `5a0ffb447c1dbd82e8e3af7a98c4a629f4b6d143` | +| 本地领先 | 8,947 commits | +| 本地落后 | 5 official commits | +| 文本合并 | 有冲突 | +| 冲突路径 | 80 个 | +| 同步候选 PR | `#6`,保持 Draft | + +本地分支与官方分支存在共同祖先,但二者不是简单快进关系。本地 common 已经推进到 Linux 6.6.126,并包含大量自定义改动;官方 OnePlus 16.0.9.401 common 仍以 Linux 6.6.118 为版本号。因此本次工作不能描述为普通的“升级内核版本”,而是将 OnePlus/OPlus 官方设备与 Android common 更新移植到较新的自定义 common 基线上。 + +## 2. 冲突统计 + +| 类别 | 数量 | 主要风险 | +|---|---:|---| +| `drivers/` | 29 | USB、Type-C、IOMMU、蓝牙、NVMe、网络与电源驱动 | +| `fs/` | 17 | F2FS、EXT4、BTRFS、NTFS3、SMB/NFSD | +| `include/` | 13 | 调度、内存、vendor hooks、ABI 接口 | +| `android/` | 10 | ABI/KMI、AFDO、protected exports | +| `arch/` | 8 | ARM64 BPF、x86/mips/loongarch 修复与配置 | +| 其他 | 3 | `Makefile`、`.gitignore`、F2FS ABI 文档 | + +冲突数量不能用“只落后 5 个提交”来低估。这 5 个官方同步提交本身覆盖约 3,830 个文件。 + +## 3. 完整冲突路径 + +### 根目录与文档 + +- `.gitignore` +- `Makefile` +- `Documentation/ABI/testing/sysfs-fs-f2fs` + +### ABI / KMI / AFDO + +- `android/abi_gki_aarch64.stg` +- `android/abi_gki_aarch64_oplus` +- `android/abi_gki_aarch64_pixel_watch` +- `android/abi_gki_aarch64_sunxi` +- `android/abi_gki_aarch64_transsion` +- `android/abi_gki_aarch64_vivo` +- `android/abi_gki_aarch64_xiaomi` +- `android/abi_gki_protected_exports_aarch64` +- `android/gki/aarch64/afdo/README.md` +- `android/gki/aarch64/afdo/kernel.afdo` + +### 架构与配置 + +- `arch/arm64/configs/gki_defconfig` +- `arch/arm64/net/bpf_jit_comp.c` +- `arch/loongarch/net/bpf_jit.c` +- `arch/mips/mm/tlb-r4k.c` +- `arch/x86/configs/microdroid_defconfig` +- `arch/x86/kernel/cpu/microcode/amd.c` +- `arch/x86/kvm/svm/svm.c` +- `arch/x86/mm/kaslr.c` + +### 驱动 + +- `drivers/android/vendor_hooks.c` +- `drivers/bluetooth/btusb.c` +- `drivers/cpuidle/governors/menu.c` +- `drivers/gpio/gpio-regmap.c` +- `drivers/gpu/drm/amd/amdgpu/amdgpu_device.c` +- `drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c` +- `drivers/hid/hid-ids.h` +- `drivers/hid/hid-quirks.c` +- `drivers/hid/usbhid/hid-core.c` +- `drivers/hwmon/occ/common.c` +- `drivers/input/serio/i8042-acpipnpio.h` +- `drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3-kvm.c` +- `drivers/misc/mei/hw-me-regs.h` +- `drivers/misc/mei/pci-me.c` +- `drivers/net/can/rcar/rcar_canfd.c` +- `drivers/net/ethernet/mellanox/mlx5/core/en_dcbnl.c` +- `drivers/net/ethernet/mellanox/mlx5/core/fw_reset.c` +- `drivers/net/phy/mscc/mscc_main.c` +- `drivers/net/wireless/realtek/rtw88/sdio.c` +- `drivers/nvme/host/pci.c` +- `drivers/phy/broadcom/phy-bcm-ns-usb3.c` +- `drivers/phy/renesas/phy-rcar-gen3-usb2.c` +- `drivers/platform/x86/amd/pmc/pmc-quirks.c` +- `drivers/power/supply/cw2015_battery.c` +- `drivers/spi/spi-tegra210-quad.c` +- `drivers/usb/dwc3/dwc3-pci.c` +- `drivers/usb/gadget/legacy/raw_gadget.c` +- `drivers/usb/storage/unusual_devs.h` +- `drivers/usb/typec/tcpm/tcpm.c` + +### 文件系统 + +- `fs/btrfs/tree-log.c` +- `fs/ext4/orphan.c` +- `fs/ext4/super.c` +- `fs/ext4/xattr.c` +- `fs/f2fs/compress.c` +- `fs/f2fs/data.c` +- `fs/f2fs/f2fs.h` +- `fs/f2fs/gc.c` +- `fs/f2fs/super.c` +- `fs/hfsplus/unicode.c` +- `fs/nfsd/blocklayout.c` +- `fs/nfsd/nfs4proc.c` +- `fs/nfsd/vfs.c` +- `fs/ntfs3/inode.c` +- `fs/ntfs3/run.c` +- `fs/smb/client/smb2file.c` +- `fs/smb/server/smb2pdu.c` + +### 内核头文件与 hooks + +- `include/asm-generic/vmlinux.lds.h` +- `include/linux/mm.h` +- `include/linux/mm_types.h` +- `include/linux/pageblock-flags.h` +- `include/linux/sched.h` +- `include/linux/sched/task.h` +- `include/linux/zstd.h` +- `include/sound/pcm.h` +- `include/trace/hooks/dtask.h` +- `include/trace/hooks/mm.h` +- `include/trace/hooks/sched.h` +- `include/trace/hooks/vmscan.h` +- `include/uapi/linux/sched.h` + +## 4. 处理优先级 + +1. `Makefile`、版本号与 Android common tag:明确最终版本语义,禁止把 6.6.118 官方树直接覆盖到 6.6.126 本地树。 +2. ABI/KMI:先处理 `.stg`、OPlus symbol list、protected exports、AFDO,再运行 ABI 检查。 +3. `gki_defconfig`:逐项保留官方安全配置和项目必需功能,禁止整文件选择 ours/theirs。 +4. 调度与内存:`sched.h`、`sched/task.h`、`mm.h`、`mm_types.h`、vendor hooks 必须结合 BORE、wait/HMBIRD、ReSukiSU/SuSFS 等本地改动审核。 +5. F2FS/EXT4:先理解官方修复,再移植本地 ZRAM、压缩、文件系统和隐藏相关 hook。 +6. USB/Type-C/IOMMU/电源:这些路径可能直接影响启动、充电、外设和稳定性,必须保留独立提交边界。 +7. 其他非 OnePlus 设备驱动:按上游修复优先处理,但仍需保证 GKI/allmodconfig 不回归。 + +## 5. 禁止的解决方式 + +- 不使用 `git merge -s ours`。 +- 不整树选择 ours 或 theirs。 +- 不通过删除 ABI、symbol list、vendor hook 或配置项来消除冲突。 +- 不将“编译通过”视为 ABI、启动和运行时验证完成。 +- 不在未固定完整 `oneplus_13_b.xml` manifest 的情况下发布。 +- 不只更新 common 而忽略 msm-kernel、modules/devicetree、vendor_boot 和 vendor modules。 + +## 6. 合并前验证 + +- [ ] 80 个冲突全部逐文件解决并记录理由 +- [ ] `repo manifest -r` 固定完整 OKI revision +- [ ] `oplus_build_kernel.sh sun perf` clean build 成功 +- [ ] ABI/KMI 与 OPlus symbol list 检查通过 +- [ ] Image、vendor_boot、vendor modules 和 vermagic 匹配 +- [ ] AK3 打包与回退包完成 +- [ ] OnePlus 13 可重复启动和重启 +- [ ] 蜂窝、移动数据、Wi-Fi、蓝牙、相机、指纹正常 +- [ ] 充电、电池状态、温控、灭屏和深度休眠正常 +- [ ] Root、SuSFS、KPM、wait/HMBIRD/SCX、网络栈逐项验证 + +在这些检查完成前,同步 PR `#6` 必须保持 Draft。 From 3e36d696a83eab4af221c8c6be7a38394430e743 Mon Sep 17 00:00:00 2001 From: Axymorrsen Date: Wed, 29 Jul 2026 14:48:40 +0800 Subject: [PATCH 2/3] docs: clarify local and official OnePlus 13 common baselines --- README.md | 97 +++++++++++++++++++++++++++++++++---------------------- 1 file changed, 58 insertions(+), 39 deletions(-) diff --git a/README.md b/README.md index 25f557b0592e..fea0cc313d24 100644 --- a/README.md +++ b/README.md @@ -11,15 +11,13 @@ | 项目控制仓库 | [`Zhanfg/OnePlus13-kernel`](https://github.com/Zhanfg/OnePlus13-kernel) / `main` | 构建、补丁、AK3、测试、发布与文档 | | 本仓库 | `Zhanfg/android_kernel_common_oneplus_sm8750` / `6.6-final` | common 层自定义补丁和开发历史 | | 官方 manifest | [`OnePlusOSS/kernel_manifest`](https://github.com/OnePlusOSS/kernel_manifest) / `oneplus/sm8750` | 完整 OKI 工程入口,使用 `oneplus_13_b.xml` | -| 官方 common | [`OnePlusOSS/android_kernel_common_oneplus_sm8750`](https://github.com/OnePlusOSS/android_kernel_common_oneplus_sm8750) / `oneplus/sm8750_b_16.0.0_oneplus_13` | 本仓库的主要官方上游 | +| 官方 common | [`OnePlusOSS/android_kernel_common_oneplus_sm8750`](https://github.com/OnePlusOSS/android_kernel_common_oneplus_sm8750) / `oneplus/sm8750_b_16.0.0_oneplus_13` | common 官方上游 | +| 官方 msm-kernel | [`OnePlusOSS/android_kernel_oneplus_sm8750`](https://github.com/OnePlusOSS/android_kernel_oneplus_sm8750) | 平台内核与 OnePlus/OPlus 代码 | +| 官方 modules / DT | [`OnePlusOSS/android_kernel_modules_and_devicetree_oneplus_sm8750`](https://github.com/OnePlusOSS/android_kernel_modules_and_devicetree_oneplus_sm8750) | vendor modules 与设备树 | -完整工程还需要: +完整工程还需要 manifest 固定的 CodeLinaro、Kleaf/Bazel、工具链和其他依赖。 -- `OnePlusOSS/android_kernel_oneplus_sm8750` -- `OnePlusOSS/android_kernel_modules_and_devicetree_oneplus_sm8750` -- manifest 固定的 CodeLinaro / Kleaf / Bazel / 工具链依赖 - -## 当前官方基线 +## 当前基线与差异 最后核对:**2026-07-29**。 @@ -28,45 +26,69 @@ | 设备系统 | `PJZ110_16.0.9.401(CN01)` | | Manifest | `OnePlusOSS/kernel_manifest:oneplus/sm8750` | | Manifest 文件 | `oneplus_13_b.xml` | -| 官方 common 分支 | `oneplus/sm8750_b_16.0.0_oneplus_13` | | 官方 common 提交 | `e1b346b6b4f4096eb342ae3684838a942fd6f6c4` | -| Android common tag | `android15-6.6-2026-01_r22` | -| 内核系列 | Android 15 / Linux 6.6 | +| 官方 common 版本 | Linux `6.6.118` / `android15-6.6-2026-01_r22` | +| 官方 msm-kernel 提交 | `6028f47faddaa27700f8dd3a1d83906ea8f27170` | +| 官方 modules / DT 提交 | `d50b305f7da9e14715a25120a4ac7b1a4b8b97c3` | | 本地开发分支 | `6.6-final` | +| 本地 common 版本 | Linux `6.6.126` | +| 共同祖先 | `5a0ffb447c1dbd82e8e3af7a98c4a629f4b6d143` | +| 本地相对官方 | 领先 8,947 commits,落后 5 official commits | + +这里存在两套不同含义的版本: + +- **官方设备基线**:OnePlus 13 `16.0.9.401`,common Makefile 为 Linux 6.6.118。 +- **本地 common 开发基线**:`6.6-final`,Makefile 已推进到 Linux 6.6.126,并包含大量自定义补丁。 -上游提交会同步到只读跟踪分支: +因此不能通过整树覆盖把官方 6.6.118 直接写入本地 6.6.126,也不能把本次同步描述为普通内核版本升级。正确工作是把官方设备、安全、ABI 和 Android common 更新移植到当前自定义基线上。 + +## 当前上游同步状态 + +官方跟踪分支: ```text upstream/oneplus-sm8750-b-16.0.0-oneplus-13 ``` -跟踪分支只镜像官方 common,不包含本项目自定义补丁。 +该分支已精确镜像官方提交 `e1b346b6b4f4096eb342ae3684838a942fd6f6c4`。 -## 当前状态 +同步候选: -- `6.6-final` 包含本项目的 common 层自定义改动。 -- 当前分支最新本地提交包含 BORE 生命周期修复等本地补丁。 -- 官方 16.0.9.401 common 上游已经确认,但尚未宣称完整合入 `6.6-final`。 -- 自动同步只负责更新官方跟踪分支,并在能够安全合并时创建 Draft PR。 -- 无共同祖先或出现冲突时,工作流会停止并上传报告,不会覆盖 `6.6-final`。 -- 真机启动和运行时验证仍由完整 OKI 工程完成。 +```text +PR #6: chore: 同步 OnePlus 13 官方 common 16.0.9.401 +branch: sync/official-16.0.9.401-e1b346b6b +status: Draft / conflicts +``` + +实际 `merge-tree` 核验发现 **80 个冲突路径**。主要分布: + +- `drivers/`:29 +- `fs/`:17 +- `include/`:13 +- `android/` ABI/KMI/AFDO:10 +- `arch/`:8 +- 根目录与文档:3 -## 上游同步 +完整冲突清单和处理顺序见 [`docs/UPSTREAM_SYNC_16.0.9.401.md`](docs/UPSTREAM_SYNC_16.0.9.401.md)。在冲突、完整 OKI 构建和真机验收完成前,PR #6 必须保持 Draft。 + +## 自动上游核验 工作流: ```text .github/workflows/sync-upstream.yml +.github/workflows/verify-upstream-pr.yml ``` 行为: -1. 获取官方 common 最新提交。 -2. 强制更新独立的官方跟踪分支。 -3. 检查官方上游与 `6.6-final` 是否存在共同祖先。 -4. 有共同祖先且普通合并无文本冲突时,创建 `sync/upstream-*` 候选分支和 Draft PR。 -5. 无共同祖先或存在冲突时停止,并保存同步报告。 -6. 永不自动合并 `6.6-final`。 +1. 使用 blobless 历史获取和稀疏工作树,避免完整检出大型 common 仓库。 +2. 获取官方 common 最新提交。 +3. 更新独立官方跟踪分支。 +4. 检查共同祖先和提交差异。 +5. 使用非破坏性的 `git merge-tree` 检查文本冲突。 +6. 只有无冲突时才允许建立普通合并候选。 +7. 永不自动覆盖或合并 `6.6-final`。 详细规则见 [`UPSTREAM.md`](UPSTREAM.md)。 @@ -86,22 +108,19 @@ repo manifest -r -o manifest-pinned.xml ./kernel_platform/oplus/build/oplus_build_kernel.sh sun perf ``` -需要测试本仓库改动时,应在固定 manifest 的完整工作区内,将 `kernel_platform/common` 指向经过审核的本仓库提交,再重新进行完整构建。 +测试本仓库改动时,应在固定 manifest 的完整工作区内,将 `kernel_platform/common` 指向经过审核的本仓库提交,再执行 clean build。 ## 合并前检查 -每个上游同步候选至少需要: - -- [ ] 记录官方 common 提交 SHA +- [ ] 80 个冲突逐文件解决并记录理由 - [ ] 保存完整 `manifest-pinned.xml` -- [ ] 核对 common 与 msm-kernel / modules / DT 的版本匹配 -- [ ] 逐项审核本地调度、ZRAM、Root、网络和安全补丁 -- [ ] 完整 OKI clean build 成功 -- [ ] Image、vendor_boot 与 vendor modules 的 vermagic / ABI 匹配 -- [ ] OnePlus 13 / 对应 ColorOS 版本可重复启动 -- [ ] 蜂窝、Wi-Fi、蓝牙、相机、指纹、充电和休眠通过测试 -- [ ] Root、SuSFS、调度和网络功能通过测试 -- [ ] 回退包和恢复路径可用 +- [ ] common、msm-kernel、modules / DT revision 匹配 +- [ ] ABI/KMI、OPlus symbol list 和 AFDO 检查通过 +- [ ] `oplus_build_kernel.sh sun perf` clean build 成功 +- [ ] Image、vendor_boot、vendor modules 与 vermagic 匹配 +- [ ] OnePlus 13 / 对应 ColorOS 可重复启动和回退 +- [ ] 蜂窝、Wi-Fi、蓝牙、相机、指纹、充电、温控和休眠通过测试 +- [ ] Root、SuSFS、KPM、wait/HMBIRD/SCX 和网络功能通过测试 ## 分支策略 @@ -109,7 +128,7 @@ repo manifest -r -o manifest-pinned.xml |---|---| | `6.6-final` | 当前自定义 common 开发基线 | | `upstream/oneplus-sm8750-b-16.0.0-oneplus-13` | 官方 common 只读镜像 | -| `sync/upstream-*` | 自动生成的上游合并候选 | +| `sync/official-*` / `sync/upstream-*` | 固定官方提交的同步候选 | | `fix/*` | 单一问题修复 | | `feature/*` | 独立功能开发 | From 2c9934af4b1caa2c7927543fd7336f3cd99e653d Mon Sep 17 00:00:00 2001 From: Axymorrsen Date: Wed, 29 Jul 2026 14:49:19 +0800 Subject: [PATCH 3/3] docs: record current OnePlus 13 upstream integration status --- UPSTREAM.md | 82 +++++++++++++++++++++++++++++++++++------------------ 1 file changed, 55 insertions(+), 27 deletions(-) diff --git a/UPSTREAM.md b/UPSTREAM.md index 3458cfe9dd17..b559117546fb 100644 --- a/UPSTREAM.md +++ b/UPSTREAM.md @@ -28,7 +28,31 @@ Android common tag: android15-6.6-2026-01_r22 这些 SHA 只表示核对时各官方分支的 tip。正式构建必须保存 `OnePlusOSS/kernel_manifest:oneplus/sm8750` 下 `oneplus_13_b.xml` 对应的固定 revision manifest。 -## 2. 完整工程依赖 +## 2. 当前同步状态 + +| 项目 | 当前结果 | +|---|---| +| 本地分支 | `6.6-final` | +| 本地 common 版本 | Linux `6.6.126` | +| 官方 common 版本 | Linux `6.6.118` | +| 共同祖先 | `5a0ffb447c1dbd82e8e3af7a98c4a629f4b6d143` | +| 本地领先 | 8,947 commits | +| 本地落后 | 5 official commits | +| 官方镜像分支 | 已更新到 `e1b346b6b4f4096eb342ae3684838a942fd6f6c4` | +| 同步候选 | PR `#6` / Draft | +| 文本冲突 | 80 个路径 | + +官方 16.0.9.401 与本地 `6.6-final` 存在共同祖先,但不是普通快进。本地 common 已经推进到 6.6.126,而官方设备树仍以 6.6.118 为版本号。本次工作是将官方设备、安全、ABI 和 Android common 更新移植到本地较新内核基线上,不得通过整树覆盖完成。 + +完整冲突清单、风险分类和处理顺序见: + +```text +docs/UPSTREAM_SYNC_16.0.9.401.md +``` + +在 80 个冲突、完整 OKI clean build、ABI/KMI 和真机验收完成前,PR `#6` 必须保持 Draft。 + +## 3. 完整工程依赖 本仓库只对应 `kernel_platform/common`。上游审核时还必须同步检查: @@ -39,25 +63,25 @@ Android common tag: android15-6.6-2026-01_r22 不能只更新 common 后直接发布。 -## 3. 自动工作流行为 +## 4. 自动工作流行为 -`.github/workflows/sync-upstream.yml` 会: +`.github/workflows/sync-upstream.yml` 与 `.github/workflows/verify-upstream-pr.yml` 会: -1. 完整检出 `6.6-final` 历史。 +1. 使用 blobless 历史获取和稀疏工作树,避免完整检出大型 common 仓库。 2. 获取官方 common 分支。 3. 将官方 tip 强制同步到独立跟踪分支。 4. 记录本地 SHA、官方 SHA、内核版本和共同祖先。 -5. 有共同祖先时使用普通 `--no-ff` 合并创建候选。 -6. 候选无未解决文本冲突时推送 `sync/upstream-*` 分支并创建 Draft PR。 -7. 无共同祖先或出现冲突时停止,不创建误导性候选。 +5. 使用非破坏性的 `git merge-tree` 检查冲突。 +6. 只有不存在文本冲突时才允许建立普通合并候选。 +7. 无共同祖先或出现冲突时停止,不创建误导性自动合并结果。 8. 上传 Markdown 报告并写入 Actions Summary。 9. 永不直接修改或自动合并 `6.6-final`。 -跟踪分支的强制更新是预期行为,因为它只镜像官方浮动分支;本地开发提交不得放入该分支。 +跟踪分支的强制更新是预期行为,因为它只镜像官方浮动分支;本地开发提交不得放入该分支。正式同步应使用固定 SHA 的 `sync/official-*` 分支。 -## 4. 合并原则 +## 5. 合并原则 -1. 上游同步必须使用独立 PR。 +1. 上游同步必须使用独立 Draft PR。 2. 不使用 `git merge -s ours`、整树覆盖或删除冲突文件。 3. 设备、ABI、安全和构建修复应先理解官方意图,再移植本地功能。 4. 本地补丁按功能组保留清晰提交边界。 @@ -65,36 +89,40 @@ Android common tag: android15-6.6-2026-01_r22 - 官方 common SHA - 完整固定 manifest - 本地基线 SHA + - 本地与官方内核版本 - 冲突文件和处理方式 - 工具链与构建结果 - 真机验证结果 6. 未完成 Boot Verified 前不得进入 Stable 发布。 -## 5. 冲突处理顺序 +## 6. 冲突处理顺序 -1. ABI / KMI / symbol list -2. common 与 msm-kernel 接口 -3. vendor modules / device tree 依赖 -4. 构建系统、Kleaf / Bazel 和工具链 -5. Root / ReSukiSU / SuSFS / KPM -6. 调度器与 task / scheduler 结构 -7. ZRAM、内存、I/O 和文件系统 -8. 网络、BBR、Netfilter、WireGuard -9. Baseband Guard、省电和其他功能 -10. 非必要编译优化 +1. `Makefile`、版本号与 Android common tag +2. ABI / KMI / symbol list / AFDO +3. common 与 msm-kernel 接口 +4. vendor modules / device tree 依赖 +5. `gki_defconfig`、Kleaf / Bazel 和工具链 +6. Root / ReSukiSU / SuSFS / KPM +7. 调度器、task / scheduler 与 vendor hooks +8. ZRAM、内存、I/O、F2FS 和 EXT4 +9. USB / Type-C / IOMMU / 电源与设备驱动 +10. 网络、BBR、Netfilter、WireGuard +11. Baseband Guard、省电和其他功能 +12. 非必要编译优化 -调度器、`task_struct`、RCU、内存生命周期、文件系统和网络栈冲突必须逐项审查,不能以“编译通过”替代运行时正确性。 +调度器、`task_struct`、RCU、内存生命周期、文件系统、ABI 和网络栈冲突必须逐项审查,不能以“编译通过”替代运行时正确性。 -## 6. 完整验证 +## 7. 完整验证 ### 源码与构建 +- [ ] 80 个冲突逐文件解决并记录理由 - [ ] `repo manifest -r` 已保存 - [ ] common / msm-kernel / modules / DT revision 匹配 - [ ] 无空 stub 或缺失组件绕过 - [ ] `oplus_build_kernel.sh sun perf` clean build 成功 - [ ] Image、vendor_boot、vendor modules 版本匹配 -- [ ] ABI / KMI 检查通过 +- [ ] ABI / KMI、OPlus symbol list 和 AFDO 检查通过 ### 真机 @@ -106,9 +134,9 @@ Android common tag: android15-6.6-2026-01_r22 - [ ] 充电、电池状态、温控 - [ ] 灭屏、深度休眠、唤醒 - [ ] Root、SuSFS、KPM -- [ ] 默认 wait 与可选调度路径 +- [ ] 默认 wait 与可选 HMBIRD / SCX 路径 - [ ] 网络栈、VPN / TUN、WireGuard -## 7. 回退 +## 8. 回退 -上游同步必须保持单独 PR 和提交边界。真机失败时优先整体回退该同步 PR,再按功能组拆分定位;不要在 `6.6-final` 上连续追加无法追踪的临时修补。 +上游同步必须保持单独 PR 和提交边界。真机失败时优先整体回退同步 PR,再按功能组拆分定位;不要在 `6.6-final` 上连续追加无法追踪的临时修补。