1. 21 6月, 2021 2 次提交
  2. 16 6月, 2021 1 次提交
  3. 05 6月, 2021 1 次提交
  4. 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
  5. 24 5月, 2021 1 次提交
    • Z
      fix: 解决kill进程时无法保证进程的已持有的内核资源合理释放. · cf89f016
      zhushengle 提交于
      背景: 当前信号实现原理是在系统调用结束和中断结束时检查是否有信号处理,
            如果有信号处理就切去处理信号,信号处理结束后回来继续按原来流程执行。
      问题:当用户态线程在执行系统调用或缺页异常时,运行在内核态,如果此时有信
            号需要处理,且该线程已经持有了部分内核资源(如:锁,内存等), 此时如
            果有中断发生,则在中断结束时,就会去处理该信号,此时用户态线程持有
            了内核未释放的资源跑到了用户态去运行,如果该线程在用户态出现问题,
            那么它持有的内核资源就无法被释放了。
      方案:用户态线程在执行系统调用和缺页异常时暂时屏蔽信号,防止此时有中断去
            处理信号,等系统调用结束或缺页异常结束时再去处理信号。
      解决的问题:
        1. 执行系统调用或缺页异常时屏蔽信号,防止中断去处理信号
        2.解决无法kill 因为用户态的锁、ipc等阻塞的用户态线程
        3.进程退出方式转变为: 依次通过kill去杀死该进程的所有线程
      
      Close #I3S0N0
      
      Change-Id: I0c48b9c89382826191b8a9326c71b57ba84124c2
      cf89f016
  6. 21 5月, 2021 1 次提交
  7. 20 5月, 2021 1 次提交
  8. 18 5月, 2021 1 次提交
  9. 11 5月, 2021 1 次提交
  10. 08 5月, 2021 1 次提交
  11. 26 4月, 2021 2 次提交
  12. 19 4月, 2021 2 次提交
  13. 17 4月, 2021 1 次提交
  14. 31 3月, 2021 1 次提交
    • Y
      IssueNo:#I3E0F2 · c959d436
      YOUR_NAME 提交于
      Description:Delete VM to support only kernel mode.
      Sig:liteos_a
      Feature or Bugfix:Feature
      Binary Source:No
      
      Change-Id: Ie1029c8fbc0c1b85c138663933118d2d148b7769
      c959d436
  15. 11 3月, 2021 1 次提交
  16. 31 12月, 2020 2 次提交
    • Z
      Fix IS_PERIPH_ADDR() and IS_MEMORY_ADDR() macros · 07c89a84
      Zbigniew Bodek 提交于
      The macros assume that constants that are compared against
      "addr" are either unsigned or less than INT_MAX.
      In some cases it is not true so change costants to unsigned
      using U32_C macros.
      The correct solution would be to change teh MEM_ADDR, PMM_BASE, etc.
      to be unsigned long but currently "U" suffix is appended in various
      places so the assumption is that those macros use default definition
      (which is int).
      
      Put "addr" into brackets by the way since it could be an expression
      rather than one variable.
      Signed-off-by: NZbigniew Bodek <zbigniew.bodek@huawei.com>
      Change-Id: Ife9bc5863b4934ecaab64b24faa084b87d7d7ea5
      07c89a84
    • Z
      Change DEFINE macro to U32_C · 994ad00d
      Zbigniew Bodek 提交于
      The macro to append "U" suffix should be named
      according to what it actually does which is defining U32 constant.
      Signed-off-by: NZbigniew Bodek <zbigniew.bodek@huawei.com>
      Change-Id: I55701f0650c88bd083c062581af5c7a1b966bc0b
      994ad00d
  17. 26 12月, 2020 1 次提交
  18. 05 11月, 2020 1 次提交
  19. 13 10月, 2020 1 次提交
  20. 28 9月, 2020 2 次提交
  21. 08 9月, 2020 1 次提交