[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <DA7AE80C-302D-4B9D-9C0E-BA980E25DFCE@gmail.com>
Date: Sat, 19 Oct 2013 13:36:35 -0400
From: Vlad Yasevich <vyasevich@...il.com>
To: Geyslan Gregório Bem <geyslan@...il.com>
Cc: Neil Horman <nhorman@...driver.com>,
"David S. Miller" <davem@...emloft.net>,
"linux-sctp@...r.kernel.org" <linux-sctp@...r.kernel.org>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: net: sctp: possible dereference after freeing
On Oct 19, 2013, at 7:49 AM, Geyslan Gregório Bem <geyslan@...il.com> wrote:
> 2013/10/19 Geyslan Gregório Bem <geyslan@...il.com>:
>> Hi maintainers,
>>
>> I would like to know if these are catches:
>>
>> /net/sctp/endpointola.c (281)
>> static void sctp_endpoint_destroy(struct sctp_endpoint *ep)
>> {
>> struct sock *sk;
>> ...
>> kfree(ep);
>> SCTP_DBG_OBJCNT_DEC(ep);
>> }
>>
>> The 'ep' object counter is being decremented?! Is the kfree to be there indeed?
>> Let me know what was intended here.
>>
>> Same here:
>> /net/sctp/endpointola.c (165)
>> static void sctp_transport_destroy_rcu(struct rcu_head *head)
>> {
>> struct sctp_transport *transport;
>> ...
>> kfree(transport);
>> SCTP_DBG_OBJCNT_DEC(transport);
>> }
>>
>> Regards,
>>
>> Geyslan Gregório Bem
>> hackingbits.com
>
> Oops. I got it. ;)
>
> extern atomic_t sctp_dbg_objcnt_ep;
> http://lxr.free-electrons.com/source/include/net/sctp/sctp.h#L269
> extern atomic_t sctp_dbg_objcnt_transport;
> http://lxr.free-electrons.com/source/arch/x86/include/asm/atomic.h#L105
>
> Cheers.
There is no reference here since the macro turns variable name to string using ## name.
So the order doesn't matter really.
-vlad --
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists