5 Commits
Author SHA1 Message Date
Robert Schmidt febeaa7181 F1AP IDs: Add update method to fix concurrency bug
Introduce function cu_update_f1_ue_data() which does remove+add under
one lock. This fixes a concurrency bug. For instance, during
reestablishment, the CU needs to update the DU UE ID under which the UE
is identified in the DU. Previously, the CU would remove, then add the
DU UE ID info.  At the same time, the PDCP thread might look up the
information. This can lead to asserts. Use the above addmod
functionality to do the remove-add under a mutex.

Modify test to verify this works as expected.
2025-01-24 16:09:10 +01:00
Robert Schmidt f0ab268393 Revert "F1AP IDs: Allow AddMod, fix concurrency bug"
This reverts commit 6d5e29f5ae.
2025-01-24 15:23:06 +01:00
Robert Schmidt 6d5e29f5ae F1AP IDs: Allow AddMod, fix concurrency bug
Modify xu_add_f1_ue_data() to be xu_addmod_f1_ue_data(), i.e., "addmod"
behavior in which it is possible to also update f1_ue_data. I do it this
way since an xu_updade_f1_ue_data() function would be almost the same as
the add function (only deleting existing data, whereas the original
add() was asserting in that case).

Modify tests to test for this behavior.

This fixes a concurrency bug. For instance, during reestablishment, the
CU needs to update the DU UE ID under which the UE is identified in the
DU. Previously, the CU would remove, then add the DU UE ID info.
At the same time, the PDCP thread might look up the information. This
can lead to asserts. Use the above addmod functionality to do the
remove-add under a mutex.
2025-01-16 16:50:58 +01:00
Robert Schmidt c7dc71e66d Add test for CU F1AP ID data 2025-01-16 15:38:20 +01:00
Robert Schmidt af545c07b7 Hashtable for F1 UE IDs and add test 2023-08-11 17:38:12 +02:00