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