Page MenuHomeFreeBSD

unix: Fix locking in uipc_peeraddr()
ClosedPublic

Authored by markj on Apr 27 2023, 4:58 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Sep 23, 3:42 PM
Unknown Object (File)
Wed, Sep 18, 2:55 AM
Unknown Object (File)
Wed, Sep 18, 12:46 AM
Unknown Object (File)
Mon, Sep 16, 11:26 PM
Unknown Object (File)
Sun, Sep 15, 10:07 PM
Unknown Object (File)
Sun, Sep 8, 9:43 AM
Unknown Object (File)
Sun, Sep 8, 3:56 AM
Unknown Object (File)
Sat, Sep 7, 6:43 AM
Subscribers

Details

Summary

After the locking protocol changed in commit 75a67bf3d00d ("AF_UNIX:
make unix socket locking finer grained"), uipc_peeraddr() was not
updated accordingly.

The link lock now only protects global socket lists. The PCB lock is
used to protect the link between connected PCBs, so use that. Remove an
old comment which appears to be noting that unp_conn is not set for
connected SOCK_DGRAM sockets (in one direction anyway).

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable