summaryrefslogtreecommitdiffstats
path: root/secure/usr.bin
diff options
context:
space:
mode:
authorrwatson <rwatson@FreeBSD.org>2007-02-14 12:22:11 +0000
committerrwatson <rwatson@FreeBSD.org>2007-02-14 12:22:11 +0000
commitc0d4ce5ca7286852d2e2ff41cdd7fdae6d1102f7 (patch)
tree423e12199d7bd0925d85dc97489455e498e15c6b /secure/usr.bin
parent59d9c63868cc70ddfa93773887808c29f5214891 (diff)
downloadFreeBSD-src-c0d4ce5ca7286852d2e2ff41cdd7fdae6d1102f7.zip
FreeBSD-src-c0d4ce5ca7286852d2e2ff41cdd7fdae6d1102f7.tar.gz
Change unp_mtx to supporting recursion, and do not drop the unp_mtx over
sonewconn() in unp_connect(). This avoids a race that occurs due to v_socket being an uncounted reference, as the lock was being released in order to call sonewconn(), which otherwise recurses into the UNIX domain socket code via pru_attach, as well as holding the lock over a sleeping memory allocation in uipc_attach(). Switch to a non-sleeping memory allocation during UNIX domain socket attach. This fix non-ideal in that it requires enabling recursion, but is a much smaller change than moving to using true references for v_socket. The reported panic occurs in unp_connect() following the return of sonewconn(). Update copyright year. Panic reported by: jhb
Diffstat (limited to 'secure/usr.bin')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud