net_sched: fix two more memory leaks in cls_tcindex
authorCong Wang <xiyou.wangcong@gmail.com>
Mon, 11 Feb 2019 21:06:16 +0000 (13:06 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 16 May 2019 17:42:30 +0000 (19:42 +0200)
commitcdf6680a909a37cb2761dc3a06454b44339fd718
tree75e33dbaccd7751bcde5e581df20296a5963a1d4
parent20e1d42ccf8f97fb6ceaf7cbae92169391196726
net_sched: fix two more memory leaks in cls_tcindex

[ Upstream commit 1db817e75f5b9387b8db11e37d5f0624eb9223e0 ]

struct tcindex_filter_result contains two parts:
struct tcf_exts and struct tcf_result.

For the local variable 'cr', its exts part is never used but
initialized without being released properly on success path. So
just completely remove the exts part to fix this leak.

For the local variable 'new_filter_result', it is never properly
released if not used by 'r' on success path.

Cc: Jamal Hadi Salim <jhs@mojatatu.com>
Cc: Jiri Pirko <jiri@resnulli.us>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
net/sched/cls_tcindex.c