Page MenuHomeFreeBSD

Crashing in a race with SOCK_DGRAM and unix domain sockets
Needs ReviewPublic

Authored by rrs on Feb 13 2019, 3:03 PM.

Details

Reviewers
kmacy
gallatin
Summary

We have encountered a crash in unix domain sockets. It appears
we had a process crash, and we ended up going through the code
that I have changed here. It drops a reference on unp2. This
drop I don't think is matched with any raise. This then causes us
to have an incorrect reference so we end up with the unp that
was connected to unp2, being freed. Which causes us to crash.

I want Matt to take a look at this because I am not as familiar with the code
has he is. Maybe I missed a reference here.. but I think not :(

Test Plan

crash many processes that use the domain socket and see that
we no longer crash :)

Diff Detail

Lint
Lint Skipped
Unit
Unit Tests Skipped

Event Timeline

rrs created this revision.Feb 13 2019, 3:03 PM