diff --git a/include/osmocom/msc/db.h b/include/osmocom/msc/db.h
index 6d07055..8d9ec41 100644
--- a/include/osmocom/msc/db.h
+++ b/include/osmocom/msc/db.h
@@ -24,6 +24,8 @@
 
 #include "gsm_subscriber.h"
 
+#define VSUB_USE_SMS_RECEIVER "SMS-receiver"
+
 struct gsm_network;
 struct gsm_sms;
 
diff --git a/include/osmocom/msc/ran_conn.h b/include/osmocom/msc/ran_conn.h
index fca7ab6..0b99e25 100644
--- a/include/osmocom/msc/ran_conn.h
+++ b/include/osmocom/msc/ran_conn.h
@@ -14,6 +14,8 @@
 #define LOG_RAN_CONN_CAT(conn, subsys, level, fmt, args ...) \
 	LOGPFSMSL((conn)? (conn)->fi : NULL, subsys, level, fmt, ## args)
 
+#define VSUB_USE_CONN "conn"
+
 enum ran_conn_fsm_event {
 	/* Accepted the initial Complete Layer 3 (starting to evaluate Authentication and Ciphering) */
 	RAN_CONN_E_COMPLETE_LAYER_3,
diff --git a/include/osmocom/msc/sms_queue.h b/include/osmocom/msc/sms_queue.h
index b5488fe..70cabe2 100644
--- a/include/osmocom/msc/sms_queue.h
+++ b/include/osmocom/msc/sms_queue.h
@@ -5,6 +5,8 @@
 struct gsm_sms_queue;
 struct vty;
 
+#define VSUB_USE_SMS_PENDING "SMS-pending"
+
 int sms_queue_start(struct gsm_network *, int in_flight);
 int sms_queue_trigger(struct gsm_sms_queue *);
 
diff --git a/include/osmocom/msc/vlr.h b/include/osmocom/msc/vlr.h
index d2d59c7..92ebda1 100644
--- a/include/osmocom/msc/vlr.h
+++ b/include/osmocom/msc/vlr.h
@@ -4,6 +4,7 @@
 #include <osmocom/core/linuxlist.h>
 #include <osmocom/core/fsm.h>
 #include <osmocom/core/logging.h>
+#include <osmocom/core/use_count.h>
 #include <osmocom/gsm/protocol/gsm_23_003.h>
 #include <osmocom/gsm/protocol/gsm_04_08_gprs.h>
 #include <osmocom/gsm/gsm23003.h>
@@ -26,6 +27,8 @@
 #define VLR_SUBSCRIBER_NO_EXPIRATION	0
 #define VLR_SUBSCRIBER_LU_EXPIRATION_INTERVAL	60	/* in seconds */
 
+#define VSUB_USE_ATTACHED "attached"
+
 /* from 3s to 10s */
 #define GSM_29002_TIMER_S	10
 /* from 15s to 30s */
@@ -158,7 +161,8 @@
 	bool ms_not_reachable_flag;			/* 2.10.2 (MNRF) */
 	bool la_allowed;
 
-	int use_count;
+	struct osmo_use_count use_count;
+	struct osmo_use_count_entry use_count_buf[10];
 
 	struct osmo_fsm_inst *lu_fsm;
 	struct osmo_fsm_inst *auth_fsm;
@@ -349,49 +353,56 @@
 const char *vlr_subscr_name(const struct vlr_subscr *vsub);
 const char *vlr_subscr_msisdn_or_name(const struct vlr_subscr *vsub);
 
-#define vlr_subscr_find_by_imsi(vlr, imsi) \
-	_vlr_subscr_find_by_imsi(vlr, imsi, __FILE__, __LINE__)
-#define vlr_subscr_find_or_create_by_imsi(vlr, imsi, created) \
-	_vlr_subscr_find_or_create_by_imsi(vlr, imsi, created, \
+#define vlr_subscr_find_by_imsi(vlr, imsi, USE) \
+	_vlr_subscr_find_by_imsi(vlr, imsi, USE, __FILE__, __LINE__)
+#define vlr_subscr_find_or_create_by_imsi(vlr, imsi, USE, created) \
+	_vlr_subscr_find_or_create_by_imsi(vlr, imsi, USE, created, \
 					   __FILE__, __LINE__)
 
-#define vlr_subscr_find_by_tmsi(vlr, tmsi) \
-	_vlr_subscr_find_by_tmsi(vlr, tmsi, __FILE__, __LINE__)
-#define vlr_subscr_find_or_create_by_tmsi(vlr, tmsi, created) \
-	_vlr_subscr_find_or_create_by_tmsi(vlr, tmsi, created, \
+#define vlr_subscr_find_by_tmsi(vlr, tmsi, USE) \
+	_vlr_subscr_find_by_tmsi(vlr, tmsi, USE, __FILE__, __LINE__)
+#define vlr_subscr_find_or_create_by_tmsi(vlr, tmsi, USE, created) \
+	_vlr_subscr_find_or_create_by_tmsi(vlr, tmsi, USE, created, \
 					   __FILE__, __LINE__)
 
-#define vlr_subscr_find_by_msisdn(vlr, msisdn) \
-	_vlr_subscr_find_by_msisdn(vlr, msisdn, __FILE__, __LINE__)
+#define vlr_subscr_find_by_msisdn(vlr, msisdn, USE) \
+	_vlr_subscr_find_by_msisdn(vlr, msisdn, USE, __FILE__, __LINE__)
 
 struct vlr_subscr *_vlr_subscr_find_by_imsi(struct vlr_instance *vlr,
 					    const char *imsi,
+					    const char *use,
 					    const char *file, int line);
 struct vlr_subscr *_vlr_subscr_find_or_create_by_imsi(struct vlr_instance *vlr,
 						      const char *imsi,
+						      const char *use,
 						      bool *created,
 						      const char *file,
 						      int line);
 
 struct vlr_subscr *_vlr_subscr_find_by_tmsi(struct vlr_instance *vlr,
 					    uint32_t tmsi,
+					    const char *use,
 					    const char *file, int line);
 struct vlr_subscr *_vlr_subscr_find_or_create_by_tmsi(struct vlr_instance *vlr,
 						      uint32_t tmsi,
+						      const char *use,
 						      bool *created,
 						      const char *file,
 						      int line);
 
 struct vlr_subscr *_vlr_subscr_find_by_msisdn(struct vlr_instance *vlr,
 					      const char *msisdn,
+					      const char *use,
 					      const char *file, int line);
 
-#define vlr_subscr_get(sub) _vlr_subscr_get(sub, __FILE__, __LINE__)
-#define vlr_subscr_put(sub) _vlr_subscr_put(sub, __FILE__, __LINE__)
-struct vlr_subscr *_vlr_subscr_get(struct vlr_subscr *sub, const char *file, int line);
-struct vlr_subscr *_vlr_subscr_put(struct vlr_subscr *sub, const char *file, int line);
+#define vlr_subscr_get(VSUB, USE) vlr_subscr_get_src(VSUB, USE, __FILE__, __LINE__)
+#define vlr_subscr_put(VSUB, USE) vlr_subscr_put_src(VSUB, USE, __FILE__, __LINE__)
 
-struct vlr_subscr *vlr_subscr_alloc(struct vlr_instance *vlr);
+#define vlr_subscr_get_src(VSUB, USE, SRCFILE, SRCLINE) \
+	OSMO_ASSERT(_osmo_use_count_get_put(&(VSUB)->use_count, USE, 1, SRCFILE, SRCLINE) == 0)
+#define vlr_subscr_put_src(VSUB, USE, SRCFILE, SRCLINE) \
+	OSMO_ASSERT(_osmo_use_count_get_put(&(VSUB)->use_count, USE, -1, SRCFILE, SRCLINE) == 0)
+
 void vlr_subscr_free(struct vlr_subscr *vsub);
 int vlr_subscr_alloc_tmsi(struct vlr_subscr *vsub);
 
diff --git a/include/osmocom/msc/vlr_sgs.h b/include/osmocom/msc/vlr_sgs.h
index cc07807..1cbb771 100644
--- a/include/osmocom/msc/vlr_sgs.h
+++ b/include/osmocom/msc/vlr_sgs.h
@@ -26,6 +26,9 @@
 struct vlr_subscr;
 struct vlr_instance;
 
+#define VSUB_USE_SGS "SGs"
+#define VSUB_USE_SGS_PAGING "SGs-paging"
+
 /* See also 3GPP TS 29.118, chapter 4.2.2 States at the VLR */
 enum sgs_ue_fsm_state {
 	SGS_UE_ST_NULL,
