ms: Hold a reference during ms_alloc

Make the caller hold a reference to the MS object just allocated, so
that it hs to explicitly unref it and, in turn, if no new references
were added during its use, trigger release of the MS object.
This is useful to avoid leaking MS object if it was allocated and then
no TBF is attached to it because allocation of TBF failed.

Related: OS#6002
Change-Id: I2088a7ddd76fe9157b6626ef96ae4315e88779ea
diff --git a/src/gprs_ms.h b/src/gprs_ms.h
index cdb23bf..03508ff 100644
--- a/src/gprs_ms.h
+++ b/src/gprs_ms.h
@@ -95,7 +95,7 @@
 	struct nacc_fsm_ctx *nacc;
 };
 
-struct GprsMs *ms_alloc(struct gprs_rlcmac_bts *bts);
+struct GprsMs *ms_alloc(struct gprs_rlcmac_bts *bts, const char *use_ref);
 
 struct gprs_rlcmac_pdch *ms_first_common_ts(const struct GprsMs *ms);
 void ms_set_first_common_ts(struct GprsMs *ms, struct gprs_rlcmac_pdch *pdch);