This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/osmocom-commitlog@lists.osmocom.org/.
gitosis at osmocom.org gitosis at osmocom.orgThis is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "UNNAMED PROJECT". The branch, jerlbeck/master has been updated via 77da35515ce40baf2305cf7cf5e4008f6b478e36 (commit) via 7b3675bf7a6203467e6a72e255544365cefc3b06 (commit) via 0f352a6f2293534fa31bfe81cf85ea7dbe317481 (commit) via bf9042203d02298040e5289c86238961c154a3d4 (commit) via 7af53e61f0a9de8c6ebe412d7bb0ffe11f71dbbd (commit) via 88fb6136fb8b69f37ded4c868689556f3bde3ac8 (commit) via e21b79cb211fa930b79b69ce9416a25816daff47 (commit) via f16a069fd7e34c3f94527965073df3bae0e524b1 (commit) via 5979fe9d8af159bbf8ea382bcd06ad43e25e209c (commit) via 400ec02e8a0415a59eae9dcdae43de38247897a3 (commit) via 40da3e17e5b3d4cf199cb868d561f98c35b93147 (commit) via 5a2b8be3f5c9659cedb56855d2741accfdaeab3d (commit) via 2b558857dd720ea0a743d2656873a8c472ecd6b9 (commit) via a8c2aaf6f05d5e25665e8cbb2b415c6a2ad34d8b (commit) via 69c9bfa0897c63b8a220bdb8db6658dc5021e5da (commit) via b2439bbb8a73f00873efd7f744f70be535496e90 (commit) via 3a10dbd56428cf0e79b738f62748509bbd04aa68 (commit) via e0853cdf42e60acd7759acd4869c84756eb1fa27 (commit) via 5879c6493f74aecddc81abbd785065325bf2e117 (commit) via 47a57f6f869f19704bbb993fc157a86fd0c85e58 (commit) via 61205a7e6539b3926c3039e8dcabda6aa9b408ef (commit) from 57cf69a18ccceac4b250dceb56c4e0d5f0018a95 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- http://cgit.osmocom.org/osmo-pcu/commit/?id=77da35515ce40baf2305cf7cf5e4008f6b478e36 commit 77da35515ce40baf2305cf7cf5e4008f6b478e36 Author: Jacob Erlbeck <jerlbeck at sysmocom.de> Date: Thu Jul 16 18:33:46 2015 +0200 alloc: Make alloc_algorithm_dynamic stateful Currently there is no persistent state being used in alloc_algorithm_dynamic. So algorithm B is even used in persistent high usage scenarios. If there are many active TBFs, multislot assigments are not fair, because MS of a "higher" multislot class get higher troughputs. On the other hand, as long as all PDCH are busy no bandwidth will be wasted even if all MS use algorithm A. This commit modifies alloc_algorithm_dynamic to disable algorithm B when that call fails. It then keeps it disabled until there is a single PDCH which is idle (it is considered idle, if there is at most one active DL TBF assigned to it). Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=7b3675bf7a6203467e6a72e255544365cefc3b06 commit 7b3675bf7a6203467e6a72e255544365cefc3b06 Author: Jacob Erlbeck <jerlbeck at sysmocom.de> Date: Thu Jul 16 18:28:22 2015 +0200 alloc/test: Fix trx_no assertion Currently the value of trx_no2 is used in the assertion, even if the call to tfi_find_free has failed. This commit fixes the asserted expression to only compare the trx_no values if the function call has succeeded. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=0f352a6f2293534fa31bfe81cf85ea7dbe317481 commit 0f352a6f2293534fa31bfe81cf85ea7dbe317481 Author: Jacob Erlbeck <jerlbeck at sysmocom.de> Date: Thu Jul 16 18:23:33 2015 +0200 alloc/test: Free the TBF if the recursion has failed Currently if both an uplink and a downlink TBF are to be allocated by alloc_tbfs() and the second allocation fails, the first TBF is not freed. This commit changes the recursive function to free the TBF if the ms variable has been changed to NULL. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=bf9042203d02298040e5289c86238961c154a3d4 commit bf9042203d02298040e5289c86238961c154a3d4 Author: Jacob Erlbeck <jerlbeck at sysmocom.de> Date: Thu Jul 16 18:19:09 2015 +0200 alloc/test: Use lower case for slots with TFI shortage Indicate those slots with lower case letters that do not have a spare TFI for the other direction if such a TBF has not been attached to the MS object yet. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=7af53e61f0a9de8c6ebe412d7bb0ffe11f71dbbd commit 7af53e61f0a9de8c6ebe412d7bb0ffe11f71dbbd Author: Jacob Erlbeck <jerlbeck at sysmocom.de> Date: Thu Jul 16 15:04:07 2015 +0200 alloc: Use a separate usage computation for algo A Currently algorithm A can select an TBF even when there is no free TBF in the reverse direction. While this does not necessarily lead to an allocation failure, the probabily is higher. In addition, the current slot reservations are not taken into account. This commit changes the selection algorithm to prefer slots where TFI are available in both directions and which are less reserved. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=88fb6136fb8b69f37ded4c868689556f3bde3ac8 commit 88fb6136fb8b69f37ded4c868689556f3bde3ac8 Author: Jacob Erlbeck <jerlbeck at sysmocom.de> Date: Thu Jul 16 15:01:38 2015 +0200 alloc/test: Show expectation before failure To simplify debugging, show the actuals value before the assertion fails in some cases. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=e21b79cb211fa930b79b69ce9416a25816daff47 commit e21b79cb211fa930b79b69ce9416a25816daff47 Author: Jacob Erlbeck <jerlbeck at sysmocom.de> Date: Thu Jul 16 11:48:43 2015 +0200 alloc: Change tx_window optimization strategy Currently each tx_window combination is checked only once by using a set containing the sets of TX slots that have been checked already. This approach does not ensure, that num_tx and ul_ts really match the tx_window being tested. This does not make a difference with the current test cases probably because num_tx starts with 1 and is increased each iteration. Since the bitmap optimization is equivalent to a cache optimization strategy that only uses tx_window as key. On the other hand, ul_ts, num_tx, and rx_mask cannot be derived from tx_window, but these values are also refered to after the call to test_and_set_bit(). This makes it difficult to prove that correctness of the caching. While this will not lead to a defect, the results might be less optimal. This commit changes the optimization strategy to skip all tx_window where ul_ts and ul_ts+num_tx-1 are not both contained. This provides a similar degree of optimization like the set approach (only the iteration with num_ts == 8 is not optimized, which only applies to to ms class 18 and 29 MS) but ensures that the values of the related variables have a clear relationship. Note that the bitset based optimization for rx_window does not suffer from a possible cache inconsistency, since only tx_window and rx_window (tx_slot_count and rx_slot_count can be derived from the windows and thus are covered by the cache key) are used after the call to test_and_set_bit(). tx_window is constant over the whole lifetime of the cache. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=f16a069fd7e34c3f94527965073df3bae0e524b1 commit f16a069fd7e34c3f94527965073df3bae0e524b1 Author: Jacob Erlbeck <jerlbeck at sysmocom.de> Date: Tue Jul 14 14:29:34 2015 +0200 pcu: Use alloc_algorithm_dynamic by default The dynamic algorithm behaves like B until there are no TFI left. This commit changes the default algorithm to to former. Ticket: #1934 Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=5979fe9d8af159bbf8ea382bcd06ad43e25e209c commit 5979fe9d8af159bbf8ea382bcd06ad43e25e209c Author: Jacob Erlbeck <jerlbeck at sysmocom.de> Date: Tue Jul 14 14:02:41 2015 +0200 alloc: Add counters for successful algo A/B allocations This adds counters for algorithm A and B with count successful allocation combined for UL and DL. Ticket: #1934 Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=400ec02e8a0415a59eae9dcdae43de38247897a3 commit 400ec02e8a0415a59eae9dcdae43de38247897a3 Author: Jacob Erlbeck <jerlbeck at sysmocom.de> Date: Tue Jul 14 13:31:48 2015 +0200 alloc: Add 'dynamic' allocation algorithm The idea behind this meta algorithm is to automatically select one of the other algorithms based on the system state. Basically algorithm B will be selected if the PDCH usage is low to improve throughput and latency. Algorithm A will be selected to support more concurrent MS. This commit adds a first simple state-less version of this algorithm that always tries B first and only if that fails A is tried afterwards. The following VTY command is added to the 'pcu' node: - alloc-algorithm dynamic Ticket: #1934 Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=40da3e17e5b3d4cf199cb868d561f98c35b93147 commit 40da3e17e5b3d4cf199cb868d561f98c35b93147 Author: Jacob Erlbeck <jerlbeck at sysmocom.de> Date: Tue Jul 14 12:57:07 2015 +0200 alloc: Remove disabled code fragment for multi-UL allocation This part of algorithm_b has already been disabled. Further work may depend on this, but it is going out of sync. So this commit removes it completely. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=5a2b8be3f5c9659cedb56855d2741accfdaeab3d commit 5a2b8be3f5c9659cedb56855d2741accfdaeab3d Author: Jacob Erlbeck <jerlbeck at sysmocom.de> Date: Tue Jul 14 11:35:21 2015 +0200 alloc: Refactor alloc algorithms to only apply changes on success Currently these algorithms modify other objects (MS, TBF, PDCH) even if the allocation will fail later on. To implement an algorithm that dynamically tries another algorithm on failure (e.g. A after B), the first (failing) algorithm should not change or damage anything. This commit refactors algorithm A and B to delay the actual allocation until it is known that the allocation will not fail. Ticket: #1934 Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=2b558857dd720ea0a743d2656873a8c472ecd6b9 commit 2b558857dd720ea0a743d2656873a8c472ecd6b9 Author: Jacob Erlbeck <jerlbeck at sysmocom.de> Date: Mon Jul 13 15:15:18 2015 +0200 alloc: Remove redundant first_common_ts handling Currently this code path is only used, if an allocation has been taken place in a former call to an allocation algorithm function. If this was for an DL TBF, the first common TS was selected, otherwise the least used common TS was selected for an UL TBF. The shrinking of the UL set (to 1<<first_common_ts) is done in the latter case. This commit removes an additional code path that aligns the UL set to first_common_ts, because it has no more influence on the set of common TS after both UL and DL TBF have been allocated. Sponsored-by: On-Waves ehf http://cgit.osmocom.org/osmo-pcu/commit/?id=a8c2aaf6f05d5e25665e8cbb2b415c6a2ad34d8b commit a8c2aaf6f05d5e25665e8cbb2b415c6a2ad34d8b Author: Jacob Erlbeck <jerlbeck at sysmocom.de> Date: Mon Jul 13 14:50:08 2015 +0200 alloc/test: Add test for interleaved TBF chains MS iniated TCP connections generally result in a sequence of short time UL and longer lasting DL TBFs, being interleaved between several MS. This scenario is not covered by the existing tests. This commit adds a test, that allocates as man as possible TBFs several times with different test modes without clearing the BTS (and thus the TBF list) in between. The number of allocated DL TBFs in each round is expected to be constant. Sponsored-by: On-Waves ehf ----------------------------------------------------------------------- Summary of changes: src/bts.cpp | 149 ++-- src/bts.h | 30 +- src/gprs_ms.cpp | 8 + src/gprs_ms.h | 2 + src/gprs_rlcmac.h | 11 +- src/gprs_rlcmac_ts_alloc.cpp | 471 ++++++++--- src/pcu_main.cpp | 2 +- src/pcu_vty.c | 13 +- src/tbf.cpp | 65 +- src/tbf.h | 5 +- src/tbf_dl.cpp | 17 +- tests/alloc/AllocTest.cpp | 410 ++++++--- tests/alloc/AllocTest.err | 875 +++++++++++++++++++ tests/alloc/AllocTest.ok | 1907 +++++++++++++++++++++++++++++++++++++++--- tests/tbf/TbfTest.cpp | 10 +- tests/tbf/TbfTest.err | 324 ++++--- 16 files changed, 3636 insertions(+), 663 deletions(-) hooks/post-receive -- UNNAMED PROJECT