Commit Graph

27 Commits

Author SHA1 Message Date
openharmony_ci 6e9b447895 !19466 merge fix_dfx into master
Fix oom dfx

Created-by: majie777
Commit-by: majie777
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/11550
**Description**:
Fix oom dfx
**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |          |
| 成员变量进行赋值或创建需要排查并发                               |          |
| 谨慎在lambda表达式中使用引用捕获                                |          |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |          |
| map\vector\list\set等stl模板类使用时需要排查并发                |          |
| 谨慎考虑加锁范围                                               |          |
| 在IPC通信中谨慎使用同步通信方式                                 |          |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |          |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |          |
| 禁止多个独立创建的智能指针管理同一地址                           |          |
| 禁止在析构函数中抛异步任务                                      |          |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |          |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |          |
| 禁止接口返回局部变量引用                                        |          |
| 禁止在信号函数中加锁                                            |          |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |          |
| 禁止将同一个cpp编译在不同的so中                                 |          |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |          |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |          |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |          |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |          |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |          |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |          |
| readParcelable获取的对象使用前需要判空                            |          |
| 分配和释放内存的函数需要成对出现                                   |          |
| 申请内存后异常退出前需要及时进行内存释放                            |          |
| 内存申请前必须对内存大小进行合法性校验                              |          |
| 内存分配后必须判断是否成功                                         |          |
| 禁止使用realloc、alloca函数                                       |          |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |          |
| 禁止打印内存地址                                                  |          |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |          |
| 禁止对有符号整数进行位操作符运算                                    |          |
| 禁止对指针进行逻辑或位运算                                         |          |
| 循环次数如果收外部数据控制,需要检验其合法性                         |          |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |          |
| 谨慎使用不可重入函数                                               |          |
| 必须检查安全函数的返回值,并进行正确处理                             |          |
| 禁止仅通过TokenType类型判断绕过权限校验                             |          |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19466
2026-06-16 13:33:47 +08:00
openharmony_ci 9cff4000c7 !19422 merge aot_modify_hsp_sign into master
AOT: modify ets runtime to load host-orivate HSP AOT

Created-by: wanzixuan330
Commit-by: wanzixuan330
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/bundlemanager_bundle_framework/issues/9430
**Description**:
应用间HSP的安装时AOT修改为跟随宿主HAP的AOT,ets runtime的post fork阶段查找HSP的落盘an路径发生改变
**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |   pass       |
| 成员变量进行赋值或创建需要排查并发                               |  pass        |
| 谨慎在lambda表达式中使用引用捕获                                |    pass      |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |     pass     |
| map\vector\list\set等stl模板类使用时需要排查并发                |    pass      |
| 谨慎考虑加锁范围                                               |   pass       |
| 在IPC通信中谨慎使用同步通信方式                                 |     pass     |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |    pass      |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |    pass      |
| 禁止多个独立创建的智能指针管理同一地址                           |     pass
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |   pass       |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |     pass     |
| 禁止接口返回局部变量引用                                        |   pass       |
| 禁止在信号函数中加锁                                            |    pass      |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |    pass      |
| 禁止将同一个cpp编译在不同的so中                                 |    pass      |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |    pass      |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |    pass      |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |   pass       |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |    pass      |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |   pass       |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |   pass       |
| readParcelable获取的对象使用前需要判空                            |     pass     |
| 分配和释放内存的函数需要成对出现                                   |   pass      |
| 申请内存后异常退出前需要及时进行内存释放                            |      pass    |
| 内存申请前必须对内存大小进行合法性校验                              |     pass     |
| 内存分配后必须判断是否成功                                         |     pass     |
| 禁止使用realloc、alloca函数                                       |   pass       |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |   pass       |
| 禁止打印内存地址                                                  |    pass      |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |   pass       |
| 禁止对有符号整数进行位操作符运算                                    |   pass       |
| 禁止对指针进行逻辑或位运算                                         |   pass       |
| 循环次数如果收外部数据控制,需要检验其合法性                         |   pass       |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |    pass      |
| 谨慎使用不可重入函数                                               |     pass     |
| 必须检查安全函数的返回值,并进行正确处理                             |    pass      |
| 禁止仅通过TokenType类型判断绕过权限校验                             |    pass      |

**TDD Result**:

**XTS Result**:

### 是否已执行L0用例
- [x] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!19422
2026-06-02 20:46:17 +08:00
wanzixuan330 a95306e217 AOT: modify ets runtime to load host-orivate HSP AOT
Issue: https://gitcode.com/openharmony/bundlemanager_bundle_framework/issues/9430
Co-Authored-By: Agent
Signed-off-by: wanzixuan330 <wanzixuan@huawei.com>
2026-06-02 11:46:43 +08:00
majie777 a986775f11 Fix oom dfx
fix oom dfx
Issue:https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/11550

Co-Authored-By:Agent

Signed-off-by: majie777 <majie77@h-partners.com>
2026-05-27 16:46:13 +08:00
zhongshield1 43729a0bf2 change external_deps to deps
Co-Authored-By: manual
Signed-off-by: zhongshield1 <zhangzezhong8@huawei-partners.com>
2026-05-26 14:43:06 +08:00
wlh2624_DS e6302bb350 support static plugin hsp
Co-Authored-By: Agent
Signed-off-by: wlh2624_DS <1968860844@qq.com>
2026-05-17 18:16:19 +08:00
openharmony_ci f3025e72b8 !18527 merge master into master
aa start -p add baseLineProfile argument

Created-by: liuzongze
Commit-by: liuzongze
Merged-by: openharmony_ci
Description: **IssueNo**:
https://gitcode.com/openharmony/ability_ability_runtime/issues/14628
**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |    不涉及      |
| 成员变量进行赋值或创建需要排查并发                               |      不涉及    |
| 谨慎在lambda表达式中使用引用捕获                                |    不涉及      |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |   不涉及       |
| map\vector\list\set等stl模板类使用时需要排查并发                |     不涉及     |
| 谨慎考虑加锁范围                                               |    不涉及      |
| 在IPC通信中谨慎使用同步通信方式                                 |    不涉及      |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |       不涉及   |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |   不涉及       |
| 禁止多个独立创建的智能指针管理同一地址                           |     不涉及     |
| 禁止在析构函数中抛异步任务                                      |      不涉及    |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |        不涉及  |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |   不涉及       |
| 禁止接口返回局部变量引用                                        |      不涉及    |
| 禁止在信号函数中加锁                                            |     不涉及     |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |      不涉及    |
| 禁止将同一个cpp编译在不同的so中                                 |     不涉及     |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |   不涉及       |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |      不涉及    |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |    不涉及      |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |     不涉及     |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |     不涉及     |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |     不涉及     |
| readParcelable获取的对象使用前需要判空                            |      不涉及    |
| 分配和释放内存的函数需要成对出现                                   |    不涉及      |
| 申请内存后异常退出前需要及时进行内存释放                            |   不涉及       |
| 内存申请前必须对内存大小进行合法性校验                              |   不涉及       |
| 内存分配后必须判断是否成功                                         |    不涉及      |
| 禁止使用realloc、alloca函数                                       |     不涉及     |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |    不涉及      |
| 禁止打印内存地址                                                  |    不涉及      |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |     不涉及     |
| 禁止对有符号整数进行位操作符运算                                    |    不涉及      |
| 禁止对指针进行逻辑或位运算                                         |   不涉及       |
| 循环次数如果收外部数据控制,需要检验其合法性                         |    不涉及      |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |    不涉及      |
| 谨慎使用不可重入函数                                               |       不涉及   |
| 必须检查安全函数的返回值,并进行正确处理                             |     不涉及     |
| 禁止仅通过TokenType类型判断绕过权限校验                             |     不涉及     |

**TDD Result**:

**XTS Result**:


### 是否已执行L0用例
- [x] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!18527
2026-03-07 21:04:31 +08:00
liuzongze d5fa970a9b aa start -p add baseLineProfile argument
Signed-off-by: liuzongze <liuzongze@h-partners.com>
Change-Id: Ie4ed13695e50aa1a4b202f49405039317f3ce8d2
Co-Authored-By: Agent
2026-03-07 20:07:50 +08:00
yuanyao14 34e9fc36f6 ArkTS-Sta AOT loading checking aotCompileStatus
Issue: https://gitcode.com/openharmony/ability_ability_runtime/issues/14663

Signed-off-by: yuanyao14 <yuanyao14@huawei.com>
2026-03-07 16:41:12 +08:00
zhangrunze 3e3db9c0b4 Register AOT profile output paths for multi-module PGO
Issue: https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/9599
Signed-off-by: zhangrunze <zhangrunze13@huawei.com>
2026-03-03 17:17:52 +08:00
yuanyao14 c5e359287b Support ArkTS-Sta AOT hsp loading
Issue: https://gitcode.com/openharmony/ability_ability_runtime/issues/14435

Signed-off-by: yuanyao14 <yuanyao14@huawei.com>
2026-02-25 15:30:01 +08:00
Duansizhao 2f9444faf3 规范tdd用例输出路径
Signed-off-by: Duansizhao <duansizhao@huawei.com>
2026-01-27 15:06:01 +08:00
zengmanyi 908eda114c delete test of FindClass
Issue: https://gitcode.com/openharmony/ability_ability_runtime/issues/14105

Signed-off-by: zengmanyi <zengmanyi@huawei.com>
2026-01-08 15:52:21 +08:00
openharmony_ci a8c3118973 !17833 merge tdd_1224 into master
add tdd

Created-by: zhongshield1
Commit-by: zhangzezhong
Merged-by: openharmony_ci
Description: **IssueNo**:

**Description**:

**稳定性自检:**
| 自检项                                                       | 自检结果  |
| ------------------------------------------------------------ | -------- |
| 涉及跨进程调用的相关操作需要抛至主线程或加锁防止并发              |  pass |
| 成员变量进行赋值或创建需要排查并发                               |  pass |
| 谨慎在lambda表达式中使用引用捕获                                |  pass |
| 谨慎在未经拷贝的情况下使用外部传入的string、C字符串               |  pass |
| map\vector\list\set等stl模板类使用时需要排查并发                |  pass |
| 谨慎考虑加锁范围                                               |  pass |
| 在IPC通信中谨慎使用同步通信方式                                 |  pass |
| 禁止传递this指针至其他模块或线程(特别是eventhandler任务)        |  pass |
| 禁止将外部传入的裸指针在内部直接构造智能指针                      |  pass |
| 禁止多个独立创建的智能指针管理同一地址                           |  pass |
| 禁止在析构函数中抛异步任务                                      |  pass |
| 禁止js对象在非js线程(例如在IPC线程)创建、使用或销毁             |  pass |
| 禁止在对外接口中未经判空直接使用外部传入的指针                    |  pass |
| 禁止接口返回局部变量引用                                        |  pass |
| 禁止在信号函数中加锁                                            |  pass |
| 禁止在关键流程(SA启动、应用启动等主流程)执行耗时的操作           |  pass |
| 禁止将同一个cpp编译在不同的so中                                 |  pass |

**安全编码自检:**
| 自检项                                                          | 自检结果 |
| -------------------------------------------------------------- | -------- |
| 裸指针避免通过隐式转换构造为sptr                                 |  pass |
| json对象在取值之前必须先判断类型,避免类型不匹配                   |  pass |
| 序列化时必须对传入的数组大小进行校验,避免出现超大数组              |  pass |
| 避免使用未明确位宽的整型,选择使用int8_t、uint8_t等类型            |  pass |
| 外部传入的路径要做规范化校验,对路径中的.、..、../等特殊字符严格校验 |  pass |
| 指针变量、表示资源描述符的变量、bool变量必须赋初值                  |  pass |
| readParcelable获取的对象使用前需要判空                            |  pass |
| 分配和释放内存的函数需要成对出现                                   |  pass |
| 申请内存后异常退出前需要及时进行内存释放                            |  pass |
| 内存申请前必须对内存大小进行合法性校验                              |  pass |
| 内存分配后必须判断是否成功                                         |  pass |
| 禁止使用realloc、alloca函数                                       |  pass |
| 禁止打印文件路径、口令等敏感信息,如有需要,使用private修饰          |  pass |
| 禁止打印内存地址                                                  |  pass |
| 整数之间运算时必须严格检查,确保不会出现溢出、反转、除0               |  pass |
| 禁止对有符号整数进行位操作符运算                                    |  pass |
| 禁止对指针进行逻辑或位运算                                         |  pass |
| 循环次数如果收外部数据控制,需要检验其合法性                         |  pass |
| 禁止使用内存操作类危险函数,需要使用安全函数                         |  pass |
| 谨慎使用不可重入函数                                               |  pass |
| 必须检查安全函数的返回值,并进行正确处理                             |  pass |
| 禁止仅通过TokenType类型判断绕过权限校验                             |  pass |

**TDD Result**:
![image.png](https://raw.gitcode.com/user-images/assets/4421702/083335df-f008-4677-9bba-4eaa53a6fe36/image.png 'image.png')
**XTS Result**:

### 是否已执行L0用例
- [ ] 已验证
- [ ] 不涉及。如不涉及,请写明理由


See merge request: openharmony/ability_ability_runtime!17833
2025-12-25 16:23:21 +08:00
zhangzezhong 6c72d941e9 add tdd
Signed-off-by: zhangzezhong <zhangzezhong8@huawei-partners.com>
2025-12-25 12:25:44 +08:00
zhangzezhong 67309195ad add js env
Issue: https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/8883

Signed-off-by: zhangzezhong <zhangzezhong8@huawei-partners.com>
2025-12-24 10:18:16 +03:00
zhangzezhong 13434e850f modify linker
Signed-off-by: zhangzezhong <zhangzezhong8@huawei-partners.com>
2025-12-22 14:10:20 +08:00
Panferov Ivan 9bb1b2b4b5 sync coroutines code in master branch
Issue: https://gitcode.com/openharmony/arkcompiler_runtime_core/issues/8105

Signed-off-by: Panferov Ivan <panferov.ivan@huawei-partners.com>
2025-10-30 11:06:24 +08:00
30059993 0523b67c3f suport 1_2 hsp
Signed-off-by: 30059993 <wanglinghui6@huawei.com>
2025-08-29 09:19:59 +08:00
s30030188 a0cc80ac33 调试代码挑单master
Signed-off-by: s30030188 <songjindian1@h-partners.com>
2025-08-27 11:21:55 +08:00
zhangzezhong c48fbe4901 cherry pick 1.2 preload class
Signed-off-by: zhangzezhong <zhangzezhong8@huawei-partners.com>
2025-08-08 15:18:20 +08:00
zhangzezhong 9c410830d7 preload
Signed-off-by: zhangzezhong <zhangzezhong8@huawei-partners.com>
2025-07-04 09:49:55 +08:00
zhangzezhong 77b3d84dba isolate runtime 2
Signed-off-by: zhangzezhong <zhangzezhong8@huawei-partners.com>
2025-06-27 13:52:39 +08:00
zhangzezhong df39e10d1b modify runtime
Signed-off-by: zhangzezhong <zhangzezhong8@huawei-partners.com>
2025-06-19 18:19:44 +08:00
zhangzezhong 2bec6e0924 add tdd for ets_environmenta and ets_test_runner_test
Signed-off-by: zhangzezhong <zhangzezhong8@huawei-partners.com>
2025-06-18 16:49:51 +08:00
zhangzezhong c07bb0b085 add tdd
Signed-off-by: zhangzezhong <zhangzezhong8@huawei-partners.com>
2025-06-13 11:26:10 +08:00
zhangzezhong 532783d6d6 add ets environment
Signed-off-by: zhangzezhong <zhangzezhong8@huawei-partners.com>
2025-06-09 14:24:32 +08:00