An error occurred fetching the project authors.
  1. 03 May, 2023 1 commit
    • Robert Schmidt's avatar
      Introduce mutex for MAC scheduler · 31a10033
      Robert Schmidt authored
      Different threads (e.g., RRC, DU tasks) might access the scheduler at
      the same time as the thread that drivers the scheduler itself
      (ru_thread). To avoid data races, introduce this mutex.
      
      Most functions of the scheduler are only used internally and have been
      marked static in the previous commit. The remaining ones, in this
      commit, either lock the scheduler mutex sched_lock, or a comment has
      been added of the assumption of how such function is to be locked (e.g.,
      if it might be called from different places, or if it is called by a
      function that already locks the scheduler).
      31a10033
  2. 28 Apr, 2023 1 commit
  3. 05 Apr, 2023 1 commit
    • Cedric Roux's avatar
      bugfix: change memory management of interface between PHY and MAC scheduler · 733c7e5e
      Cedric Roux authored
      This commit fixes a bug caused by global variables in the gNB_MAC_INST
      structure used to transfer MAC scheduler's results to the PHY layer.
      
      When using several threads in the PHY layer, it may happen that the
      MAC scheduler is called a second time by the second PHY thread for the
      next slot before the content of the global variables in the gNB_MAC_INST
      structure used to store the result of the MAC scheduler for the current
      slot have been consumed by the first thread, leading to unpredictable
      results (all of them certainly wrong).
      
      The solution is to introduce a small memory management module for the
      interface between the PHY threads and the MAC scheduler. The MAC
      scheduler now fills the data structures passed to it, and not a
      global variable anymore. The PHY layer manages the structures and
      ensures that no data is overwritten before being fully consumed by
      the various threads of the PHY layer.
      
      Some care has to be taken because several PHY threads will access the
      same structures at the same time for a given slot (in read mode, so
      it's okay). A mechanism of reference counting has thus been introduced.
      
      Only one CC is supported. This restriction should not be too hard
      to remove if/when needed. (The code before this commit does not seem
      to work for more than one CC anyway.)
      733c7e5e
  4. 27 Mar, 2023 2 commits
  5. 11 Mar, 2023 1 commit
  6. 24 Feb, 2023 1 commit
  7. 14 Jan, 2023 1 commit
  8. 27 Dec, 2022 1 commit
  9. 12 Dec, 2022 1 commit
  10. 02 Dec, 2022 1 commit
  11. 07 Oct, 2022 2 commits
  12. 19 Sep, 2022 1 commit
  13. 12 Aug, 2022 1 commit
  14. 04 Aug, 2022 1 commit
  15. 21 Jun, 2022 1 commit
  16. 04 Jun, 2022 1 commit
  17. 01 Jun, 2022 1 commit
  18. 28 May, 2022 2 commits
  19. 11 May, 2022 1 commit
  20. 09 May, 2022 1 commit
  21. 04 May, 2022 1 commit
  22. 03 May, 2022 1 commit
  23. 02 May, 2022 1 commit
  24. 19 Apr, 2022 1 commit
  25. 14 Apr, 2022 1 commit
  26. 06 Apr, 2022 1 commit
    • Florian Kaltenberger's avatar
      fixing "making SFN dependent on GPS time" · 367ad780
      Florian Kaltenberger authored
      in fact it syncs the USRP time to GPS time when available and then derives the SFN from the USRP time.
      a side effect is that now SFN does not necessarily start at 0 and this also required other changes
       - initialization of the future_ul_tti_request.
       - fixing a bug in get_samples_per_slot
      367ad780
  27. 22 Mar, 2022 1 commit
  28. 21 Mar, 2022 1 commit
  29. 06 Mar, 2022 1 commit
  30. 17 Feb, 2022 1 commit
  31. 16 Feb, 2022 1 commit
  32. 28 Jan, 2022 1 commit
  33. 19 Jan, 2022 1 commit
  34. 18 Jan, 2022 2 commits
  35. 11 Jan, 2022 1 commit
  36. 06 Jan, 2022 1 commit