<p><a href="https://gerrit.osmocom.org/c/osmo-trx/+/17805">View Change</a></p><p>5 comments:</p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0;"><p><a href="https://gerrit.osmocom.org/c/osmo-trx/+/17805/2/Transceiver52M/Transceiver.h">File Transceiver52M/Transceiver.h:</a></p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/osmo-trx/+/17805/2/Transceiver52M/Transceiver.h@160">Patch Set #2, Line 160:</a> <code style="font-family:monospace,monospace">  std::deque<ctrl_msg> txmsgqueue;</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">can't we just use convenient stl containers instead of arcane stuff if we do c++?</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">osmo_wqueue is also convenient and matches more what we do in most CNI code where C is used. Not a hard blocker though.</p></li></ul></li><li style="margin: 0; padding: 0;"><p><a href="https://gerrit.osmocom.org/c/osmo-trx/+/17805/2/Transceiver52M/Transceiver.cpp">File Transceiver52M/Transceiver.cpp:</a></p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/osmo-trx/+/17805/2/Transceiver52M/Transceiver.cpp@a161">Patch Set #2, Line 161:</a> <code style="font-family:monospace,monospace">    if (mCtrlSockets[i] >= 0)</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">no, because this is c++, and resources can clean up themselves upon destruction..</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">Ah I see now it's done in struct ctrl_sock_state destructor, ack.</p></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/osmo-trx/+/17805/2/Transceiver52M/Transceiver.cpp@817">Patch Set #2, Line 817:</a> <code style="font-family:monospace,monospace">  msgLen = read(bfd->fd, buffer, sizeof(cmd_received.data));</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">see header for reason, a simple struct wrap of a char array is still far less complicated than the w […]</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">Ack</p></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/osmo-trx/+/17805/2/Transceiver52M/Transceiver.cpp@820">Patch Set #2, Line 820:</a> <code style="font-family:monospace,monospace">      osmo_signal_dispatch(SS_MAIN, S_MAIN_STOP_REQUIRED, NULL);</code></p><p style="white-space: pre-wrap; word-wrap: break-word;">This should probably go into Transceiver::ctrl_sock_cb()</p></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/osmo-trx/+/17805/2/Transceiver52M/Transceiver.cpp@840">Patch Set #2, Line 840:</a> <code style="font-family:monospace,monospace">    transceiver->stop();</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">this is c++ and we can't have callbacks from somewhere for member functions, where would they get th […]</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">Transceiver::driveControl() is not a callback function, in line 168 do transceiver->driveControl() and you avoid changing like 50 lines in this function.</p></li></ul></li></ul><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-trx/+/17805">change 17805</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/osmo-trx/+/17805"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-trx </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I642a34451e1825eafecf71a902df916ccee7944c </div>
<div style="display:none"> Gerrit-Change-Number: 17805 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: Hoernchen <ewild@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Hoernchen <ewild@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-CC: fixeria <axilirator@gmail.com> </div>
<div style="display:none"> Gerrit-Comment-Date: Sun, 12 Apr 2020 14:59:04 +0000 </div>
<div style="display:none"> Gerrit-HasComments: Yes </div>
<div style="display:none"> Gerrit-Has-Labels: No </div>
<div style="display:none"> Comment-In-Reply-To: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Comment-In-Reply-To: Hoernchen <ewild@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: comment </div>