osmo-pcu/src
Pau Espin d6c555ebd6 Move out of alloc_algo code modifying the data model
This way the alloc_algo() becomes idempotent, simplifying implementation
of new alloc_algos as well as rolling back if allocation fails (for
instance because some resource is exhausted at the time).

For now the code applying the results is moved to tbf::alloc_algo(), but
it will eventually get out of tbf code, so that the MS object is
responsible for running it. As a result, there's no even need to create
TBF object before trying to allocate resources, which will help furher in
rollback operations described above.

Change-Id: I5ffd00f5f80bde4b73b78db44896f65e70e12b20
2023-04-26 13:28:55 +02:00
..
ericsson-rbs support for Ericsson RBS E1 CCU 2023-03-20 10:54:28 +01:00
osmo-bts-litecell15 lc15bts.h: add missing extern keyword 2023-03-21 12:11:02 +01:00
osmo-bts-oc2g pcu_l1_if_phy: support multiple BTS (in theory) 2023-03-03 17:51:33 +01:00
osmo-bts-sysmo pcu_l1_if_phy: support multiple BTS (in theory) 2023-03-03 17:51:33 +01:00
.gitignore Adding .gitignore to source directory 2012-06-27 17:45:15 +02:00
Makefile.am ms: Merge ms_storage into bts.cpp 2023-04-20 16:17:38 +02:00
alloc_algo.cpp Move out of alloc_algo code modifying the data model 2023-04-26 13:28:55 +02:00
alloc_algo.h Move out of alloc_algo code modifying the data model 2023-04-26 13:28:55 +02:00
bts.cpp ms: Get rid of ms->delay field 2023-04-21 14:36:28 +02:00
bts.h Merge bts_alloc_ms() and ms_alloc() 2023-04-20 16:17:39 +02:00
bts_pch_timer.c bts_pch_timer: Avoid resend Paging Request over PCUIF if T3113 is armed 2021-11-08 18:54:12 +00:00
bts_pch_timer.h bts_pch_timer: Avoid resend Paging Request over PCUIF if T3113 is armed 2021-11-08 18:54:12 +00:00
coding_scheme.c treewide: remove FSF address 2021-12-14 12:19:13 +01:00
coding_scheme.h treewide: remove FSF address 2021-12-14 12:19:13 +01:00
csn1.c treewide: remove FSF address 2021-12-14 12:19:13 +01:00
csn1.h treewide: remove FSF address 2021-12-14 12:19:13 +01:00
csn1_dec.c treewide: remove FSF address 2021-12-14 12:19:13 +01:00
csn1_enc.c treewide: remove FSF address 2021-12-14 12:19:13 +01:00
cxx_linuxlist.h treewide: remove FSF address 2021-12-14 12:19:13 +01:00
decoding.cpp en/decoding: fix deprecated include path 2023-02-24 18:29:40 +01:00
decoding.h treewide: remove FSF address 2021-12-14 12:19:13 +01:00
egprs_rlc_compression.cpp Clean false positive in newer GCC version checking guard of else clause 2021-05-19 11:58:57 +02:00
egprs_rlc_compression.h egprs_rlc_compression: fix white spaces 2019-06-17 02:04:09 +02:00
encoding.cpp gprs_rlcmac: convert from C++ to C 2023-04-12 16:13:10 +03:00
encoding.h gprs_rlcmac: convert from C++ to C 2023-04-12 16:13:10 +03:00
gprs_bssgp_pcu.c bts: Rename bts_ms_by_{tlli,imsi} -> bts_get_ms_by_{tlli,imsi} 2023-04-20 16:17:38 +02:00
gprs_bssgp_pcu.h treewide: remove FSF address 2021-12-14 12:19:13 +01:00
gprs_bssgp_rim.c ms: Merge ms_storage into bts.cpp 2023-04-20 16:17:38 +02:00
gprs_bssgp_rim.h treewide: remove FSF address 2021-12-14 12:19:13 +01:00
gprs_codel.c treewide: remove FSF address 2021-12-14 12:19:13 +01:00
gprs_codel.h treewide: remove FSF address 2021-12-14 12:19:13 +01:00
gprs_debug.c Add new log category 'ms' 2023-04-21 14:36:28 +02:00
gprs_debug.h Add new log category 'ms' 2023-04-21 14:36:28 +02:00
gprs_ms.c ms: Log MS active/idle state in 'show ms' VTY commands 2023-04-21 14:36:28 +02:00
gprs_ms.h ms: Log MS active/idle state in 'show ms' VTY commands 2023-04-21 14:36:28 +02:00
gprs_pcu.c {ms,gprs_pcu}_talloc_destructor(): call osmo_timer_del() unconditionally 2022-08-08 20:22:41 +00:00
gprs_pcu.h Move out of alloc_algo code modifying the data model 2023-04-26 13:28:55 +02:00
gprs_rlcmac.c gprs_rlcmac: convert from C++ to C 2023-04-12 16:13:10 +03:00
gprs_rlcmac.h gprs_rlcmac: convert from C++ to C 2023-04-12 16:13:10 +03:00
gprs_rlcmac_meas.cpp meas: Improve logging formatting 2023-04-21 14:36:28 +02:00
gprs_rlcmac_sched.cpp cosmetic: Remove unneeded curly braces 2023-01-27 11:29:52 +01:00
gsm_rlcmac.c treewide: remove FSF address 2021-12-14 12:19:13 +01:00
gsm_rlcmac.h treewide: remove FSF address 2021-12-14 12:19:13 +01:00
llc.c llc: remove unused reference to msgb address 2023-01-26 18:20:12 +01:00
llc.h Run struct_endianness.py 2023-02-20 10:50:17 +01:00
mslot_class.c treewide: remove FSF address 2021-12-14 12:19:13 +01:00
mslot_class.h treewide: remove FSF address 2021-12-14 12:19:13 +01:00
nacc_fsm.c Pass gprc_rlcmac_pdch to tbf_set_polling 2022-12-16 12:11:31 +01:00
nacc_fsm.h sched: Pass pdch to *_create_rlcmac_msg() functions 2022-12-13 12:20:02 +01:00
neigh_cache.c neigh_cache: fix: properly convert from nanoseconds to microseconds 2022-07-20 00:12:46 +07:00
neigh_cache.h treewide: remove FSF address 2021-12-14 12:19:13 +01:00
osmobts_sock.c PCU interface: Log version when starting listener 2023-03-25 23:04:54 +00:00
pcu_l1_if.cpp ms: Merge ms_storage into bts.cpp 2023-04-20 16:17:38 +02:00
pcu_l1_if.h gprs_rlcmac: convert from C++ to C 2023-04-12 16:13:10 +03:00
pcu_l1_if_phy.h pcu_l1_if_phy: support multiple BTS (in theory) 2023-03-03 17:51:33 +01:00
pcu_main.cpp pcu_l1_if_phy: add new PHY API function to initialize PHY 2023-02-27 16:47:12 +01:00
pcu_utils.h treewide: remove FSF address 2021-12-14 12:19:13 +01:00
pcu_vty.c Rename gprs_rlcmac_ts_alloc.cpp -> alloc_algo.cpp & create own .h file 2022-12-16 12:08:07 +01:00
pcu_vty.h vty: add attributes to VTY commands indicating when they apply 2020-10-08 07:16:31 +00:00
pcu_vty_functions.cpp vty: Several improvements to 'show ms' output format 2023-04-21 14:42:10 +02:00
pcu_vty_functions.h treewide: remove FSF address 2021-12-14 12:19:13 +01:00
pdch.cpp ms: Hold a reference during ms_alloc 2023-04-21 14:36:28 +02:00
pdch.h pdch: Introduce APIs to print PDCH name 2022-12-16 12:11:23 +01:00
pdch_ul_controller.c pdch_ul_controller: log reserved frame numbers 2023-03-27 09:14:40 +00:00
pdch_ul_controller.h constify pdch_ulc_get_next_free_fn() parameter 2022-11-17 19:32:40 +03:00
rlc.cpp treewide: remove FSF address 2021-12-14 12:19:13 +01:00
rlc.h Run struct_endianness.py 2023-02-20 10:50:17 +01:00
sba.c treewide: remove FSF address 2021-12-14 12:19:13 +01:00
sba.h treewide: remove FSF address 2021-12-14 12:19:13 +01:00
tbf.cpp Move out of alloc_algo code modifying the data model 2023-04-26 13:28:55 +02:00
tbf.h Move out of alloc_algo code modifying the data model 2023-04-26 13:28:55 +02:00
tbf_dl.cpp Move out of alloc_algo code modifying the data model 2023-04-26 13:28:55 +02:00
tbf_dl.h Move out of alloc_algo code modifying the data model 2023-04-26 13:28:55 +02:00
tbf_dl_ass_fsm.c Mark several fsm related internal symbols as static 2023-01-30 10:42:44 +01:00
tbf_dl_ass_fsm.h Mark several fsm related internal symbols as static 2023-01-30 10:42:44 +01:00
tbf_dl_fsm.c Mark several fsm related internal symbols as static 2023-01-30 10:42:44 +01:00
tbf_fsm.c Mark several fsm related internal symbols as static 2023-01-30 10:42:44 +01:00
tbf_fsm.h tbf_dl_fsm_ctx: Properly define tbf backptr as dl_tbf 2022-12-12 20:09:49 +01:00
tbf_ul.cpp Move out of alloc_algo code modifying the data model 2023-04-26 13:28:55 +02:00
tbf_ul.h Move out of alloc_algo code modifying the data model 2023-04-26 13:28:55 +02:00
tbf_ul_ack_fsm.c Mark several fsm related internal symbols as static 2023-01-30 10:42:44 +01:00
tbf_ul_ack_fsm.h Mark several fsm related internal symbols as static 2023-01-30 10:42:44 +01:00
tbf_ul_ass_fsm.c Mark several fsm related internal symbols as static 2023-01-30 10:42:44 +01:00
tbf_ul_ass_fsm.h Mark several fsm related internal symbols as static 2023-01-30 10:42:44 +01:00
tbf_ul_fsm.c ms: Use osmo_use_count to track references 2023-04-20 16:17:39 +02:00
wireshark_compat.h treewide: remove FSF address 2021-12-14 12:19:13 +01:00