The SACK code was panicking, but it is possible to have length = 0 (on a SYN or FIN). We can just ignore any potential SACK updates in those cases.
Signed-off-by: Barret Rhoden <[email protected]> --- Merged to master at 734fb3e242e2..770ca98bc691 (from, to] You can see the entire diff with 'git diff' or at https://github.com/brho/akaros/compare/734fb3e242e2...770ca98bc691 kern/src/net/tcp.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/kern/src/net/tcp.c b/kern/src/net/tcp.c index 887057cd1d7f..898eb8701b5d 100644 --- a/kern/src/net/tcp.c +++ b/kern/src/net/tcp.c @@ -2129,6 +2129,8 @@ static void track_rcv_sack(Tcpctl *tcb, uint32_t left, uint32_t right) if (!tcb->sack_ok) return; + if (left == right) + return; assert(seq_lt(left, right)); sack->left = left; sack->right = right; -- 2.14.3 -- You received this message because you are subscribed to the Google Groups "Akaros" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. For more options, visit https://groups.google.com/d/optout.
