Skip to content
Snippets Groups Projects
  1. Jan 15, 2018
    • Cedric Roux's avatar
      Fix NFAPI integration · 922b5b59
      Cedric Roux authored
      This commit fixes issues introduced by the previous commit.
      
      Summary of work:
      - cleanup:
        - fix LOG_XX to be less verbose
        - fix cmake_targets/CMakeLists.txt
        - fix oaienv
        - remove dead code
      - bug fixes:
        - in openair1/SCHED/fapi_l1.c we had:
            eNB->pdcch_vars[subframe&1].num_dci           = number_dci;
          should be:
            eNB->pdcch_vars[subframe&1].num_dci           = 0;
          This bug let the PHY send more DCIs than what should have been
          sent because num_dci is incremented later on in the code.
          This fix may be a problem for fapi mode, to be checked.
        - add new T VCD traces
        - revert openair1/PHY/TOOLS/file_output.c to 'develop' version
        - remove thread_id in logRecord/logRecord_mt
        - revert (and adapt) configuration files
        - be careful when doing frame++, we need to % 1024
        - revert target_rx_power in openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
      - NFAPI:
        - the open-nFAPI code has been included in the repository. See nfapi/README.
          Maybe we should "git clone" the Cisco repository instead. We have to be
          careful of availability though.
      
      What has been tested:
      - monolithic eNB FDD 5/10MHz with one UE, iperf UDP/TCP uplink/downlink
      
      Anything else may fail to work, especially the FAPI mode, which has not
      been tested at all.
      922b5b59
    • Cedric Roux's avatar
      import NFAPI work from David Price from Cisco (non-working commit, do not use it) · 7757b9e7
      Cedric Roux authored
      It has been chosen to not include the full history of commits
      from David. He included a binary version of wireshark, probably
      a modified one that understands NFAPI. Wireshark is released under
      the GPL license, we cannot include it in the repository. We could
      have done a next commit to remove this binary. But then it would
      still be present in the history of commits, which may not be allowed.
      And it would take space on disk. We could edit the history to remove
      wireshark entirely. But this operation is too complicated.
      
      There was also a pcap capture file, which has nothing to do in
      the history of commits and would take space on disk. There again,
      it's too difficult to edit the history to remove it.
      
      There was a file .gitignore that was also removed.
      
      The original history can be found on David's repository:
      https://gitlab.eurecom.fr/daveprice/openairinterface5g/
      The branch is: nfapi-ru-rau-split.
      
      A copy of that branch has been included in the internal OAI
      repository, for those who have access to it.
      The branch is the same. The last commit ID is
      9106438239e0bc626ff1fa1d97d911caadd0fbb9.
      
      You can compare the current commit with the commit 9106...
      to see what differs.
      
      The current commit has to be considered non-working.
      The commit following the current commit will fix problems with
      the work in the current commit.
      
      If you use git bisect, don't spend time analyzing the current
      commit.
      7757b9e7
  2. Dec 28, 2017
  3. Nov 30, 2017
  4. Nov 22, 2017
  5. Nov 14, 2017
  6. Oct 27, 2017
  7. Oct 23, 2017
  8. Oct 20, 2017
    • Cedric Roux's avatar
      fix asn1_msg.c · 6087ede0
      Cedric Roux authored
      - compile with warning enabled (changes in CMakeLists.txt)
      - remove warnings that were present
      6087ede0
  9. Oct 12, 2017
  10. Oct 06, 2017
  11. Sep 29, 2017
  12. Sep 21, 2017
  13. Sep 16, 2017
  14. Sep 03, 2017
  15. Aug 23, 2017
    • Cedric Roux's avatar
      mobipass standalone driver · c866677a
      Cedric Roux authored
      How to use:
      
      1 - compilation of softmodem:
        ./build_oai --eNB -t ETHERNET
      
      2 - compilation of mobipass driver:
        cd cmake_targets/lte_build_oai/build
        make oai_mobipass
        ln -sf liboai_mobipass.so liboai_transpro.so
      
      3 - configuration:
        edit the configuration file, set "node_timing" to
        "synch_to_mobipass_standalone"
        that is, have the line:
          node_timing               = "synch_to_mobipass_standalone";
      
      4 - run:
        run as usual: sudo ./lte-softmodem -C <configuration file>
      c866677a
  16. Aug 17, 2017
  17. Aug 13, 2017
  18. Jul 19, 2017
  19. Jul 06, 2017
  20. Jun 16, 2017
  21. Jun 02, 2017
    • Cedric Roux's avatar
      integration fixes · 60c4b5ec
      Cedric Roux authored
      - rename UE_NO_LOG to DISABLE_LOG_X
        because the name is misleading. The full software
        is impacted, not only the UE part
      - same for compilation option ---ue-no-log
        that becomes --disable-log
      - keep LOG_X for the standard case, that is the
        case without DISABLE_LOG_X where printf has been
        put. Two reasons:
        * printf is not realtime friendly
        * keep behavior similar for other users who may
          be troubled by different logs that don't add
          any benefit to previous logs
      60c4b5ec
  22. May 31, 2017
  23. May 19, 2017
    • gabrielC's avatar
      UE logging change : · fe350d5b
      gabrielC authored
      --ue-trace : Enabling UE trace for debug
      --ue-timing : Enabling UE timing trace
      --ue-no-log : Disabling all LOG_X traces
      fe350d5b
  24. May 15, 2017
  25. May 12, 2017
  26. Apr 17, 2017
  27. Mar 24, 2017
  28. Mar 23, 2017
    • Cedric Roux's avatar
      RRC Rel14 · 4fcb6272
      Cedric Roux authored
      - import RRC ASN.1 defintions from the specifications
        (file openair2/RRC/LITE/MESSAGES/asn1c/ASN1_files/RRC-e10.asn)
        contrary to rel8/10, all modules have been imported, maybe it's too much
        to refine in case of problems
      - deal with rel14 in fix_asn1
      - all code that was for Rel10 is now for Rel10/Rel14
      - some incompatible changes (mostly in naming) were resolved in favor
        of rel14, see in openair2/RRC/LITE/defs.h
      - unsure about the rlc layer, some arrays have changed (values appended),
        I only changed the definition and in tests in the code, I changed
        the index limit, maybe it's not enough
      
      Rel14 is the default compilation mode.
      4fcb6272
    • Cedric Roux's avatar
      fix issue 227 - UE IP settings disrupts realtime · cff91499
      Cedric Roux authored
      see https://gitlab.eurecom.fr/oai/openairinterface5g/issues/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
  29. Mar 19, 2017
  30. Mar 16, 2017
    • Cedric Roux's avatar
      fix compilation for ubuntu 16 · 20b420bb
      Cedric Roux authored
      This work was done by Laurent Thomas.
      20b420bb
    • Cedric Roux's avatar
      fix dependancies in CMakeLists.txt for the T tracer · fc6dec9e
      Cedric Roux authored
      On some hosts, compilations with the T tracer was failing.
      
      The error was:
        common/utils/T/T.h:15:19: fatal error: T_IDs.h: No such file or directory
      
      The problem was that in CMakeLists.txt some targets depend on the
      pre-generation of T_IDs.h but this dependancy relation was not set,
      so those targets could be generated before the T (it was the case
      with HASHTABLE).
      
      This commit fixes that. Basically, we take all the targets found in
      "add_executable" and "add_library" and make them depend on the
      T if the T is enabled. Almost all existing targets were added,
      even those that may not need it.
      
      The problem of this approach is that someone adding a new target
      using the T will not necessarily add a dependancy there.
      
      Another solution would be to generate T_IDs.h at "cmake" stage,
      not "make" stage and use an "if (NOT EXISTS T_IDs.h)" to generate
      the file. We lose the dependancy relation though.
      
      Things may be changed if maintenance cost is too high.
      fc6dec9e
  31. Mar 13, 2017
  32. Mar 08, 2017
  33. Feb 17, 2017
    • Cedric Roux's avatar
      Revert "fix nettle" · 76574a1a
      Cedric Roux authored
      This reverts commit d31634c3.
      
      Laurent Thomas had a problem on one machine with the build_oai
      way of checking for nettle.
      
      The problem with the alternative solution of including nettle/bignum.h
      is that it is very unclear.
      
      The problem with nettle is that the file nettle/config.h does not
      exist for version 2. It was introduced in version 3.
      
      We want to support both versions, but there is an API incompatibility.
      So we need an #if #else mechanism.
      
      The file nettle/bignum.h is present in both versions 2 and 3 and it
      includes nettle/version.h in the version 3.
      
      So by including this file, we can check for the existence of
      NETTLE_VERSION_MAJOR (that comes from nettle/config.h) in the
      code.
      
      But as you can see, the reasoning is way too complex.
      
      So it's better to keep the check in cmake_targets/CMakeLists.txt.
      
      As long as we support version 2 this will be the way to go.
      
      It is possible to force a given version in specific non-generic
      customized environments.
      76574a1a
  34. Feb 05, 2017
  35. Feb 02, 2017
  36. Jan 25, 2017
  37. Jan 20, 2017
Loading