openharmony_ci 975b1ebdcf !223 merge master into master
安全函数库不合理依赖整改

Created-by: ymw1997
Commit-by: ymw1997
Merged-by: openharmony_ci
Description: ### 一、内容说明(相关的Issue)



### 二、建议测试周期和提测地址  
  建议测试完成时间:xxxx.xx.xx  
  投产上线时间:xxxx.xx.xx  
  提测地址:CI环境/压测环境  
  测试账号:  

### 三、变更内容
  * 3.1 关联PR列表

  * 3.2 数据库和部署说明  
    1. 常规更新 
    2. 重启unicorn
    3. 重启sidekiq
    4. 迁移任务:是否有迁移任务,没有写 "无"
    5. rake脚本:`bundle exec xxx RAILS_ENV = production`;没有写 "无"

  * 3.4 其他技术优化内容(做了什么,变更了什么)
    - 重构了 xxxx 代码
    - xxxx 算法优化


  * 3.5 废弃通知(什么字段、方法弃用?)



  * 3.6  后向不兼容变更(是否有无法向后兼容的变更?)


  
### 四、研发自测点(自测哪些?冒烟用例全部自测?)
  自测测试结论:


### 五、测试关注点(需要提醒QA重点关注的、可能会忽略的地方)
  检查点:

| 需求名称 | 是否影响xx公共模块 | 是否需要xx功能 | 需求升级是否依赖其他子产品 |
|------|------------|----------|---------------|
| xxx  | 否          | 需要       | 不需要           |
|      |            |          |               |

  接口测试:

  性能测试:

  并发测试:

  其他:



See merge request: openharmony/kernel_linux_build!223
2026-01-19 12:17:45 +08:00
2026-01-15 15:51:33 +08:00
2024-09-11 15:57:10 +08:00
2026-01-16 10:25:07 +08:00
2021-11-23 14:43:24 +08:00
2024-09-05 09:43:24 +08:00
2024-09-11 15:57:10 +08:00
2021-08-26 14:50:46 +08:00
2021-08-26 14:50:46 +08:00

Patch

Introduction

Evolved from the open-source Linux kernel LTS 4.19.y and 5.10.y, the OpenHarmony Linux kernel has incorporated CVE patches and OpenHarmony features as the OpenHarmony common kernel baseline. Vendors can complete the kernel adaptation by applying the driver patches for boards.

For more information about Linux LTS 4.19.y, visit the official kernel website.

For more information about Linux LTS 5.10.y, visit the official kernel website.

During the build process, you can merge the driver code based on the chip platform and build the kernel image. All patches are licensed under GNU General Public License (GPL) 2.0.

Driver Patches for a Specific Chip Architecture (such as Hi3516D V300)

The vendor provides the driver code of the chip architecture.

hi3516dv300_small.patch: supports boot of the kernel of the Arm architecture (such as the DTS) and drivers such as DRM and MMC on Hi3516D V300.

Directory Structure

kernel/linux/patches
├── linux-4.19				# linux-4.19 patches
│   ├── common_patch
│   │		└── hdf.patch		# linux-4.19 HDF patches
│   └── hispark_taurus_patch
│   		└── hispark_taurus.patch	# linux-4.19 Hi3516D V300 SOC patches
└── linux-5.10
    ├── common_patch
    │		└── hdf.patch		# linux-5.10 HDF patches
    └── hispark_taurus_patch
    │		└── hispark_taurus.patch	# linux-5.10 Hi3516D V300 SOC patches
    └── rk3568_patch
    		├── kernel.patch		# linux-5.10 rk3568 SOC patches
    		└── hdf.patch		# linux-5.10 rk3568 customized HDF patches

Usage

  1. Apply HDF patches.

    Apply the HDF kernel patches matching your kernel version. For details, see the method in kernel.mk in the kernel/linux/build repository.

    $(OHOS_BUILD_HOME)/drivers/hdf_core/adapter/khdf/linux/patch_hdf.sh $(OHOS_BUILD_HOME) $(KERNEL_SRC_TMP_PATH) $(KERNEL_PATCH_PATH) $(DEVICE_NAME)
    
  2. Apply the chip driver patches.

    The following uses Hi3516D V300 as an example.

    Place the patches for the chip component in the corresponding path based on the path and naming rules for the patches of the chip component in kernel.mk in the kernel/linux/build repository.

    DEVICE_PATCH_DIR := $(OHOS_BUILD_HOME)/kernel/linux/patches/${KERNEL_VERSION}/$(DEVICE_NAME)_patch
    DEVICE_PATCH_FILE := $(DEVICE_PATCH_DIR)/$(DEVICE_NAME).patch
    
  3. Modify the config file to build.

    Place the config file for the chip component in the corresponding path based on the path and naming rules of the chip component in kernel.mk in the kernel/linux/build repository.

    KERNEL_CONFIG_PATH := $(OHOS_BUILD_HOME)/kernel/linux/config/${KERNEL_VERSION}
    DEFCONFIG_FILE := $(DEVICE_NAME)_$(BUILD_TYPE)_defconfig
    

    Note

    :

    In the OpenHarmony project build process, patches are installed after kernel/linux/linux-5.10 is copied. Before using the version-level build command of OpenHarmony, ensure that the kernel/linux/linux-5.10 source code is available.

    The kernel built is generated in the kernel directory under the out directory. Modify the config file based on the kernel built, and copy the generated .config file to the corresponding path in the config repository. Then, the configuration takes effect.

Build

The following uses the Hi3516D V300 development board and Ubuntu x86 server as an example.

Perform a full build for the project to generate the uImage kernel image.

./build.sh --product-name Hi3516DV300              # Build the Hi3516D V300 image.
    --build-target build_kernel                    # Build the uImage kernel image of Hi3516D V300.
    --gn-args linux_kernel_version=\"linux-5.10\"  # Build the specified kernel version.

Repositories Involved

kernel_linux_patches

kernel_linux_config

S
Description
No description provided
Readme GPL-2.0 1.6 MiB
Languages
Shell 59.4%
C++ 30.4%
Python 4.1%
Makefile 4.1%
C 2%