1. 21 10月, 2021 1 次提交
  2. 08 9月, 2021 1 次提交
    • A
      refactor: 内核目录结构整理 · 33d0c1bd
      arvinzzz 提交于
      1. 原kernel/common目录下属于内核拓展组件,统一移入kernel/extend管理
      2. Kconfig分层,各模块自己的配置放到自己目录下管理
      3. 原platform下不属于平台的公共代码抽到kernel/common下,只留板级链接脚本和一些编译脚本指向device目录下触发平台相关的编译
      4. 对外公共头文件统一抽到对外include路径
      5. 废弃宏,头文件清理
      
      close: #I48KI4
      Signed-off-by: Narvinzzz <zhaotianyu9@huawei.com>
      Change-Id: I0cf5ea81c92a8fa7b113da9cbdc8b7bc935f5aae
      33d0c1bd
  3. 31 8月, 2021 1 次提交
    • L
      feat: L0-L1 支持Trace · dc9ec685
      LiteOS2021 提交于
              1.【需求描述】
                  L0~L1 支持Trace,提供两种工作模式:在线模式、离线缓存模式, 用于按时间线追踪系统事件,如任务切换、中断、ipc等。
              2.【方案描述】
                  L0:
                  (1).在内核模块预置静态代码桩
                  (2).触发桩后,收集系统上下文信息
                  (3).离线模式则写入内存,用户可通过dump导出;
                  (4).在线模式通过pipeline对接IDE进行可视化解析和展示;
                  L1:
                  新增trace字符设备,位于"/dev/trace",通过对设备节点的read\write\ioctl,实现用户态trace;
      
              BREAKING CHANGE:
              1.新增一系列trace的对外API,位于los_trace.h中.
              LOS_TRACE_EASY简易插桩
              LOS_TRACE标准插桩
              LOS_TraceInit配置Trace缓冲区的地址和大小
              LOS_TraceStart开启事件记录
              LOS_TraceStop停止事件记录
              LOS_TraceRecordDump输出Trace缓冲区数据
              LOS_TraceRecordGet获取Trace缓冲区的首地址
              LOS_TraceReset清除Trace缓冲区中的事件
              LOS_TraceEventMaskSet设置事件掩码,仅记录某些模块的事件
              LOS_TraceHwiFilterHookReg注册过滤特定中断号事件的钩子函数
      
              Close #I46WA0
      Signed-off-by: NLiteOS2021 <dinglu@huawei.com>
      
      Change-Id: I6a8e64794c4852f2c2980993a06180e09ec6ee0d
      dc9ec685
  4. 27 8月, 2021 1 次提交
    • T
      fix: add syscall for ppoll & add 2 testcases · defedb6f
      teamol 提交于
      1.modifications:
      modified:   syscall/los_syscall.h
      modified:   syscall/misc_syscall.c
      modified:   syscall/syscall_lookup.h
      2.add 3 testcases:
      testsuites/unittest/IO/full/IO_test_ppoll_001.cpp
      testsuites/unittest/IO/full/IO_test_ppoll_002.cpp
      3.influence:
      none
      Signed-off-by: Nteamol <28105285@qq.com>
      defedb6f
  5. 25 8月, 2021 1 次提交
  6. 24 8月, 2021 1 次提交
  7. 22 8月, 2021 1 次提交
  8. 19 8月, 2021 1 次提交
    • T
      fix: fix syscall faccessat,fstatfs,fstatat & add 6 testcases · aa1cd245
      teamol 提交于
      1.modifications:
      modified:   testsuites/unittest/fs/BUILD.gn
      modified:   testsuites/unittest/fs/jffs/It_vfs_jffs.h
      renamed:    testsuites/unittest/fs/jffs/smoke/It_test_faccessat_001.cpp -> testsuites/unittest/fs/jffs/full/It_test_faccessat_001.cpp
      renamed:    testsuites/unittest/fs/jffs/smoke/It_test_faccessat_002.cpp -> testsuites/unittest/fs/jffs/full/It_test_faccessat_002.cpp
      renamed:    testsuites/unittest/fs/jffs/smoke/It_test_fstatat_001.cpp -> testsuites/unittest/fs/jffs/full/It_test_fstatat_001.cpp
      renamed:    testsuites/unittest/fs/jffs/smoke/It_test_fstatat_002.cpp -> testsuites/unittest/fs/jffs/full/It_test_fstatat_002.cpp
      renamed:    testsuites/unittest/fs/jffs/smoke/It_test_fstatfs_001.cpp -> testsuites/unittest/fs/jffs/full/It_test_fstatfs_001.cpp
      renamed:    testsuites/unittest/fs/jffs/smoke/It_test_fstatfs_002.cpp -> testsuites/unittest/fs/jffs/full/It_test_fstatfs_002.cpp
      modified:   testsuites/unittest/fs/jffs/vfs_jffs_test.cpp
      2.add 6 testcases:
      It_test_faccessat_001.cpp
      It_test_faccessat_002.cpp
      It_test_fstatat_001.cpp
      It_test_fstatat_002.cpp
      It_test_fstatfs_001.cpp
      It_test_fstatfs_002.cpp
      3.influence:
      none
      Signed-off-by: Nteamol <28105285@qq.com>
      aa1cd245
  9. 13 8月, 2021 1 次提交
    • V
      test: clock用例结构调整 · 555e0681
      vcbchang 提交于
      【背景】当前kernel的unittest下的用例全量与门禁用例结构不合理,当前上传clock修改后版本
      
      【修改方案】
      1 原来没有测试clock模块的基本场景,这里补上基本场景作为smoke用例,并命名为clock_test_smoke.cpp
      2 将原来smoke用例移到full中
      3 删除与xts测试重复的用例和标记宏TEST_ON_LINUX的用例(即原来版本的clock_test_002,003,004用例)
      4 原来clock_test_012用例用于测试进程的运行时间,里面存在正常场景和异常场景,现在将其分成两个用例
      5 对所有用例重新排序,使得结构完整
      
      re #I44170
      Signed-off-by: Nvcbchang <vcbchang@qq.com>
      
      Change-Id: I30852a5f9c414668c00eddbcc9631d70818514a1
      555e0681
  10. 12 8月, 2021 1 次提交
    • W
      feat: 支持killpg和waitid · dc3cc094
      wjj 提交于
      killpg:给进程组发信号
      waitid:等待进程结束
      修改测试用例到full里面
      
      Change-Id: Ice058ab4a6eede8ecbaacea0894c2161e3b9dce2
      Signed-off-by: Nwjj <502004968@qq.com>
      dc3cc094
  11. 11 8月, 2021 1 次提交
  12. 10 8月, 2021 2 次提交
  13. 06 8月, 2021 1 次提交
  14. 05 8月, 2021 3 次提交
  15. 23 7月, 2021 1 次提交
    • T
      fix: fix mq function by enable mq_notify api · 4427142d
      teamol 提交于
      1.modifications:
      modified:   compat/posix/include/mqueue.h
      modified:   compat/posix/src/mqueue.c
      modified:   syscall/ipc_syscall.c
      modified:   syscall/los_syscall.h
      modified:   syscall/syscall_lookup.h
      modified:   testsuites/unittest/posix/mqueue/posix_mqueue_test.cpp
      
      2.add 5 testcases:
      It_posix_queue_205.cpp
      It_posix_queue_206.cpp
      It_posix_queue_207.cpp
      It_posix_queue_208.cpp
      It_posix_queue_209.cpp
      
      3.influence:
      none
      Signed-off-by: Nteamol <28105285@qq.com>
      4427142d
  16. 21 7月, 2021 1 次提交
  17. 20 7月, 2021 1 次提交
    • F
      feat: 增加mount的MS_RDONLY标志的支持 · 8729f6ee
      Far 提交于
      增加mount的MS_RDONLY标志的支持,并修改vfs主要接口相关支持。
      1. fatfs lseek接口在分区以MS_RDONLY方式和文件以只读打开时不再能够扩大文件的大小。
      2. 直接在镜像中创建storage目录,而不是在挂载根文件系统时创建storage目录。
      3. 增加了MS_RDONLY的测试用例。
      
      Close #I3Z1W6
      Signed-off-by: NFar <yesiyuan2@huawei.com>
      8729f6ee
  18. 16 7月, 2021 1 次提交
  19. 15 7月, 2021 1 次提交
  20. 13 7月, 2021 2 次提交
    • V
      test: 修复mqueue_unittest全量用例ItPosixQueue075与ItPosixQueue097,冒烟用例 ItPosixQueue053用例存在偶尔无法通过的问题 · e7c4b196
      vcbchang 提交于
      【背景】mqueue_unittest用例ItPosixQueue075、ItPosixQueue053 与ItPosixQueue097用例存在偶尔无法通过的问题,现在将其修复
      
      【修改方案】ItPosixQueue075中原来是通过延时来实现线程同步,现在更改为静态全局变量实现; ItPosixQueue097中的关于g_testCount利用延时来置标志位,实现线程同步。这里通过延时来期望线程调度,写的不合理,这里更改为等待标志位来实现线程同步。
      
      re #I3Z9H9
      Signed-off-by: Nvcbchang <vcbchang@qq.com>
      Change-Id: Ib1bb945a5393cb03f4d92e4332e20acd82eb1845
      e7c4b196
    • V
      test: 修复signal中的关于pipe部分的用例问题 · fd6f91bc
      vcbchang 提交于
      【背景】signal模块中的pipe用例存在无法通过测试的问题,经查找,pipe用例存在多处bug,这里做以修复
      
      【修改方案】
      1 ItPosixPipe002用例存在pipe存在在父进程中没有关闭写端,父进程判断处有编码问题等
      2 删掉了一些用例多余的close函数,精简了用例的结构
      3 原来用例主子进程依靠延时来实现进程同步,这里更改为使用共享内存的方法来实现
      
      re #I3YPQ8
      Signed-off-by: Nvcbchang <vcbchang@qq.com>
      Change-Id: Ic0d0ab20521c9af5e5f1d75e76e047162d978464
      fd6f91bc
  21. 01 7月, 2021 2 次提交
    • V
      test: 修复了文件系统中jffs的全量用例和压测用例中出现的问题 · e57dc776
      vcbchang 提交于
      【背景】当前的fs中的jffs用例存在运行不通过的问题,现将其一一修复。
      
      【修改方案】
      1. 默认storage文件夹没有文件,如果存在,删除后测试
      2. BUG中存在判断不通过的情况,可能是移植过程中出现的变量判断错误,修改变量名正确通过
      3. 移植过程中没有考虑现在falsh的大小,有时会出现写入量过多而容量不够的情况,则通过减少写入量来解决问题。
      4. 为了尽量减少修改的内容,这里主要以更改全局宏大小或者在代码中修改变量的初始值。
      
      【影响】
      主要是jffs用例的写入flash的大小发生变化,其余没有影响。
      Signed-off-by: Nvcbchang <vcbchang@qq.com>
      Change-Id: I878fe3ad855e0e430bf7f36e066120893f756828
      e57dc776
    • B
      refactor: 对LiteOS_a内核中menuconfig开关的宏使用#ifdef/#ifndef做预编译处理 · 4e4f2d6d
      boxi 提交于
      LiteOS_a中有部分配置宏进行了重复冗余定义,导致当头文件未被包含时,极易引入错误,
      故对menuconfig配置宏进行统一处理,均使用#ifdef/#ifndef作为预编译判断方式
      
      Close #I3YEGS
      
      Change-Id: Ife6db770cc66de1d6199a4f3ba3950e9bfd0e71a
      Signed-off-by: Nboxi <lewis.liulei@huawei.com>
      4e4f2d6d
  22. 28 6月, 2021 1 次提交
    • V
      test: 修复了杀死掉hilog进程后SecurityCapability门禁用例无法通过的问题 · 455e42e5
      vcbchang 提交于
      【背景】如果操作系统先执行kill hilog进程,然后再执行SecurityCapability,那么门禁用例将无法通过,原因是该用例先获取了hilog进程的id,但hilog进程已经杀掉了,所以报错
      
      【修改方案】
      1. 增加kill 0与错误码判断,如果发现进程已经被干掉的话将不执行相关内容
      
      【影响】
      无其它影响。
      Signed-off-by: Nvcbchang <vcbchang@qq.com>
      Change-Id: Icdf357800175eff19acf1f92426469642a697386
      455e42e5
  23. 26 6月, 2021 2 次提交
    • V
      test: 信号管道用例ItPosixPipe005由于偶现性问题暂时下线 · bb6abd8c
      vcbchang 提交于
      【背景】信号管道用例ItPosixPipe005偶尔会失败,经查找,发现是CPU调度所致,延时时间与期望调度不符合,增加延时时间即可
      
      【修改方案】修复了此问题,但是考虑pipe用例整体不稳定,并且pipe用例的pipe函数存在问题,先暂时下线,等pipe部分全部修改完毕后再上线。
      
      re #I3XXPH
      Signed-off-by: Nvcbchang <vcbchang@qq.com>
      Change-Id: I21831c9f5ef5700f3b3c8da02f945e0c37f31a6a
      bb6abd8c
    • F
      fix: 修复了内核的VFAT测试用例 · a8384b5d
      Far 提交于
      修复内容包括如下:
      1. 将memset_s中buffer的大小设置正确;
      2. 将用例文件夹名由vfat2修改为vfat;
      3. 修复了vfat用例在SetUpTestcase和TearDownTestCase;
      4. 全局变量g_fatFilesystem在初始化时设置为2(即FAT32);
      
      Close #I3XF3R
      Signed-off-by: NFar <yesiyuan2@huawei.com>
      a8384b5d
  24. 24 6月, 2021 1 次提交
    • V
      test:修复rwlock用例在循环处会卡死的问题 · f793dc10
      vcbchang 提交于
      【背景】修复rwlock门禁用例多次测试出现的程序会卡死在某一个地方的问题,经查找程序会卡在循环里面
      
      【修改方案】
      1.经测试,发现用例在创建线程后对退出标志位做了初始化,但卡在循环中不动的原因是在创建线程后立刻发生了调度,没有来得及初始化,则发生了错误,故会出现卡在循环中的情况。
      而且,由于卡在循环中时线程是同一优先级,可能不会发生调度,故在循环里面加了一句可以调度的语句,防止在一处循环卡的太久。
      2.将该用例挪出门禁,待稳定后恢复。
      【影响】
      对其它用例无影响。
      
      re #I3VUX4
      
      Signed-off-by:vcbchang<vcbchang@qq.com>
      
      Change-Id: Ie0f908001f59bfc832c2519104aa2e3188206910
      Signed-off-by: Nvcbchang <vcbchang@qq.com>
      f793dc10
  25. 22 6月, 2021 1 次提交
  26. 18 6月, 2021 1 次提交
    • T
      test: fix 2 testcases for API tzset · e4b6ba56
      teamol 提交于
      1.modifications:
      testsuites/unittest/time/timer/smoke/timer_test_tzset_001.cpp
      testsuites/unittest/time/timer/smoke/timer_test_tzset_002.cpp
      testsuites/unittest/time/timer/time_timer_test.cpp
      
      2.influence:
      none
      Signed-off-by: Nteamol <28105285@qq.com>
      e4b6ba56
  27. 16 6月, 2021 1 次提交
  28. 09 6月, 2021 1 次提交
    • C
      feat: support link/symlink/readlink · 6eddc869
      chenjing 提交于
      新增link/symlink/readlink接口的系统调用及内核实现,当前仅支持jffs2文件系统。具体接口说明如下:
      
      一、hard link
      接口原型:
      int link(const char *oldpath, const char *newpath);
      int linkat(int olddirfd, const char *oldpath, int newdirfd, const char *newpath, int flags);
      
      作用:
      创建oldpath的硬链接,名为newpath。
      
      功能说明:
      1、newpath与oldpath必须在同一挂载分区内。
      2、若newpath已存在,不会覆盖,错误码EEXIST。
      3、oldpath必须为普通文件或者软链接文件。
      4、如果oldpath是一个软链接文件,那么:
      若调用link接口或者linkat(flags=0),创建出软链接文件的硬链接;
      若调用linkat(flags = AT_SYMLINK_FOLLOW),创建出软链接所指向源文件的硬链接。
      5、oldpath与newpath对应同一个文件,对oldpath与newpath任一名字的操作都是直接操作文件,没有“原始文件”的说法。
      6、使用cp命令拷贝一个硬链接文件,生成文件的拷贝,新文件的nlink数为1。
      7、删除oldpath或newpath,底层文件仍存在,可以通过另一个path访问。只有当两个path都删除之后,才会真正将文件删除,空间释放。
      
      二、symbol link
      接口原型:
      int symlink(const char *target, const char *linkpath);
      int symlinkat(const char *target, int newdirfd, const char *linkpath);
      
      作用:
      创建一个软链接文件linkpath,存储字符串target。
      
      功能说明:
      1、target可以为任意字符串(长度小于PATH_MAX)。
      2、若linkpath文件名已存在,不会覆盖,错误码EEXIST。
      3、用readlink函数可读取软链接的target内容。
      4、软链接文件本身大小为target长度。
      5、ls时软链接文件类型显示为 'l'。
      6、symlink最大循环次数为CONFIG_FS_MAX_LNK_CNT(目前为40),超出则返回错误,错误码ELOOP。
      7、使用cp命令拷贝一个软链接文件:
      若target是一个文件:创建一个源文件的拷贝,类型为普通文件;
      若target非文件:拷贝失败。
      
      三、readlink
      接口原型:
      ssize_t readlink(const char *pathname, char *buf, size_t bufsiz);
      ssize_t readlinkat(int dirfd, const char *pathname, char *buf, size_t bufsiz);
      
      作用:
      读取软链接文件存放的的target内容。
      
      功能说明:
      1、pathname必须为软链接文件,否则错误码EINVAL。
      2、如果bufsiz小于target长度,则截断target。
      
      close #I3Q0OD
      
      Change-Id: I3864d6069b627b705a369e8e32dc1eb922dc0157
      Signed-off-by: Nchenjing <chenjing139@huawei.com>
      6eddc869
  29. 07 6月, 2021 1 次提交
    • L
      fix(kernel_test): 内核mem/shm冒烟用例重复运行失败 · 0676578a
      lnlan 提交于
      【背景】内核mem/shm冒烟用例概率性失败门禁中shm冒烟用例失败,经验证
      与构建,不符合预期
      
      【修改方案】
      原内核用例的源文件是通过框架自带的source_set(一种虚拟静态库)的方式组织的,
      不受unittests(自定义的一种方式)控制,修改为文件列表直接加入到unittest中。
      
      【影响】
      对现有的产品编译不会有影响。
      
      re #I3TH4W
      Signed-off-by: Nlnlanc <lanleinan@163.com>
      Change-Id: If5452adb033c17ee0d7c7f683968fe53013ee289
      0676578a
  30. 04 6月, 2021 1 次提交
    • Yansira's avatar
      feat: timer_create支持以SIGEV_THREAD方式创建定时器 · e5f6bf05
      Yansira 提交于
      【背景】当前timer_create接口不支持以SIGEV_THREAD的方式创建多个定时器
      
      【修改方案】
      1、内核timer_create接口在创建software timers相应的线程时,使用线程
      taskCB所携带的信息识别各个线程的信号并依据该信息分别派发出信号。
      2、关于用户任务操作许可验证的修改,现在允许同一用户线程向其自身派发信
      号,软件定时器计时结束,向用户态发送相应的信号,完成用户态线程的回调。
      
      【影响】
      对现有的产品暂无影响。
      
      re #I3SRFI
      Signed-off-by: Yansira's avataryansira <yansira@hotmail.com>
      Change-Id: Ia23f5ef01975bf867dd7f5db797a30c264c50501
      e5f6bf05
  31. 03 6月, 2021 1 次提交
  32. 29 5月, 2021 1 次提交
    • L
      feat(build): 使用xts -notest选项时,内核用例不参与编译构建和用例编译配置方式调整 · 9bdf7164
      lnlan 提交于
      【背景】
      1.编译新增-notest选项为了排除用例参与构建,使用该选项时内核用例仍会参与构建,不符合预期
      2.用例编译配置选项太多,需调整优化
      【修改方案】
      1.原内核用例的源文件是通过框架自带的source_set(一种虚拟静态库)的方式组织的,
      不受unittests(自定义的一种方式)控制,修改为文件列表直接加入到unittest中。
      2.编译配置通过level控制
      【影响】
      对现有的产品编译不会有影响。
      
      Change-Id: I2c6a96e7276346de96f222b725d417418ff0e537
      9bdf7164
  33. 20 5月, 2021 1 次提交
  34. 18 5月, 2021 1 次提交
    • X
      fixed the textsuite · 8c8a0b39
      x_xiny 提交于
      Change-Id: Idb93d3cf8d236a3b7f13d95d08255208c04706dd
      8c8a0b39