提交 e5e6761e 编写于 作者: N Navid Emamdoost 提交者: Xie XiuQi

drm/amd/display: memory leak

mainline inclusion
from mainline-v5.4-rc2
commit 055e547478a11a6360c7ce05e2afc3e366968a12
category: bugfix
bugzilla: 13690
CVE: CVE-2019-19083

-------------------------------------------------

In dcn*_clock_source_create when dcn20_clk_src_construct fails allocated
clk_src needs release.
Signed-off-by: NNavid Emamdoost <navid.emamdoost@gmail.com>
Signed-off-by: NAlex Deucher <alexander.deucher@amd.com>
Conflicts:
  drivers/gpu/drm/amd/display/dc/dcn20/dcn20_resource.c
[yyl: dcn20_resource.c is not merged in hulk-4.19]
Signed-off-by: NYang Yingliang <yangyingliang@huawei.com>
Reviewed-by: NKefeng Wang <wangkefeng.wang@huawei.com>
Signed-off-by: NYang Yingliang <yangyingliang@huawei.com>
上级 f91f3d3e
...@@ -622,6 +622,7 @@ struct clock_source *dce100_clock_source_create( ...@@ -622,6 +622,7 @@ struct clock_source *dce100_clock_source_create(
return &clk_src->base; return &clk_src->base;
} }
kfree(clk_src);
BREAK_TO_DEBUGGER(); BREAK_TO_DEBUGGER();
return NULL; return NULL;
} }
......
...@@ -640,6 +640,7 @@ struct clock_source *dce110_clock_source_create( ...@@ -640,6 +640,7 @@ struct clock_source *dce110_clock_source_create(
return &clk_src->base; return &clk_src->base;
} }
kfree(clk_src);
BREAK_TO_DEBUGGER(); BREAK_TO_DEBUGGER();
return NULL; return NULL;
} }
......
...@@ -640,6 +640,7 @@ struct clock_source *dce112_clock_source_create( ...@@ -640,6 +640,7 @@ struct clock_source *dce112_clock_source_create(
return &clk_src->base; return &clk_src->base;
} }
kfree(clk_src);
BREAK_TO_DEBUGGER(); BREAK_TO_DEBUGGER();
return NULL; return NULL;
} }
......
...@@ -427,6 +427,7 @@ struct clock_source *dce120_clock_source_create( ...@@ -427,6 +427,7 @@ struct clock_source *dce120_clock_source_create(
return &clk_src->base; return &clk_src->base;
} }
kfree(clk_src);
BREAK_TO_DEBUGGER(); BREAK_TO_DEBUGGER();
return NULL; return NULL;
} }
......
...@@ -640,6 +640,7 @@ struct clock_source *dce80_clock_source_create( ...@@ -640,6 +640,7 @@ struct clock_source *dce80_clock_source_create(
return &clk_src->base; return &clk_src->base;
} }
kfree(clk_src);
BREAK_TO_DEBUGGER(); BREAK_TO_DEBUGGER();
return NULL; return NULL;
} }
......
...@@ -717,6 +717,7 @@ struct clock_source *dcn10_clock_source_create( ...@@ -717,6 +717,7 @@ struct clock_source *dcn10_clock_source_create(
return &clk_src->base; return &clk_src->base;
} }
kfree(clk_src);
BREAK_TO_DEBUGGER(); BREAK_TO_DEBUGGER();
return NULL; return NULL;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册