Skip to content
Snippets Groups Projects
  1. Dec 10, 2021
  2. Sep 21, 2021
  3. Sep 13, 2021
  4. Sep 09, 2021
  5. Sep 03, 2021
  6. Aug 31, 2021
  7. Jun 14, 2021
  8. Jun 09, 2021
  9. May 26, 2021
  10. May 25, 2021
  11. Apr 13, 2021
  12. Apr 02, 2021
  13. Jun 01, 2020
  14. Mar 06, 2020
  15. Mar 02, 2020
  16. Jan 09, 2020
  17. Jul 11, 2019
  18. Jun 18, 2019
  19. May 14, 2019
  20. Apr 30, 2019
  21. Jan 07, 2019
    • Cédric Roux's avatar
      fix a lot of file mode · aea6b4b5
      Cédric Roux authored
      For whatever reason most of the files had their permission
      changed from 644 to 755, which is not wanted.
      aea6b4b5
  22. Apr 06, 2018
  23. Apr 05, 2018
  24. Oct 23, 2017
  25. Aug 14, 2017
  26. Mar 23, 2017
    • Cédric Roux's avatar
      fix issue 227 - UE IP settings disrupts realtime · cff91499
      Cédric Roux authored
      see oai/openairinterface5g#227
      
      When the UE connects to the eNodeB and receives its IP address from the
      network, it calls system() to set it in the linux kernel world. This call
      is not done in a realtime thread, but in the NAS, which uses its own thread,
      independent of the realtime processing.
      
      In some situations this totally disrupts realtime processing.
      
      It is difficult to know precisely why that happens, but it seems that calling
      fork(), as system() does, in a multi-threaded program is not a good idea. (So
      say several people on the internet.) It is not clear why the softmodem is
      impacted, but it seems that fork() is really what triggers the disruption.
      Several tests lead to that conclusion.
      
      To fix the problem, we create a child background process very early in main()
      (before anything else basically). Then instead of calling system(), the main
      process sends the string to the background process. The background process
      gets the string, passes it to system() and reports the success/failure back
      to the main process.
      
      This solution involves a lot of system calls, but calling system() in the
      first place is not cheap either. As long as no realtime thread uses this
      mechanism, things should be fine. Time will tell.
      cff91499
Loading