don't try multiple concurrent handovers for 1 channel
diff --git a/openbsc/src/handover_logic.c b/openbsc/src/handover_logic.c
index 68cdcba..9da8baf 100644
--- a/openbsc/src/handover_logic.c
+++ b/openbsc/src/handover_logic.c
@@ -88,6 +88,11 @@
static u_int8_t ho_ref;
int rc;
+ /* don't attempt multiple handovers for the same lchan at
+ * the same time */
+ if (bsc_ho_by_old_lchan(old_lchan))
+ return -EBUSY;
+
DEBUGP(DHO, "(old_lchan on BTS %u, new BTS %u): ",
old_lchan->ts->trx->bts->nr, bts->nr);