Haryslee
6c2b163c7d
fix: 修复重复执行内存用例导致系统卡死问题
...
背景:重复执行内存测试用例约几百次,系统大概率出现卡死现象,经分析知,系统卡在
内存spinlock锁中,CPU1在获取内存spinlock锁后打印异常信息,此时循环buffer满了,
CPU0此时进入异常且尝试拿取内存spinlock锁,两个核都处于锁中断锁任务状态,CPU1
写事件触发调度打印输出失败,进而在write接口中死循环无法退出,导致两个核都卡住。
方案:在write接口中增加一个判断条件:当前核处于锁任务状态且循环buffer满了时候,
直接退出循环,丢弃打印信息(持有spinlock锁后一般禁止输出打印信息)。
close #I4F7PO
Signed-off-by: Haryslee <lihao189@huawei.com>
Change-Id: I3f49a1bb211821e9c5d1d220d6867962d6a45a79
2021-12-29 14:27:43 +08:00
zff
53addea304
fix: LOS_Panic和魔法键功能中的使用PRINTK打印,依赖任务调度,特殊情况下存在打印不出来的问题
...
close: #I4NOC7
Signed-off-by: zff <zhangfanfan2@huawei.com>
Change-Id: I7f28e79293d3388e2b1d7208c2b8ff8ff133528a
2021-12-22 17:02:58 +08:00
openharmony_ci
52c12f7c9d
!730 【轻量级PR】 console.c 分支优化
...
Merge pull request !730 from 雷电_SWAT/master
2021-12-16 04:26:19 +00:00
arvinzzz
0d325c56a1
refactor: los_cir_buf.c中接口整合
...
将循环buf的上/解锁操作合进读/写操作里,删除对外上/解锁接口
BREAKING CHANGE:
1. 删除 LOS_CirBufLock(),LOS_CirBufUnlock()内核对外接口
2. LOS_CirBufWrite(),LOS_CirBufRead()由原先内部不进行上/解锁操作,变为默认已包含上/解锁操作。
close: #I4MC13
Signed-off-by: arvinzzz <zhaotianyu9@huawei.com>
Change-Id: Ie3cc1abde7fa0e5479ccbf4e596426e509b5cef5
2021-12-14 11:00:36 +08:00
lcjh
2ada41c826
分支优化
...
去除不必要分支,使用三元操作符优化简单分支
Signed-off-by: lcjh <120989324@qq.com>
2021-12-11 12:35:41 +08:00
openharmony_ci
fe4082ca9e
!709 A核代码静态告警定期清理
...
Merge pull request !709 from wangchen/1112_codex
2021-11-16 06:47:22 +00:00
lnlan
9ba725c3d4
fix: A核代码静态告警定期清理
...
【背景】A核代码静态告警定期清理
【修改方案】
1,根据codex等工具分析结果,进行必要的规范等问题修改
【影响】
对现有的产品编译不会有影响。
re #I4I0O8
Signed-off-by: wangchen <253227059@qq.com>
2021-11-15 02:47:08 +00:00
kenneth
0f878febb7
chore: 修复社区反馈问题Percpu结构体注释错误
...
修复社区反馈问题Percpu结构体注释错误,排查下其他拼写错误。
close #I4GMLH
Signed-off-by: kenneth <zhushangyuan@huawei.com>
2021-11-10 10:20:33 +08:00
huangshan
cc6e11281e
fix: shell支持exit退出,完善帮助信息,特殊处理不可见字符
...
Change-Id: Ia6dbff0faed4ec73fcf35691676f1acb2b8df78d
Signed-off-by: huangshan <huangshan9@huawei.com>
2021-11-08 18:13:38 +08:00
huangshan
cdc0877f16
修复Ctrl+C会终止所有进程的问题
...
Signed-off-by: huangshan <huangshan9@huawei.com>
Change-Id: I5861569c63fd6c1adf8c702797e4d79eba76211f
2021-11-04 12:23:20 +08:00
zff
cb423f8454
fix: 内核ERR打印,无进程和线程信息,不方便问题定位。
...
close: #I4DAKM
Signed-off-by: zff <zhangfanfan2@huawei.com>
Change-Id: I5acc8b2b632633b0717eb4186773e6cae35ea0e4
2021-10-14 19:03:11 +08:00
zff
d21b05c0f6
fix: 通过g_uart_fputc_en关闭打印后,shell进程不能正常启动
...
console层的实现中复用g_uart_fputc_en用于关闭打印的功能,代码设计上认为
g_uart_fputc_en为0时console层未使能,导致shell进程中ioctl操作失败,shell
进程不能正常启动。
close: #I4CTY2
Signed-off-by: zff <zhangfanfan2@huawei.com>
Change-Id: I0a225c1db42f2b384ad590ca05b048c4b61db99c
2021-10-08 10:01:31 +08:00
zhushengle
48ca854bf0
fix: 临终遗言重定向内容缺失task相关信息,对应的shell命令中申请的内存需要cacheline对齐
...
1.内核打印的地方支持异常时重定向打印信息
2.excinfo 命令中申请的内存64对齐
Close #I482S5
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: I4e8a971cc5b14f62d573bb160682089d9d50e64e
2021-09-29 16:26:31 +08:00
openharmony_ci
ee72b21aff
!640 中断中调用PRINTK概率卡死,导致系统不能正常响应中断
...
Merge pull request !640 from zhangfanfan2/master
2021-09-29 02:48:49 +00:00
openharmony_ci
e1b85a4570
!636 修正函数声明与定义不一致的问题
...
Merge pull request !636 from Caoruihong/fix_decl
2021-09-28 07:18:18 +00:00
zff
9726ba11a7
fix: 中断中调用PRINTK概率卡死,导致系统不能正常响应中断
...
当console层的打印缓冲buffer满且打印任务被饿死时,函数ConsoleOutput会出现在for循环中
不退出的情况,导致中断打印时卡死
close: #I4C9GC
Signed-off-by: zff <zhangfanfan2@huawei.com>
Change-Id: I70b9d7c848dce7d351c5679e7b08049df27a6f10
2021-09-28 15:03:43 +08:00
Caoruihong
63fd8bc39b
fix: fix some function declarations
...
Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: I3dfcc308de6fc24035d27bc4ed4a65a2d2b6650d
2021-09-27 21:01:46 +08:00
openharmony_ci
ecd9ca7781
!534 pagecache从filep改为使用vnode
...
Merge pull request !534 from LeonChan/pg
2021-09-15 03:51:50 +00:00
Leon Chan
38a6b804e9
feat: page cache backed by vnode instead of filep
...
1, change the owner of page to vnode
2, save the file path in vnode
close: #I44TBS
Signed-off-by: Leon Chan <chenwei26@huawei.com>
2021-09-14 15:31:33 +08:00
arvinzzz
b3d96d166c
refactor: 清理Makefile冗余项
...
清理Makefile冗余项,各模块Makefile里不需要再次引用公共路径,只需引用私有头文件路径
close: #I49MOO
Signed-off-by: arvinzzz <zhaotianyu9@huawei.com>
Change-Id: I2dd7189c866498896461f78bfed5444ae1d86876
2021-09-13 18:14:15 +08:00
arvinzzz
33d0c1bd0b
refactor: 内核目录结构整理
...
1. 原kernel/common目录下属于内核拓展组件,统一移入kernel/extend管理
2. Kconfig分层,各模块自己的配置放到自己目录下管理
3. 原platform下不属于平台的公共代码抽到kernel/common下,只留板级链接脚本和一些编译脚本指向device目录下触发平台相关的编译
4. 对外公共头文件统一抽到对外include路径
5. 废弃宏,头文件清理
close: #I48KI4
Signed-off-by: arvinzzz <zhaotianyu9@huawei.com>
Change-Id: I0cf5ea81c92a8fa7b113da9cbdc8b7bc935f5aae
2021-09-08 16:36:28 +08:00
openharmony_ci
658fafe83b
!586 liteos补丁能力支持
...
Merge pull request !586 from jason_gitee/master
2021-08-31 08:16:31 +00:00
Caoruihong
055295b6d1
chore: optimize build scripts and add lto config entry
...
Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: Ibf8df58696b7f1ccb3b5b21154c3b94dda1e8ad2
2021-08-31 12:04:34 +08:00
jason_gitee
98ca8441fe
feat: add liteos patch ability
...
Signed-off-by: jason_gitee <yangjie140@huawei.com>
2021-08-28 08:02:50 +00: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
openharmony_ci
88358ab302
!480 A核代码告警清零
...
Merge pull request !480 from wangchen/a_codex
2021-07-31 03:41:03 +00:00
wangchen
698756d1e6
fix: A核代码告警清零
...
【背景】定期A核代码告警清零。
【修改方案】
根据工具扫描结果,对代码告警进行更改。
【影响】
对现有的产品编译不会有影响。
re #I4378T
Signed-off-by: wangchen <253227059@qq.com>
2021-07-30 17:13:55 +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
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
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
c610578d73
!433 fix: 修改默认窗口宽度到400
...
Merge pull request !433 from MGY917/change_winsz
2021-07-21 05:21:00 +00: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
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
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
Denny
55e5e29005
回退 'Pull Request !401 : 【DFX子系统】【BBoxDetector】LiteOS_A死机重启维测框架'
2021-07-07 10:29:43 +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
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
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
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
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