Attention is currently required from: pespin, fixeria.
Hello osmith, Jenkins Builder, laforge,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmocom-bb/+/32589
to look at the new patch set (#5).
Change subject: layer23: modem: grr: Log ignored CCCH ImmAss
......................................................................
layer23: modem: grr: Log ignored CCCH ImmAss
There seems to be some bug when using virtphy where sometimes the
received T2 and/or T3 in the ImmASs is not matching what we sent.
This helps in showing the problem and not failing silently.
Change-Id: Iaecd2616733d84f35a825916fe888142800b426b
---
M src/host/layer23/src/modem/grr.c
1 file changed, 25 insertions(+), 5 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/89/32589/5
--
To view, visit https://gerrit.osmocom.org/c/osmocom-bb/+/32589
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmocom-bb
Gerrit-Branch: master
Gerrit-Change-Id: Iaecd2616733d84f35a825916fe888142800b426b
Gerrit-Change-Number: 32589
Gerrit-PatchSet: 5
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-CC: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-MessageType: newpatchset
pespin has submitted this change. ( https://gerrit.osmocom.org/c/libosmo-gprs/+/32584 )
Change subject: sm: Avoid freeing the SME object too quickly
......................................................................
sm: Avoid freeing the SME object too quickly
At that point in time we may still need it, for instance to send the
primitive to the upper layers. Still, we want it to be t the correct
state when that happens. Hence, delay freeing the object to happen in
next loop iteration, so that it is still available to submit the
primitive, and even skip freeing the object if the SM SAP user decides
to re-activate the PDP context in a synchronous code path from the
primitive callback.
Change-Id: I28655fc6286c92403e3e461cb6433b8567e20fd1
---
M src/sm/sm_ms_fsm.c
1 file changed, 29 insertions(+), 3 deletions(-)
Approvals:
Jenkins Builder: Verified
pespin: Looks good to me, approved
diff --git a/src/sm/sm_ms_fsm.c b/src/sm/sm_ms_fsm.c
index 14f5ee7..2ce6f8d 100644
--- a/src/sm/sm_ms_fsm.c
+++ b/src/sm/sm_ms_fsm.c
@@ -30,6 +30,8 @@
#define X(s) (1 << (s))
+#define TIMER_DELAY_FREE 0
+
static const struct osmo_tdef_state_timeout sm_ms_fsm_timeouts[32] = {
[GPRS_SM_MS_ST_PDP_INACTIVE] = {},
[GPRS_SM_MS_ST_PDP_ACTIVE_PENDING] = { .T = 3380 },
@@ -43,9 +45,13 @@
static void st_sm_ms_pdp_inactive_on_enter(struct osmo_fsm_inst *fi, uint32_t prev_state)
{
- /* PDP became inactive, there's no use in keeping it */
- struct gprs_sm_ms_fsm_ctx *ctx = (struct gprs_sm_ms_fsm_ctx *)fi->priv;
- gprs_sm_entity_free(ctx->sme);
+ /* PDP became inactive, there's no use in keeping it.
+ * Schedule asynchronous release of PDP. It will automatically be
+ * aborted as a consequence of changing state if user decides to
+ * automatically activate the PDP ctx in this same code path as an
+ * answer to a primitive submitted to it. */
+ fi->T = TIMER_DELAY_FREE;
+ osmo_timer_schedule(&fi->timer, 0, 0);
}
static void st_sm_ms_pdp_inactive(struct osmo_fsm_inst *fi, uint32_t event, void *data)
@@ -149,6 +155,9 @@
struct gprs_sm_ms_fsm_ctx *ctx = (struct gprs_sm_ms_fsm_ctx *)fi->priv;
switch (fi->T) {
+ case TIMER_DELAY_FREE:
+ gprs_sm_entity_free(ctx->sme);
+ break;
case 3380:
ctx->act_pdp_ctx_attempts++;
LOGPFSML(ctx->fi, LOGL_INFO, "T3380 timeout attempts=%u\n", ctx->act_pdp_ctx_attempts);
--
To view, visit https://gerrit.osmocom.org/c/libosmo-gprs/+/32584
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmo-gprs
Gerrit-Branch: master
Gerrit-Change-Id: I28655fc6286c92403e3e461cb6433b8567e20fd1
Gerrit-Change-Number: 32584
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged