1. 04 Dec, 2025 1 commit
    • Jaroslava Fiedlerova's avatar
      Merge branch 'integration_2025_w49' into 'develop' · 91e7030c
      Jaroslava Fiedlerova authored
      Integration `2025.w49`/`v2.4`
      
      * !3786 Consistently use OAI_RNGSEED env variable for RNG
      * !3758 Add yq to edit yaml files and add yaml-dev library in containers missing it
      * Fix RFemulator noise device RNG initialization
      * !3780 NGAP: fix PDU Session Release Response
      * !3795 Increase Aerial-based L2 test core number
      * !3794 Fix missing E2SM-RC message forward
      * !3660 Fixes for BWP switching
      * !3797 Fix FAPI WLS timing, UL counter, doc
      * release notes v2.4
      
      See merge request oai/openairinterface5g!3792
      91e7030c
  2. 03 Dec, 2025 23 commits
  3. 02 Dec, 2025 6 commits
    • Robert Schmidt's avatar
      Merge remote-tracking branch 'origin/aerial-more-cores' into integration_2025_w49 (!3795) · 04ac7eb4
      Robert Schmidt authored
      Increase Aerial-based L2 test core number
      04ac7eb4
    • Robert Schmidt's avatar
      Merge remote-tracking branch 'origin/fix-e2ap-compilation-rrc-rc-forward' into... · 04318f64
      Robert Schmidt authored
      Merge remote-tracking branch 'origin/fix-e2ap-compilation-rrc-rc-forward' into integration_2025_w49 (!3794)
      
      Fix missing E2SM-RC message forward
      04318f64
    • Robert Schmidt's avatar
      Fix missing E2SM-RC message forward · 388ad30f
      Robert Schmidt authored
      E2SM-RC RRC message forwarding (e.g., to signal a new UE, measurement
      reports, ...) was broken since commit d6c29b2d, as we accidentally
      removed the E2_AGENT compilation definition from RRC layer.
      
      Although this commit fixes the mentioned issue, it also causes undefined
      references to functions defined in ran_func_rc.c file.  Therefore, we
      add a hack that provides the definition, and abort if we ever hit these
      functions, which in theory should not happen.
      
      Future cleanup should avoid linking in RRC and other layers into
      simulators.
      
      Fixes: d6c29b2d ("Fix E2_AGENT linking w.r.t. simulators ")
      388ad30f
    • Robert Schmidt's avatar
      Increase Aerial-based L2 test core number · f35a1cd7
      Robert Schmidt authored
      Testing has revealed that if PDCP drops some packets, the scheduler
      falls behind with handling Slot.indication. It could be that we don't
      have enough cores, which was reduced previously (from total 8 -> 2).
      Reincrease to four cores to have a bit more headroom.
      
      See-also: a18a4888 ("Change number of cores used for OAI gNB from 8 to 2")
      f35a1cd7
    • Robert Schmidt's avatar
      Merge remote-tracking branch 'origin/fix-pdu-session-release-transfer' into... · 8f89637f
      Robert Schmidt authored
      Merge remote-tracking branch 'origin/fix-pdu-session-release-transfer' into integration_2025_w49 (!3780)
      
      NGAP: fix PDU Session Release Response
      
      1. Refactor NG UE Context Release Request
      
        - Removed incorrect UE Context Release Response code (not in 3GPP TS
          38.413)
        - Fixed UE Context Release Request to use correct PDU Session Resource
          List structure
        - Removed incorrect use of pdusession_release_t type
      
      2. Fix PDU Session Release Response
      
        - Added missing mandatory PDUSessionResourceReleaseResponseTransfer IE
        - Implemented encode_ngap_pdusession_release_response_transfer()
          function
        - Fixed Release Command handler to correctly decode Cause from command
          transfer
        - Split Command/Response struct type definitions to prevent mixing
      8f89637f
    • Robert Schmidt's avatar
      RFemulator: initialize RNG when using noise device · 5af58cc6
      Robert Schmidt authored
      After !3786, we always have to initialize the RNG when using random
      numbers. This was not done for RFemulator and has been added here.
      5af58cc6
  4. 01 Dec, 2025 6 commits
    • Guido Casati's avatar
      fix PDU Sesion Release response: add missing PDUSessionResourceReleaseResponseTransfer IE · 9e45f38f
      Guido Casati authored
      The PDUSessionResourceReleaseResponse message was missing the mandatory
      pDUSessionResourceReleaseResponseTransfer IE in each released PDU session item. This caused Open5GS to send an error indication.
      
      Changes:
      - Add encode_ngap_pdusession_release_response_transfer() function to
        properly encode the transfer structure (empty since Secondary RAT Usage
        Information is optional and not used, per 9.3.4.21)
      - Always include the mandatory PDUSessionResourceReleasedListRelRes IE
      - Always encode the pDUSessionResourceReleaseResponseTransfer for each
        PDU session item
      - Fix Release Command handler to decode and log Cause from command transfer:
        instead of incorrectly copying command data to response: the 2 transfer
        IEs in the Command and the Response messages are different and should
        not be mixed
      - Split Command/Response struct type definitions
      - Add missing includes
      9e45f38f
    • Guido Casati's avatar
      Refactor NG UE Context Release Request · ad1c92af
      Guido Casati authored
      1) Remove UE Context Release Response code: there is no
      such thing in the specs, it is either UE Context Release Request
      (NG-RAN node initiated) or UE Context Release (AMF initiated)
      (3GPP TS 38.413). The former message has only the request, no
      response is defined by the specs. The code in the stack had no
      purpose at all and was removed.
      2) The UE Context Release Request message only contains a PDU
      Session Resource List (optional) of PDU Session IDs, therefore
      the use of pdusession_release_t was wrong and was refactored
      ad1c92af
    • Robert Schmidt's avatar
      Merge remote-tracking branch 'origin/yaml_update' into integration_2025_w49 (!3758) · a9e7018b
      Robert Schmidt authored
      Add yq to edit yaml files and add yaml-dev library in containers missing it
      
      - nr-cu-up and some containers were missing the yaml-config support
        libraries
      - yq tool is required to manipulate YAML files from within the container
        for Helm charts
      a9e7018b
    • Robert Schmidt's avatar
      Merge remote-tracking branch 'origin/fix-OAI_RNGSEED-usage' into integration_2025_w49 (!3786) · 1140c59b
      Robert Schmidt authored
      Consistently use OAI_RNGSEED env variable for RNG
      
      use OAI_RNGSEED env variable everywhere. Hide normal table
      initialization of Ziggurat generator from outside. Fix atoi() to use
      stroul()
      1140c59b
    • Robert Schmidt's avatar
      Fix OAI_RNGSEED to capture unsigned long · ce7cb165
      Robert Schmidt authored
      atoi() used previously does not capture all of unsigned long (so we
      could not reproduce a high seed), and its use is discouraged as it does
      not detect errors. Use strtoul() instead, which allows to also use other
      bases (so we can e.g., write OAI_RNGSEED=0x1234)
      ce7cb165
    • Laurent THOMAS's avatar
      Exclusively use OAI_RNGSEED env variable everywhere · a1b4220a
      Laurent THOMAS authored
      Hide normal table initialization of Ziggurat generator from outside to
      force the usage of randominit() for RNG initialization. In this step,
      remove the randominit() seed parameter and only rely on OAI_RNGSEED for
      a consistent RNG initialization, as this parameter was used differently
      ("0" as fixed number or to force a random seed).
      
      Now, only use OAI_RNGSEED env variable to force the usage of a fixed
      seed.
      a1b4220a
  5. 29 Nov, 2025 1 commit
    • Jaroslava Fiedlerova's avatar
      Merge branch 'integration_2025_w48' into 'develop' · 16030771
      Jaroslava Fiedlerova authored
      Integration `2025.w48`
      
      * !3778 CI: Update IP addresses in Aerial gNB config files
      * !3659 UE NTN - Epoch time handling for Target cell
      * !3772 CI: Ensure EPC is always terminated in NSA-B200 pipeline
      * !3773 Fix doc for UTC timestamp
      * !3759 NR UE: fix bug for SRS generation when freqDomainShift (n_shift) is not 0
      * !3774 Use UL functions for Qm/R determination
      * !3767 Fix DRB integrity failures during handover and re-establishment
      * !3764 Avoid measGap configuration on handover in intra-freq scenarios
      * !3768 Fix MIB encoding in F1SetupRequest: use encode_MIB_NR_setup instead of encode_MIB_NR
      * !3771 CI build analysis: print log file errors
      * !3703 Taking into account UE capabilities for TBS_lbrm layers
      * !3561 Implementation of STOP exchange
      * !3776 Fix reestablishment after handover
      * !3763 CI: Reduce the tries to attach the UE in CI runs
      * !3761 fix(FHI 7.2): PRACH frame test
      * !3616 [FHI72 M-plane] Update the M-plane support to v16.01
      * !3790 Correctly copy nFAPI messages
      * !3779 CFRA: mark RA complete when sending Msg2 - check CI
      
      Closes #563 and #1034
      
      See merge request oai/openairinterface5g!3775
      16030771
  6. 28 Nov, 2025 3 commits
    • Robert Schmidt's avatar
      Merge remote-tracking branch 'origin/cfra-no-msg3' into integration_2025_w48 · 6fe7581e
      Robert Schmidt authored
      CFRA: mark RA complete when sending Msg2
      
      The current contention-free random access forces a "Msg3" (which does
      not exist in CFRA) to be received by a UE. Sometimes, this "Msg3" is not
      received (for whatever reason), and the MAC declare that RA failed.
      
      This is problematic, as the spec says that RA is complete once Msg2 is
      received by the UE. Since the gNB cannot know when this is, simply mark
      it as complete once we sent Msg2.
      
      We still send Msg3 in CFRA, which is explained further in the commits.
      
      Also, improve logging and stabilize an RFsim test by reducing sl_ahead.
      6fe7581e
    • Jaroslava Fiedlerova's avatar
      Merge remote-tracking branch 'origin/fix-nfapi-100mhz' into integration_2025_w48 (!3790) · 2ff7a56b
      Jaroslava Fiedlerova authored
      Correctly copy nFAPI messages
      
      All nFAPI message have copy helpers, so use that for "loading" nFAPI
      messages into the L1. This also fixes a bug/error message
      
      2. 0 no corresponding tx_data.request for dl_tti.request index 11, dropping
      
      because the loop over DL_tti.request assumed that all messages are PDSCH
      PDUs, when we can have others such as PDCCH, etc. In other words, when
      looking up indices ("11" in the example above), we were checking also
      inside other messages for SSB, PDCCH, etc, which is of course wrong.
      That loop was an attempt to validate matching PDSCH PDUs with
      TX_data.requests. This check is already done inside
      phy_procedures_gNB_TX() through an assert, but this commit replaces with
      the equivalent check previously inside nr_pnf_p7_get_msgs(). This is ok,
      as the L1 cannot trust the scheduler (in monolithic) to provide the
      correct information, either.
      Fixes: eefb9da6 ("Reimplement nFAPI message exchange after msgDataTx removal")
      2ff7a56b
    • Jaroslava Fiedlerova's avatar
      Merge remote-tracking branch 'origin/mplane-v16.01' into integration_2025_w48 (!3616) · 68a4bb9a
      Jaroslava Fiedlerova authored
      [FHI72 M-plane] Update the M-plane support to v16.01
      
      - retrieve the additional hardware states (oper-state, admin-state,
        availability-state) and update according to the received notifications
      - properly configure MIMO mode if a RU supports
      - update the yang models to v16.01
      - tested with Benetel v1.4.1, and added an example run in the M-plane doc
      
      Note: backwards compatible with M-plane v05.00
      
      Also, memory leakages fixed cause by ru_session_list_t, and xml functions
      xmlReadMemory() and xmlNodeGetContent().
      68a4bb9a