]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
tcp: Incorrect KASSERT causes a panic in rack
authorRandall Stewart <rrs@FreeBSD.org>
Thu, 13 May 2021 11:36:04 +0000 (07:36 -0400)
committerRandall Stewart <rrs@FreeBSD.org>
Thu, 13 May 2021 11:36:04 +0000 (07:36 -0400)
commit02cffbc2507e83944b0c29d69d6ddf26c9386d54
tree4ddcbe311b525d933e8803825da3202fb31d222d
parent8ea5eeb913b94aa45aa7773d14b31222d509ec34
tcp: Incorrect KASSERT causes a panic in rack

Skyzall found an interesting panic in rack. When a SYN and FIN are
both sent together a KASSERT gets tripped where it is validating that
a mbuf pointer is in the sendmap. But a SYN and FIN often will not
have a mbuf pointer. So the fix is two fold a) make sure that the
SYN and FIN split the right way when cloning an RSM SYN on left
edge and FIN on right. And also make sure the KASSERT properly
accounts for the case that we have a SYN or FIN so we don't
panic.

Reviewed by: mtuexen
Sponsored by: Netflix Inc.
Differential Revision: https://reviews.freebsd.org/D30241
sys/netinet/tcp_stacks/rack.c