!228 merge feature/fix-qemu-kernel-6.6 into master

#121 Fix qemu-arm-linux-min compilation for linux-6.6 kernel

Created-by: chenjinxiang3
Commit-by: chenjinxiang3
Merged-by: openharmony_ci
Description: #121

## 问题描述

qemu-arm-linux-min产品在编译linux-6.6内核时失败,原因是缺少OpenHarmony特有头文件和PAGEFLAG_FALSE宏调用错误。

## 解决方案

修改kernel.mk,添加OH_HEADERS_PATCH_FILE补丁应用逻辑,仅对qemu-arm-linux设备生效。

## 影响范围

仅qemu-arm-linux设备,不影响其他设备(如rk3568)的编译,因为rk3568使用build_kernel.sh而非kernel.mk。

## 验证

- qemu-arm-linux-min编译通过
- rk3568编译不受影响(补丁文件不存在于rk3568_patch目录)

See merge request: openharmony/kernel_linux_build!228
This commit is contained in:
openharmony_ci
2026-05-20 12:23:26 +08:00
+4 -3
View File
@@ -90,6 +90,7 @@ CODE_SIGN_PATCH_FILE := ${OHOS_BUILD_HOME}/kernel/linux/common_modules/code_sign
HIDEADDR_PATCH_FILE := ${OHOS_BUILD_HOME}/kernel/linux/common_modules/memory_security/apply_hideaddr.sh
OHOE_HEADERS_FILE := ${OHOS_BUILD_HOME}/kernel/linux/common_modules/ohoe_headers/apply_ohoe_headers.sh
WATCHDOG_PATCH_FILE := ${DEVICE_PATCH_DIR}/watchdog.patch
OH_HEADERS_PATCH_FILE := ${DEVICE_PATCH_DIR}/oh_headers.patch
export KBUILD_OUTPUT=$(KERNEL_OBJ_TMP_PATH)
@@ -132,9 +133,9 @@ endif
ifeq ($(HIDEADDR_PATCH_FILE), $(wildcard $(HIDEADDR_PATCH_FILE)))
$(hide) bash $(HIDEADDR_PATCH_FILE) $(OHOS_BUILD_HOME) $(KERNEL_SRC_TMP_PATH) $(DEVICE_NAME) $(KERNEL_VERSION)
endif
# Apply OpenHarmony specific headers (required for linux-6.6)
ifeq ($(OHOE_HEADERS_FILE), $(wildcard $(OHOE_HEADERS_FILE)))
$(hide) bash $(OHOE_HEADERS_FILE) $(OHOS_BUILD_HOME) $(KERNEL_SRC_TMP_PATH) $(DEVICE_NAME) $(KERNEL_VERSION)
# Apply OpenHarmony specific headers patch (required for linux-6.6)
ifeq ($(OH_HEADERS_PATCH_FILE), $(wildcard $(OH_HEADERS_PATCH_FILE)))
$(hide) cd $(KERNEL_SRC_TMP_PATH) && patch -p1 < $(OH_HEADERS_PATCH_FILE)
endif
# Apply watchdog compatibility patch (required for qemu-arm-linux on linux-6.6)
ifeq ($(WATCHDOG_PATCH_FILE), $(wildcard $(WATCHDOG_PATCH_FILE)))