Re: [PATCH v3 net-next 1/8] sctp: Defer SCTP_DBG_OBJCNT_DEC() to sctp_destroy_sock().

Xin Long <[email protected]>
Newsgroups org.kernel.vger.linux-sctp,org.kernel.vger.netdev
Message-ID <CADvbK_d92g+ZxyyB1QECp=ONxzsgJn-FD1HXz1NAzRGYMG-Kxw@mail.gmail.com>
On Thu, Oct 23, 2025 at 7:17 PM Kuniyuki Iwashima <[email protected]> wrote:
>
> SCTP_DBG_OBJCNT_INC() is called only when sctp_init_sock()
> returns 0 after successfully allocating sctp_sk(sk)->ep.
>
> OTOH, SCTP_DBG_OBJCNT_DEC() is called in sctp_close().
>
> The code seems to expect that the socket is always exposed
> to userspace once SCTP_DBG_OBJCNT_INC() is incremented, but
> there is a path where the assumption is not true.
>
> In sctp_accept(), sctp_sock_migrate() could fail after
> sctp_init_sock().
>
> Then, sk_common_release() does not call inet_release() nor
> sctp_close().  Instead, it calls sk->sk_prot->destroy().
>
> Let's move SCTP_DBG_OBJCNT_DEC() from sctp_close() to
> sctp_destroy_sock().
>
> Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
> Signed-off-by: Kuniyuki Iwashima <[email protected]>
Acked-by: Xin Long <[email protected]>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.