blob: 3e50d6653b65bbda0a3610e7e190efe93333ebb4 [file] [log] [blame]
Oliver Smith5c227e72023-12-12 16:58:17 +01001osmo-pcu (1.4.0) unstable; urgency=medium
2
3 [ Pau Espin Pedrol ]
4 * tbf: Log poll timeout reason
5
6 [ Vadim Yanitskiy ]
7 * pdch_ul_controller: migrate from fn_cmp() to gsm0502_fncmp()
8 * bts: bts_tfi_find_free(): fix -Wmaybe-uninitialized (false positive)
9
10 [ Oliver Smith ]
11 * systemd: remove RestartPreventExitStatus=1
12 * Revert "pdch_ul_controller: migrate from fn_cmp() to gsm0502_fncmp()"
13
14 [ Philipp Maier ]
15 * pcuif_proto: rename PCU_IF_FLAG_SYSMO to PCU_IF_FLAG_DIRECT_PHY
16 * pcuif_proto: drop support for PCUIF v10
17 * pcu_l1_if: signal BTS model via PCUIF
18 * gprs_rlcmac_sched: fix condition for generating dummy blocks on idle
19 * bts: rename struct member gen_idle_blocks to gen_idle_blocks_C0
20
21 [ Andreas Eversberg ]
22 * Increase RR scheduler priority to 20, to avoid dropped bursts
23 * Use uniform log format for default config files
24
25 [ Keith ]
26 * TBF status: Fix VTY output text
27
28 -- Oliver Smith <osmith@sysmocom.de> Tue, 12 Dec 2023 16:58:16 +0100
29
Pau Espin Pedrol9658f022023-09-15 11:33:44 +020030osmo-pcu (1.3.1) unstable; urgency=medium
31
32 * tbf_dl_fsm: Fix assert hit due to EV_MAX_N3105 received in ST_RELEASING
33
34 -- Pau Espin Pedrol <pespin@sysmocom.de> Fri, 15 Sep 2023 11:33:44 +0200
35
Pau Espin Pedrol3ef173b2023-09-12 16:00:25 +020036osmo-pcu (1.3.0) unstable; urgency=medium
37
38 [ Philipp Maier ]
39 * pcuif_proto: move gsm_pcu_if_e1_ccu_ind into right place
40 * pcu_l1_if.cpp: handle TLLI based IMMEDIATE ASSIGNMENT confirmation
41 * pcu_l1_if: move direct phy l1if functions to dedicated header file
42 * lc15/oc2g: fix function signature of l1if_open_pdch()
43 * osmo-bts-xyz: include pcu_l1_if_phy.h in phy in l1_if code
44 * en/decoding: fix deprecated include path
45 * pcu_l1_if: use only the term "direct PHY access"
46 * pcu_l1_if_phy: add header file for struct gsmtap_inst
47 * pcu_l1_if_phy: add new PHY API function to disconnect PDCH
48 * pcu_l1_if_phy: add new PHY API function to initialize PHY
49 * pcu_l1_if: cosmetic: remove whitespace after *
50 * pcu_l1_if_phy: support multiple BTS (in theory)
51 * bts: add IMMEDIATE ASSIGNMENT via PCH transmission
52 * support for Ericsson RBS E1 CCU
53 * pcu_l1_if: get rid of strange paging group calculation
54 * doc: add sample config to illustrate how to use an E1 CCU
55 * pcu_l1_if: do not copy IMSI when it is NULL
56 * Makefile.am: remove phy specific EXTRA_DIST variables
57 * doc: overview: put BTS and PCU on the same rank
58 * doc: Add details regarding BSC co-location
59 * pdch_ul_controller: log reserved frame numbers
60 * pcu_l1_if: cosmetic: reformat comment
61 * er_ccu_l1_if: use one ccu_desr per timeslot
62 * pcu_l1_if_phy: fix API function names
63 * pcu_l1_if: replace magic numbers with IMSI_DIGITS_FOR_PAGING
64 * gprs_rlcmac: also use PCU_IF_SAPI_PCH_DT for paging MAC blocks
65 * pcu_l1_if: use correct SAPI in PCUIF message PCU_IF_MSG_DATA_CNF_DT
66 * neigh_cache: make neigh_cache_lookup_entry static
67 * nacc_fsm: Add support for NACC with UTRAN and E-UTRAN cells
68 * nacc_fsm: fix uninitialized neigh_key variable
69 * pcuif_proto: rename tlli to msg_id
70 * bts: get rid of fn parameter in bts_rcv_imm_ass_cnf
71 * pcuif_proto: remove unnecessary members from gsm_pcu_if_data_cnf_dt
72 * pcuif_proto: get rid of _DT, _dt (Direct TLLI)
73 * pcuif_proto: add confirm flag to struct gsm_pcu_if_pch
74 * pcu_l1_if: add support for PCU_IF_SAPI_AGCH_2 for PCUIF v.11
75 * osmobts_sock: cosmetic: rename osmobts_sock.c to pcuif_sock.c
76 * pcuif_sock: improve log output (OsmoBTS/OsmoBSC)
77
78 [ Oliver Smith ]
79 * Run struct_endianness.py
80 * lc15bts.h: add missing extern keyword
81 * debian: set compat level to 10
82 * systemd: depend on networking-online.target
83
84 [ Pau Espin Pedrol ]
85 * tbf: Increase log level if polling requested in wrong TS
86 * tbf_ul_fm: Allow receiving event TBF_EV_MAX_N3105 in state RELEASING
87 * osmo_bts_sock.c: Call osmo_fd_unregister() before closing and changing bfd->fd
88 * Update libosmogsm deprecated include
89 * ms: Fix MS without PTMSI not freed immediatelly
90 * ms: Drop setting tlli during ms_alloc()
91 * tbf_dl: Avoid attempt scheduling DL ACK/NACK in TS != CTRL TS
92 * ms: Drop setting (egprs_)ms_class during bts_alloc_ms()
93 * bts: Rename bts_ms_by_{tlli,imsi} -> bts_get_ms_by_{tlli,imsi}
94 * ms: Merge ms_storage into bts.cpp
95 * ms: store in bts->ms_list during alloc/destroy of ms object
96 * Merge bts_alloc_ms() and ms_alloc()
97 * ms: Use osmo_use_count to track references
98 * ms: Make sure tbf!=NULL in ms_attach_{ul,dl}_tbf()
99 * ms: Make ms_{attach,detach}_tbf expectancies more robust
100 * ms: Log detaching tbf log line in proper place
101 * ms: Rewrite MS release lifecycle
102 * tbf: Store initial timestamp during constructor
103 * tbf: Move m_ctrs alloc to constructor
104 * tbf_ul: Move rate_ctr allocation to constructor
105 * tbf: Move enable_egprs() to constructor
106 * cosmetic: Fix indentation in comment
107 * ms: Hold a reference during ms_alloc
108 * dl_tbf: Set BandWidth timestamps to current time directly
109 * Add new log category 'ms'
110 * ms: Increase log level when scheduling release timer
111 * meas: Improve logging formatting
112 * ms: Get rid of ms->delay field
113 * ms: Rename field timer -> release_timer
114 * ms: Log MS active/idle state in 'show ms' VTY commands
115 * vty: Several improvements to 'show ms' output format
116 * alloc_algo: Pass a struct containing all req params
117 * alloc_algo: Move printing outside of update_ms_reserved_slots()
118 * Move out of alloc_algo code modifying the data model
119 * Move resource allocation outside of tbf allocation
120 * ms: Mark ms_reset() as static
121 * ms: Fix unsafe iterating freeing items in list
122 * cosmetic: ms: fix formatting of function comment
123 * tbf: Improve TBF name description in logs
124 * cosmetic: tbf_ul_ack_fsm: Clean up use of ul_tbf and tbf pointers
125 * Use always RFN when handling RACH indications
126 * Error trying to obtain FN from RFN if curr_fn not known
127 * bts: use RFN directly to calculate fn416
128 * encoding: pass RFN to write_immediate_assignment(_reject)()
129 * Derive FN from RFN once and cache it in struct rach_ind_params
130 * Use fn_valid() helper in pcu_rx_time_ind()
131 * Move call to bts_set_current_frame_number() earlier in the code path
132 * Use OSMO_UNLIKELY() in bts_rfn_to_fn()
133 * pcu_utils.h: Replace software based bitcount impl with gcc builtin
134 * Document pcu_lsb() function
135 * Log MS information in error message using usual MS API
136 * tbf_dl_fsm: Apply T3193 using FSM infrastructure instead of manually
137 * tbf_{ul,dl}_fsm: Remove unneeded asserts
138 * tbf_{ul,dl}_fsm: remove impossible dst state transitions
139 * Avoid using N3101 in DL TBFs
140 * Avoid using N3103 in DL TBFs
141 * Avoid using N3105 in UL TBFs
142 * tbf_dl_fsm: Remove T3169 references, simplify T3195 set up as consequence
143 * tbf_ul_fsm: Remove 3195 references, simplify T3169 set up as consequence
144 * Abort UL TBF PACCH Ass based on T3168
145 * Remove unused GPRS_RLCMAC_FLAG_TO_MASK
146 * Improve logging in bts_snd_dl_ass()
147 * tbf_dl_fsm: Fix wrong lchan specified in log line
148 * tbf_{ul,dl}_fsm: Abort on unexpected path
149 * tbf_{ul,dl}_fsm.c: Rearrange code/logs in mod_ass_type()
150 * Move GPRS_RLCMAC_FLAG_TO_DL_ACK from state_fsm to dl_tbf
151 * Move GPRS_RLCMAC_FLAG_DL_ACK from state_fsm to dl_tbf
152 * tests/tbf: Drop unneeded line re-setting CCCH ass type
153 * cosmetic: tbf_dl_fsm: Fix a couple comment typos
154 * Move call to bts_snd_dl_ass() from tbf_dl.cpp to tbf_dl_fsm.c
155 * Change several log lines to start with capital letter
156 * cosmetic: Improve comment
157 * Fix DL_TBF PACCH ass done on UL_TBF already scheduled to tx last PKT CTRL ACK
158 * bts: Use same default value for T3193 as set in osmo-bts/bsc
159 * Store T3192 value received from SI13, do some sanity checks
160 * tbf_dl_fsm: Drop impossible event
161 * cosmetic: tbf_fsm: Fix typo in comment
162 * pdch.cpp: Drop impossible code path
163 * Differentiate between T3192 and T3193
164 * ms_need_dl_tbf(): Fix state checks and document function
165 * tbf_ul: Avoid processing rx UL blocks for UL TBFs in RELEASING state
166 * tbf_ul_fsm: Delay moving ul_tbf to FLOW
167 * Avoid using UL TBF in RELEASE state to assign DL TBF over PACCH
168 * Avoid re-assigning DL TBF over PACCH upon duplicate FinalACKs received
169 * tbf_dl_fsm: Ignore DL_ACKNACK_MISS events in WAIT_{RELEASE,REUSE_TFI} states
170 * Reestore last LLC frames never completely acked when freeing DL TBF
171 * cosmetic: pdch.cpp: Drop wrong comment due to copy-paste error
172 * tbf_dl_fsm: Fix '{FLOW}: Event ASSIGN_PCUIF_CNF not permitted'
173 * pcuif: Log read() error cause
174 * gprs_ms: Constify variable in ms_is_reachable_for_dl_ass()
175 * gprs_ms: Update assert condition
176 * oc2g: Fix multiple definitions of arrays
177 * pcu_l1_if: Document tx_pch empty IMSI scenario
178 * gprs_rlc_ul_window: Make sure V(N) array is cleared during reset_state()
179 * Split rlc_{dl_,ul_,}window out of rlc.{h,cpp}
180 * gprs_rlc_ul_window: Mark received BSNs falling out of the V(N)/RBB when V(R) is raised
181 * cosmetic: mslot_class.h: Update spec reference
182 * cosmetic: Document foce_two_phase feature based on specs
183 * pcu_l1_if.cpp: Fix gsmtap not sent in PCU_IF_SAPI_PCH_DT
184 * vty: Allow modifying default msclass
185
186 [ Vadim Yanitskiy ]
187 * {src,tests}/Makefile.am: libraries shall not be in AM_LDFLAGS
188 * tests/Makefile.am: do not overwrite global LDFLAGS
189 * fix pcu_rx(): actually discard malformed container message
190 * tests: $(BUILT_SOURCES) is not defined, depend on osmo-pcu
191 * copyright: fix typo: sysmocom s/s.m.f.c./s.f.m.c./ GmbH
192
193 [ arehbein ]
194 * PCU interface: Log version when starting listener
195
196 [ Max ]
197 * gprs_rlcmac: convert from C++ to C
198 * ctrl: drop deprecated neighbor resolution interface
199
200 -- Pau Espin Pedrol <pespin@sysmocom.de> Tue, 12 Sep 2023 16:00:25 +0200
201
Pau Espin Pedrol0ec77242023-02-07 17:10:41 +0100202osmo-pcu (1.2.0) unstable; urgency=medium
203
204 [ Vadim Yanitskiy ]
205 * encoding: fix an uninitialized field in gen_freq_params()
206 * neigh_cache: fix: properly convert from nanoseconds to microseconds
207 * tests/rlcmac: remove unused #includes
208 * tests/rlcmac: remove unused printSizeofRLCMAC()
209 * tests/rlcmac: make all test functions static
210 * tests/rlcmac: cosmetic: fix coding style in arrays
211 * tests/rlcmac: use ARRAY_SIZE macro
212 * tests: make target 'check-local' depend on 'atconfig'
213 * tests: target 'check-local' does not depend on BUILT_SOURCES
214 * Makefile.am: generate missing .version file
215 * Makefile.am: add 'git-version-gen' to EXTRA_DIST
216 * {ms,gprs_pcu}_talloc_destructor(): call osmo_timer_del() unconditionally
217 * {src,tests}/Makefile.am: $(COMMON_LA) is not definied
218 * fix pcu_l1if_tx_ptcch(): do not send empty blocks to GSMTAP
219 * Make linter happy: fix coding style issues
220 * bts_set_current_frame_number(): log expected TDMA FN
221 * bts: bts_snd_dl_ass(): clarify the meaning of last_rts_fn + 21216
222 * bts: bts_snd_dl_ass(): use GSM_TDMA_FN_SUM() macro
223 * Makefile.am: drop unneeded '-ldl -pthread' from AM_CXXFLAGS
224
225 [ Pau Espin Pedrol ]
226 * nacc_fsm: Fix uninitialized plmn.mnc_3_digits parsing CTRL neigh resolution cmd
227 * cosmetic: Add missing spacing between params
228 * Use GSM48_MT_RR_IMM_ASS instead of hardcoded 0x3f value
229 * Clarify use RR imm_ass msg fields
230 * bts_rcv_imm_ass_cnf(): Improve logging
231 * cosmetic: Update reference to func renamed in the past
232 * gprs_ms: Document functions setting/updating TLLI
233 * Call ms_store->get_ms() with GSM_RESERVED_TMSI instead of 0
234 * gprs_ms: Move creating string name of object to a function
235 * Move LLC enqueuing and retransmit timer to MS object
236 * tbf_ul_ack_fsm: Pass ul_tbf instead of generic tbf
237 * Rename tbf_alloc_dl_tbf() -> dl_tbf_alloc()
238 * tbf_dl: Make dl_tbf_alloc API available in C code
239 * Fix mess with struct tbf types passed to LOGPTBF macro
240 * Rename as_{dl,ul}_tbf -> tbf_as_{dl,ul}_tbf
241 * tbf_ul_ack_fsm: get ul_tbf base class only when needed
242 * use new {dl,ul}_tbf_as_tbf(_const) helper functions
243 * pdch: Use helper function tbf_as_ul_tbf()
244 * rcv_resource_request(): Validate expected message before MS lookup & allocation
245 * encoding: Use MT_PACKET_UPLINK_ASSIGNMENT define instead of hardcoded value
246 * rcv_resource_request(): Update meas before allocating and assigning new UL TBF
247 * Delay ImmAss(PCH, PktDlAss) if waiting for PKT_CTRL_ACK answering UL_ACK_NACK (FinACK=1)
248 * Refactor and clarify tbf->triger_ass() code
249 * Rename function tbf_dl_request_dl_ack() -> dl_tbf_request_dl_ack()
250 * Replace tbf->establish_dl_tbf_on_pacch() refactoring GprsMs functions
251 * ul_tbf: Define m_contention_resolution_done as bool
252 * tbf_fsm: Identify several events as Dl-TBF only
253 * Move UL allocation&assign functions to gprs_ms.c
254 * update_ms(): Set TLLI of new MS object before merge with old MS
255 * Join ms_merge_and_clear_ms() and ms_merge_old_ms()
256 * gprs_ms: Add comment warning the user that a ptr may be freed after call to func
257 * Rename tbf_alloc_ul_tbf -> ul_tbf_alloc
258 * Rework tbf::update_ms()
259 * tbf_fsm: Introduce new event TBF_EV_FIRST_UL_DATA_RECVD
260 * Avoid losing DL-TBF during MS merge
261 * tbf_fsm: Introduce new event to act upon contention resolution success
262 * tbf_ul: Assign DL-TBF if needed after UL-TBF has gone over contenion resolution
263 * Improve TBF logging
264 * Improve MS logging
265 * Disable logging fsm addresses
266 * tbf_fsm: Move tbf_fsm_state_chg macro to .c file
267 * tbf_fsm: Move osmo_fsm_inst fi out of struct tbf_fsm_ctx
268 * tbf: Drop unused function
269 * tbf: Add tbf_as_{ul,dl}_tbf_const func helpers
270 * Refactor tbf_is_tfi_assigned() to avoid accessing tbf->state_fsm
271 * Split tbf_fsm as tbf_{ul,dl}_fsm
272 * Convert gprs_debug.cpp to C
273 * pdch: Initial support Handling PktResReq with ID_TYPE=UL/DL_TFI
274 * pdch_ulc_get_node(): assert if ulc pointer is null
275 * Pass gprs_rlcmac_pdch to tbf_is_control_ts
276 * Pass pdch ptr to tbf_compute_priority
277 * encoding::write_immediate_assignment(): Constify tbf param
278 * tbf_ul_fsm_ctx: Properly define tbf backptr as ul_tbf
279 * tbf_dl_fsm_ctx: Properly define tbf backptr as dl_tbf
280 * Move control_ts explicit checks out of the scheduler implementation
281 * sched: Pass pdch to *_create_rlcmac_msg() functions
282 * Move first_common_ts from gprs_rlcmac_tbf to GprsMs
283 * Get rid of tbf->first_ts
284 * Refactor code related to DL-TBF upgrade to multislot
285 * Trigger PACCH assignment inside dl_tbf_upgrade_to_multislot()
286 * tbf_ul: Fix wrong struct type in field
287 * Refactor code rejecting UL-TBF upon rx of PktResourceReq
288 * bts: Adapt slot_mask to trx defined array size
289 * Convert ms_first_common_ts to struct gprs_rlcmac_pdch
290 * Rename gprs_rlcmac_ts_alloc.cpp -> alloc_algo.cpp & create own .h file
291 * pdch: Introduce APIs to print PDCH name
292 * tbf: Fix typo in define used
293 * Convert tbf->control_ts to be a gprs_rlcmac_pdch*
294 * tests/tbf: test_tbf_dl_llc_loss(): Fix wrong param passed and wrong expectancies
295 * Pass gprs_rlcmac_pdch to create_dl_acked_block()
296 * Pass gprc_rlcmac_pdch to tbf_check_polling
297 * Pass gprc_rlcmac_pdch to tbf_set_polling
298 * bts: Adapt trx check based on bts->trx[] defined array size
299 * tests/TbfTest: reproduce buggy corner case: MS with TBFs on 2 TRXs
300 * Avoid moving DL-TBF from old_msg to new_ms during ms_merge
301 * llc: Mark llc_is_user_data_frame() as static
302 * llc: Refactor code checking if PDU expired while dequeueing
303 * llc: remove unused reference to msgb address
304 * cosmetic: Remove unneeded curly braces
305 * Mark several fsm related internal symbols as static
306 * rlc.h: Fix typo in param name
307
308 [ Max ]
309 * Set working directory in systemd service file
310 * Update and document realtime scheduling priority in service file
311 * cosmetic: drop unused field from struct pdch_ulc
312 * cosmetic: drop duplicated comment
313 * constify pdch_ulc_get_next_free_fn() parameter
314
315 [ Philipp Maier ]
316 * pcuif_proto: cosmetic: rename struct member "h" to "hopping"
317 * pcuif_proto: cosmetic: rename gsm_pcu_if_info_ts to gsm_pcu_if_info_trx_ts
318 * pcuif_proto: use define constant to specify nax number of trx
319 * bts: refuse to set invalid frame numbers
320 * bts: use GSM_TDMA_FN_ macros and uint32_t in bts_rfn_to_fn
321 * bts: log FN jump delta in bts_set_current_frame_number()
322 * pcuif_proto: add indication to communicate E1 parameters
323 * pcu_l1_if: cosmetic: use sizeof instead of constants
324 * pcu_l1_if: ignore frame numbers that exceed the valid range
325 * pcuif_proto: rename PCU_IF_SAPI_AGCH_DT to PCU_IF_SAPI_PCH_DT
326
327 [ Harald Welte ]
328 * update horribly outdated copyright statement on VTY
329
330 [ arehbein ]
331 * osmo-pcu: Transition to use of 'telnet_init_default'
332
333 -- Pau Espin Pedrol <pespin@sysmocom.de> Tue, 07 Feb 2023 17:10:40 +0100
334
Pau Espin Pedrol7ebdfc22022-06-29 09:48:53 +0200335osmo-pcu (1.1.0) unstable; urgency=medium
336
337 [ Oliver Smith ]
338 * treewide: remove FSF address
339
340 [ Pau Espin Pedrol ]
341 * Fix assert hit if connecting to SGSN fails
342 * llc: Convert to C: s/m_//g
343 * llc: Convert to C
344 * llc: Move static functions below related object
345 * ms: validate codel enabled against proper define
346 * ms: Remove unneeded bts!=NULL check
347 * gprs_ms_storage: MS always has non NULL ms->bts
348 * llc: schedule frames to MS based on SAPI priority
349 * pdch is_enabled: Use API getter instead of accessing field directly
350 * llc_queue: Refactor to handle codel_state per prio queue internally
351 * tests/llc: Add test_llc_meta_pdu_life_expire
352 * tests/llc: Add test_llc_codel
353 * gprs_ms: Use osmo_timer_setup() API
354 * gprs_ms_storage: Use bts_stat_item_inc/dec APIs
355 * tests/tbf: Set up pcu timers in prepare_pcu()
356 * gprs_pcu: Explicitly free all bts objects in list before freeing pcu
357 * bts: Call gprs_bssgp_destroy() in destructor
358 * TbfTest: Reset MS timeout to 0 in test_tbf_dl_llc_loss()
359 * gprs_ms_stoage: Release all MS in ms_storage cleanup()
360
361 [ Harald Welte ]
362 * update git URLs (git -> https; gitea)
363
364 -- Pau Espin Pedrol <pespin@sysmocom.de> Wed, 29 Jun 2022 09:48:53 +0200
365
Pau Espin Pedrol11f72df2021-11-16 16:47:29 +0100366osmo-pcu (1.0.0) unstable; urgency=medium
367
368 [ Pau Espin Pedrol ]
369 * Support uplink multi-slot allocations
370 * tbf: Log timeslot allocation failure
371 * bts: Count TBF TS allocation failure
372 * pdch: Standarize and improve logging
373 * tbf: Improve logging when TBF being allocated or no TBF avail
374 * Remove uneeded ms param from alloc_algorithm_func_t func
375 * bts: Add new stats to detect TBF allocation failure reasons
376 * llc: use memset to fill llc dummy frame padding
377 * tbd_dl: Don't re-initialize class field twice
378 * tbf: log keep_open condition status
379 * tbf_dl: Fix m_last_dl_drained_fn not set under some conditions
380 * tbf_dl: fix FBI not set upon X2031 = 0
381 * ms: clarify delayed MS release process related code and logging
382 * gprs_ms: Use standarized logging on more messages
383 * sched: sched_select_ctrl_msg(): Clean up param list and improve logging
384 * sched: sched_select_downlink(): Clean up param list and improve logging
385 * TODO-RELEASE: document requirement of master libosmocore
386 * tbf: Log N310* counter increments
387 * pdch: Silently ignore DATA.ind with len=0
388 * direct_phy: Support submitting DATA.ind with len=0 to upper layers
389 * pcu_utils.h: Fix trailing whitespace
390 * Track TDMA clock with DATA.ind instead of TIME.ind
391 * Introduce init() APIs for PDCH and TRX objects
392 * tests: rlcmac: Fix C vs C++ linkage of extern symbol
393 * pdch.h: Drop uneeded include bts.h
394 * Improve DATA.ind logging
395 * Improve logging in DATA.req and ACT.req
396 * tbf: Fix wrong variable printed in log
397 * pdch: Log FN when decoding UL Ctrl block
398 * Add new PDCH UL Controller, drop SBAllocator class
399 * Replace PollController with newly added PDCH UL Controller
400 * sched: Use new PDCH UL Controller
401 * bts: Detect FN jumps
402 * cosmetic: tests/Makefile.am: Split content into several lines
403 * tests: Introduce unit tests for PDCH UL Controller
404 * tests: ulc: Show current bug with FN wrap around
405 * ulc: Fix FN store order upon wrap around
406 * sysmo: fix wrong FN jumps in rx RA.ind
407 * direct_phy: Fix condition dropping rx DATA.ind payload in in
408 * Fix: left shift cannot be repesented in type int
409 * sched: Fix scheduling UL TBF not matching conditions
410 * sched: Simplify usf selection code
411 * Set matching USF if available when polling a UL TBF
412 * pdch: Add mising pdch_ulc_release_node in Rx Cell Change Notif
413 * pdch_ulc: Create helper API pdch_ulc_release_node
414 * Track scheduled UL blocks through USF
415 * Properly implement N3101
416 * sba: Document AGCH_START_OFFSET after some experimental tests
417 * pdch_ulc: Optimize rbtree FN search
418 * Pick unreserved UL FN when allocating an SBA
419 * pdch_ulc: Support picking RRBP other than N+13
420 * Drop unused function tbf_check()
421 * pdch_ulc: Store TBF poll reason
422 * tbf: Get rid of unneeded poll_scheduled()
423 * tbf: Allow multiple concurrent polls
424 * Remove unneeded poll_state check
425 * tbf: get rid of poll_state completely
426 * Get rid of param 'poll' with constant value
427 * tbf: Get rid of attribute poll_fn
428 * tbf: Get rid of attribute poll_ts
429 * RIM: Improve logging
430 * sba: Drop unused function find_sba_rts
431 * pdch: rcv_resource_request: Improve robustness
432 * pdch: tbf_by_tfi(): Allow returning TBFs in state RELEASING
433 * Stop abusing T3169
434 * Make use of T3142 received from BTS
435 * Use negative numbers for non-spec osmo-specific timers
436 * ul_tbf: Clean up handle_tbf_reject()
437 * Make WaitIndication T3172 configurable
438 * sched: Simplify else-if condition
439 * Clarify, document Assignment related timers
440 * doc/tbf.txt: Update and improve some information
441 * bts: constify arg in func bts_ms_store()
442 * sched: Rename func to describe its used only for RLCMAC CTRL blocks
443 * rim: Constify param in func
444 * Simplify helper function tbf_select_slot_set()
445 * alloc_algorithm_b: Rearrange variable initialization
446 * Rename function s/tbf_alloc_ul/tbf_alloc_ul_pacch/
447 * Split ul_tbf alloc on CCCH into new function
448 * Implement T3141
449 * tbf_ul: Use is_tlli_valid() API
450 * Tx ul ack/nack: Avoid sending invalid/unknown TLLI
451 * encoding: Use gsm48_ta_is_valid() API
452 * encoding: Encode TA in UL ACK/NACK if available
453 * sched: Clean up helper function and improve logging
454 * Drop existing tbf->ms() check condition
455 * ul_tbf: Simplify function rcv_data_block_acknowledged
456 * ul_tbf: Fix accessing zeroed block when checking if transfer is complete
457 * sched: Clean up param passing and improve logging
458 * pdch: Use llist_first_entry() API
459 * RIM: Refactor Rx path to decode stack in proper order
460 * Clean false positive in newer GCC version checking guard of else clause
461 * Use LOGPDCH macro in bts_add_paging()
462 * Optimize PAGING-CS PDCH set selection when target MS is known
463 * bts: Use ms_store when calculating set of target PDCHs for Pkt Paging Request
464 * tbf: Log error path in setup() failing to assign control TS
465 * Move TBF list from BTS to the TRX structure
466 * MsTest: Set up tbf talloc destructor
467 * tbf: Move existing tbf_state implementation to osmo_fsm
468 * cosmetic: Fix typo s/TIMSI/TMSI/
469 * gsm_rlcmac.c: Fix arg list of 2 callbacks
470 * csn1: Implement CSN_CALLBACK type in encoder
471 * bts: Fix typo in field name
472 * Use new stat item/ctr getter APIs
473 * pdch: Log pdch_ulc reason upon rx of pkt ctrl ack
474 * pcuif: Support receiving System Information 2
475 * pdch: Fix null MS access gprs_rlcmac_pdch::rcv_control_ack
476 * pcuif_proto.h: Add new container message
477 * Support proto IPAC_PROTO_EXT_PCU BSC<->PCU
478 * pdch: Fix heap-use-after-free in pdch->ulc
479 * Make gcc 11.1.0 false positivies happy
480 * tbf: Drop impossible paths in create_dl_ass()
481 * tests/tbf: Fix null pointer access if slowly stepping with gdb
482 * Revert "coverity: fix null deref from recent UL TBF leak fix"
483 * Revert "fix: handle NULL return of as_dl_tbf() and as_ul_tbf()"
484 * Revert "Revert "Stop abusing T3169""
485 * Move NULL and ASSIGN tbf_state transition to tbf_fsm
486 * Move FLOW tbf_state transition to tbf_fsm.
487 * tests: tbf: Fix dl_tbf polled for data without being in FLOW state
488 * Move FINISHED tbf_state transition to tbf_fsm
489 * Move WAIT_RELEASE tbf_state transition to tbf_fsm
490 * Move RELEASING tbf_state transition to tbf_fsm
491 * Move T3169 and T3195 to tbf_fsm
492 * Drop duplicate log line
493 * Put dl_tbf::cleanup into destructor
494 * Drop logging last mas report before freeing TBF
495 * Remove duplicate call to gprs_rlcmac_lost_rep
496 * Move rate_ctr free to tbf subclass destructor
497 * Get rid of tbf_dl:abort()
498 * tbf_free: Get rid of uneeded tbf_state transition
499 * Replace ul_ass_state with osmocom FSM
500 * tbf: Reimplement rlcmac_diag() and make it available from C
501 * tbf: Drop unuseful flag GPRS_RLCMAC_FLAG_TO_UL_ASS
502 * replace dl_ass_state with osmocom FSM
503 * tbf: Drop unuseful flag GPRS_RLCMAC_FLAG_TO_DL_ASS
504 * tbf: Drop unuseful flag GPRS_RLCMAC_FLAG_UL_DATA
505 * Move timer X2001 to tbf_fsm
506 * Get rid of lots of code only used by tests
507 * tbf: Merge handle_ack_nack() into rcvd_dl_ack()
508 * Fix typos in comments documenting fsm st chg macro
509 * tbf: Use type bool for upgrade_to_multislot
510 * Move timer X2002 to tbf_fsm
511 * tbf_dl: Clarify requirements for DL ACK/NACK
512 * tbf.h: Improve documentation on several flags
513 * Move tbf ul_ack_state to osmocom FSM
514 * Simplify tbf::set_polling()
515 * tbf: Move T3193 to tbf_state FSM
516 * fix typo 's/dowlink/downlink/g'
517 * cosmetic: Fix typo in comment
518 * sched: energy saving: Avoid Tx dummy blocks on empty PDCH TS
519 * Fix crash with dyn TS when using direct pcu
520 * Use LOGPDCH macro to standarize log line
521 * cosmetic: sysmo: Drop unneded comment line
522 * bts: Use public getter instead of class member
523 * sched: Lower log level of RTS on disabled pdch
524 * pdch: Make sure pending ImmAssRej scheduled for disabled pdch are dropped
525 * Support Neighbor Address Resolution over PCUIF IPA multiplex
526 * nacc_fsm: Move logic checking if SI is being waited for to a func helper
527 * scheduler: Skip Tx DL idle blocks in TRX0 when not in DIRECT_PHY mode
528 * PTCCH: skip Tx DL idle blocks when possible
529 * tbf_ul_ass_fsm.c: Fix missing state transition in FSM description
530 * tbf: poll_timeout(): Validate expected poll reason
531 * nacc: Introduce helper function nacc_fsm_exp_ctrl_ack()
532 * tbf: refactor poll_timeout() with a switch statement
533 * tests: TbfTest: Fix wrong behavior in test_tbf_dl_reuse()
534 * pdch: refactor rcv_control_ack() with a switch statement
535 * cosmetic: Fix missing space
536 * assert if tbf pointer for POLL event is NULL
537 * tbf_fsm: Ignore event DL_ACKNACK_MISS in state RELEASING
538 * tests: RLCMACTest: Add one more sample RA capabilities to suite
539 * rlcmac: Fix CSN1 definition for DownlinkDualCarrierCapability_r7_t in MS RA cap
540 * tbf: Assert if FSM allocation fails
541 * sched: Rename function
542 * pdch: Only release ULC entry if rx ul block matches the expected one
543 * pdch: Validate poll reason matches in rcv_control_(egprs)_dl_ack_nack()
544 * pdch: PktResReq: Avoid releasing ULC entry if expecting something else on UL
545 * Handle Final UL ACK/NACK Confirmation in tbf_fsm
546 * tbf_fsm: rename state NULL -> NEW
547 * pdch_ulc: Log POLL reason upon timeout
548 * tbf_dl_ass_fsm: Move block msg generation conditions to rts() function
549 * tbf_ul_ass_fsm: Fix use of incorrect log macro
550 * tbf_fsm: Handle MAX_N3105 in state ASSIGN
551 * tbf: Use define to flag control_ts unset special value
552 * tbf: Document temporary change of control_ts and move code assigning it back to FSM
553 * Return void in tbf_assign_control_ts()
554 * pdch: rcv_data_block: Avoid releasing ULC entry if expecting something else on UL
555 * tbf: Avoid keeping poll nodes in pdch_ulc of temporary control_ts used during PACCH assignment
556 * tbf_ul_ass_fsm: Avoid retrying Pkt Ul Ass if tbf is not in state ASSIGN
557 * Abort scheduling of pending Pkt Ul Ass if tbf goes into RELEASE step
558 * tbf: Drop pending polls during free also on states != ASSIGN
559 * pdch: Simplify code path allocating UL TBF
560 * pdch: Log reason of expected POLL when receiving unexpected UL data
561 * bts_rcv_rach(): Gather pointers to data objects early and use them later
562 * bts_rcv_rach(): Split code paths for Ass and Ass Rej
563 * Get rid of tbf tsc field
564 * ts_alloc: Rename s/tbf_/tbf/
565 * tbf: Update FSM names when TFI change during tbf_update()
566 * tbf_fsm: Add assert verifying X2002 only triggers for DL TBF
567 * tbf: Assert if update() is called on UL TBF
568 * tbf: update(): return negative val on error
569 * tbf: Drop unneeded braces in one line condition
570 * cosmetic: Fix typo in comment
571 * pcuif: Submit data_req with len=0 as idle frames
572 * Split csn1.c into common, enc and dec files
573 * csn1: Add unit test showing RadioAccess Capability decoding failure
574 * csn1: Avoid failing if optional DownlinkDualCarrierCapability_r7 is missing
575 * csn1: Avoid storing existence bit as true if content was actually NULL
576 * csn1_dec.c: Fix stored bit in CSN_NEXT_EXIST_LH
577 * bts: Fix misleading log line in bts_rcv_rach()
578 * tbf_ul: Document context where tbf_alloc_ul_ccch() is used
579 * bts: Rename 11bit RACH request counter
580 * vty: Avoid crash in tbf_print_vty_info with null ptr ctrg
581 * vty: Log tbf_state when showing a TBF
582 * vty: show tbf: Drop unneeded check for non-null ms
583 * bts: Introduce new RACH req counters for one/two phase access
584 * bts: Improve logging to clarify RACH req is for 2 phase access
585 * bts: Count RACH Request with unexpected content
586 * tbf: Increase log level of line about unable to allocate poll for TBF
587 * pdch: Improve log line and increase log level
588 * tbf_ul: Set first_(common_)ts in handle_tbf_reject
589 * tbf: Set m_created_ts in constructor
590 * tbf: Mark initial first_(common_)ts with special value
591 * tbf: Set tfi to initial special value
592 * bts: Add counters for successful 1,2 phase pkt access
593 * tbf_ul: Update FSM names for dummy reject TBFs
594 * cosmetic: Add parenthesis around expression to clarify it
595 * pdch::rcv_resource_request(): Use local var to store bts pointer
596 * tbf_ul: Improve documentation of tbf_alloc_ul_pacch()
597 * Add counter for successful contention resolution procedures
598 * doc: Update counters_generated.adoc using osmo_vty_interact.py
599 * bts_pch_timer: Fix timer working only for MI type IMSI
600 * tests/alloc: Extend test_bts_pch_timer() to validate MI type TMSI
601 * bts_pch_timer: Avoid resend Paging Request over PCUIF if T3113 is armed
602 * pdch: Log line detaching TBF at start of the function
603 * pdch: Log TS enable/disable transitions
604 * pdch: Log DL TBF originating the new UL TBF
605 * ts_alloc: Simplify tfi_find_free logic
606 * ts_alloc: rename function to clraify what it does
607 * ts_alloc: rename variable to clarify meaning
608 * pdch: Update ms_reserved_slots in GprsMS when TS becomes disabled
609 * pdch: Drop previous UL TBF from MS who sent PktResReq through SBA
610 * pdch: Increase log level of line informing about TS control change
611 * tbf_ul_ass_fsm: Log both TBFs if old TBF is handling assignment for new one
612 * cosmetic: gprs_pcu.h: Fix typo in comment
613 * tbf_dl_ass_fsm: Log both TBFs if old TBF is handling assignment for new one
614 * tbf_dl_ass_fsm: Fix missing transition to NONE if DL TBF is nonexistent
615 * tbf_{dl,ul}_ass_fsm.c: use proper macro to log tbf
616 * pcu_main: Mark -r cmdline param as deprecated
617 * vty: Introduce command 'gsmtap-remote-host' and 'gsmtap-category enable-all'
618 * Fix MS ending up with assigned imsi 000
619 * bts: Add counter availablePDCHAllocatedTime
620 * tbf_dl_ass_fsm: Drop unsued X2000 timer callback
621 * T_defs_pcu: Set default val for X2000 to 0 ms
622 * Move T3172 T_defs_bts->T_defs_pcu to have it configurable in VTY
623
624 [ Alexander Couzens ]
625 * gprs_bssgp_pcu: rework BSSGP Reset messages to support SGSN originated BSSGP-RESET
626 * gprs_bssgp_pcu: ensure only known BVCI can be resetted by the SGSN
627 * gprs_bssgp_pcu: add comments to the pcu states
628
629 [ Harald Welte ]
630 * pdch_ul_controller: Fix compiler warning on gcc-10.2
631 * manual: remove revhistory, as we don't maintain it manually anyyway
632 * manual: Update copyright years
633 * vty: Add configuration for Gb DSCP and socket priority
634 * manual: Include QoS chapter and add osmo-pcu specific example
635
636 [ Vadim Yanitskiy ]
637 * gprs_rlcmac_sched: fix incorrect length for CTR_RLC_DL_BYTES
638 * PCUIF protocol: add message definition for interference report
639 * pcu_l1_if: ignore PDCH interference reports, do not log errors
640
641 [ Oliver Smith ]
642 * test: add 'make update_exp' target
643 * Add counters: pcu.sgsn.N.rx_paging_{cs,ps}
644 * Add counters: pcu.bts.N.pch.requests
645 * Add counters: pcu.bts.N.pch.requests.timeout
646 * bts: delete pch_timer list in destructor
647 * tests: make update_exp: build check_PROGRAMS first
648 * debian/control: remove dh-systemd build-depend
649 * Add stats: pcu.bts.N.pdch.available/occupied
650 * Add stats: pcu.bts.N.pdch.occupied.gprs/egprs
651 * pdch: has_gprs_only_tb_attached: use m_num_tbfs
652
653 [ Neels Hofmeyr ]
654 * T_defs_bts: remove unit from doc strings
655 * Revert "Stop abusing T3169"
656 * fix: handle NULL return of as_dl_tbf() and as_ul_tbf()
657 * coverity: fix null deref from recent UL TBF leak fix
658
659 [ Daniel Willmann ]
660 * gprs_bssgp_pcu: Fix crash when configuring an existing ns bind
661
662 -- Pau Espin Pedrol <pespin@sysmocom.de> Tue, 16 Nov 2021 16:47:29 +0100
663
Pau Espin Pedrol50aa4922021-02-23 14:41:01 +0100664osmo-pcu (0.9.0) unstable; urgency=medium
665
666 [ Pau Espin Pedrol ]
667 * Pass paging group instead of imsi where later is not needed
668 * Allow Gb PAGING-PS without P-TMSI
669 * Support Gb PAGING-CS
670 * Support PAGING-CS and PAGING-PS on on PTP-BVCI
671 * tests/rlcmac: print test name at the start
672 * tests/rlcmac: Memzero decoded struct
673 * tests/rlcmac: Fix missing commas with unexpected results
674 * tests/rlcmac: Use osmo_hexdump to print buffers
675 * tests/rlcmac: Don't check stderr output
676 * tests/rlcmac: Add test to showcase that decode_gsm_ra_cap() fails
677 * csn1: Extend CSN_SERIALIZE to allow 0 bit of length
678 * csn1: Allow CHOICE elements to re-process the bits used for the choice
679 * csn1: Fix pedantic compiler warnings in csn.1 dissectors
680 * csn1: Drop format_p union from CSN_DESCR
681 * gsm_rlcmac.cpp: Fix trailing whitespace
682 * cosmetic: csn1.cpp: Fix whitespace
683 * csn1.cpp: Rework ProcessError() function to print errors
684 * rlcmac: Return error code from csn1 encoder/decoder
685 * Check return code of rlcmac decode/encode functions
686 * rlcmac: Transform a few LOGPC messages to LOGP
687 * Fix trailing newline mess with LOGP(C) in rlcmac/csn1
688 * llc_queue::{dequeue,enqueue}() refactor
689 * gsm_rlcmac: fix Packet_Resource_Request_t: s/Slot/I_LEVEL_TN/
690 * tests/llc: Change unrealistic time jump to avoid runtime error under ARM
691 * Use clock_gettime(CLOCK_MONOTONIC) and timespec everywhere
692 * Use downlink BSSGP RA Cap IE
693 * tests/RLCMACTest: free allocated bitvectors
694 * tests/RLCMACTest: Several fixes and improvements to RAcap tests
695 * rlcmac: Don't pass array element to CSN1 descriptors
696 * csn1: Validate recursive array max size during decoding
697 * rlcmac: Fix bug receiving RA cap
698 * rlcmac: Log names of de/encoded rlcmac packet types
699 * rlcmac: Introduce MS Radio Access Capabilities 2 to fix related spare bits
700 * cosmetic: rlcmac: Fix comment typo and whitespace introduced recently
701 * rlcmac: Rename field to MS RA Cap2 in Additional_MS_Rad_Access_Cap_t
702 * pcu_l1_if.cpp: Add missing header ctype.h
703 * gsm_rlcmac: Use 'struct bitvec' instead of 'bitvec'
704 * cosmetic: Do not indent header includes inside extern C block
705 * gsm_rlcmac.cpp: Avoid declaring variable in for loop
706 * csn1.h: Fix trailing whitespace
707 * tbf.cpp: Include c++ <new> header required for new operator's replacement type
708 * gsm_rlcmac: Disable unused CSN1 descriptors
709 * Move gsm_rlcmac.cpp -> .c
710 * rlcmac: support decode FDD_CELL_INFORMATION of "UTRAN FDD Description
711 * rlcmac: add dissection of 2G->3G/4G PS handover
712 * csn1: Fix Several typos & whitespace
713 * csn1: verify enough bits present to decode whole CSN_UINT_ARRAY
714 * csn1: Properly verify CSN_BITMAP length
715 * csn1: Remove code block from CSN_NEXT_EXIST_LH
716 * pcu_l1_if: Don't use GSMTAP_CHANNEL_PACCH when sending unknown gsmtap blocks
717 * pdch: Avoid sending GSMTAP_CHANNEL_UNKOWN for rejected UL EGPRS data block
718 * tbf: Avoid crash: don't set TBF window size if setup failed
719 * bts: Rename mslot_class_from_ra
720 * bts: Fix Decoding EGPRS MultislotClass from 11-bit EGPRS PACKET CHANNEL REQUEST
721 * bts: Return uint8_t in egprs_mslot_class_from_ra()
722 * Use OSMO_FD_* instead of deprecated BSC_FD_*
723 * Expect ms object to exist before calling tbf_alloc_ul_tbf()
724 * Expect ms object to exist before calling tbf_alloc_dl_tbf()
725 * pdch: rcv_resource_request(): Clarify tbf_free only needed if MS used to exist beforehand
726 * Drop unneeded arg 'ta' in tbf_alloc_ul()
727 * bts: Drop specific functions to increase counters
728 * bts: Drop specific functions to add values to counters
729 * bts: Drop specific functions to add values to stats
730 * pcu: tbf_ul: Clean up maybe_schedule_uplink_acknack()
731 * sysmo: femtobts.h: Avoid redefining global variables
732 * rlc: Drop unused function gprs_rlc_data::put_data
733 * rlc: Move prepare() function out of gprs_rlc_data struct
734 * tbf_ul: Fix UL ACK not sent to MS if intermediate UL block is lost
735 * Get rid of class GprsCodingScheme
736 * gsmtap: Set signal level and SNR fields
737 * gprs_ms: Small clean ups in IMSI storage related code
738 * gprs_ms: Transfer known EGPRS MS class when mergling old MS
739 * tbf: Drop unneeded method set_tlli_from_ul
740 * pdch.cpp: Fix logging line format in rcv_block wrong length
741 * Set correct GSMTAP channel type for PDTCH messages returning error
742 * decoding.cpp: Improve logging in malformed UL data parsing
743 * tbf_dl: uint8_t is enough to store a TA value
744 * encoding: Encode TA as unsigned and check validty against GSM48_TA_INVALID
745 * encoding.cpp: Fix missing spacing in function param
746 * pdch.cpp: Avoid dropping existing DL TBF during rcv_resource_request
747 * pdch.cpp: Avoid resetting (egprs_)ms_class to unknown if not found in MS RadioAccCap
748 * pdch.cpp: Fix wrong annoying log line about non-scheduled ResourceReq received
749 * pdch.cpp: Store TLLI promptly on newly created TLLI in rcv_resource_request
750 * Fix typo in log message
751 * pdch: Drop unneeded notice log message in rcv pkt meas report
752 * Introduce log macro helper LOGPMS
753 * configure.ac: Fix trailing whitespace
754 * doc: Update VTY reference xml file
755 * Support setting rt-prio and cpu-affinity mask through VTY
756 * pdch: rcv pkt meas rep: Allocate MS object early in path and use it
757 * Fix recent typo preventing MS from registering
758 * gitignore: Add __pychache__ dir
759 * tbf: Don't log rlcmac_diag() output in separate lines
760 * gprs_ms_storage.h: Set pointer to NULL instead of 0
761 * Free all MS TBFs when receiving GPRS Suspension Request
762 * cosmetic: fix indentation alignment
763 * vty: Add 'show bts pdch' command
764 * cosmetic: Fix indentation of for loops
765 * cosmetic: Fix typo in comment
766 * Fix crash accessing NULL tbf->pdch[first_ts]
767 * contrib/jenkins: Enable parallel make in make distcheck
768 * Improve debug logging for alloc algos
769 * Fix several calls to LOGPAL
770 * Move gprs_rlcmac_ul_tbf::window to correct file
771 * Move constructor gprs_rlcmac_dl_tbf::BandWidth to correct file
772 * tbf: Make window() available to tbf base class
773 * tbf: Implement enable_egprs() once
774 * tbf: Set MS during constructor time
775 * Move ul_tbf allocation code to correct file
776 * Move dl_tbf allocation code to correct file
777 * tbf: Drop unused function disable_egprs()
778 * tests: ms: Pass correct pointer in constructor instead of NULL
779 * tbf: Clean up gprs_rlcmac_dl_tbf::handle()
780 * alloc_algo_b: Select TRX with least assigned TFIs during TBF alloc
781 * bts: define egprs_enabled as bool
782 * cosmetic: Fix ws between if keyword and parenthesis
783 * tbf_dl: Update (egprs_)ms_class for already known MS
784 * cosmetic: tests: pcu_emu: fix trailing whitespace
785 * gprs_ms: Use proper function to get CS
786 * Move BTS initial values inside bts.cpp
787 * pcuif: Improve BTS-supported CS/MCS handling
788 * Move EGPRS MS mode set to gprs_ms.cpp
789 * Take into account BTS supported (M)CS values when retrieving the maximum
790 * Enable egprs support through PCUIF from BTS/BSC
791 * pdch: Process received CS1-4 data blocks regardless of egprs_enabled
792 * tbf_dl: Don't fake EGPRS MS class when no related info is available
793 * tbf_ul: Allow non-egprs phones if EGPRS is enabled
794 * Get rid of bts->egprs_enabled
795 * Fix configuration of initial_(m)cs
796 * Fix mcs_is_valid(): UNKNOWN value is not a valid (M)CS
797 * gprs_ms: Avoid enabling EGPRS if no MCS are supported
798 * tbf_ul: Log mismatching TLLI on log message
799 * Fix ctr reports: Remove ctr description from already removed counter
800 * encoding: Fix duplicate word in log str
801 * sched: Fix sending GSMTAP DL data blocks with unset USF
802 * sched: Use correct GMSTAP category for EGPRS DL data blocks
803 * Support multiplexing of GPRS and EGPRS TBFs in one PDCH
804 * pdch: packet_paging_request: Put back non-fitting paging entry where where it was
805 * pdch: Log hexdump of decde failure for dl rlcmac block
806 * csn1: Fix readIndex pointer change in CSN_VARIABLE_ARRAY
807 * csn1: Log CSN_VARIABLE_ARRAY values as hex
808 * main: generate coredump and exit upon SIGABRT received
809 * tbf: Log previous TS when changing Control TS
810 * Implement downgrade to DL MCS1-4 when USF for GPRS_only MS
811 * Dl TBF: Get rid of LLC UI dummy blocks following other data
812 * rlcmac: Fix typo in MT_PACKET_CELL_CHANGE_NOTIFICATION value_string
813 * gprs_rlcmac_sched: Use helper structure to store several tbf pointer params
814 * sched: Convert code handling next_list array to be size independant
815 * Convert GprsMS and helpers classes to C
816 * tbf: Fix wrong verb used in log message
817 * .gitignore: ignore files ending with ~
818 * doc: Improve CS/MCS GPRS/EGPRS considerations in User Manual
819 * tbf: remove 'software error' logs from tbf_free
820 * ms: Replace struct var with rate_ctr
821 * AllocTest: Avoid queuing tons of to-be-freed ms
822 * gprs_ms: Mark ms_ctrg_desc static
823 * Workaround ASan false positive runtime errors under some platforms
824 * Split PCU global PCU object from BTS object
825 * Move T_defs_pcu from BTS to PCU object
826 * Move force_two_phase field from BTS to PCU
827 * Move alpha,gamma fields from BTS to PCU
828 * Move dl_tbf_preemptive_retransmission field from BTS to PCU
829 * Move dl_arq_type field from BTS to PCU
830 * Move cs_adj* fields from BTS to PCU
831 * Move cs_downgrade_threshold field from BTS to PCU
832 * Move (m)cs_lqual_ranges fields from BTS to PCU
833 * Move ns_dialect field from BTS to PCU
834 * Move fc_* fields from BTS to PCU
835 * tests/tbf: Allocate PCU per test instead of globally
836 * Move ws_* fields from BTS to PCU
837 * Move llc_* fields from BTS to PCU
838 * Fix configuration mess of initial_cs/mcs between PCUIF and VTY
839 * Unify BTS into a C usable structure
840 * Get rid of bts singletons
841 * Rename 'bts_data' leftovers to 'bts'
842 * bts: combine bts_{init,cleanup} into consturctor/destructor methods
843 * Get rid of unused gsm_timer.{cpp,h}
844 * Convert gprs_bssgp_pcu.cpp to C
845 * Move tbf::free_all static methods to proper object files
846 * Convert osmo_bts_sock.cpp to C
847 * Allow multiple bts objects in PCU
848 * bts: Store RAC+CI from info_ind
849 * Get rid of singleton gprs_bssgp_pcu_current_bctx()
850 * Initial handling support for RIM messages
851 * gprs_pcu: Use libosmocore osmo_cgi_ps_cmp API
852 * ms: Drop always-false check
853 * sched: Check if egprs is enabled in TBF rather than MS being egprs capable
854 * tbf: Drop always-true condition checking for MS
855 * encoding: fix typos in comment
856 * ms: Set proper initial MCS values setting mode EGPRS_GMSK
857 * ms: Properly handle EGPRS_GMSK mode in ms_max_cs_dl/ul()
858 * Fix Dl EGPRS data blocks being generated occasionally on GPRS TBFs
859 * sched: Avoid picking TBF with nacked dl blocks when GMSK is required
860 * tbf: Make tbf_ms() param const
861 * Introduce NACC support
862 * NACC: Fix crash freeing struct if CTRL conn was refused during alloc
863 * NACC: delay CTRL conn socket init until it's needed
864 * NACC: allow setting keep time for entries in neigh and si cache
865 * NACC: Configure neighbor and SI resolution timeout values
866 * NACC: Send only Pkt Cell Chg Continue if SI retrieve fails
867 * doc: Mark PCU node red in network node diagram
868 * doc: Introduce section documenting NACC support
869 * nacc: Improve log line failing to establish CTRL neigh conn
870 * Update TS 04.60 references to new TS 44.060
871 * Drop comment about an already implemented TODO
872 * Move src/tbf.txt to doc/
873 * encoding: Fix comment description of S/P field
874 * tbf: Reuse stored result in variable in check_polling()
875 * tbf: Constify some methods
876 * nacc: Fix typo in function name
877 * nacc: Implement Pkt Cell Change Continue retransmission
878 * nacc: Avoid RIM procedures targeting cells under same PCU
879 * rlc.h: Fix struct bit fields on big endian systems
880 * cosmetic: fix typo in comment
881 * nacc_fsm: Move code filling struct to helper function
882 * nacc_fsm: Remove NACC_EV_RX_SI from in_event_mask of some states
883 * nacc_fsm: Support receiving Pkt Cell Change Notify in state WAIT_RESOLVE_RAC_CI
884 * nacc_fsm: nacc_fsm: Support receiving Pkt Cell Change Notify in state WAIT_REQUEST_SI
885 * nacc_fsm: Support receiving Pkt Cell Chg Notif while in some advanced states
886 * nacc_fsm: Improve log when sending RIM RAN-INFO to gather SI from remote cell
887 * vty: Write 'neighbor resolution' config to file
888 * cosmetic: fix line indentation
889 * sched: Avoid selecting TBF to tx NACC Dl msg if no TFI is assigned
890 * tests: Explicitly drop category from log
891 * tests: Replace deprecated API log_set_print_filename
892 * Use NULL as default value for pointer type
893 * find_multi_slots: Avoid calling mslot_class_get_tx() on each iteration
894 * find_multi_slots: Avoid multiple calls to mslot_class_get_rx()
895 * find_multi_slots: Mark mslot_class properties const
896 * find_multi_slots: Avoid multiple calls to mslot_class_get_type()
897 * Use ALPHA value received in SI13 from PCUIF
898
899 [ Vadim Yanitskiy ]
900 * pcu_l1_if.cpp: fix NULL-pointer dereference in imsi2paging_group()
901 * gsm_timer: fix comparison of constant LONG_MAX with an integer
902 * encoding: fix log_alert_exit(): do not treat error as format string
903 * tests/alloc: fix implicit conversion from 'double' to 'int8_t'
904 * gprs_bssgp_pcu: fix invalid use of non-static data member 'frame'
905 * gprs_bssgp_pcu: fixup: fix length check in gprs_bssgp_pcu_rx_dl_ud()
906 * csn1: fix csnStreamDecoder(): avoid conditional calls to bitvec_read_field()
907 * VTY: get rid of pcu_vty_go_parent() / pcu_vty_is_config_node()
908 * VTY: install talloc context introspection commands
909 * pcu_sock: fix memleak, allocate pcu_sock_state on stack
910 * pcu_sock: cosmetic: fix typo in a comment message
911 * tbf: cosmetic: fix spacing in gprs_rlcmac_tbf::create_ul_ass()
912 * tbf: fix NULL pointer dereference in create_[ul|dl]_ass()
913 * encoding: assert return value of bitvec_set_u64()
914 * csn1: fix some mistaken CSN.1 error names
915 * csn1: fix csnStreamDecoder(): catch unknown CSN_CHOICE values
916 * tests/rlcmac: mark Packet Polling Request as malformed
917 * csn1: fix existNextElement(): use bitvec_get_bit_pos()
918 * tests/rlcmac: additionally match debug output of the CSN.1 codec
919 * csn1: get rid of C++ specific code, compile with GCC
920 * csn1: fix csnStreamDecoder(): do not subtract no_of_bits twice
921 * csn1: fix csnStreamDecoder(): always keep remaining_bits_len updated
922 * csn1: fix csnStreamDecoder(): update bit_offset in CSN_EXIST{_LH}
923 * csn1: bitvec_get_uint() may return a negative, use %d
924 * csn1: use proper format specifier for unsigned integers
925 * gsm_rlcmac: fix misleading LOGP statement in decode_gsm_ra_cap()
926 * tests/rlcmac: fix malformed MS RA capability in testRAcap()
927 * tests/rlcmac: also verify encoding of MS RA Capability
928 * tests/rlcmac: add a new test vector for Packet Resource Request
929 * csn1: fix csnStreamDecoder(): skip bits unhandled by serialize()
930 * tests/rlcmac: also enable logging for DRLCMACDATA category
931 * rlcmac: fix encode_gsm_*(): do not suppress encoding errors
932 * csn1: fix: do not return 0 if no bits left in the buffer
933 * BSSGP: cosmetic use OSMO_IMSI_BUF_SIZE from libosmocore
934 * BSSGP: fix: properly encode P-TMSI in RR Paging Request
935 * pdch: fix packet_paging_request(): properly print paging MI
936 * pdch: cosmetic: use GSM_MI_TYPE_* constants from libosmocore
937 * fix: properly include pure C headers from C++ code
938 * l1if: fix pcu_rx_rach_ind(): use proper format string specifiers
939 * sba: fix possible memleak in SBAController::alloc()
940 * TBF/UL: fix rcv_data_block_acknowledged(): print the actual TLLI
941 * fix egprs_mslot_class_from_ra(): multislot class may not be present
942 * l1if: fix: s/pcu_rx_rach_ind_pdtch/pcu_rx_rach_ind_ptcch/g
943 * csn1: fix M_CHOICE: restirct maximum length of the choice list
944 * csn1: fix csnStreamEncoder(): also check length of the choice list
945 * csn1: fix csnStreamEncoder(): always check the choice index
946 * csn1: fix: never use enumerated types in codec structures
947 * encoding: cosmetic: use RLC_MODE_ACKNOWLEDGED where possible
948 * RLC/MAC: implement decoding of EGPRS Packet Channel Request
949 * encoding: fix write_ia_rest_egprs_uplink_sba(): add missing CHECK(rc)
950 * doc/manuals: fix typo in overview.adoc: s/Omsocom/Osmocom/g
951 * bts: refactor handling and parsing of RACH.ind
952 * BTS::parse_rach_ind(): properly handle EGPRS Packet Channel Request
953 * bts: add send_gsmtap_rach(), also send PTCCH/U over GSMTAP
954 * bts: fix send_gsmtap_rach(): properly pack 11 bit RA
955 * bts: cosmetic: use DUMMY_VEC for padding where possible
956 * encoding: drop log_alert_exit(), use OSMO_ASSERT() instead
957 * encoding: assert() presence of Downlink TBF
958 * direct-phy: fix handle_ph_ra_ind(): handle PH-RA.ind on PRACH SAPI
959 * debian/control: change maintainer to the Osmocom team / mailing list
960 * pcu_l1_if: use proper format specifier for PCUIF version
961 * pcu_l1_if: constify the argument of pcu_rx_info_ind()
962 * pcu_l1_if: cosmetic: rename both 'trx'/'ts' to 'trx_nr'/'ts_nr'
963 * pcu_l1_if: cosmetic: move struct 'gprs_rlcmac_pdch' into the for loop
964 * pcu_l1_if: cosmetic: correct error message in pcu_rx_info_ind()
965 * gsm_rlcmac: use consistent naming for [Extended] Packet Timing Advance
966 * tbf: cosmetic: use GSM_MACBLOCK_LEN where possible
967 * tbf: allocate the bitvec on stack in create_{dl,ul}_ass()
968 * encoding: constify 'tbf' in UL/DL assignment functions
969 * encoding: do not encode out of range Timing Advance values
970 * encoding: fix RRBP field in write_packet_uplink_assignment()
971 * encoding: use bool for use_egprs in write_packet_uplink_assignment()
972 * encoding: pass pdch slot directly to encoding functions
973 * encoding: clarify docstring for write_packet_downlink_assignment()
974 * encoding: use CSN.1 codec to generate Packet Uplink Assignment
975 * encoding: implement handing of hopping parameters
976 * encoding: fix gen_freq_params(): do not check pdch twice
977 * pcuif_proto: version 10: add frequency hopping parameters
978 * pcu_l1_if: cosmetic: use ARRAY_SIZE() in pcu_rx_info_ind()
979 * pcu_l1_if: correct logging level in pcu_rx_info_ind()
980 * pcu_l1_if: cosmetic: make {local,remote}_sockaddr scoped variables
981 * pcu_l1_if: use proper format string specifiers: %d -> %u
982 * pcu_l1_if: print NSVC address in more common format
983 * gprs_bssgp_pcu: make osmo_sockaddr local/sgsn arguments const
984 * gprs_bssgp_pcu: fix possible memleak in gprs_nsvc_create_and_connect()
985 * struct gprs_rlcmac_bts: remove unused 'nsei' field
986 * gprs_bssgp_pcu: fix: do not crash on receipt of subsequent INFO.ind
987 * doc/manuals: (re-)generate XML VTY reference automatically
988 * fix tbf_select_slot_set(): use LOGP() instead of LOGPC()
989 * main: remove line breaks in print_help(), increase spacing
990 * main: add --vty-ref-mode, use vty_dump_xml_ref_mode()
991 * BSSGP: use tlvp_val8() in gprs_bssgp_pcu_rx_paging_cs()
992 * BSSGP: constify argument 'tp' of gprs_bssgp_pcu_rx_paging_{cs,ps}
993 * TLLI 0x00000000 is a valid TLLI, use 0xffffffff instead
994 * gprs_rlcmac_sched: fix incorrect SBA frame number assignment
995 * bts: fix uninitialized memaccess in BTS::send_gsmtap_rach()
996 * bts: fix uninitialized memaccess in BTS::send_gsmtap()
997 * tests/rlcmac: add more test vectors for Packet Resource Request
998 * contrib/osmo-pcu.spec.in: require libosmo* version 1.4.0
999 * contrib/osmo-pcu.spec.in: add missing libosmoctrl dependency
1000 * vty: register libosmocore's FSM introspection commands
1001
1002 [ Anders Broman ]
1003 * csn1: Update M_NULL CSN_DESCR to match wireshark
1004 * csn1: packet-csn1.c:179: warning: 'pui8' may be used uninitialized in this function
1005 * csn1: Fix warning with -Wmissing-prototypes
1006 * csn1: Try to fix cast discards '__attribute__((const))' qualifier from pointer target type
1007 * gsm_rlcmac.cpp: hanged all M_BIT macros to M_UINT, as M_BIT does not use the referenced hf.
1008
1009 [ Jeff Morriss ]
1010 * csn1: shuffle decrements of remaining_bits_len
1011
1012 [ Pascal Quantin ]
1013 * csn1: Fix an infinite loop in CSN.1 dissector when having more than 255 padding bits
1014 * gsm_rlcmac.h: Remove Uplink messages from the RlcMacDownlink_t structure
1015 * gsm_rlcmac: Enhance dissection of PSI1
1016 * gsm_rlcmac.cpp: Do not skip too many lines of the CSN_DESCR when the field is missing
1017 * gsm_rlcmac.cpp: fix an out of bounds access
1018 * gsm_rlcmac.cpp: fix another global-buffer-overflow error reported by ASAN
1019 * gsm_rlcmac.cpp: fix global-buffer-overflow error reported by ASAN
1020
1021 [ Guy Harris ]
1022 * csn1: Don't cast away constness
1023
1024 [ Alexis La Goutte ]
1025 * csn1: fix this statement may fall through [-Werror=implicit-fallthrough=] found by gcc7
1026
1027 [ Bill Meier ]
1028 * gsm_rlcmac.h: #if 0 unused stuff
1029
1030 [ Gerald Combs ]
1031 * gsm_rlcmac.h: Make sure we have a corresponding 'u' member to RlcMacDownlink_t for every call
1032
1033 [ Vincent Helfre ]
1034 * gsm_rlcmac: add dissection of NAS container
1035 * gsm_rlcmac: improve dissection of MS RA Capability IE
1036
1037 [ AndersBroman ]
1038 * gsm_rlcmac: Update : PACKET RESOURCE REQUEST to Release 14.0.0
1039
1040 [ Keith ]
1041 * Send UL-CTRL Packet to GSMTAP even if we fail to decode.
1042 * Don't check ul_control_block before decoding into it.
1043
1044 [ Harald Welte ]
1045 * csn1.c: Almost all of the logging is DEBUG, not NOTICE
1046 * TODO: remove those that have obviously been implemented 5+ years ago
1047 * bts.cpp: Increase constructor priority
1048 * Use osmo_fd_setup() whenever applicable
1049 * Use osmo_fd_*_{disable,enable}
1050 * gb manual: 08.16 -> 48.016 / 08.18 -> 48.018
1051 * gb manual: NS is implemented in libosmogb, not libosmocore
1052 * manuals/gb/ns.adoc: Update documentation regarding SNS capability
1053 * migrate to DLBSSGP as log sub-system for BSSGP
1054
1055 [ Eric ]
1056 * configure.ac: fix libtool issue with clang and sanitizer
1057 * tbf: add virtual destructor
1058
1059 [ Philipp Maier ]
1060 * gprs_debug: Use only LOGL_NOTICE as default loglevel
1061 * vty: add attributes to VTY commands indicating when they apply
1062 * pcu_main: add commandline option --vty-ref-xml
1063 * gprs_bssgp_rim: add serving BSS NACC application
1064
1065 [ Oliver Smith ]
1066 * contrib: import RPM spec
1067 * contrib: integrate RPM spec
1068 * Makefile.am: EXTRA_DIST: debian, contrib/*.spec.in
1069 * contrib/jenkins: don't build osmo-gsm-manuals
1070 * configure.ac: set -std=gnu11
1071
1072 [ Neels Hofmeyr ]
1073 * use new osmo_mobile_identity api (avoid deprecation)
1074 * paging: pass struct osmo_mobile_identity, not encoded IE bytes
1075
1076 [ Alexander Couzens ]
1077 * pcuif_proto: version 0xa: add support for IPv6 NSVCs
1078 * Revert "pcuif_proto: version 0xa: add support for IPv6 NSVCs"
1079 * pcuif_proto: version 10: add support for IPv6 NSVCs
1080 * Use the new NS2 lib
1081 * Rework NS configuration over the info indication
1082 * pcu_l1_if: fix misaligned assignment of remote address
1083 * NS2: follow the change of ownership
1084 * gprs_bssgp_pcu: follow ns2 library changes
1085 * NS2: rework handling of unknown primitive
1086 * ns2: follow ns2 dialect changes
1087 * ns2: follow changes to add a unique name to all binds
1088 * ns2: follow ns2 sns api changes
1089 * gprs_ns2: set default dialect to ipaccess
1090 * gprs_rlcmac_sched: don't leak a sched_dummy()
1091 * gprs_rlc_ts_alloc: ensure no rolling slots are allocated
1092 * follow gprs_ns2 API enum changes
1093 * gprs_ns2: migrate to the new vty syntax
1094 * gprs_bssgp: rework and rename ns_create_nsvc -> ns_configure_nse
1095 * gprs_bssgp: rename gprs_ns_config -> gprs_ns_update_config
1096 * gprs_bssgp: use gprs_ns2_sns_add_bind() to allow the NSE to use the binds for IP-SNS configuration
1097
1098 -- Pau Espin Pedrol <pespin@sysmocom.de> Tue, 23 Feb 2021 14:41:00 +0100
1099
Pau Espin Pedrolb507e422020-01-03 19:40:02 +01001100osmo-pcu (0.8.0) unstable; urgency=medium
1101
1102 [ Alexander Couzens ]
1103 * tests: test encoding of egprs ul ack/nacks
1104 * tbf_dl: add comments to the scheduler
1105 * encoding: fix space, tabs
1106
1107 [ Vadim Yanitskiy ]
1108 * osmobts_sock.cpp: pcu_sock_cb(): use libosmocore's socket API
1109 * osmobts_sock.cpp: pcu_sock_read(): use stack buffer, not heap
1110 * osmobts_sock.cpp: pcu_sock_read(): further simplify the code
1111 * osmobts_sock.cpp: do not print the same debug message twice
1112 * VTY: refactor pcu_vty_show_ms_all(): use show_ms()
1113 * VTY: fix command 'show tbf all': properly filter TBFs
1114 * BSSGP: do not reject SUSPEND ACK / NACK messages
1115 * BSSGP: properly print BVCI for signalling messages (BVCI=0)
1116 * tests/tbf: suspend warnings about the link quality measurements
1117 * GprsMs::update_cs_ul(): clarify the meaning of old_link_qual
1118 * gprs_bssgp_destroy(): fix memleak and NULL-pointer dereference
1119 * PTCCH: implement basic message codec and API
1120 * PTCCH: properly handle RTS.req for PCU_IF_SAPI_PTCCH
1121 * pcuif_proto.h: extend RACH.ind with TRX / TS numbers
1122 * PTCCH: properly handle RACH.ind for PCU_IF_SAPI_PTCCH
1123 * VTY: add warning about changing PCU socket path at run-time
1124 * VTY: cosmetic: use osmo_talloc_replace_string()
1125
1126 [ Pau Espin Pedrol ]
1127 * cosmetic: tbf: Rename T and N arrays
1128 * Use proper API osmo_timer_setup() to set up timer struct
1129 * Introduce osmo_tdef infra and timer VTY commands
1130 * bts.cpp: Fix osmo_tdef initialization on older g++ compilers
1131 * Use osmo_tdef for BSSGP T1 and T2
1132 * Use osmo_tdef to implement T3190
1133 * tests: TbfTest: Unify stderr and stdout to ease debugging
1134 * Use osmo_tdef to implement ms-idle-time
1135 * Use osmo_tdef to implement dl-tbf-idle-time
1136 * pdch.cpp: Refactor bitvec param passing in rcv_control_block
1137 * pdch.cpp: Use pcu_l1_meas previously filled by lower layers
1138 * cosmetic: fix whitespace
1139 * Move out tbf subclasses from tbf.h to their own headers
1140 * Move tbf_{dl,ul} child constructors to respective .cpp files
1141 * tbf_dl: Setup m_llc_timer in constructor using osmocom API
1142 * tbf_dl.cpp: Remove dup call to tbf_update_ms_class() in state GPRS_RLCMAC_WAIT_RELEASE
1143 * vty: Fix osmo_tdef timers not listed in write config
1144 * Log RACH Requests using GSMTAP
1145 * Log AGCH and PCH blocks using GSMTAP
1146 * pcu_l1_if.cpp: Fix GSMTAP Imm Assign PCH wrong encoding
1147 * pcu_l1_if.cpp: Drop unneeded byte in Imm Ass PCH buffer
1148 * pcu_l1_if.cpp: Imm Assign PCH: clarify size of different items
1149 * pcu_l1_if.cpp: Replace value 23 with libosmocore's GSM_MACBLOCK_LEN
1150 * Fix assertion hit upon CCCH Paging Request
1151 * doc: vty: Update osmo-pcu_vty_reference.xml
1152 * Clarify (M)CS related VTY attributes
1153 * Remove dash from name used in VTY cmd prompt
1154 * tbf_dl.cpp: Fix typo in log line
1155 * pcu_l1_if: Check pag_req id_lv len fits buffer
1156 * prs_bssgp_pcu.cpp: Mark priv funcs as static and remove trailing whitespace
1157 * Fix trailing whitespace
1158 * fix typo in log message
1159 * Log BVCI PTP value upon msg recv
1160 * Split identity_lv param into mi+mi_len
1161
1162 [ Oliver Smith ]
1163 * doc: update generated VTY reference
1164 * tbf_dl: make preemptive retransmission optional
1165 * Forward ETWS Primary Notification to MS
1166 * tests/app_info: fix compiling with older g++
1167 * configure.ac: set C and C++ dialects
1168
1169 [ Harald Welte ]
1170 * manual: Fix copy+paste error
1171 * manual: Fix documentation missing "-D" command line option
1172 * manual: Add missing documentation for '-i' command line option
1173
1174 -- Pau Espin Pedrol <pespin@sysmocom.de> Fri, 03 Jan 2020 19:40:02 +0100
1175
Pau Espin Pedrol19b15a52019-08-07 21:09:53 +02001176osmo-pcu (0.7.0) unstable; urgency=medium
1177
1178 [ Rafael Diniz ]
1179 * Added support for daemonize to osmo-pcu.
1180 * Fix help message formatting of osmo-pcu.
1181
1182 [ Max ]
1183 * Don't install pcuif_proto.h header
1184 * Move C include to proper place
1185 * Add define for dummy burst string
1186 * Add encoding tests for Immediate Assignment
1187 * Clarify write_immediate_assignment() signature
1188 * Restructure IA Rest Octets encoders
1189 * Rewrite Packet Downlink Assignment
1190 * Rewrite EGPRS Packet Uplink IA Rest Octets for MBA
1191 * Rewrite EGPRS Packet Uplink IA Rest Octets for SBA
1192 * MCS: internalize 'family' parameter
1193 * EDGE tests: reduce code duplication
1194 * MCS: remove dead code
1195 * EDGE tests: remove no-op check
1196 * Use msgb_eq_data_print() in tests
1197 * Tighten lqual table limits check
1198 * Enable LGLOBAL logging for TBF tests
1199 * Log (M)CS UL update errors
1200 * MCS: move Coding Scheme enum outside of class definition
1201 * Make get_retx_mcs() into regular function
1202 * MCS: remove unused function
1203 * Debian: bump copyright year
1204 * Use unique NSEI/BVCI/NSVCI in TBF tests
1205 * MS store: move test helper to unit test
1206 * Explicitly clean up BTS singleton
1207 * MCS: move HeaderType enum outside of class definition
1208 * MCS: use value_string for conversion
1209 * TBF-DL: log MCS as string
1210 * Fix TA index encoder
1211 * MCS: move Mode enum outside of class definition
1212 * MCS: add mcs_is_*() helpers
1213 * MCS: add Channel Coding Command encoder
1214 * Fix Channel Coding Command for MCS
1215 * Rewrite Packet Uplink IA Rest Octets for MBA
1216 * Rewrite Packet Uplink IA Rest Octets for SBA
1217 * Use Timing Advance Index in UL assignments
1218 * TBF: update MCS counters
1219 * TBF-DL: cosmetic update for helper routines
1220 * Update IA Rest Octets encoding
1221 * TS alloc: expand tests log
1222 * vty: add commands to show TBF of a certain kind
1223 * Update MCS selection for retransmission
1224 * cosmetic: use const pointer for bts_data
1225 * Add test for MS mode and (M)CS settings
1226 * Use libosmocore for IMSI parsing
1227
1228 [ Harald Welte ]
1229 * Mark gprs_ns_reconnect() as static (not used outside of C file)
1230 * Optionally Use the NS Sub-Network-Service (SNS) on Gb
1231 * pcu_l1_if: Fix erroneous endian-swapping of the CellID
1232 * Forward GPRS SUSPEND REQ from BTS to SGSN using BSSGP
1233 * gprs_debug: Use named initializers and explicit array indicies
1234 * bssgp: Fix dead code: PDUT_STATUS can never reach this part
1235
1236 [ JF Dionne ]
1237 * encoding: Fixes TMSI vs MI bit selection in repeated page info
1238
1239 [ Oliver Smith ]
1240 * tests: use -no-install libtool flag to avoid ./lt-* scripts
1241 * debian: create -doc subpackage with pdf manuals
1242 * contrib/jenkins.sh: run "make maintainer-clean"
1243
1244 [ Daniel Willmann ]
1245 * Include pdch.h in bts.h even if we're not compiling C++
1246 * oc2g: Remove custom alarms
1247 * oc2g: Change log type (Litecell15->Oc2g)
1248 * jenkins.sh: Add oc2g build support
1249 * manuals: Add script to regenerate vty/counter documentation
1250 * manuals: Update VTY documentation
1251
1252 [ Jean-Francois Dionne ]
1253 * Initial commit for OC-2G support.
1254
1255 [ Minh-Quang Nguyen ]
1256 * OC-2G: Fix missing header
1257 * OC-2G: Fix TA adjustment
1258 * OC-2G: Always use positive TA information provided in PH-RA-IND
1259
1260 [ Alexander Couzens ]
1261 * gprs_bssgp_pcu: make gprs_bssgp_ns_cb public
1262 * gprs_bssgp_pcu: explicit allocate & initialize bssgp_nsi instance
1263 * encoding: correct encoding of CRBB in ACK/NACK when not byte aligned
1264 * encoding: use `/* */` for comments instead of `#if 0 #endif`
1265 * egprs_rlc_compression: fix white spaces
1266 * tests/BitcompTest: fix wording in log message
1267 * rlc: replace int with uint16_t
1268 * Encoding: drop struct gprs_rlcmac_bts* from all functions
1269 * decompress_crbb: add length argument for search_runlen
1270 * Encoding: write_packet_ack_nack_desc_egprs: don't use a reference for rest_bits
1271 * bts.cpp: ensure left-shift operation does not exceed uint32_t
1272 * Encoding: use uint16_t when interacting with the window object
1273 * Encoding: ACK/NACK: always encode with length field present
1274
1275 [ Keith ]
1276 * Cosmetic: Osmcoom -> Osmocom
1277
1278 [ Vadim Yanitskiy ]
1279 * src/pcu_l1_if.cpp: fix: properly pass measurements from PCUIF
1280 * gprs_bssgp_pcu_rx_dl_ud(): fix: BSSGP_IE_IMSI is optional
1281 * gprs_bssgp_pcu.cpp: check return code of gsm48_mi_to_string()
1282 * gprs_bssgp_pcu_rx_dl_ud(): use OSMO_IMSI_BUF_SIZE
1283
1284 [ Thorsten Alteholz ]
1285 * fix spelling errors detected by lintian
1286
1287 [ Eric Wild ]
1288 * ubsan: fix shift
1289
1290 [ Pau Espin Pedrol ]
1291 * Remove undefined param passed to {logging,osmo_stats}_vty_add_cmds
1292 * Require newer libosmocore to avoid compile failures
1293
1294 -- Pau Espin Pedrol <pespin@sysmocom.de> Wed, 07 Aug 2019 21:09:53 +0200
1295
Harald Welte99278b12019-01-21 19:03:52 +01001296osmo-pcu (0.6.0) unstable; urgency=medium
1297
1298 [ Harald Welte ]
1299 * debian/rules: Don't overwrite .tarball-version
1300 * gprs_rlcmac_received_lost(): Fix regression / uninitialized now_tv
1301 * initial checkin of manuals to public repo
1302 * Add link to Asciidoc source code of manual
1303 * Initial place-holder for the new Gb/IP interface documentation
1304 * Gb message sequence chart: flip sides (SGSN should be right)
1305 * Gb message sequence chart: Add notion of PCU unix domain socket
1306 * Gb: Various spelling fixes
1307 * gb: Some language improvements, formatting changes
1308 * consistently use '3GPP TS' not sometimes 3GPP TS and sometimes TS.
1309 * gb/NS: Clarify the language regarding the UDP port numbers / socket
1310 * vty-ref: Update URI of docbook 5.0 schema
1311
1312 [ Pau Espin Pedrol ]
1313 * Cleanup of systemd service files
1314 * configure.ac: Set CXXFLAGS during --enable-sanitize
1315 * Install systemd services with autotools
1316 * Move examples/ to doc/examples/
1317 * Install osmo-pcu.cfg to docdir/examples
1318 * Allow easily disabling GFDL references
1319
1320 [ Stefan Sperling ]
1321 * check for overlong unix socket paths
1322
1323 [ Max ]
1324 * deb: add missing copyright file
1325 * OsmoPCU: fix Gb documentation front page
1326 * OsmoPCU: expand NS documentation
1327 * OsmoPCU: expand BSSGP documentation
1328 * OsmoPCU: add MSC chart
1329
1330 [ Neels Hofmeyr ]
1331 * Importing history from osmo-gsm-manuals.git
1332 * make clean: also remove generated image files
1333 * add 'make check' target
1334 * fix 'make clean': shell glob, ignore failure
1335 * refactor Makefile build rules, don't use the FORCE
1336
1337 [ Jonathan Brielmaier ]
1338 * fix various typos across all manuals
1339
1340 [ Philipp ]
1341 * configuration: fixing typos
1342
1343 [ Alexander Couzens ]
1344 * OsmoPCU: add rate counter documentation
1345
1346 [ Daniel Willmann ]
1347 * Change OpenBSC mentions to OsmoBSC where applicable
1348
1349 [ Oliver Smith ]
1350 * build manuals moved here from osmo-gsm-manuals.git
1351 * Fix DISTCHECK_CONFIGURE_FLAGS override
1352 * contrib/jenkins.sh: build and publish manuals
1353 * contrib: fix makedistcheck with disabled systemd
1354
1355 -- Harald Welte <laforge@gnumonks.org> Mon, 21 Jan 2019 19:03:52 +0100
1356
Pau Espin Pedrol448750e2018-07-27 21:56:39 +02001357osmo-pcu (0.5.1) unstable; urgency=medium
1358
1359 [ Harald Welte ]
1360 * Don't register SIGHUP handler without actually handling SIGHUP
1361
1362 [ Pau Espin Pedrol ]
1363 * tbf: Fix memset(0) on object with no trivial copy-assignment
1364 * rlc: Fix memset(0) on object with no trivial copy-assignment
1365 * jenkins.sh: use flag --enable-werror for sysmo and none
1366 * tbf: Use incrementing id for rate_ctr_group_alloc
1367 * tbf: Replace '.' in counter names with ':'
1368
1369 [ Stefan Sperling ]
1370 * fix a one-byte stack buffer overrun in osmo-pcu
1371 * read monotonic clock with clock_gettime() instead of gettimeofday()
1372 * fix time-delta calculations for measurement reports
1373 * change log level of "DL packet loss" log messages
1374 * check bssgp_tlv_parse() return code in gprs_bssgp_pcu_rcvmsg()
1375
1376 -- Pau Espin Pedrol <pespin@sysmocom.de> Fri, 27 Jul 2018 21:56:38 +0200
1377
Pau Espin Pedrolf1a334b2018-05-03 16:20:01 +02001378osmo-pcu (0.5.0) unstable; urgency=medium
1379
1380 [ Neels Hofmeyr ]
1381 * jenkins: use osmo-clean-workspace.sh before and after build
1382 * vty: skip installing cmds now always installed by default
1383 * implement support for 3-digit MNC with leading zeros
1384 * configure: add --enable-werror
1385 * mslot_class: find_free_tfi(): use uint32_t to shift 1 << 31
1386 * mslot_class: two more: use uint32_t to shift 1 << 31
1387 * Revert "Use Timing Advance Index in UL assignments"
1388 * Revert "Rewrite Packet Uplink Assignment"
1389 * Revert "Rewrite Packet Downlink Assignment"
1390 * configure: fix --enable-sysmocom-dsp and --with-sysmobts flags
1391 * configure: properly quote CFLAGS in lc15 check
1392 * Revert "Rewrite EGPRS Packet Uplink Assignment"
1393 * use osmo_init_logging2() with proper talloc ctx
1394
1395 [ Minh-Quang Nguyen ]
1396 * PCU: Fix TA adjustment
1397 * PCU: display TA information in TBF stats
1398
1399 [ Max ]
1400 * Remove unused parameter
1401 * Move multislot table to separate file
1402 * Replace '.' in counter names with ':'
1403 * Fix compiler warning
1404 * TBF: log timer override
1405 * TBF: fix compiler warning in test
1406 * TBF: expand timer logging
1407 * vty: print class and TBFs for each MS
1408 * DL window: constify resend_needed() function
1409 * TBF: move EGPRS enablement into (U|D)L-TBF
1410 * TBF-DL: fix misleading idle time check
1411 * TBF: remove unused variable
1412 * Remove unused includes and forward declarations
1413 * Fix tests after rate_ctr change
1414 * Introduce LOGTBF* for consistent logging
1415 * TBF: implement independent T31xx timers
1416 * TBF: add N3101 counter
1417 * Fix warnings
1418 * Add function to get max supported MS class
1419 * Add --enable-sanitize configure option
1420 * Enable sanitize for CI test
1421 * Add tests for pcu_lsb()
1422 * Add optional profiling support
1423 * TBF: unify timer handling
1424 * TBF: log timer invocation source
1425 * TBF: bail out for unknown timers
1426 * Fix llc_queue_size() type
1427 * TBF-DL: mark rcvd_dl_ack() parameters as boolean
1428 * window: move encoding into functions
1429 * cosmetic: clarify coding scheme and puncturing
1430 * Make TBF state private
1431 * TBF: cleanup state flag handling
1432 * Clarify RACH-related interfaces
1433 * TBF-UL: add simpler test helper
1434 * Avoid code duplication in TBF test
1435 * TBF: move window parameters to UL/DL level
1436 * TBF-DL: move priority computation into function
1437 * TBF: unify EGPRS window calculation
1438 * Don't access TBF internals in vty functions
1439 * Fix jenkins.sh to match jenkins job axis filter
1440 * Allocate global context for TypesTest
1441 * Fix sanitizer build
1442 * Rewrite EGPRS Packet Uplink Assignment
1443 * Rewrite Packet Downlink Assignment
1444 * Rewrite Packet Uplink Assignment
1445 * Use Timing Advance Index in UL assignments
1446 * Allow specifying sysmocom headers explicitly
1447 * TBF: log source of state transitions
1448 * jenkins.sh: Disable building doxygen for deps
1449 * Set V_N and V_B to known initial state
1450 * TBF: add dedicated log categories
1451 * TBF: make UL/DL state internal
1452 * TBF: make UL ack state internal
1453 * TBF: make poll state internal
1454 * TBF: adjust test log levels
1455 * Add tests for find_multi_slots()
1456 * AllocTest: adjust test_alloc_b()
1457 * AllocTest: expand test output
1458 * AllocTest: remove assumption on max MS class
1459 * Add multislot classes from latest spec
1460 * cosmetic: fix whitespace issue with include files
1461 * TBF: decrease L1 logging verbosity in test
1462 * TBF: override send function via linker option
1463 * Simplify TS alloc: adjust allocator signatures
1464 * Simplify TS alloc: fix allocation calls
1465 * Simplify TS alloc: avoid TS reassignment
1466 * Simplify TS alloc: use defines for constants
1467 * Simplify TS alloc: adjust function signatures
1468 * TS alloc: print suggested TRX on allocation errors
1469 * Simplify TS alloc: internalize TRX check
1470 * TBF: decrease logging verbosity for traffic
1471 * TBF: add helpers for assignment type handling
1472 * TBF: show assignment kind in vty
1473 * vty: drop unused function
1474 * RACH: improve single block detection
1475 * TBF: move common test code into functions
1476 * emu: use libosmocore definitions
1477 * Use explicit type for pcu_lsb()
1478 * Move paging generation into PDCH
1479 * Move include guard to the top
1480 * Update header includes
1481 * Simplify TS alloc: split off RX mask computation
1482 * Simplify TS alloc: separate capacity computation
1483 * Simplify TS alloc: split allocation
1484 * Simplify TS alloc: split USF/UL allocation
1485 * Move PDCH-related functions into separate files
1486 * Simplify TS alloc: don't use PDCH for free TFI
1487 * Simplify TS alloc: constify max dl slot func
1488 * TBF: make network counters internal
1489 * Simplify TS alloc: move slot assignment
1490 * Simplify TS alloc: move slot check into functions
1491
1492 [ Pau Espin Pedrol ]
1493 * Print error cause of pcu socket connect failure
1494 * gprs_bssgp_pcu.cpp: Comment unused function parse_ra_cap
1495
1496 [ Stefan Sperling ]
1497 * Make osmo-pcu wait for BTS to become available at start-up time.
1498 * improve documentation of Encoding::write_paging_request()
1499
1500 [ Alexander Couzens ]
1501 * pcuif_proto.h: fix whitespaces and indention
1502 * pcuif_proto: add version 8 features
1503
1504 [ Philipp Maier ]
1505 * cosmetic: remove runaway semicolon
1506 * pcu_l1_if: add frame number to log output
1507 * tbf: add frame number to log output
1508
1509 -- Pau Espin Pedrol <pespin@sysmocom.de> Thu, 03 May 2018 16:20:00 +0200
1510
Harald Welted34ec1b2017-10-29 12:03:05 +01001511osmo-pcu (0.4.0) unstable; urgency=medium
1512
1513 [ Holger Hans Peter Freyther ]
1514 * Initial release.
1515
1516 [ Max ]
1517 * Use value string check from osmo-ci
1518 * cosmetic: tighten direct-phy related code
1519 * Support receiving SI13 from BTS
1520 * Move gsmtap and accounting into separate function
1521 * cosmetic: convert explicit warnings to fixme/todo
1522 * Assert valid CS
1523 * TBF-DL: extend index check for RLC block copy
1524 * TS alloc: properly count UL slots
1525 * cosmetic: reformat multislot classes table
1526
1527 [ Philipp Maier ]
1528 * gb: allow only packets from a specific SGSN
1529
1530 [ Harald Welte ]
1531 * tests: Don't use private version of log_info but global gprs_log_info
1532 * Call osmo_init_logging() before static BTS constructor
1533 * Forward GPRS SUSPEND REQ from BTS to SGSN using BSSGP
1534 * Debian: Cosmetic changes to control file; add better Description
1535 * Debian: print test results in case of failure + clean-up autotest
1536 * Debian: migrate from DEB_BUILD_HARDENING to DEB_BUILD_MAINT_OPTIONS
1537 * Debian: upgrade to debhelper 9 / Standards 3.9.8
1538
1539 -- Harald Welte <laforge@gnumonks.org> Sun, 29 Oct 2017 12:03:05 +0100
1540
Maxd78adfb2017-08-24 13:53:25 +02001541osmo-pcu (0.3.0) UNRELEASED; urgency=medium
Holger Hans Peter Freyther97e48a32016-04-01 19:21:16 +02001542
1543 * Initial release.
1544
1545 -- Holger Hans Peter Freyther <holger@moiji-mobile.com> Fri, 01 Apr 2016 18:59:00 +0200