diff options
author | kmacy <kmacy@FreeBSD.org> | 2008-07-31 20:27:50 +0000 |
---|---|---|
committer | kmacy <kmacy@FreeBSD.org> | 2008-07-31 20:27:50 +0000 |
commit | 3bdaf5becf92a80bf4532a43163b41c1aca24d62 (patch) | |
tree | 48b0986878a5863a3ae8e4f44ab263822307c161 /sys | |
parent | 0bfdb53f7a57e9d090b45a377593b069fc8bb9cf (diff) | |
download | FreeBSD-src-3bdaf5becf92a80bf4532a43163b41c1aca24d62.zip FreeBSD-src-3bdaf5becf92a80bf4532a43163b41c1aca24d62.tar.gz |
move sockbuf locking macros in to sockbuf.h
Diffstat (limited to 'sys')
-rw-r--r-- | sys/sys/sockbuf.h | 18 | ||||
-rw-r--r-- | sys/sys/socketvar.h | 14 |
2 files changed, 18 insertions, 14 deletions
diff --git a/sys/sys/sockbuf.h b/sys/sys/sockbuf.h index f736c4d..b081114 100644 --- a/sys/sys/sockbuf.h +++ b/sys/sys/sockbuf.h @@ -32,6 +32,10 @@ */ #ifndef _SYS_SOCKBUF_H_ #define _SYS_SOCKBUF_H_ +#include <sys/selinfo.h> /* for struct selinfo */ +#include <sys/_lock.h> +#include <sys/_mutex.h> +#include <sys/_sx.h> #define SB_MAX (256*1024) /* default for max chars in sockbuf */ @@ -99,6 +103,20 @@ struct sockbuf { #ifdef _KERNEL +/* + * Per-socket buffer mutex used to protect most fields in the socket + * buffer. + */ +#define SOCKBUF_MTX(_sb) (&(_sb)->sb_mtx) +#define SOCKBUF_LOCK_INIT(_sb, _name) \ + mtx_init(SOCKBUF_MTX(_sb), _name, NULL, MTX_DEF) +#define SOCKBUF_LOCK_DESTROY(_sb) mtx_destroy(SOCKBUF_MTX(_sb)) +#define SOCKBUF_LOCK(_sb) mtx_lock(SOCKBUF_MTX(_sb)) +#define SOCKBUF_OWNED(_sb) mtx_owned(SOCKBUF_MTX(_sb)) +#define SOCKBUF_UNLOCK(_sb) mtx_unlock(SOCKBUF_MTX(_sb)) +#define SOCKBUF_LOCK_ASSERT(_sb) mtx_assert(SOCKBUF_MTX(_sb), MA_OWNED) +#define SOCKBUF_UNLOCK_ASSERT(_sb) mtx_assert(SOCKBUF_MTX(_sb), MA_NOTOWNED) + void sbappend(struct sockbuf *sb, struct mbuf *m); void sbappend_locked(struct sockbuf *sb, struct mbuf *m); void sbappendstream(struct sockbuf *sb, struct mbuf *m); diff --git a/sys/sys/socketvar.h b/sys/sys/socketvar.h index 49d5d6c..8ce97e5 100644 --- a/sys/sys/socketvar.h +++ b/sys/sys/socketvar.h @@ -130,20 +130,6 @@ extern struct mtx accept_mtx; #define ACCEPT_UNLOCK() mtx_unlock(&accept_mtx) /* - * Per-socket buffer mutex used to protect most fields in the socket - * buffer. - */ -#define SOCKBUF_MTX(_sb) (&(_sb)->sb_mtx) -#define SOCKBUF_LOCK_INIT(_sb, _name) \ - mtx_init(SOCKBUF_MTX(_sb), _name, NULL, MTX_DEF) -#define SOCKBUF_LOCK_DESTROY(_sb) mtx_destroy(SOCKBUF_MTX(_sb)) -#define SOCKBUF_LOCK(_sb) mtx_lock(SOCKBUF_MTX(_sb)) -#define SOCKBUF_OWNED(_sb) mtx_owned(SOCKBUF_MTX(_sb)) -#define SOCKBUF_UNLOCK(_sb) mtx_unlock(SOCKBUF_MTX(_sb)) -#define SOCKBUF_LOCK_ASSERT(_sb) mtx_assert(SOCKBUF_MTX(_sb), MA_OWNED) -#define SOCKBUF_UNLOCK_ASSERT(_sb) mtx_assert(SOCKBUF_MTX(_sb), MA_NOTOWNED) - -/* * Per-socket mutex: we reuse the receive socket buffer mutex for space * efficiency. This decision should probably be revisited as we optimize * locking for the socket code. |