1. 16 1月, 2015 1 次提交
  2. 04 1月, 2015 1 次提交
  3. 24 12月, 2014 1 次提交
  4. 01 12月, 2014 1 次提交
  5. 14 10月, 2014 1 次提交
  6. 19 9月, 2014 1 次提交
  7. 11 9月, 2014 3 次提交
  8. 02 9月, 2014 1 次提交
    • G
      kernel/idle: fix rt_thread_idle_excute in high optimization level · d4133990
      Grissiom 提交于
      The rt_list_isempty has prototype of "int rt_list_isempty(const rt_list_t *l)".
      So the compiler has a good reason that the rt_thread_defunct list does
      not change within rt_thread_idle_excute thus optimize the "while" loop
      into a "if".
      
      So add the volatile qualifier when test against the rt_thread_defunc list.
      d4133990
  9. 24 8月, 2014 1 次提交
  10. 20 8月, 2014 1 次提交
    • G
      kernel: mempool: fix race condition in rt_mp_alloc · b8bf6bef
      Grissiom 提交于
      When thread wake up from waiting for memory, there is a chance that
      there is no memory available in high pressure. So use a loop to check
      again. Otherwise, there will be a NULL reference.
      b8bf6bef
  11. 21 7月, 2014 2 次提交
  12. 16 7月, 2014 1 次提交
  13. 12 7月, 2014 1 次提交
  14. 10 7月, 2014 1 次提交
  15. 26 6月, 2014 1 次提交
  16. 18 6月, 2014 1 次提交
  17. 16 4月, 2014 1 次提交
  18. 02 4月, 2014 1 次提交
  19. 11 3月, 2014 2 次提交
  20. 11 1月, 2014 1 次提交
  21. 21 12月, 2013 2 次提交
  22. 19 10月, 2013 1 次提交
  23. 14 10月, 2013 1 次提交
  24. 12 10月, 2013 1 次提交
    • G
      kernel: use skip list to implement timer list · d59aa279
      Grissiom 提交于
      Skip list is a "random" data structure that in high possibilities it
      would get O(log(N)) time complexity in inserting while the old list get
      O(N). Forthermore, when set RT_TIMER_SKIP_LIST_LEVEL to 1, it will just
      the same as the old double linked list, both in time and space
      complexity.
      
      Benchmarks shows that when RT_TIMER_SKIP_LIST_LEVEL is 3, the average
      time of random insertion of new timer is about 2 times faster than the
      old timer when there are 100 timers and 3 times faster when there are
      200 timers.
      
      However, it restores the deprecated funcion rt_system_timer_init. BSPs
      must invoke it upon system startup.
      d59aa279
  25. 11 10月, 2013 1 次提交
    • G
      kernel: add RT_DEBUG_IN_THREAD_CONTEXT · 6f71308e
      Grissiom 提交于
      In thread context means: 1) the scheduler has been started; 2) not in
      interrupt context. It is more stronger than RT_DEBUG_NOT_IN_INTERRUPT.
      With this commit, you will catch the error on situations like taking
      mutex before scheduling instead of crashing on NULL pointer reference.
      6f71308e
  26. 24 9月, 2013 1 次提交
  27. 23 9月, 2013 1 次提交
    • G
      kservice: export vsnprintf as rt_vsnprintf · 7b0a3afd
      Grissiom 提交于
      vsnprintf is a common string function that could be used in many places.
      Using both vsnprintf in libc and vsnprintf in the RTT could make a
      bigger image. Moreover, if newlib is not enabled when compiling with
      GCC, referencing vsnprintf will lead to link error:
      
          .../arm-none-eabi/lib/armv7-ar/thumb/softfp/libc.a(lib_a-sbrkr.o):
          In function `_sbrk_r':
          sbrkr.c:(.text._sbrk_r+0xc): undefined reference to `_sbrk'
          collect2: error: ld returned 1 exit status
      
      Using rt_vsnprintf could avoid such problem.
      7b0a3afd
  28. 14 9月, 2013 1 次提交
  29. 19 8月, 2013 1 次提交
  30. 22 7月, 2013 1 次提交
  31. 15 7月, 2013 1 次提交
  32. 11 7月, 2013 1 次提交
  33. 09 7月, 2013 1 次提交
    • G
      device: add ref_count support · 7bcce9e8
      Grissiom 提交于
      This is a simple work around to the current device stack design. A
      ref_count could let different modules to open/close the same device
      independently without interfere others in some degree.
      
      But there is still some data shared between the modules, like flag,
      open_flag and user_data. Moreover, it won't yield an error if A open a
      device, and B read from it before open it in B. Maybe alloc a new handle
      in rt_device_open will be the ultimate solution. But that is much bigger
      change and we may leave it to future development.
      7bcce9e8
  34. 29 6月, 2013 1 次提交
  35. 24 6月, 2013 1 次提交