diff --git a/openbsc/src/gprs/gb_proxy_main.c b/openbsc/src/gprs/gb_proxy_main.c
index 2ddfca7..04875c7 100644
--- a/openbsc/src/gprs/gb_proxy_main.c
+++ b/openbsc/src/gprs/gb_proxy_main.c
@@ -189,8 +189,6 @@
 	}
 }
 
-extern void *tall_msgb_ctx;
-
 extern int bsc_vty_go_parent(struct vty *vty);
 
 static struct vty_app_info vty_info = {
@@ -231,7 +229,7 @@
 	int rc;
 
 	tall_bsc_ctx = talloc_named_const(NULL, 0, "nsip_proxy");
-	tall_msgb_ctx = talloc_named_const(tall_bsc_ctx, 0, "msgb");
+	msgb_talloc_ctx_init(tall_bsc_ctx, 0);
 
 	signal(SIGINT, &signal_handler);
 	signal(SIGABRT, &signal_handler);
diff --git a/openbsc/src/gprs/sgsn_main.c b/openbsc/src/gprs/sgsn_main.c
index 822c359..b4be631 100644
--- a/openbsc/src/gprs/sgsn_main.c
+++ b/openbsc/src/gprs/sgsn_main.c
@@ -163,7 +163,6 @@
 
 /* NSI that BSSGP uses when transmitting on NS */
 extern struct gprs_ns_inst *bssgp_nsi;
-extern void *tall_msgb_ctx;
 
 extern int bsc_vty_go_parent(struct vty *vty);
 
@@ -328,7 +327,7 @@
 
 	srand(time(NULL));
 	tall_bsc_ctx = talloc_named_const(NULL, 0, "osmo_sgsn");
-	tall_msgb_ctx = talloc_named_const(tall_bsc_ctx, 0, "msgb");
+	msgb_talloc_ctx_init(tall_bsc_ctx, 0);
 
 	signal(SIGINT, &signal_handler);
 	signal(SIGABRT, &signal_handler);
diff --git a/openbsc/src/libcommon/talloc_ctx.c b/openbsc/src/libcommon/talloc_ctx.c
index a917a8c..7a8bfd3 100644
--- a/openbsc/src/libcommon/talloc_ctx.c
+++ b/openbsc/src/libcommon/talloc_ctx.c
@@ -20,7 +20,6 @@
 #include <osmocom/core/talloc.h>
 
 extern void *tall_bsc_ctx;
-extern void *tall_msgb_ctx;
 extern void *tall_fle_ctx;
 extern void *tall_locop_ctx;
 extern void *tall_authciphop_ctx;
@@ -38,7 +37,7 @@
 
 void talloc_ctx_init(void *ctx_root)
 {
-	tall_msgb_ctx = talloc_named_const(ctx_root, 0, "msgb");
+	msgb_talloc_ctx_init(ctx_root, 0);
 	tall_fle_ctx = talloc_named_const(ctx_root, 0, "bs11_file_list_entry");
 	tall_locop_ctx = talloc_named_const(ctx_root, 0, "loc_updating_oper");
 	tall_authciphop_ctx = talloc_named_const(ctx_root, 0, "auth_ciph_oper");
diff --git a/openbsc/src/osmo-bsc_nat/bsc_nat.c b/openbsc/src/osmo-bsc_nat/bsc_nat.c
index 6ae8c05..a4dd679 100644
--- a/openbsc/src/osmo-bsc_nat/bsc_nat.c
+++ b/openbsc/src/osmo-bsc_nat/bsc_nat.c
@@ -1573,12 +1573,11 @@
 	osmo_timer_schedule(&sccp_close, SCCP_CLOSE_TIME, 0);
 }
 
-extern void *tall_msgb_ctx;
 extern void *tall_ctr_ctx;
 static void talloc_init_ctx()
 {
 	tall_bsc_ctx = talloc_named_const(NULL, 0, "nat");
-	tall_msgb_ctx = talloc_named_const(tall_bsc_ctx, 0, "msgb");
+	msgb_talloc_ctx_init(tall_bsc_ctx, 0);
 	tall_ctr_ctx = talloc_named_const(tall_bsc_ctx, 0, "counter");
 }
 
diff --git a/openbsc/tests/sgsn/sgsn_test.c b/openbsc/tests/sgsn/sgsn_test.c
index 5ee5fa4..789817c 100644
--- a/openbsc/tests/sgsn/sgsn_test.c
+++ b/openbsc/tests/sgsn/sgsn_test.c
@@ -39,8 +39,6 @@
 
 #include <stdio.h>
 
-extern void *tall_msgb_ctx;
-
 void *tall_bsc_ctx;
 static struct sgsn_instance sgsn_inst = {
 	.config_file = "osmo_sgsn.cfg",
@@ -2423,11 +2421,12 @@
 int main(int argc, char **argv)
 {
 	void *osmo_sgsn_ctx;
+	void *msgb_ctx;
 
 	osmo_init_logging(&info);
 	osmo_sgsn_ctx = talloc_named_const(NULL, 0, "osmo_sgsn");
 	tall_bsc_ctx = talloc_named_const(osmo_sgsn_ctx, 0, "bsc");
-	tall_msgb_ctx = talloc_named_const(osmo_sgsn_ctx, 0, "msgb");
+	msgb_ctx = msgb_talloc_ctx_init(osmo_sgsn_ctx, 0);
 
 	sgsn_rate_ctr_init();
 	sgsn_auth_init();
@@ -2458,7 +2457,7 @@
 	printf("Done\n");
 
 	talloc_report_full(osmo_sgsn_ctx, stderr);
-	OSMO_ASSERT(talloc_total_blocks(tall_msgb_ctx) == 1);
+	OSMO_ASSERT(talloc_total_blocks(msgb_ctx) == 1);
 	OSMO_ASSERT(talloc_total_blocks(tall_bsc_ctx) == 2);
 	return 0;
 }
