diff --git a/usrsctplib/user_socketvar.h b/usrsctplib/user_socketvar.h index e8eccc7fb..04c806a88 100755 --- a/usrsctplib/user_socketvar.h +++ b/usrsctplib/user_socketvar.h @@ -404,15 +404,25 @@ void sofree(struct socket *so); #define soref(so) do { \ SOCK_LOCK_ASSERT(so); \ ++(so)->so_count; \ + SCTPDBG(SCTP_DEBUG_USR, "soref(%p) -> %d, %s:%s:%d\n", \ + (so), (so)->so_count, \ + __func__, __FILE__, __LINE__) \ } while (0) #define sorele(so) do { \ ACCEPT_LOCK_ASSERT(); \ SOCK_LOCK_ASSERT(so); \ KASSERT((so)->so_count > 0, ("sorele")); \ - if (--(so)->so_count == 0) \ + if (--(so)->so_count == 0) { \ + SCTPDBG(SCTP_DEBUG_USR, "sorele(%p) -> %d, %s:%s:%d\n", \ + (so), (so)->so_count, \ + __func__, __FILE__, __LINE__) \ sofree(so); \ + } \ else { \ + SCTPDBG(SCTP_DEBUG_USR, "sorele(%p) -> %d, %s:%s:%d\n", \ + (so), (so)->so_count, \ + __func__, __FILE__, __LINE__) \ SOCK_UNLOCK(so); \ ACCEPT_UNLOCK(); \ } \