<p>fixeria <strong>uploaded patch set #2</strong> to this change.</p><p><a href="https://gerrit.osmocom.org/c/osmocom-bb/+/19228">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">trx_toolkit/transceiver.py: implement the transmit burst queue<br><br>In order to reflect the UL/DL delay caused by the premature burst<br>scheduling (a.k.a. 'fn-advance') in a virtual environment, the<br>Transceiver implementation now queues all to be transmitted bursts,<br>so they remain in the queue until the appropriate time of transmission.<br><br>The API user is supposed to call recv_data_msg() in order to obtain<br>a L12TRX message on the TRXD (data) inteface, so it gets queued by<br>this function.  Then, to ensure the timeous transmission, the user<br>of this implementation needs to call clck_tick() on each TDMA<br>frame.  Both functions are thread-safe (queue mutex).<br><br>In a multi-trx configuration, the use of queue additionally ensures<br>proper burst aggregation on multiple TRXD connections, so all L12TRX<br>messages are guaranteed to be sent in the right order, i.e. with<br>monolithically-increasing TDMA frame numbers.<br><br>Of course, this change increases the overall CPU usage, given that<br>each transceiver gets its own queue, and we need to serve them all<br>on every TDMA frame.  According to my measurements, when running<br>test cases from ttcn3-bts-test, the average load is ~50% higher<br>than what it used to be.  Still not significantly high, though.<br><br>Change-Id: Ie66ef9667dc8d156ad578ce324941a816c07c105<br>Related: OS#4658, OS#4546<br>---<br>M src/target/trx_toolkit/fake_trx.py<br>M src/target/trx_toolkit/transceiver.py<br>2 files changed, 75 insertions(+), 4 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/28/19228/2</pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmocom-bb/+/19228">change 19228</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/osmocom-bb/+/19228"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmocom-bb </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: Ie66ef9667dc8d156ad578ce324941a816c07c105 </div>
<div style="display:none"> Gerrit-Change-Number: 19228 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: fixeria <vyanitskiy@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-MessageType: newpatchset </div>