lnlan
40338918d9
fix: 修复PR520缺陷
...
【背景】
https://gitee.com/openharmony/kernel_liteos_a/pulls/520
上面修改,信号处理时才会释放申请的内存,当信号被屏蔽,且一直发送该信号时,
内存占用会不断变大
【修改方案】
1.
信号发送时已经有该信号的siginfo在链表中时,不再重新申请,重复使用之前的siginfo.
【影响】
对现有的产品编译不会有影响。
re#I4DEG5
Signed-off-by: lanleinan <lanleinan@163.com>
Change-Id: I74b3b7ff0b9efb0179313af9a0c8d1e12d1db5bb
2021-10-11 12:37:58 +00:00
openharmony_ci
c360a97bab
!631 fix: 进程在退出前回收vmspace中的所有Region
...
Merge pull request !631 from zhushengle/process
2021-10-11 03:55:22 +00:00
zhushengle
298ccea3fe
fix: 进程退出前自己回收vmspace中的所有region
...
背景:
父进程fork一个子进程,调用waitpid等待子进程结束。
子进程dlopen一个文件a.so,并退出。当守护进程正在
1核回收子进程资源时,父进程在0核运行从waitpid返
回后,同时remove a.so概率失败。
Close #I4CKQC
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: Ie7940e7c931ced10ee357cf9aa7c64355effed49
2021-10-09 12:14:45 +08:00
openharmony_ci
56a92f9207
!641 feat: 支持AT_RANDOM以增强用户态栈保护能力
...
Merge pull request !641 from Harylee/shm
2021-10-08 06:01:21 +00:00
openharmony_ci
29df5dc1f2
!646 将menuconfig 与 update_config功能做成一样
...
Merge pull request !646 from Caoruihong/menuconfig2
2021-09-30 07:19:01 +00:00
openharmony_ci
e1b36bfe41
!594 临终遗言重定向内容缺失task相关信息,对应的shell命令中申请的内存需要cacheline对齐
...
Merge pull request !594 from zhushengle/excinfo
2021-09-30 06:17:48 +00:00
Caoruihong
3dd952b0b7
chore(make): make menuconfig same as update_config
...
Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: I5c4a1a0601865c1c7d6ae40b829abdb53f13ccd3
2021-09-30 12:04:48 +08:00
Haryslee
06ea03715f
feat: 支持AT_RANDOM以增强用户态栈保护能力
...
背景:不开地址随机化时,用户态栈CANARY值是固定值
方案:支持AT_RANDOM,CANARY从AT_RANDOM获取随机值以增强用户态栈保护能力
close #I4CB8M
Signed-off-by: Haryslee <lihao189@huawei.com>
Change-Id: I28cef09f7016a5096e2096d4f6aa72722fcf1fd7
2021-09-30 10:36:12 +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
c7da23695c
!644 Open lwip netif extern callback interface
...
Merge pull request !644 from steve/master
2021-09-29 06:43:48 +00:00
openharmony_ci
2c33cfce86
!599 feat: L0~L1 支持Perf
...
Merge pull request !599 from LiteOS/perf
2021-09-29 06:15:02 +00:00
openharmony_ci
9bf580b1f6
!634 fix(mtd): 去除mtd对hisilicon驱动的依赖
...
Merge pull request !634 from SimonLi/master
2021-09-29 06:07:44 +00:00
fanxiaoyu
3be31d1cfb
Description:open lwip netif extern callback interface
...
Feature or Bugfix:Feature
Binary Source: No
Signed-off-by: fanxiaoyu <fanxiaoyu3@huawei.com>
2021-09-29 04:06:44 +00:00
openharmony_ci
ee72b21aff
!640 中断中调用PRINTK概率卡死,导致系统不能正常响应中断
...
Merge pull request !640 from zhangfanfan2/master
2021-09-29 02:48:49 +00:00
LiteOS2021
6e0a3f10bb
feat: L0-L1 支持Perf
...
1.【需求描述】:
L0-L1 支持Perf,提供2种模式的配置, 及3大类型的事件配置:
2种模式:计数模式(仅统计事件发生次数)、采样模式(收集上下文如任务ID、pc、backtrace等)。
3种事件类型:CPU硬件事件(cycle、branch、icache、dcache等)、OS软件事件(task switch、mux pend、irq等)、高精度周期事件(cpu clock)。
2.【方案描述】:
L0:
基于事件采样原理,以性能事件为基础,当事件发生时,相应的事件计数器溢出发生中断,在中断处理函数中记录事件信息,包括当前的pc、当前运 行的任务ID以及调用栈等信息。
L1:
新增perf字符设备,位于“dev/perf”,通过对设备节点的read\ioctl,实现用户态perf
BREAKING CHANGE:
1.新增一系列perf的对外API,位于los_perf.h中.
LOS_PerfInit配置采样数据缓冲区
LOS_PerfStart开启Perf采样
LOS_PerfStop停止Perf采样
LOS_PerfConfig配置Perf采样事件
LOS_PerfDataRead读取采样数据
LOS_PerfNotifyHookReg 注册采样数据缓冲区的钩子函数
LOS_PerfFlushHookReg 注册缓冲区刷cache的钩子
2. 用户态新增perf命令
【Usage】:
./perf [start] /[start id] Start perf.
./perf [stop] Stop perf.
./perf [read nBytes] Read nBytes raw data from perf buffer and print out.
./perf [list] List events to be used in -e.
./perf [stat] or [record] <option> <command>
-e, event selector. use './perf list' to list available events.
-p, event period.
-o, perf data output filename.
-t, taskId filter(whiltelist), if not set perf will sample all tasks.
-s, type of data to sample defined in PerfSampleType los_perf.h.
-P, processId filter(whiltelist), if not set perf will sample all processes.
-d, whether to prescaler (once every 64 counts), which only take effect on cpu cycle hardware event.
Close #I47I9A
Signed-off-by: LiteOS2021 <dinglu@huawei.com>
Change-Id: Ieb9b7483c85d1495df7c55bc0027f4309dff9814
2021-09-28 19:28:34 +08: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
openharmony_ci
0fa1310a32
!584 OsLockDepCheckIn异常处理中存在g_lockdepAvailable锁嵌套调用,导致死锁异常信息不正常输出
...
Merge pull request !584 from zhangfanfan2/master
2021-09-28 06:14:00 +00:00
SimonLi
f7d010dfa4
fix(mtd): 去除mtd对hisilicon驱动的依赖
...
【背景】
1. liteos-a内核drivers/mtd/multi_partition/用到了device/hisilicon下的驱动函数实
现,这样导致三方芯片适配时,会依赖hisilicon的驱动。
2. HDF的mtd驱动提供了这几个函数的实现,但是未暴露头文件出来。
【修改方案】
1. 修改BUILD.gn去除/device/hisilicon的依赖。
2. 修改mtd_partition.c,将hisilicon的头文件改为hdf的头文件依赖。
【遗留问题】
liteos-a内核与HDF mtd驱动的分界线还不明确,导致依赖关系不清楚
close: #I49FKL
Signed-off-by: SimonLi <likailong@huawei.com>
2021-09-28 11:19:42 +08:00
zff
bf030b6bb5
fix: OsLockDepCheckIn异常处理中存在g_lockdepAvailable锁嵌套调用,
...
导致死锁异常信息不正常输出
close: #I457ZZ
Signed-off-by: zff <zhangfanfan2@huawei.com>
Change-Id: Ic54ece064a4c85103b644dcbe8ed8bbdecbfc491
2021-09-27 21:56:20 +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
7d7cff4c51
!633 fix: codex清理
...
Merge pull request !633 from Far/master
2021-09-27 08:38:37 +00:00
Far
9ab3e351d3
fix: codex 清理
...
Close #I4BL3S
Signed-off-by: Far <yesiyuan2@huawei.com>
2021-09-27 14:43:28 +08:00
openharmony_ci
492264b8e6
!629 修复dispatch单词拼写错误。
...
Merge pull request !629 from pef/typo
2021-09-24 10:32:58 +00:00
openharmony_ci
d59aad1f3a
!580 新增解析异常和backtrace信息脚本
...
Merge pull request !580 from zhangfanfan2/script
2021-09-24 08:29:13 +00:00
pef
9b07aece2d
fix: 修复dispatch单词拼写错误。
...
【背景】
打印有错误单词的提示语
[ERR] Dsipatch signals failed!, ret: 22
这里单词应该是 dispatch 。
【修改方案】
1. 将Dsipatch改为Dispatch。
【影响】
对现有的产品编译不会有影响。
re #I4BLE8
Change-Id: I26d4336d6d7f7bfc4811819be0a1e8ba9d7d50a8
Signed-off-by: pef <cyd1997@126.com>
2021-09-24 03:45:08 +00:00
openharmony_ci
de8bd2866a
!609 三方库FatFs升级至r0.14a版本
...
Merge pull request !609 from Far/fatfs_update
2021-09-24 00:53:43 +00:00
openharmony_ci
1150f86d46
!628 fix: 共享内存问题修复
...
Merge pull request !628 from Harylee/shm
2021-09-24 00:31:51 +00:00
Haryslee
9fdb80f85f
fix: 共享内存问题修复
...
Signed-off-by: Haryslee <lihao189@huawei.com>
背景:父进程移除共享内存并标记SHM_SEG_REMOVE,当子进程资源回收时在
ShmFindSeg接口中判断该共享内存具有SHM_SEG_REMOVE时返回空,但是此时
seg->ds.shm_nattch不为0,不应返回空。
方案:ShmFindSeg接口中增加seg->ds.shm_nattch为0的判断。
close #I47X2Z
Change-Id: I8735cd11ac237b17fa745c50313da0fd0649bb9f
2021-09-23 21:04:36 +08:00
openharmony_ci
93e74c5f0b
!520 修复sigwait等待到的信号值与获取的siginfo中的值不一致
...
Merge pull request !520 from lnlan/fixed_sigwait
2021-09-23 03:22:04 +00:00
Far
d23f2fc73f
feat:适配三方库FatFs升级至r0.14a版本
...
适配了_mkfs和find_volume接口的修改
Signed-off-by: Far <yesiyuan2@huawei.com>
2021-09-22 15:00:40 +08:00
openharmony_ci
c0721f4f0b
!626 处理链接器失败时关闭打开的文件
...
Merge pull request !626 from LeonChan/codex
2021-09-18 09:41:31 +00:00
Leon Chan
a375bf5668
fix: close file when process interpretor failed
...
close: #I4ATQX
Signed-off-by: Leon Chan <chenwei26@huawei.com>
2021-09-18 15:02:22 +08:00
openharmony_ci
52d1d8d8d0
!623 procfs 使用统一的权限
...
Merge pull request !623 from LeonChan/procfs_mode
2021-09-16 11:35:42 +00:00
Leon Chan
c79bcd028e
fix: same file mode for procfs files
...
close: #I4ACTC
Signed-off-by: Leon Chan <chenwei26@huawei.com>
2021-09-16 16:18:02 +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
openharmony_ci
92f33ab9c4
!620 refactor: 清理Makefile冗余项
...
Merge pull request !620 from Zhaotianyu/0911refactor_makefile
2021-09-13 12:33:41 +00: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
openharmony_ci
0326cbf12e
!619 简化make脚本
...
Merge pull request !619 from Caoruihong/opt_make_scripts
2021-09-10 07:53:14 +00:00
lnlan
c3facd1b95
fix: 修复sigwait等待到的信号值与获取的siginfo中的值不一致
...
【背景】
集成测试发送两个不同的信号,sigwait第二次等到的仍是第一个信号
经定位,信号在kill时会将相关的siginfo信息拷贝到taskcb的unbinfo中,sigwait
处理时从unbinfo拷贝给用户。若此信号发送时处于屏蔽状态,再有其他信号发送会覆盖
掉unbinfo,此时sigwait等待这个信号获取到的info已经被覆盖
【修改方案】
1. 每个任务添加一个siginfo缓存链表,在处理信号前夕从缓存链表取出info到unbinfo中
【影响】
对现有的产品编译不会有影响。
re #I3M12H
Signed-off-by: lanleinan <lanleinan@163.com>
Change-Id: If4b064c18773f8eca7419c665977260167b09810
2021-09-10 03:21:58 +00:00
openharmony_ci
8713997548
!617 syscall review bugfix
...
Merge pull request !617 from 野生毛霉君/master
2021-09-09 14:53:55 +00:00
Caoruihong
a627cdba0c
chore(make): simplify build scripts
...
remove redundant script codes
Signed-off-by: Caoruihong <crh.cao@huawei.com>
Change-Id: I67695a69cccefc220ede55add9372bce0c59d7f5
2021-09-09 18:56:47 +08:00
mucor
214f44e935
fix: syscall review bugfix
...
close: #149BPF
Signed-off-by: mucor <mucorwang@gmail.com>
2021-09-09 15:19:03 +08:00
openharmony_ci
ba977dd5ab
!605 refactor: 内核目录结构整理
...
Merge pull request !605 from Zhaotianyu/0902dir_refactor
2021-09-09 01:23:33 +00:00
openharmony_ci
1ecacc15b1
!593 feat: add sync() to vfs
...
Merge pull request !593 from MGY917/sync
2021-09-08 08:56:12 +00: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
e095e87682
!574 fix: solve SIGCHLD ignored in sigsuspend()
...
Merge pull request !574 from MGY917/sigsuspend
2021-09-08 08:27:12 +00:00
openharmony_ci
597ced7948
!595 fix: dyload open close failed
...
Merge pull request !595 from MGY917/dyload_fd
2021-09-08 08:26:55 +00:00
Guangyao Ma
f67c4dae51
feat: add sync() to vfs
...
新增sync方法,该方法每次调用,会遍历系统内所有的mount点,调用各个文件系统注册
的sync方法,完成对所有已挂载文件系统的sync操作。
close #I480HV
Signed-off-by: Guangyao Ma <guangyao.ma@outlook.com>
Change-Id: I57ced9c3f7685a448defd17ae56c842796b5668f
2021-09-08 15:41:52 +08:00