On 02/15/2018 09:07 AM, Prarit Bhargava wrote:
The ipmi_dmi_info struct is added on IPMI device initialization failure
resulting in incorrect data in the ipmi_dmi_infos list.
No, that list has nothing to do with the platform device.
Drop the "out of memory warning" and only add the ipmi_dmi_info struct on
IPMI device initialization on success.
Yeah, I need to stop doing the warnings on memory allocation. Removing
the warning
is ok. The other changes are not.
-corey
Signed-off-by: Prarit Bhargava <pra...@redhat.com>
Cc: Corey Minyard <miny...@acm.org>
---
drivers/char/ipmi/ipmi_dmi.c | 22 ++++++++++------------
1 file changed, 10 insertions(+), 12 deletions(-)
diff --git a/drivers/char/ipmi/ipmi_dmi.c b/drivers/char/ipmi/ipmi_dmi.c
index c5112b17d7ea..ccd9a85ba2c1 100644
--- a/drivers/char/ipmi/ipmi_dmi.c
+++ b/drivers/char/ipmi/ipmi_dmi.c
@@ -89,18 +89,6 @@ static void __init dmi_add_platform_ipmi(unsigned long
base_addr,
set_prop_entry(p[pidx++], "slave-addr", u8, slave_addr);
set_prop_entry(p[pidx++], "addr-source", u8, SI_SMBIOS);
- info = kmalloc(sizeof(*info), GFP_KERNEL);
- if (!info) {
- pr_warn("ipmi:dmi: Could not allocate dmi info\n");
- } else {
- info->si_type = si_type;
- info->flags = flags;
- info->addr = base_addr;
- info->slave_addr = slave_addr;
- info->next = ipmi_dmi_infos;
- ipmi_dmi_infos = info;
- }
-
pdev = platform_device_alloc(name, ipmi_dmi_nr);
if (!pdev) {
pr_err("ipmi:dmi: Error allocation IPMI platform device\n");
@@ -168,6 +156,16 @@ static void __init dmi_add_platform_ipmi(unsigned long
base_addr,
goto err;
}
+ info = kmalloc(sizeof(*info), GFP_KERNEL);
+ if (info) {
+ info->si_type = si_type;
+ info->flags = flags;
+ info->addr = base_addr;
+ info->slave_addr = slave_addr;
+ info->next = ipmi_dmi_infos;
+ ipmi_dmi_infos = info;
+ }
+
ipmi_dmi_nr++;
return;
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Openipmi-developer mailing list
Openipmi-developer@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openipmi-developer