This patch is for fixing encoding of padding bits according to the
3gpp spec 44.060 section 11, wherein it shall always start with 0
bit followed with spare padding bits.
During introduction of basic EGPRS feature new hex dump messages
from a different working network log were used in Unit test. These
exposed the issue of incorrect handling of padding bits encoding
in osmo-pcu.
Corrections in the existing test vector and new hex dump vectors
shall be submitted in a separate patch. If only this patch is
applied rlcmac testsuite will fail for few vectors.
---
src/csn1.cpp | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/csn1.cpp b/src/csn1.cpp
index 54cc411..82bf17f 100644
--- a/src/csn1.cpp
+++ b/src/csn1.cpp
@@ -2400,7 +2400,12 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector
guint8 bits_to_handle = remaining_bits_len%8;
if (bits_to_handle > 0)
{
- guint8 fl = filler&(0xff>>(8-bits_to_handle));
+ /* section 11 of 44.060
+ * The padding bits may be the 'null' string. Otherwise, the
+ * padding bits starts with bit '0', followed by 'spare padding'
+ * < padding bits > ::= { null | 0 < spare padding > ! < Ignore : 1 bit** = < no string > > } ;
+ */
+ guint8 fl = filler&(0xff>>(8-bits_to_handle + 1));
bitvec_write_field(vector, writeIndex, fl, bits_to_handle);
LOGPC(DCSN1, LOGL_NOTICE, "%u|", fl);
remaining_bits_len -= bits_to_handle;
--
1.7.9.5
Hello All,
This mail is to highlight the necessity of the "[PATCH] Fix encoding of padding bits to start with 0 bit"
In the latest master osmo-pcu 0.2.752-173e, the identified bug in encoding of padding bits is generating incorrect Control message.
Example of an incorrect Packet Downlink Assignment message from the current TbfTest.err log is @ line number 3433
Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=0 block=0 data=4f 08 20 00 44 02 00 02 08 04 00 c0 0b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
Incorrect encoding has resulted in the analyzer interpreting PFI present with value 21.
Whereas with the fix for encoding padding bits result is
Sending data request: trx=0 ts=4 sapi=5 arfcn=0 fn=0 block=0 data=4f 08 20 00 44 02 00 02 08 04 00 c0 03 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
Output of the message analyzer(http://www.3gpp-message-analyser.com/) is attached in the mail.
Please review the patch and let us know procedure for a merge to master.
Regards
Saurabh
This patch is the test suite modification for the fix encoding of
padding bits. New test vectors have been added both in downlink
and uplink.
Correction in existing test vector is also done.
---
tests/rlcmac/RLCMACTest.cpp | 13 ++++++-----
tests/rlcmac/RLCMACTest.ok | 50 +++++++++++++++++++++++++++++++++++--------
2 files changed, 49 insertions(+), 14 deletions(-)
Dear all,
some of you may have already seen it on the RSS feed, on Twitter or on
planet.osmocom.org[1]: sysmocom has decided that we will re-release our
existing formerly sysmocom-internal User Manuals and VTY reference
manuals under GNU GFDL.
The hope is that with better documentation we can enable more people to
use Osmocom software more easily, leading to more adoption.
While those manuals are far from being complete or perfect, I had spent
a lot of time in February on further polishing them for the upcoming
public release. I do believe they provide a better stasting point than
what all of what we had in the wiki (whether old trac or new redmine).
The manuals are written in asciidoc[2], with the occasional use of
mscgen[3] and graphviz[4], which I believe together are a pretty good
set of tools to very efficiently and productively work on documentation,
whilst focussing on actual content and not on formatting/syntax like
when using docbook-xml or LaTeX.
The osmo-gsm-manuals.git repository is pulled by our jenkins
installation, which then builds the PDF manuals and pushes them to
http://ftp.osmocom.org/docs/latest/
I seriously do hope that we will receive improvements and extensions for
the manuals. As the asciidoc source is in yet another git repo, sending
patches is as easy as it gets. Holger always states nobody ever
contributes to manuals, and I would love to prove him wrong ;)
In terms of overlapping information in the wiki and in the manuals: I'm
in favor (and in the process) of removing outdated old wiki command line
reference and VTY reference sections, and simply referring to the
manuals instead.
Please do read through the manuals and do send patches, whether it's a
spelling fix, improved wording, adding missing information or fixing
actual technical mistakes.
In tems of further dccumentation improvements, Holger has volunteered to
ensure that the Doxygen API of libosmocore is also automatically
generated+pushed in a similar fashion to make it publicly web-visible.
I'd also encurage everyone to contribute patches to covert those parts
of libosmocore.git that don't hve doxygen annotation yet.
Thanks in advance!
Regards,
Harald
[1] http://projects.osmocom.org/news/47
[2] http://asciidoc.org/
[3] http://www.mcternan.me.uk/mscgen/
[4] http://www.graphviz.org/
--
- Harald Welte <laforge(a)gnumonks.org> http://laforge.gnumonks.org/
============================================================================
"Privacy in residential applications is a desirable marketing option."
(ETSI EN 300 175-7 Ch. A6)
Hello All,
In the latest master, Unit test for TBF is failing. Please find the attached tests/testsuite.log with this mail.
I was working on resubmission of padding encoding patch wherein this failure was noticed.
Regards
Saurabh
Hello All,
We are currently working on providing the support of Fast Ack/Nack Reporting(FANR) feature in OsmoPCU.
We have Identified and listed major changes in OsmoPCU as below.
1) Introduction of new header types in UL/DL
a. Mainly due to presence of CES/P and PANI fields
2) Following Control Messages changes
a. Packet Downlink Assignment
b. Packet Uplink Assignment
c. EGPRS Packet Channel Request
3) MS Radio Capability
a. Extraction of Reduced Latency Capability
4) VTY interface changes to enable/disable the feature
5) Downlink PAN Handling
6) Uplink PAN Handling
7) RLC window modification
a. Introduction of state variable to manage REPORTED and UNREPORTED states in UL direction
b. Introduction of new state TENTATIVE_ACK in DL direction
8) TBF flow changes
9) Handling of Tentative Ack blocks during retransmission
Note: There may be impacts on osmo-bts. But the impacts has not been considered yet.
We plan to have a separate branch from master for this development.
Please let us know your valuable feedback.
Thanks,
Aravind Sirsikar
Hello All,
We are currently working on providing the support of 11 bit RACH support in osmoPCU as mentioned in Bug #1548 at https://projects.osmocom.org/projects/osmopcu/issues
We have identified impacts to be in osmo-pcu, osmo-bts and osmocore
Main changes identified are
osmo-pcu:
* In file pcuif_proto.h, modify "uint8_t ra" to "uint16_t ra" in struct gsm_pcu_if_rach_ind
* Corresponding function prototypes due to change in data type
* 11 bit RACH handling in bts.cpp
* Changes in encoding.cpp to support immediate assignment with EGPRS allocation
osmocore:
* In file l1sap.h, modify "uint8_t ra" to "uint16_t ra" in structure "struct ph_rach_ind_param"
* Function prototype changes
osmobts:
* Function prototype changes due to change in data type
Please let us know your valuable feedback.
We plan to have a separate branch from master for this development. Please let us know the procedure to do this.
Regards
Prasad