diff --git a/openair2/ENB_APP/flexran_agent_common_internal.c b/openair2/ENB_APP/flexran_agent_common_internal.c
index c2bd396e36f5828c716dbfc141235c62166dfa78..67f4b7371cb5580608148e32062a421932a9d87e 100644
--- a/openair2/ENB_APP/flexran_agent_common_internal.c
+++ b/openair2/ENB_APP/flexran_agent_common_internal.c
@@ -62,6 +62,9 @@ void handle_reconfiguration(mid_t mod_id)
       return;
     }
     enb_app_start_phy_rrc(mod_id, mod_id+1);
+    MessageDef *msg_p = itti_alloc_new_message(TASK_ENB_APP, INITIALIZE_MESSAGE);
+    itti_send_msg_to_task(TASK_L2L1, INSTANCE_DEFAULT, msg_p);
+
     int diff_ms = (1000 * clock() - start_ms) / CLOCKS_PER_SEC;
     LOG_I(ENB_APP, "lte-softmodem restart succeeded in %d ms\n", diff_ms);
   }
diff --git a/targets/RT/USER/lte-softmodem.c b/targets/RT/USER/lte-softmodem.c
index 39f40733f255d7eff71f5cdae0f9490ca52162db..04113ef3ae46052d8201eca9cf17a06fe725d126 100644
--- a/targets/RT/USER/lte-softmodem.c
+++ b/targets/RT/USER/lte-softmodem.c
@@ -555,7 +555,8 @@ void *l2l1_task(void *arg) {
 
             case TERMINATE_MESSAGE:
                 LOG_W(TASK_L2L1, " *** Exiting L2L1 thread\n");
-                oai_exit=1;
+                oai_exit = 1;
+                start_eNB = 0;
                 itti_exit_task ();
                 break;