• Robert Schmidt's avatar
    Avoid concurrent write while filling RX/CRC.indication · 5951caa9
    Robert Schmidt authored
    We observe these asserts while running concurrent UL traffic on many
    UEs:
    
      Assertion (crc->rnti == rx->rnti) failed!
      In handle_nr_ulsch() ../../../openair2/NR_PHY_INTERFACE/NR_IF_Module.c:193
      mis-match between CRC RNTI 7221 and RX RNTI 35cf
    
    CRC and RX indication need to be pairwise for one UE, when here we have
    each for different UE. However, investigation seemed to indicate that
    both arrays for CRC and RX indication contained only one PDU; it seemed
    the RNTI changed while writing the CRC/RX.indication messages in
    nr_fill_indication().
    
    In this patch, we change the logic to mark a ULSCH free AFTER calling
    nr_fill_indication(). It is difficult to say if this makes the assertion
    disappear, but preliminary tests did not exhibit the same failure
    states.
    
    Closes #773
    5951caa9
phy_procedures_nr_gNB.c 51.3 KB