This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
Harald Welte gerrit-no-reply at lists.osmocom.orgHarald Welte has submitted this change and it was merged. Change subject: mobile: Properly close the primitive interface on reload ...................................................................... mobile: Properly close the primitive interface on reload When reloading a script go through script_lua_close. Get the primitive first. Then destruct the lua environment which will lead to GC (e.g. cancellation of timers) and then delete the primitive code. Change-Id: I5bb4fa9e7c5010f3ad50b258dcb14956eea8822a --- M src/host/layer23/src/mobile/script_lua.c 1 file changed, 6 insertions(+), 3 deletions(-) Approvals: Harald Welte: Looks good to me, approved Jenkins Builder: Verified diff --git a/src/host/layer23/src/mobile/script_lua.c b/src/host/layer23/src/mobile/script_lua.c index 14ab58f..9b256d3 100644 --- a/src/host/layer23/src/mobile/script_lua.c +++ b/src/host/layer23/src/mobile/script_lua.c @@ -510,10 +510,14 @@ int script_lua_close(struct osmocom_ms *ms) { + struct mobile_prim_intf *intf; + if (!ms->lua_state) return 0; + intf = get_primitive(ms->lua_state); lua_close(ms->lua_state); + mobile_prim_intf_free(intf); ms->lua_state = NULL; return 0; } @@ -523,8 +527,7 @@ struct mobile_prim_intf *intf; int err; - if (ms->lua_state) - lua_close(ms->lua_state); + script_lua_close(ms); ms->lua_state = lua_newstate(talloc_lua_alloc, ms); if (!ms->lua_state) return -1; @@ -550,7 +553,7 @@ vty_out(vty, "%% LUA execute error: %s%s", lua_tostring(ms->lua_state, -1), VTY_NEWLINE); lua_pop(ms->lua_state, 1); - return 3; + return -3; } return 0; -- To view, visit https://gerrit.osmocom.org/5595 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: merged Gerrit-Change-Id: I5bb4fa9e7c5010f3ad50b258dcb14956eea8822a Gerrit-PatchSet: 1 Gerrit-Project: osmocom-bb Gerrit-Branch: master Gerrit-Owner: Holger Freyther <holger at freyther.de> Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org> Gerrit-Reviewer: Jenkins Builder