<p><a href="https://gerrit.osmocom.org/12364">View Change</a></p><p>3 comments:</p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0;"><p><a href="https://gerrit.osmocom.org/#/c/12364/1/src/xua_asp_fsm.c">File src/xua_asp_fsm.c:</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/12364/1/src/xua_asp_fsm.c@920">Patch Set #1, Line 920:</a> <code style="font-family:monospace,monospace">{</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">So the only use of fi is to get *priv? Than better just pass struct ipa_asp_fsm_priv *iafp as parame […]</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">Hmm, yes, good suggestion.</p></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/#/c/12364/1/src/xua_asp_fsm.c@939">Patch Set #1, Line 939:</a> <code style="font-family:monospace,monospace">   osmo_timer_del(&iafp->pong_timer);</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">I don't understand how it works if we bail out before reaching here. […]</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">This timer is actually never scheduled as far as I can see. And indeed it is bogus that we won't delete it if returning early. But note that this bug is part of code I merely moved around, so I'd rather fix it in a separate patch.</p></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/#/c/12364/1/src/xua_asp_fsm.c@1060">Patch Set #1, Line 1060:</a> <code style="font-family:monospace,monospace">  ipa_asp_fsm_del_route(fi);</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">I'd rather see ipa_asp_fsm_cleanup() moved in place of ipa_asp_fsm_del_route() instead of keeping it […]</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">In an earlier version of this patch I just called ipa_asp_fsm_cleanup() from ipa_asp_fsm_active().</p><p style="white-space: pre-wrap; word-wrap: break-word;">What made me uncomfortable about that is that it looks like this cleanup handler is supposed to be invoked by the generic FSM code, not from within the FSM itself.<br>It just so happens that we need to run the same code when the FSM terminates and when we transition ACTIVE->DOWN.</p><p style="white-space: pre-wrap; word-wrap: break-word;">I don't really care though because both approaches work. Would you prefer to call ipa_asp_fsm_cleanup() from ipa_asp_fsm_active()?</p></li></ul></li></ul><p>To view, visit <a href="https://gerrit.osmocom.org/12364">change 12364</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/12364"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: libosmo-sccp </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: comment </div>
<div style="display:none"> Gerrit-Change-Id: Idb8e7bd1c74a4b47080fe32ebe0161c503ead571 </div>
<div style="display:none"> Gerrit-Change-Number: 12364 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Stefan Sperling <stsp@stsp.name> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder (1000002) </div>
<div style="display:none"> Gerrit-Reviewer: Max <msuraev@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Neels Hofmeyr <nhofmeyr@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Stefan Sperling <stsp@stsp.name> </div>
<div style="display:none"> Gerrit-Comment-Date: Thu, 20 Dec 2018 11:42:45 +0000 </div>
<div style="display:none"> Gerrit-HasComments: Yes </div>
<div style="display:none"> Gerrit-HasLabels: No </div>