- 23 Mar, 2017 1 commit
-
-
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.
-
- 20 Mar, 2017 11 commits
-
-
Cedric Roux authored
Develop integration w11 Summary of changes: - bug fixes - RCC/RRU in automatic test setup - more work on UE/MIMO - LimeSDR support (5/10MHz) - compilation under ubuntu 16.04, in particular kernel modules (nasmesh, ue_ip) See merge request !148
-
Cedric Roux authored
We'll need to to do it in a separate thread/process. To be done. In the meantime, put it back. It impacts oaisim.
-
Cedric Roux authored
Not sure of this one, to be checked by TCL.
-
Cedric Roux authored
the argument 'coded_bits_per_codeword' has to be an array in case of several codewords. The calling sites have been adapted. Today, only the first index is used, so calling sites where 'coded_bits_per_codeword' is an integer pass the address of it. It is expected that 'dump_dlsch2' will check in the future that there is one or two codewords and only access 'coded_bits_per_codeword[1]' when it's sure there are really two codewords.
-
Cedric Roux authored
- pucchsim - prachsim - pdcchsim - pbchsim - mbmssim Mostly, add and initialize the variable 'cpuf'. Also, pdcchsim was calling rx_pdcch with wrong arguments.
-
Cedric Roux authored
-
Cedric Roux authored
Same as previous commit 41dda3d3 but for dlsim.
-
Cedric Roux authored
The variables that were duplicated per processing thread were adapted. 'cpuf' was defined and initialized.
-
Cedric Roux authored
-
gabrielC authored
-
gabrielC authored
-
- 17 Mar, 2017 7 commits
-
-
Cedric Roux authored
-
Cedric Roux authored
One check introduced by previous commit was not necessary.
-
Cedric Roux authored
-
Cedric Roux authored
-
Cedric Roux authored
- README.txt modified - tests added in test_case_list.xml (only for test setup v2) - python code modified - configuration files added
-
Cedric Roux authored
-
fnabet authored
-
- 16 Mar, 2017 12 commits
-
-
Florian Kaltenberger authored
-
Cedric Roux authored
-
Cedric Roux authored
-
Cedric Roux authored
-
Cedric Roux authored
-
Cedric Roux authored
-
gabrielC authored
-
gabrielC authored
-
Cedric Roux authored
This work was done by Laurent Thomas.
-
gabrielC authored
Merge remote-tracking branch 'origin/Correction_for_dlsch_channel_level_calculation' into develop_integration_w11
-
gabrielC authored
-
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.
-
- 15 Mar, 2017 2 commits
-
-
Cedric Roux authored
768*8 is too small, in 20MHz, the phy-test mode (in default mode?) has a buffer of size 6378. Let's set the buffer size to the input's one plus 4 bytes (to accomodate for CRC, not sure about this).
-
Florian Kaltenberger authored
-
- 14 Mar, 2017 2 commits
- 13 Mar, 2017 5 commits
-
-
hbilel authored
-
Cedric Roux authored
Develop integration w10 Summary of changes: - MIMO for UE - TDD in test setup - bug fixes See merge request !133
-
Cedric Roux authored
We use the odd/even dlsch corresponding to the configured subframe. It may not be the right thing to do.
-
hbilel authored
-
hbilel authored
for all processing including oaisim
-