Page MenuHomeFreeBSD

Another syzkaller crash
ClosedPublic

Authored by rrs on Sep 1 2020, 12:09 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Dec 13, 5:17 PM
Unknown Object (File)
Oct 17 2024, 2:48 AM
Unknown Object (File)
Sep 22 2024, 5:28 PM
Unknown Object (File)
Sep 16 2024, 2:35 AM
Unknown Object (File)
Sep 16 2024, 2:35 AM
Unknown Object (File)
Sep 16 2024, 2:34 AM
Unknown Object (File)
Sep 16 2024, 2:34 AM
Unknown Object (File)
Sep 16 2024, 2:25 AM
Subscribers

Details

Summary

So it turns out that syzkaller hit another crash. It has to do with switching
stacks with a SENT_FIN outstanding. Both rack and bbr will only send a
FIN if all data is ack'd so this must be enforced. Also if the previous stack
sent the FIN we need to make sure in rack that when we manufacture the
"unknown" sends that we include the proper HAS_FIN bits.

Note for BBR we take a simpler approach and just refuse to switch.

Test Plan

Run the syzkaller reproducer and verify that we no longer crash

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

rrs requested review of this revision.Sep 1 2020, 12:09 PM
rrs edited the summary of this revision. (Show Details)

Fix the typo's in the comment that Michael pointed out!

tuexen retitled this revision from Another skyzall crash to Another syzkaller crash.
tuexen edited the summary of this revision. (Show Details)
tuexen edited the test plan for this revision. (Show Details)

I ran the reproducers for RAVK and BBR and the problem does not show up anymore.

This revision is now accepted and ready to land.Sep 1 2020, 10:29 PM