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

ipmi: Fix memory leak in __ipmi_bmc_register

mainline inclusion
from mainline-v5.5
commit 4aa7afb0ee20a97fbf0c5bab3df028d5fb85fdab
category: bugfix
bugzilla: 13690
CVE: CVE-2019-19046

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

In the impelementation of __ipmi_bmc_register() the allocated memory for
bmc should be released in case ida_simple_get() fails.

Fixes: 68e7e50f ("ipmi: Don't use BMC product/dev ids in the BMC name")
Signed-off-by: NNavid Emamdoost <navid.emamdoost@gmail.com>
Message-Id: <20191021200649.1511-1-navid.emamdoost@gmail.com>
Signed-off-by: NCorey Minyard <cminyard@mvista.com>
Signed-off-by: NYang Yingliang <yangyingliang@huawei.com>
Reviewed-by: NHanjun Guo <guohanjun@huawei.com>
Signed-off-by: NYang Yingliang <yangyingliang@huawei.com>
上级 0c3a5e01
...@@ -2947,8 +2947,11 @@ static int __ipmi_bmc_register(struct ipmi_smi *intf, ...@@ -2947,8 +2947,11 @@ static int __ipmi_bmc_register(struct ipmi_smi *intf,
bmc->pdev.name = "ipmi_bmc"; bmc->pdev.name = "ipmi_bmc";
rv = ida_simple_get(&ipmi_bmc_ida, 0, 0, GFP_KERNEL); rv = ida_simple_get(&ipmi_bmc_ida, 0, 0, GFP_KERNEL);
if (rv < 0) if (rv < 0) {
kfree(bmc);
goto out; goto out;
}
bmc->pdev.dev.driver = &ipmidriver.driver; bmc->pdev.dev.driver = &ipmidriver.driver;
bmc->pdev.id = rv; bmc->pdev.id = rv;
bmc->pdev.dev.release = release_bmc_device; bmc->pdev.dev.release = release_bmc_device;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册