openharmony_ci
8839fdd399
!544 fix killpg and waitid
...
Merge pull request !544 from wangjianjun/waitid
2021-08-27 07:48:25 +00:00
Guangyao Ma
5a80d4e1a3
fix: solve SIGCHLD ignored in sigsuspend()
...
在如下场景signal可能得不到及时处理:
1、进程A设置信号a阻塞
2、进程A收到信号a
3、进程A调用sigsuspend结束阻塞
原则上,步骤三应该立刻处理之前被阻塞的信号a,调用信号处理函数,并且sigsuspend
返回。现在的问题是,信号a没有得到及时处理,并且进程A阻塞在sigsuspend()调用流程
。
本次修改,在1、2、3场景下,sigsuspend()处理过程中,如果发现已经收到信号,待处理
时,会立刻进行调度切换,再次调度回来时,在调度模块中,会先主动处理已经收到的信
号,最后sigsuspend返回用户态。
close #I47CKK
Signed-off-by: Guangyao Ma <guangyao.ma@outlook.com>
Change-Id: I1b30a938a2d18c3f58989d40eee0503ceffb27b5
2021-08-26 15:36:13 +08:00
Caoruihong
181322a3c1
chore(make): fix and optimize some build scripts
...
Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: I2e61b7ea231be78423dc10412e0ab9a710cad8ef
2021-08-23 20:47:18 +08:00
openharmony_ci
5369b6aa23
!564 优化make编译脚本
...
Merge pull request !564 from Caoruihong/update_makefile
2021-08-23 05:55:39 +00:00
Caoruihong
0e260949c9
feat(make): optimize makefiles and remove some unused files
...
Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: Ie2dfa7334417ccd55bd56a19a7882a982ce49cab
2021-08-22 04:23:40 +08:00
openharmony_ci
40297a6dbc
!487 多核启动及内存映射解耦
...
Merge pull request !487 from JerryH/smp-xxx
2021-08-20 03:54:23 +00:00
Caoruihong
e1b9a6b185
chore(make): update Makefile
...
remove some unused Makefile code and optimize some code
Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: I1c31d07481bb6aee47b0c51d63d6b68316c38c88
2021-08-17 21:34:01 +08:00
zhushengle
67ac8c4c58
fix: 以g_sysSchedStartTime是否为0判断时间轴是否生效存在极限场景导致调度时间不生效
...
初始化调度时间不以g_sysSchedStartTime是否为0为界限,而以g_sysSchedStartTime是否为64位最大值
为界限,避免特殊以下场景:调度开启时系统时间为0,导致初始化的g_sysSchedStartTime还是0,导致
调度启动后获取的调度时间轴始终为0.
Close #I45HP5
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: I5272c79f06b53361ee7b931081d3a3276db59073
2021-08-14 13:04:08 +08:00
wjj
dc3cc094a7
feat: 支持killpg和waitid
...
killpg:给进程组发信号
waitid:等待进程结束
修改测试用例到full里面
Change-Id: Ice058ab4a6eede8ecbaacea0894c2161e3b9dce2
Signed-off-by: wjj <502004968@qq.com>
2021-08-12 18:06:55 +08:00
openharmony_ci
0f4d5a4b0c
!287 feat(vfs): vfs支持FD_CLOEXEC标记
...
Merge pull request !287 from MGY917/master
2021-08-12 00:36:19 +00:00
openharmony_ci
d6e0d3ee7d
!527 fix:合并进程栈两个地址连续的region
...
Merge pull request !527 from Harylee/dyn
2021-08-11 09:28:39 +00:00
Guangyao Ma
27dca4d857
feat(vfs): vfs支持FD_CLOEXEC标记
...
首先,POSIX规范规定文件描述符需要支持close-on-exec属性,修改前的vfs不支持close-on-exec,当exec系列函数执行时,进程所有的文件将会被关闭(0,1,2也重新被打开)。但是,系统有些时候是不能在exec时关闭全部文件的,例如在执行exec之前,就需要重定向进程的某些文件描述符时(使用dup2),就希望该文件不被关闭,继续保持重定向属性,shell执行进程并重定向其标准输出到文件,这是我们经常做的事情。
BREAKING CHANGE:
执行exec类函数后,进程拥有的文件描述符情况发生变化:修改前,默认关闭所有的进程文件描述符,0,1,2重新打开;修改后,除非文件描述符拥有FD_CLOEXEC标记,否则该描述符不会被关闭。
re #I3U81W
Change-Id: I54e841ac88e9835ec23e97de0cbc906c4e11f5a4
Signed-off-by: Guangyao Ma <guangyao.ma@outlook.com>
2021-08-11 15:35:46 +08:00
openharmony_ci
e64ee0f4e6
!518 fix: tick 动态化计算优化,消除中断执行时间对系统总体时间的影响,保证软件定时器的响应精度。
...
Merge pull request !518 from zhushengle/sched_tick
2021-08-11 03:19:48 +00:00
openharmony_ci
51da89a3fb
!532 fix: 修改DoNanoSleep 以纳秒为单位
...
Merge pull request !532 from zhushengle/sleep
2021-08-10 11:37:44 +00:00
Haryslee
42f374dd7a
fix: 合并进程栈两个地址连续的region
...
背景:进程加载的时候,先预申请一个页用作参数拷贝,另外通过mmap方式申请
额外的虚拟栈空间,此时便有两个地址连续的区间。
方案:新增内部接口OsStackAlloc,用于申请一个连续的虚拟地址区间,并对其
中指定区间做物理内存的映射。
close #I43QYJ
Signed-off-by: Haryslee <lihao189@huawei.com>
Change-Id: I224cca3671c42a94c2f74b2da5a11403849e33d3
2021-08-10 17:20:17 +08:00
zhushengle
6917e08431
fix: 修改DoNanoSleep 以纳秒为单位
...
DoNanoSleep 接口以微秒为单位,纳秒级别的在转换成微秒时被整除为0,
导致转换成tick时为0,导致延时时触发yield,导致延时时间超大
Close #I3Z9DP
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: Ib662fdc80707be6040b2bb06a1b457344bd48b30
2021-08-10 11:25:49 +08:00
openharmony_ci
007c75eb18
!496 修复mprotect修改地址区间的权限后,相应的区间名丢失问题
...
Merge pull request !496 from Harylee/mem
2021-08-10 00:05:02 +00:00
zhushengle
8df3e8c965
fix: tick 动态化计算优化,消除中断执行时间对系统总体时间的影响,保证软件定时器的响应精度。
...
方案描述:
1.周期软件定时器超时添加一个startTime字段,用于记录当前软件定时器的开始计时的时间,
在定时器响应时,开始时间修改为上一次响应的结束时间(消除了中断执行时间对软件定时器
的影响)。
2.在执行tick中断的过程当中,持有tick动态计算锁,保证在该过程中不会触发tick周期
的计算,在tick中断结束时统一计算设置。 --- 提升tick中断的执行效率
3.在设置tick周期时,减掉tick中断执行的时间,减小周期动态化带来的时间误差
4.新增LOSCFG_BASE_CORE_TICK_PER_SECOND_MINI配置宏,用于配置tick中断的最小响应精度
Close #I43UQJ
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: Icd1159a1890046b13602b7a18dcd6234d5c61a89
2021-08-09 21:18:03 +08:00
openharmony_ci
9ec208a273
!516 fix: OsGerCurrSchedTimeCycle 函数存在拼写错误
...
Merge pull request !516 from zhushengle/spell
2021-08-06 03:55:41 +00:00
zhushengle
53ced1a85e
fix: OsGerCurrSchedTimeCycle 函数存在拼写错误
...
Close #I446CX
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: I49e80ffe1a7b579b82aaf45f599623b287eb8e98
2021-08-06 11:25:21 +08:00
JerryH
3bb3173604
fix: smp启动代码解耦及内存映射关系解耦
...
close #I41P8Y
Signed-off-by: JerryH <huangjieliang@huawei.com>
Change-Id: I01833cf617bbc695543a865dbb994c6c22d4a0a8
2021-08-05 16:03:43 +08:00
pcwlno1
6a5a0326d2
fix: LiteOS_A BBOX Codex整改
...
1、判断安全函数的返回值。
Close #I43RQU
Signed-off-by: pcwlno1 <qidechun@huawei.com>
2021-08-04 08:32:10 +08:00
Haryslee
e425187d17
fix: 修复mprotect修改地址区间的权限后,相应的区间名丢失问题
...
背景:对于mmap映射的区间,修改权限后对应的区间名丢失
方案:mprotect修改权限后,对应区间名继承原区间名
close #I43R40
Signed-off-by: Haryslee <lihao189@huawei.com>
Change-Id: I969c93528cbecc2ded4e437e5aac8f82b8baa609
2021-08-03 20:40:41 +08:00
Caoruihong
4dc421e3de
fix: liteipc max data size too small
...
use IPC_IO_DATA_MAX from liteipc_adapter.h
Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: I94f2dd2ff148e8a03ffb2c7b38ab06a34a2d2827
2021-08-02 11:58:29 +08:00
openharmony_ci
f85c27de59
!476 在内核提示No idle TCB时,增加打印当前系统任务信息,以方便问题定位。
...
Merge pull request !476 from zhangfanfan2/master
2021-07-31 09:19:41 +00:00
openharmony_ci
88358ab302
!480 A核代码告警清零
...
Merge pull request !480 from wangchen/a_codex
2021-07-31 03:41:03 +00:00
openharmony_ci
1e5d01360b
!394 fix apis: setrlimit,gethostname,gethostid
...
Merge pull request !394 from wcc/misc
2021-07-31 03:17:22 +00:00
openharmony_ci
1394b3be26
!463 BBOX使用预留物理内存缓存故障日志
...
Merge pull request !463 from pcwlno1/bbox_bugfix_upload2
2021-07-31 01:55:14 +00:00
wangchen
698756d1e6
fix: A核代码告警清零
...
【背景】定期A核代码告警清零。
【修改方案】
根据工具扫描结果,对代码告警进行更改。
【影响】
对现有的产品编译不会有影响。
re #I4378T
Signed-off-by: wangchen <253227059@qq.com>
2021-07-30 17:13:55 +08:00
YOUR_NAME
11a9b00d43
fix: 在内核提示No idle TCB时,增加打印当前系统任务信息,以方便问题定位。
...
close: #I434UC
Signed-off-by: zff <zhangfanfan2@huawei.com>
Change-Id: If6cdb719412375c79356a50113a0efb45c8968f7
2021-07-30 12:52:31 +08:00
pcwlno1
2ad176e587
fix: BBOX使用预留物理内存缓存故障日志
...
1、允许用户自己指定预留物理内存的起始地址和长度。
2、在适配层中增加对预留物理内存的映射。
3、在bbox的Kcondfig中增加有关预留物理内存的编译选项。
4、在bbox的Makefile增加有关内存函数头文件的引用。
Close #I41YIZ
Signed-off-by: pcwlno1 <qidechun@huawei.com>
2021-07-30 11:02:13 +08:00
wcc
09d5bcc22d
Merge branch 'master' of gitee.com:openharmony/kernel_liteos_a into misc
2021-07-27 01:40:59 +00:00
Caoruihong
abf4d8fb25
feat: build OHOS_Image from kernel
...
using OHOS_Image as liteos default name
Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: I00bcc9a6747ffde0f07f3d243150055a644df02f
2021-07-27 01:20:46 +08:00
openharmony_ci
aaa9018acf
!455 内核二进制生成到target_out_dir中,避免误打包到rootfs中
...
Merge pull request !455 from Caoruihong/target_out_dir
2021-07-22 11:56:12 +00:00
Caoruihong
3b5268f02a
chore: output liteos binaries to target_out_dir
...
liteos binaries no need pack to rootfs.
Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: Iba650c9d09302902c108760163eca55b4ec40221
2021-07-22 18:52:24 +08:00
openharmony_ci
0ad91713f6
!449 确保BBOX抓取的故障日志落盘
...
Merge pull request !449 from pcwlno1/bugfix_log_write
2021-07-22 05:44:10 +00:00
pcwlno1
8f6a1dd33c
fix: 修改某些平台保存bbox日志失败的问题
...
1、在日志写如完成之后执行fsync确保落盘。
Close #I41UTP
Signed-off-by: qidechun <qidechun@huawei.com>
2021-07-22 10:19:31 +08:00
openharmony_ci
8755dc9d35
!443 从Make编译切换到GN编译
...
Merge pull request !443 from Caoruihong/build_gn
2021-07-22 01:50:19 +00:00
Caoruihong
a8805a65aa
feat: add support for gn build system
...
add BUILD.gn for all kernel modules
Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: I018446427bf64615f2596d47862b219659b58b34
2021-07-21 15:52:40 +08:00
openharmony_ci
4adc15e630
!446 init进程收到子进程退出信号后,调用fork重新拉起进程,会导致系统卡死
...
Merge pull request !446 from zhangfanfan2/master
2021-07-21 07:39:31 +00:00
openharmony_ci
d9774e016e
!447 chore: fix function and variable name spell issues
...
Merge pull request !447 from kenneth/chore
2021-07-21 05:29:07 +00:00
openharmony_ci
c610578d73
!433 fix: 修改默认窗口宽度到400
...
Merge pull request !433 from MGY917/change_winsz
2021-07-21 05:21:00 +00:00
openharmony_ci
3b9e3f8471
!438 解决shm接口死锁问题
...
Merge pull request !438 from JerryH/shm
2021-07-21 01:50:28 +00:00
kenneth
58d4366e1d
chore: fix function and variable name spell issues
...
fix some spell issues in files under folder kernel/base/core:
change Recyle to Recycle, ilde to idle and Porcess to Process
close #I3R28X
Signed-off-by: kenneth <zhushangyuan@huawei.com>
2021-07-21 08:52:18 +08:00
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
7b7d64cc87
!404 mount接口支持MS_RDONLY flag
...
Merge pull request !404 from Far/master
2021-07-20 12:47:43 +00:00
chenjing
14bd753aa8
fix: OsGetArgsAddr声明所在头文件不正确
...
close #I41MWM
Signed-off-by: chenjing <chenjing139@huawei.com>
Change-Id: Iad136b3b8b63fed63fa69c594ec39bd90d5513b7
2021-07-20 19:30:04 +08:00
Far
8729f6ee57
feat: 增加mount的MS_RDONLY标志的支持
...
增加mount的MS_RDONLY标志的支持,并修改vfs主要接口相关支持。
1. fatfs lseek接口在分区以MS_RDONLY方式和文件以只读打开时不再能够扩大文件的大小。
2. 直接在镜像中创建storage目录,而不是在挂载根文件系统时创建storage目录。
3. 增加了MS_RDONLY的测试用例。
Close #I3Z1W6
Signed-off-by: Far <yesiyuan2@huawei.com>
2021-07-20 16:21:08 +08:00
chenjing
80473f0975
fix: bootargs解析与rootfs挂载解耦,并支持自定义bootargs参数
...
1、bootargs解析与rootfs挂载进行解耦;
2、支持开发者自定义bootargs参数,内核存储bootargs中所有参数;
3、开发者可获取bootargs中的参数内容,并自行解析。
close #I41CL8
Change-Id: If384476714854ba0cf64eb70b785eb26737dd3d2
Signed-off-by: chenjing <chenjing139@huawei.com>
2021-07-20 11:48:31 +08:00
JerryH1011
7a6e4c8155
fix:修复共享内存shmat和shmdt接口之间存在的死锁问题
...
close #I40QOM
Change-Id: Ib3783f5d6b1095bf2100ab024fe0235a64355823
Signed-off-by: JerryH1011 <huangjieliang@huawei.com>
2021-07-19 14:55:47 +08:00
wcc0
c9d69e2d1b
fix: add capability and amend smoke testcase
...
add setrlimit,gethostname,gethostid and capability
Change-Id: I0d5f23cb87ec2731fb79e7c5cfbe1ce109ac158a
2021-07-16 09:24:44 +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
qidechun
cb17fa50ed
feat: 给开发者提供系统信息导出Hidumper工具。
...
给开发者提供系统信息DUMP机制,帮助开发者观察系统功能状态,发现潜在问题。
Close #I3NN7D
Signed-off-by: qidechun <qidechun@huawei.com>
2021-07-14 14:49:58 +08:00
Guangyao Ma
09c491ca1f
fix: 修改默认窗口宽度到400
...
由于内核暂不支持tty,窗口默认宽度写死的为80。在流水线中,往往有时候需要更宽的
窗口宽度。在tty支持动态获取和设置大小之前,先调整大小为400。
re #I40LQX
Signed-off-by: Guangyao Ma <guangyao.ma@outlook.com>
Change-Id: Ic21a8b7098f47b7d608762678eebb7b8ecb67ce4
2021-07-14 14:41:40 +08:00
qidechun
a195aac9fb
feat: add blackbox for liteos_a
...
1、在内核增加BlackBox核心框架,对外提供模块回调接口注册和故障处理接口。
2、增加默认的系统模块适配层,处理通用内核态和用户态故障日志抓取和保存。
3、BBOX特性默认关闭,若想使用此特性,请在内核配置文件中增加如下编译选项:
LOSCFG_BLACKBOX=y
LOSCFG_SAVE_EXCINFO=y
LOSCFG_SAVE_EXCINFO可以帮助抓取更多的故障日志。
4、若已经打开BBOX特性,想快速验证此特性,请添加如下编译选项:
LOSCFG_HIDUMPER=y
Close #I406NP
Signed-off-by: qidechun <qidechun@huawei.com>
2021-07-14 09:37:35 +08: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
openharmony_ci
78906f4a6c
!406 修正最小编译时的错误
...
Merge pull request !406 from Caoruihong/qemu_mini
2021-07-07 08:29:28 +00:00
Denny
55e5e29005
回退 'Pull Request !401 : 【DFX子系统】【BBoxDetector】LiteOS_A死机重启维测框架'
2021-07-07 10:29:43 +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
qidechun
425975e481
feat: add blackbox for liteos_a
...
1、在内核增加BlackBox核心框架,对外提供模块回调接口注册和故障处理接口。
2、增加默认的系统模块适配层,处理通用内核态和用户态故障日志抓取和保存。
Close #I3NN7V
Signed-off-by: qidechun <qidechun@huawei.com>
2021-07-06 07:49:59 +08:00
openharmony_ci
003810284c
!384 对内核中menuconfig开关的宏使用#ifdef/#ifndef来做预编译判断
...
Merge pull request !384 from boxi/upload
2021-07-01 07:11:13 +00: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
Caoruihong
d7672d47f2
chore: make liteos_a can be built alone
...
in the liteos_a directory, we used to use `make clean all` command
to build liteos_a kernel for test.
Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: I5ca689c1c44052f7de937d7faa9e4d3534d97380
2021-06-30 18:44:46 +08:00
openharmony_ci
abbeca1cb2
!359 sysroot和CPU架构参数通过BUILD.gn传递给Make
...
Merge pull request !359 from Caoruihong/sysroot
2021-06-29 08:14:54 +00:00
openharmony_ci
50c8abc521
!371 fix: 修复kill进程时,liteipc阻塞的进程无法退出问题
...
Merge pull request !371 from zhushengle/p_kill
2021-06-29 05:27:08 +00:00
openharmony_ci
339c467e71
!375 基于汇编实现内核对用户态内存清零的功能
...
Merge pull request !375 from Harylee/mem
2021-06-29 04:41:02 +00:00
Caoruihong
9e45086d19
chore: pass sysroot and arch related cflags by BUILD.gn
...
sysroot and arch related cflags are pass by BUILD.gn now.
Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: Ia6000dd7ed8a8a37e935ace49d8460a919a16566
2021-06-28 16:31:02 +08:00
zhushengle
7de43bb004
fix: 修复kill进程时,因liteipc阻塞的进程概率无法退出问题
...
kill进程时,会将因为liteipc阻塞的线程唤醒,使其调度并自动退出,由于liteipc阻塞机制为
循环阻塞方式,会导致将因liteipc阻塞的线程唤醒后又进入等待中。此处在唤醒因liteipc阻塞的
线程后检查是否已有kill标志,如果有使其按接收数据失败退出,在返回用户态之前,该线程会进
入退出流程,结束运行。
Close #I3XX7K
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: Iec4e298dff4aefd2994289067a35cb5673e323f9
2021-06-26 17:08:48 +08:00
Guangyao Ma
1d952a254a
fix: 设置qemu默认userfs大小/修改qemu驱动目录
...
驱动目录位置不合理,需要调整到/device/qemu/drivers下面
close #I3XW96 #I3XWXD
Change-Id: Ied6b90d2d0631c99f2209f5b72bbd12cdff6b1d5
Signed-off-by: Guangyao Ma <guangyao.ma@outlook.com>
2021-06-26 15:38:19 +08:00
Haryslee
9db3407589
feat: 基于汇编实现内核对用户态内存清零的功能
...
背景:LOS_UserMemClear接口原有实现是通过在内核中
申请一块堆内存并对其清零,调用copy_to_user来达到
对用户态内存清零的目的,需要使用堆内存。
修改方案:基于汇编实现内核对用户态内存清零的功能。
close #I3XXT0
Change-Id: I27cb1e45559cb75a9b330799fe427abd54f51c15
Signed-off-by: Haryslee <lihao189@huawei.com>
2021-06-26 15:31:42 +08:00
openharmony_ci
eb72f78cf1
!363 userfs分区的起始地址与大小改为通过bootargs配置
...
Merge pull request !363 from JING/rootfs
2021-06-25 01:05:16 +00:00
openharmony_ci
12577eade5
!358 feat: L1支持低功耗投票框架
...
Merge pull request !358 from zhushengle/pm_v
2021-06-25 00:26:41 +00:00
openharmony_ci
a28dcc38c9
!360 增加清除文件系统缓存的维测接口
...
Merge pull request !360 from 野生毛霉君/master
2021-06-24 07:34:45 +00:00
mucor
3d1cf683f3
feat: add clear cache cmd to /proc/fs_cache
...
write "clear pathcahe" to clear pathcaches and vnodes
write "clear pagecache" to clear pagecaches
write "clear all" to clear both pathcaches and pagechaches
the cache in use will not be cleared
close: #I3XLPH
Signed-off-by: mucor <mucorwang@gmail.com>
2021-06-24 15:11:50 +08:00
chenjing
2e2b14205f
fix: userfs分区的起始地址与大小改为通过bootargs配置
...
在内核解析bootargs参数时,加入对userAddr与userSize两个字段的解析。
1、如果bootargs中配置了userAddr与userSize,则使用配置值划分storage分区。
2、如果bootargs中未配置这两个字段,则storage分区默认紧接在rootfs分区后。
close #I3XNEY
Signed-off-by: chenjing <chenjing139@huawei.com>
Change-Id: Iba63ccd7fc3f7efc1d726c4b38beee5df1d64122
2021-06-24 15:03:53 +08:00
openharmony_ci
b8e18ffdf1
!323 fix: 修复内核堆完整性检查逻辑中访问非法指针导致系统异常问题。
...
Merge pull request !323 from Harylee/mem
2021-06-24 06:45:45 +00:00
zhushengle
21d8ac8752
feat: L1支持低功耗投票框架
...
功能描述:
在proc目录下增加power目录,添加powr_mode,power_lock,power_unlock和power_count节点,
power_mode:节点用于查询和设置系统支持的功耗模式
power_lock:用于查询和获取低功耗锁,持锁后,将会阻止系统进入低功耗状态
power_unlock: 用于释放已经持有的低功耗锁,也可查询当前有那些持有低功耗锁
power_count:用于查询当前持有低功耗锁的个数
Close #I3VS5N
Change-Id: I2e2881cc968eab3c5fa6f9dbd7e8c5e448609407
Signed-off-by: zhushengle <zhushengle@huawei.com>
2021-06-24 14:27:23 +08:00
chenwei
600dded31e
feat: add /proc/fd file to dump the pid/fd/path information
...
1, for users with privilege, display all users' fd info with the template "Pid Fd SysFd Path"
2, for normal user, display its own fd info with the template "Pid Fd Path"
close #I3WB5U
Signed-off-by: chenwei <chenwei26@huawei.com>
2021-06-22 17:27:25 +08:00
mucor
231cb6be27
feat: add /proc/fs_cache to display cache info
...
add /proc/fs_cache to display vnode, path cache, page cache.
also change some bad virable name
close: #I3WWBD
Signed-off-by: mucor <mucorwang@gmail.com>
2021-06-22 14:53:17 +08:00
openharmony_ci
7f484dfa09
!315 chore: update LOS_BitmapFfz comment
...
Merge pull request !315 from kenneth/LOS_BitmapFfz
2021-06-22 06:34:45 +00:00
kenneth
99d7072332
chore: update LOS_BitmapFfz comment
...
函数LOS_BitmapFfz有2个参数,注释中只描述了一个参数,丢失了对参数numBits的描述,影响导出API文档。补充函数注释的@param部分。
close #I3U3SF
Signed-off-by: kenneth <459864689@qq.com>
2021-06-22 10:22:46 +08:00
Haryslee
30f5ab89b7
fix: 修复内核堆完整性检查逻辑中访问非法指针导致系统异常问题。
...
内存完整性校验原有逻辑中当检测到非零异常指针后仍继续访问异常指针
next的内存域导致系统异常。
本次修改后的逻辑为:检测到非零异常指针后直接退出循环,将异常指针
的相关信息输出即可,增加了goto逻辑。对原有功能逻辑无影响。
close #I3VJZT
Change-Id: I5be06a552cf9fd74d8bd78f5cdf04db06eab4f76
Signed-off-by: Haryslee <lihao189@huawei.com>
2021-06-22 09:54:31 +08:00
SimonLi
2f3d7efc24
回退 'Pull Request !342 : 增加/proc/fs_cache来显示文件系统缓存维测信息'
2021-06-21 21:33:52 +08:00
mucor
53c6d96c6f
feat: add /proc/fs_cache to display cache info
...
add /proc/fs_cache to display vnode, path cache, page cache.
also change some bad virable name
close: #I3WESD
Signed-off-by: mucor <mucorwang@gmail.com>
2021-06-21 16:11:06 +08:00
openharmony_ci
36e5124c0a
!322 文件系统冗余代码和依赖删除
...
Merge pull request !322 from 野生毛霉君/master
2021-06-19 20:40:14 +08:00
mucor
73a777777e
fix: remove redundant headfile
...
1.remove redundant headfile in kernel, such as:
compiler.h;debug.h;automount.h;inode.h;syslog.h;net.h;
2.split fs.h to file.h and driver.h
3.move vnode.h and path_cache.h to vfs/include
4.remove redundant interface and defines
close: #I3RTNR
Signed-off-by: mucor <mucorwang@gmail.com>
2021-06-19 17:32:47 +08:00
openharmony_ci
ed0041ac65
!327 增强Liteipc的多线程保护
...
Merge pull request !327 from Caoruihong/master
2021-06-18 09:45:48 +08:00
openharmony_ci
dca42b9ef6
!316 fix: update LOS_DL_LIST_IS_END comment
...
Merge pull request !316 from kenneth/LOS_DL_LIST_IS_END
2021-06-17 14:08:29 +08:00
openharmony_ci
fa6993381a
!317 chore: rename function OsCreateUserVmSpace
...
Merge pull request !317 from kenneth/los_vm_map
2021-06-17 14:07:51 +08:00
openharmony_ci
37d80146db
!321 chore: fix typos
...
Merge pull request !321 from kenneth/destroy
2021-06-17 14:06:06 +08:00
Caoruihong
7e2aef2480
fix: race condition in liteipc
...
global data should be accessed in protection
fix: #I3PW5Y
Change-Id: I9dfa09992eb8e78935ed367240628300fc033193
Signed-off-by: Caoruihong <crh.cao@huawei.com>
2021-06-17 12:01:25 +08:00
kenneth
f0b419099d
chore: rename function OsCreateUserVmSpace
...
rename function OsCreateUserVmSpace to fix typo
close https://gitee.com/openharmony/kernel_liteos_a/issues/I3QD42
Signed-off-by: kenneth <459864689@qq.com>
2021-06-16 15:00:53 +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
Guangyao Ma
eca711bb64
fix: avoid compile warning ignored
...
Close #I3VOAO
Change-Id: I42103e0e7061e50f8d63df98ea9f5cecd49fe6f4
Signed-off-by: Guangyao Ma <guangyao.ma@outlook.com>
2021-06-15 19:56:21 +08:00
kenneth
900269bd46
fix: update LOS_DL_LIST_IS_END comment
...
update LOS_DL_LIST_IS_END comment
close https://gitee.com/openharmony/kernel_liteos_a/issues/I3TWU6
Signed-off-by: kenneth <459864689@qq.com>
2021-06-15 17:16:41 +08:00
zhushengle
23937a239f
fix: 3518平台, 异常测试进程无法正常退出
...
用户态线程在用户态处于while(1), 在中断处理时使该线程处于READY状态,
此时进程退出时该线程无法被正常回收,导致进程无法合理退出。
Close #I3V8R5
Change-Id: I7f83f5f7fe41c03eb602bf78cfd33fff1b0acdb7
Signed-off-by: zhushengle <zhushengle@huawei.com>
2021-06-10 20:11:36 +08:00
openharmony_ci
4e269d7071
!304 mmc驱动代码上库
...
Merge pull request !304 from liangxuewu/MMC_DRIVER_PRJECT
2021-06-09 20:46:02 +08:00
YOUR_NAME
44ce696904
fix: 内核态在console初始化完成后,使用printf无法正常打印
...
printf实现流程上会调用cmd为TIOCGWINSZ的ioctl命令,该命令的实现
在console层ConsoleGetWinSize函数中,而此函数copy结果时使用函数
LOS_ArchCopyToUser,由于该过程在内核态,导致LOS_ArchCopyToUser失败,
从而引发printf无法正常打印的问题。
close: #I3UG00
Signed-off-by: zhangfanfan <zhangfanfan2@huawei.com>
Change-Id: I3e85f682429cbe30842206842ddb2a8388ec8412
2021-06-08 20:01:39 +08:00
lzl
6352d6e1da
kernel adapter
...
Signed-off-by: lzl <sucer_fater@163.com>
2021-06-08 09:07:04 +00:00
openharmony_ci
1a3f3f54e7
!302 fix: Codex告警清零
...
Merge pull request !302 from Far/master
2021-06-08 08:48:48 +08:00
openharmony_ci
647f3defcd
!296 支持最小化特性编译,添加了一个针对qemu arm virt的样例config配置
...
Merge pull request !296 from Caoruihong/master
2021-06-07 22:51:46 +08:00
Far
b5370af822
fix: codex clean
...
1. 修复可能对NULL指针解引用的场景
2. 将不修改内容的指针入参修改为const
3. 对getpgrp的返回值进行校验后再使用
4. 修复了局部变量未初始化的问题
Close #I3UOFN
Signed-off-by: Far <yesiyuan2@huawei.com>
2021-06-07 17:08:02 +08:00
Caoruihong
744b2021b2
chore: add a mini config for qemu arm virt
...
support turn off as many features as possible.
current only libc and posix and bsd can not be turned off.
Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: I1e97570c67593207a56dc11f357eca4b4a018bfd
2021-06-05 17:40:22 +08:00
Kiita
e5f6bf0556
feat: timer_create支持以SIGEV_THREAD方式创建定时器
...
【背景】当前timer_create接口不支持以SIGEV_THREAD的方式创建多个定时器
【修改方案】
1、内核timer_create接口在创建software timers相应的线程时,使用线程
taskCB所携带的信息识别各个线程的信号并依据该信息分别派发出信号。
2、关于用户任务操作许可验证的修改,现在允许同一用户线程向其自身派发信
号,软件定时器计时结束,向用户态发送相应的信号,完成用户态线程的回调。
【影响】
对现有的产品暂无影响。
re #I3SRFI
Signed-off-by: yansira <yansira@hotmail.com>
Change-Id: Ia23f5ef01975bf867dd7f5db797a30c264c50501
2021-06-04 15:29:44 +08:00
openharmony_ci
042f06e2b1
!260 【轻量级 PR】:fix: fix stored typo
...
Merge pull request !260 from jmxl/N/A
2021-06-04 13:54:53 +08:00
openharmony_ci
2067b2f648
!256 fix: 解决kill进程时无法保证进程持有的系统资源合理释放
...
Merge pull request !256 from zhushengle/Sig
2021-06-03 17:00:00 +08:00
openharmony_ci
e59693e7fa
!278 修复开机概率挂死
...
Merge pull request !278 from Zhaotianyu/0603initframework_fix
2021-06-03 14:50:39 +08:00
openharmony_ci
db38464778
!282 fix: 修复MagicKey数组越界访问
...
Merge pull request !282 from MGY917/master
2021-06-03 11:52:17 +08:00
Guangyao Ma
071cd6268a
fix: 修复MagicKey数组越界访问
...
closes #I3U4N9
Signed-off-by: Guangyao Ma <guangyao.ma@outlook.com>
Change-Id: Ic4c4c7442cd381d03d2e40a51655a17299c4c250
2021-06-03 11:11:21 +08:00
arvinzzz
2e82c361f7
fix: 修复开机概率挂死
...
close:#I3SWY2
Change-Id: Ied2a5828ffb682903e291dab4088020033d79230
Signed-off-by: arvinzzz <fcykztyu@163.com>
2021-06-03 09:43:27 +08:00
openharmony_ci
25f1051d7a
!269 修复启动框架debug模式编译问题
...
Merge pull request !269 from Zhaotianyu/0526initframework_fix
2021-06-02 16:50:35 +08:00
arvinzzz
4c024159a9
fix: 修复启动框架debug模式下-Werror=maybe-uninitialized告警以及符号链接不进镜像的隐患
...
close: #I3T5HR
Change-Id: I2e2452d59c82726614fb78d1177d3f0f03d6e315
Signed-off-by: arvinzzz <fcykztyu@163.com>
Change-Id: I7f0b44c15a296bd8d15f0bf1fbdde60f67bb0a6c
2021-06-02 09:31:51 +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
zhangfanfan2
0ea476b974
fix: 关闭jffs和fat后,rootfs配置也被相应关闭,导致nand介质的rootfs不可用。
...
close: #I3SBYN
2021-05-21 17:41:30 +08:00
arvinzzz
d2f2679071
fix: Delete useless 'exc interaction' macros and function declarations.
...
close: #I3SDKY
Change-Id: I5ed9356ce2b55b6e07c3f192cdbc4a4f6fbfaa58
2021-05-21 15:10:05 +08:00
jmxl
d25560f8ac
fix: fix stored typo
2021-05-21 10:16:04 +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
openharmony_ci
8a48f4926a
!249 kernel/extended/trace/los_trace.c中可能存在空指针访问
...
Merge pull request !249 from boxi/upload
2021-05-19 14:46:18 +08:00
kenneth
2b643b04c1
fix:fix queuePosition typo
2021-05-19 14:05:28 +08:00
openharmony_ci
6f99abfc7b
!222 fix: correct spelling
...
Merge pull request !222 from rtos-lover/los_task
2021-05-19 13:46:10 +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
boxi
4d863e985b
fix: Fix wrong judgment in los_trace.c to avoid null pointer access.
...
Fix wrong judgment in los_trace.c to avoid null pointer access.
Close #I3RT9F
Change-Id: Id37b80fc6acc085205695318232d5f4fd75472aa
2021-05-18 17:21:47 +08:00
kenneth
12d98b144b
fix: fix length typo
...
fix typos length、there、necessary
close https://gitee.com/openharmony/kernel_liteos_a/issues/I3RSY0
2021-05-18 14:33:59 +08:00
kenneth
8f8c038b21
fix: fix function name OsSchedSetIdleTaskSchedParam
...
correct function name OsSchedSetIdleTaskSchedParam
close https://gitee.com/openharmony/kernel_liteos_a/issues/I3RQ6J
2021-05-18 09:02:48 +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
openharmony_ci
fa273ca817
!242 解决内存泄漏检测错误判断及删除冗余判断
...
Merge pull request !242 from JerryH/mem
2021-05-14 16:07:28 +08:00
YOUR_NAME
8da10b9439
Fix memory leak check and interity error check.
...
Delete redundant judgments.
Close #I3P10Y and #I3QNLT
Change-Id: Ibaf5d4da46f12c291619bb88a41ac18af4612ca1
2021-05-14 14:42:41 +08:00
Guangyao Ma
937734b1e9
fix: modify event API description
...
Change-Id: I131c70e52d907b6c52232596475f2dba16612fce
2021-05-11 21:09:24 +08:00
openharmony_ci
bcf7a0701a
!223 add testsuites/kernel to build
...
Merge pull request !223 from lnlan/ktest_fixed
2021-05-11 17:02:03 +08:00
openharmony_ci
fdbd0820c2
!232 support ipc copy fd to process
...
Merge pull request !232 from zhOu/master
2021-05-11 15:46:37 +08:00
zhOu
f76fa4a344
feature: support ipc copy fd to process
2021-05-11 14:56:09 +08:00
openharmony_ci
ca5555e6a5
!190 fix:solve the coupling between the kernel and the structure under ARCH
...
Merge pull request !190 from zhushengle/Stack
2021-05-11 11:46:40 +08:00
lnlan
b27264b9f3
add testsuites/kernel to build
...
Change-Id: Ia14a3413b6c974771cef2e147083c7748abd1c59
2021-05-11 11:42:41 +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
rtos-lover
c66fe0313f
fix: correct spelling
...
correct some typos in los_task.c and other files
close https://gitee.com/openharmony/kernel_liteos_a/issues/I3QDB8
2021-05-08 11:23:08 +08:00
openharmony_ci
6012acb509
!218 fix: console compile bug fix
...
Merge pull request !218 from MGY917/master
2021-05-07 12:52:39 +08:00
Guangyao Ma
f8441a0cde
fix: console compile bug fix
...
Change-Id: I4c895bf7278b50d7ddf65e9556d77221b0c7ca32
2021-05-07 11:38:07 +08:00
openharmony_ci
f375e50f2d
!133 feat: introduce mksh toybox to rootfs
...
Merge pull request !133 from MGY917/master
2021-05-07 10:31:08 +08:00
zhushengle
f6c4f6f5da
fix: Solution of conflict
...
Change-Id: If6304999f1dfbcdfbc1670b73ace61b8024336bd
2021-05-06 21:10:22 +08:00
openharmony_ci
27ab6247a6
!216 fix telnet
...
Merge pull request !216 from 野生毛霉君/master
2021-05-06 20:46:12 +08:00
openharmony_ci
be4d8e74cc
!201 系统异常信息保存到存储介质中的功能从shell依赖中剥离
...
Merge pull request !201 from zhangfanfan2/master
2021-05-06 20:44:32 +08:00
mucor
e03370f6ef
fix:telnet not work
...
add open in console dev init process
Change-Id: Ibf9801462d6de231001f094d4e75f01cad50da1f
2021-05-06 19:54:42 +08:00
Guangyao Ma
41c7689dfa
feat: introduce mksh toybox to rootfs
...
Change-Id: I0a6e6f2962ca6904c858898eb93a5b2f93e85b69
2021-05-06 19:20:35 +08:00
openharmony_ci
41f207516e
!215 fix: Sortlink, the response time to insert the node should be inserted into the back of the existing node.
...
Merge pull request !215 from zhushengle/sortlink
2021-05-06 19:16:12 +08:00
YOUR_NAME
d846035f3e
feature:the feature of saving system exception information to the
...
storage medium is separated from the shell module.
Change-Id: Id56939001d70bb92d9cc02bd7c9f55ca8b61cf5b
2021-05-06 15:18:15 +08:00