Commit 6e208ea
committed
rrc: fix RLF re-establishment crash -- address peer teardown with leg-correct node id
handleRadioLinkFailure drives the symmetric teardown on the peer via
peerBm->releaseLink(myId), where myId identifies the failing node to the peer: the
peer deletes its PDCP/RLC/MAC entities for this link keyed by that id (the source/dest
id it saw on the bearer). myId was hardcoded to registration_->getLteNodeId(), which is
NODEID_NONE on a standalone NR gNB (a GNODEB stores its id in nrNodeId; see
Registration). So the peer UE received 0, its keyed PDCP deletion (kept per-node to
protect the other leg in DC) matched nothing, and pdcp-rx-<gnb>-<drb> survived -- while
the UE-side RLC deletion (wipe-all) removed the RLC entity. On the first post-reconnect
DL packet the on-demand rebuild then hit 'Cannot insert module pdcp-rx-1-1 ... already
exists' and aborted.
Address the peer with our id on the FAILING leg instead:
myId = nrStack ? registration_->getNrNodeId() : registration_->getLteNodeId();
This is the id the peer actually keyed by, so its keyed PDCP deletion now removes the
stale entity and re-establishment rebuilds cleanly. Latent since the DRB teardown became
duplex (the cross-node symmetric releaseLink is the bidirectional half); the mismatched
field is the node id, not the drbId.
Validated (nr/standalone VoIP-DL-AM-Lossy, forced RLF via maxRtxThreshold=1 maxHarqRtx=0,
t311=1s t301=0.1s): run is now crash-free through the full 5s, teardown addresses the UE
with the gNB's NR id (1, was 0), and DL delivery RESUMES -- 113 UE deliveries, 95 of them
after the reconnect at t=1.529s (parent: crashed at 18, none after). Fingerprint suite
137/137 PASS byte-identical (default t311=0 => RLF path not exercised).1 parent 0e3be82 commit 6e208ea
1 file changed
Lines changed: 6 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
134 | 134 | | |
135 | 135 | | |
136 | 136 | | |
137 | | - | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
138 | 143 | | |
139 | 144 | | |
140 | 145 | | |
| |||
0 commit comments