diff options
author | dillon <dillon@FreeBSD.org> | 2001-11-17 03:07:11 +0000 |
---|---|---|
committer | dillon <dillon@FreeBSD.org> | 2001-11-17 03:07:11 +0000 |
commit | 86ed17d675cb503ddb3f71f8b6f7c3af530bb29a (patch) | |
tree | d5160b5791cda1a8cfbbcd3f5e1bd7ea97561c8f /sys/net | |
parent | fe91520d395f7879be049a289cbac3389fed1749 (diff) | |
download | FreeBSD-src-86ed17d675cb503ddb3f71f8b6f7c3af530bb29a.zip FreeBSD-src-86ed17d675cb503ddb3f71f8b6f7c3af530bb29a.tar.gz |
Give struct socket structures a ref counting interface similar to
vnodes. This will hopefully serve as a base from which we can
expand the MP code. We currently do not attempt to obtain any
mutex or SX locks, but the door is open to add them when we nail
down exactly how that part of it is going to work.
Diffstat (limited to 'sys/net')
-rw-r--r-- | sys/net/raw_cb.c | 2 | ||||
-rw-r--r-- | sys/net/raw_usrreq.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/sys/net/raw_cb.c b/sys/net/raw_cb.c index 97dbc10..0dac2e5 100644 --- a/sys/net/raw_cb.c +++ b/sys/net/raw_cb.c @@ -97,7 +97,7 @@ raw_detach(rp) struct socket *so = rp->rcb_socket; so->so_pcb = 0; - sofree(so); + sotryfree(so); LIST_REMOVE(rp, list); #ifdef notdef if (rp->rcb_laddr) diff --git a/sys/net/raw_usrreq.c b/sys/net/raw_usrreq.c index 555bd3f..3138b10 100644 --- a/sys/net/raw_usrreq.c +++ b/sys/net/raw_usrreq.c @@ -142,8 +142,8 @@ raw_uabort(struct socket *so) if (rp == 0) return EINVAL; raw_disconnect(rp); - sofree(so); - soisdisconnected(so); + sotryfree(so); + soisdisconnected(so); /* XXX huh? called after the sofree()? */ return 0; } |