|
@@ -391,11 +391,43 @@ static void daemon_on_sys(sp_svc_t *svc,int epid, int state, void *user_data)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+int sp_bcm_deamon_refresh(sp_bcm_daemon_t* daemon)
|
|
|
+{
|
|
|
+ int nelts = sp_mod_mgr_get_entity_array_nelts(sp_get_env()->mod_mgr);
|
|
|
+ int i;
|
|
|
+ DbgWithLinkForC(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM, "entity array nelts:%d", nelts);
|
|
|
+ /*
|
|
|
+ daemon_lock(daemon);
|
|
|
+ int oldNelts = daemon->arr_dst_list->nelts;
|
|
|
+ //array_reserve(daemon->arr_dst_list, nelts);
|
|
|
+ //array_reserve(daemon->arr_src_list, nelts);
|
|
|
+ //array_header_t* old_dst = daemon->arr_dst_list;
|
|
|
+ //array_header_t* old_src = daemon->arr_src_list;
|
|
|
+ //daemon->arr_dst_list = array_make(nelts, sizeof(struct list_head));
|
|
|
+ //daemon->arr_src_list = array_make(nelts, sizeof(struct list_head));
|
|
|
+ /*
|
|
|
+ for (i = 0; i < oldNelts; ++i)
|
|
|
+ {
|
|
|
+ ARRAY_IDX(daemon->arr_dst_list, i, struct list_head*) = ARRAY_IDX(old_dst, i, struct list_head*);
|
|
|
+ ARRAY_IDX(daemon->arr_src_list, i, struct list_head*) = ARRAY_IDX(old_src, i, struct list_head*);
|
|
|
+ }
|
|
|
+
|
|
|
+ for (i = 0; i < nelts - oldNelts; ++i) {
|
|
|
+ INIT_LIST_HEAD((struct list_head*)array_push(daemon->arr_src_list));
|
|
|
+ INIT_LIST_HEAD((struct list_head*)array_push(daemon->arr_dst_list));
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ daemon_unlock(daemon);
|
|
|
+ */
|
|
|
+}
|
|
|
+
|
|
|
int sp_bcm_daemon_create(sp_svc_t *svc, sp_bcm_daemon_t **p_daemon)
|
|
|
{
|
|
|
sp_bcm_daemon_t *daemon = ZALLOC_T(sp_bcm_daemon_t);
|
|
|
int i;
|
|
|
- int nelts = sp_mod_mgr_get_entity_array_nelts(sp_get_env()->mod_mgr);
|
|
|
+ int nelts = 100;// sp_mod_mgr_get_entity_array_nelts(sp_get_env()->mod_mgr);
|
|
|
|
|
|
DbgWithLinkForC(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM, "entity array nelts:%d", nelts);
|
|
|
|