[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20141121.145153.1551371249438323651.davem@davemloft.net>
Date: Fri, 21 Nov 2014 14:51:53 -0500 (EST)
From: David Miller <davem@...emloft.net>
To: dborkman@...hat.com
Cc: linux-sctp@...r.kernel.org, netdev@...r.kernel.org
Subject: Re: [PATCH net-next v2] net: sctp: keep owned chunk in
destructor_arg instead of skb->cb
From: Daniel Borkmann <dborkman@...hat.com>
Date: Thu, 20 Nov 2014 01:54:48 +0100
> It's just silly to hold the skb destructor argument around inside
> skb->cb[] as we currently do in SCTP.
>
> Nowadays, we're sort of cheating on data accounting in the sense
> that due to commit 4c3a5bdae293 ("sctp: Don't charge for data in
> sndbuf again when transmitting packet"), we orphan the skb already
> in the SCTP output path, i.e. giving back charged data memory, and
> use a different destructor only to make sure the sk doesn't vanish
> on skb destruction time. Thus, cb[] is still valid here as we
> operate within the SCTP layer. (It's generally actually a big
> candidate for future rework, imho.)
>
> However, storing the destructor in the cb[] can easily cause issues
> should an non sctp_packet_set_owner_w()'ed skb ever escape the SCTP
> layer, since cb[] may get overwritten by lower layers and thus can
> corrupt the chunk pointer. There are no such issues at present,
> but lets keep the chunk in destructor_arg, as this is the actual
> purpose for it.
>
> Signed-off-by: Daniel Borkmann <dborkman@...hat.com>
> ---
> v1->v2:
> - Only reworded commit message to make it more clear
Applied, thanks.
--
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