[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20170211.213923.229808067383794475.davem@davemloft.net>
Date: Sat, 11 Feb 2017 21:39:23 -0500 (EST)
From: David Miller <davem@...emloft.net>
To: eric.dumazet@...il.com
Cc: netdev@...r.kernel.org
Subject: Re: [PATCH net-next] net_sched: fix error recovery at qdisc
creation
From: Eric Dumazet <eric.dumazet@...il.com>
Date: Fri, 10 Feb 2017 10:31:49 -0800
> From: Eric Dumazet <edumazet@...gle.com>
>
> Dmitry reported uses after free in qdisc code [1]
>
> The problem here is that ops->init() can return an error.
>
> qdisc_create_dflt() then call ops->destroy(),
> while qdisc_create() does _not_ call it.
>
> Four qdisc chose to call their own ops->destroy(), assuming their caller
> would not.
>
> This patch makes sure qdisc_create() calls ops->destroy()
> and fixes the four qdisc to avoid double free.
...
> Signed-off-by: Eric Dumazet <edumazet@...gle.com>
> Reported-by: Dmitry Vyukov <dvyukov@...gle.com>
Applied, thanks Eric.
Powered by blists - more mailing lists