[paging] Introduce a variable containing the free paging slots

Start with a large number of available slots. It is guranteed
that we will - at some point - get a paging load and will properly
update the counter and keep it updated.

diff --git a/include/openbsc/gsm_data.h b/include/openbsc/gsm_data.h
index c87b25d..006a8c0 100644
--- a/include/openbsc/gsm_data.h
+++ b/include/openbsc/gsm_data.h
@@ -204,6 +204,9 @@
 	struct gsm_paging_request *last_request;
 	struct gsm_bts *bts;
 
+	/* load */
+	u_int16_t available_slots;
+
 	/* tick timer */
 	struct timer_list paging_timer;
 };
diff --git a/include/openbsc/paging.h b/include/openbsc/paging.h
index 1260a9b..0e5a0d4 100644
--- a/include/openbsc/paging.h
+++ b/include/openbsc/paging.h
@@ -38,4 +38,7 @@
 /* stop paging requests */
 void paging_request_stop(struct gsm_bts *bts, struct gsm_subscriber *subscr);
 
+/* update paging load */
+void paging_update_buffer_space(struct gsm_bts *bts, u_int16_t);
+
 #endif