ctl client disconnect doesn't re-set timeslot state
- the fact that a given timeslot is no longer open (subsequent open of that TS gets a "cannot re-open unless FORCE option is used" error)
- the socketpair() file-descriptors for the per-timeslot data are not closed
It's currently not possible to fix this directly, as nothing in osmo-e1d tracks the relationship of client<->timeslot. So without that state, we cannot clean up.
Updated by laforge about 1 year ago
if e1d is trying to write to that per-ts socket, it will of course get a "broken pipe" error.
<0000> mux_demux.c:318 (I3:L0:T2) dead socket during write: Broken pipeHowever, this only happens the next time something needs to be written. This may not be the case as
- no data is received from E1 (link down)
- the timeslot is in HDLC mode, and no new HDLC frame arrives after the client disappeared
In such cases, the old socket/fd is lingering around.