YOUR_NAME
35a2f3af33
fix: init进程收到子进程退出信号后,调用fork重新拉起进程,会导致系统卡死
...
问题原因:init进程执行信号时,线程栈底预留了部分空间给信号上下文使用,
从而导致处理信号时线程栈底比线程控制块里面记录的大,这样在fork的过程中内核
从init线程栈底copy线程上下文给新进程时,copy的不是实际运行的栈底,以致于
新进程的线程上下文不对,在实际运行时跑飞,引发系统卡死。
解决方案:在fork过程copy线程上下文时,判断是否预留了信号上下文空间,如果预留
了,则copy的栈底要基于预留后的栈底去copy线程上下文。
close: #I41HOY
Signed-off-by: zff <zhangfanfan2@huawei.com>
Change-Id: I61cb05183c78919730e3a68c1c85b72fa1decd16
2021-07-20 21:11:12 +08:00
openharmony_ci
d9ed4b4bf6
!427 fix: 修复lwip2.0 增强在futex中异常挂死问题
...
Merge pull request !427 from zhushengle/futex
2021-07-15 01:54:41 +00:00
zhushengle
1157c4a289
fix : futex requeue机制中,头节点的queueList 为NULL, 导致系统异常
...
queuelist中的普通节点在调整为futexList的节点时,
未校验其queueList的有效性,导致queueList未初始化,
出现访问空指针;且在从旧链表迁移节点到新链表时,
节点从旧链表删除之后又插入到另一个链表中,导致对
旧链表的为NULL判断出错。
Close #I4024F
Change-Id: I506a10fc5740ce16e682c2c419b9d92a82000b86
Signed-off-by: zhushengle <zhushengle@huawei.com>
2021-07-14 09:30:49 +08:00
openharmony_ci
d7387508e3
!402 消除编译告警
...
Merge pull request !402 from x_xiny/master
2021-07-09 08:37:20 +00:00
x_xiny
e4ff04586f
fix:消除编译告警
...
【背景】
消除编译告警
【修改方案】
消除编译告警
re #I3ZC1R
Change-Id: I594d0f57e4cbbdb246a6bef1c978a38228123a34
Signed-off-by: x-xiny <1301913191@qq.com>
Change-Id: I1d75cdcdcf9d06ec28e541cdfea77300da7c6bb1
2021-07-08 20:30:33 +08:00
Caoruihong
ac8c2c6d5b
fix: minimal compile
...
fix compile errors in minimal compilation
Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: I48f4f7b27c684e2c747c1949776c5c4f9e383dec
2021-07-07 00:26:33 +08:00
boxi
4e4f2d6d7e
refactor: 对LiteOS_a内核中menuconfig开关的宏使用#ifdef/#ifndef做预编译处理
...
LiteOS_a中有部分配置宏进行了重复冗余定义,导致当头文件未被包含时,极易引入错误,
故对menuconfig配置宏进行统一处理,均使用#ifdef/#ifndef作为预编译判断方式
Close #I3YEGS
Change-Id: Ife6db770cc66de1d6199a4f3ba3950e9bfd0e71a
Signed-off-by: boxi <lewis.liulei@huawei.com>
2021-07-01 09:08:18 +08:00
Kenneth
81f3d59717
chore: fix typos
...
fix typo destroy
close https://gitee.com/openharmony/kernel_liteos_a/issues/I3RR17
Signed-off-by: Kenneth <459864689@qq.com>
2021-06-16 14:52:06 +08:00
openharmony_ci
2067b2f648
!256 fix: 解决kill进程时无法保证进程持有的系统资源合理释放
...
Merge pull request !256 from zhushengle/Sig
2021-06-03 17:00:00 +08:00
zhushengle
cf89f016e9
fix: 解决kill进程时无法保证进程的已持有的内核资源合理释放.
...
背景: 当前信号实现原理是在系统调用结束和中断结束时检查是否有信号处理,
如果有信号处理就切去处理信号,信号处理结束后回来继续按原来流程执行。
问题:当用户态线程在执行系统调用或缺页异常时,运行在内核态,如果此时有信
号需要处理,且该线程已经持有了部分内核资源(如:锁,内存等), 此时如
果有中断发生,则在中断结束时,就会去处理该信号,此时用户态线程持有
了内核未释放的资源跑到了用户态去运行,如果该线程在用户态出现问题,
那么它持有的内核资源就无法被释放了。
方案:用户态线程在执行系统调用和缺页异常时暂时屏蔽信号,防止此时有中断去
处理信号,等系统调用结束或缺页异常结束时再去处理信号。
解决的问题:
1. 执行系统调用或缺页异常时屏蔽信号,防止中断去处理信号
2.解决无法kill 因为用户态的锁、ipc等阻塞的用户态线程
3.进程退出方式转变为: 依次通过kill去杀死该进程的所有线程
Close #I3S0N0
Change-Id: I0c48b9c89382826191b8a9326c71b57ba84124c2
2021-05-24 14:29:37 +08:00
openharmony_ci
3f16f1684a
!248 fix: fix length typo
...
Merge pull request !248 from kenneth/los_queue.h
2021-05-22 09:13:46 +08:00
openharmony_ci
9b364500ad
!252 删除冗余宏定义OFFSET_OF_FIELD
...
Merge pull request !252 from JerryH/list
2021-05-21 09:54:18 +08:00
arvinzzz
8cde768588
refactor: Refactored the kernel boot process and added a init framework
...
close: #I3I768
Change-Id: I4f801df4abe1a9afdf43391c28276e96a5e81513
2021-05-20 16:45:43 +08:00
kenneth
2b643b04c1
fix:fix queuePosition typo
2021-05-19 14:05:28 +08:00
YOUR_NAME
9b4129c949
Remove redundant macro definition(OFFSET_OF_FIELD)
...
Close #I3QMN1
Change-Id: I0ddd0c4474f5f6b5a2b1dd6608d642167b5548e6
2021-05-19 11:20:09 +08:00
kenneth
a68295d2a9
fix:change queuePosion to queuePosition
2021-05-19 08:38:33 +08:00
openharmony_ci
29fc5b3e3d
!236 fix: modify event API description
...
Merge pull request !236 from MGY917/event
2021-05-15 10:05:46 +08:00
Guangyao Ma
937734b1e9
fix: modify event API description
...
Change-Id: I131c70e52d907b6c52232596475f2dba16612fce
2021-05-11 21:09:24 +08:00
zhushengle
1e308db64e
fix:Fixed exception not saving stack pointer of SVC mode and abnormal signal processing issues
...
Close #I3OAFR
Change-Id: I25b14572809b6fabb9e9d17de89a99047c02a59b
2021-05-11 09:58:54 +08:00
zhushengle
6d63f75e7f
fix:Solve the coupling between the kernel and the structure under ARCH.
...
Close #I3OAFR
Change-Id: Icea238e20adf402d0ec1fc7e47ff4e58124a5e83
2021-04-26 19:54:49 +08:00
Guangyao Ma
deaa564a66
fix: dereference NULL point bug fix
...
Change-Id: Ib068696c9280105e209469e875c187d741b704d2
2021-04-25 11:47:05 +08:00
Caoruihong
7e73c929a2
remove __cplusplus guards in .c files
...
Change-Id: I052d930d54e63179b17b77f02c107a015f3cfc3f
2021-04-19 18:28:25 +08:00
x_xiny
a041342a69
signal
...
Change-Id: Ia42e914b7a19b7d519010e371f808baa1c6588c0
2021-04-02 18:27:31 +08:00
YOUR_NAME
c959d43684
IssueNo:#I3E0F2
...
Description:Delete VM to support only kernel mode.
Sig:liteos_a
Feature or Bugfix:Feature
Binary Source:No
Change-Id: Ie1029c8fbc0c1b85c138663933118d2d148b7769
2021-03-31 16:14:54 +08:00
openharmony_ci
51e587ca44
!59 【轻量级 PR】:update kernel/base/ipc/los_futex.c.
...
Merge pull request !59 from 冷钦街/N/A
2021-03-25 11:29:52 +08:00
wangchenyang
d970750808
Description:vfs refactoring
...
Feature or Bugfix:Feature
Binary Source:Huawei
PrivateCode(Yes/No):Yes
Change-Id: I175d2648bc6f9078c34de2c0a5c93fda10b86c47
ChangeID:13306388
2021-03-19 13:22:46 +08:00
mamingshuai
73a7b66116
update openharmony 1.0.1
2021-03-11 18:43:57 +08:00
冷钦街
91e4e73dab
update kernel/base/ipc/los_futex.c.
2021-01-15 07:13:07 +08:00
openharmony_ci
c69eee403e
!39 修正OsSigTimedWaitNoLock只清除一个pending信号
...
Merge pull request !39 from laokz/signal
2020-12-09 14:08:36 +08:00
laokz
a706de2fad
fix hilog, vm_syscall etc. typos
2020-12-08 18:00:32 +08:00
laokz
4ea33fa9f9
修正OsSigTimedWaitNoLock只清除一个pending信号
2020-12-05 17:38:05 +08:00
Caoruihong
63bd69267a
drop unnecessary executable file permission mode
...
Change-Id: Ia6c1f6302407a707b3ec9b805f4c92d8a7970b86
2020-10-13 16:37:25 +08:00
zhushengle
a73348da8d
modify the indentation
2020-09-28 14:35:53 +08:00
zhushengle
c884ada07d
Solve the static problem of user mode locking under high concurrency.
2020-09-28 14:12:46 +08:00
wenjun
6df931fc98
add OpenHarmony 1.0 baseline
2020-09-08 17:22:24 +08:00