platform/x86: think-lmi: Fix reference leak
authorArmin Wolf <W_Armin@gmx.de>
Mon, 25 Sep 2023 14:28:18 +0000 (16:28 +0200)
committerHans de Goede <hdegoede@redhat.com>
Wed, 4 Oct 2023 09:52:17 +0000 (11:52 +0200)
commit528ab3e605cabf2f9c9bd5944d3bfe15f6e94f81
treecfff5f66036d5c7aaee06ba85b9da0d1f64ad4e9
parentbc3b6f59463ba9f4367a80331213db491766b5a1
platform/x86: think-lmi: Fix reference leak

If a duplicate attribute is found using kset_find_obj(), a reference
to that attribute is returned which needs to be disposed accordingly
using kobject_put(). Move the setting name validation into a separate
function to allow for this change without having to duplicate the
cleanup code for this setting.
As a side note, a very similar bug was fixed in
commit 7295a996fdab ("platform/x86: dell-sysman: Fix reference leak"),
so it seems that the bug was copied from that driver.

Compile-tested only.

Fixes: 1bcad8e510b2 ("platform/x86: think-lmi: Fix issues with duplicate attributes")
Reviewed-by: Mark Pearson <mpearson-lenovo@squebb.ca>
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Armin Wolf <W_Armin@gmx.de>
Link: https://lore.kernel.org/r/20230925142819.74525-2-W_Armin@gmx.de
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
drivers/platform/x86/think-lmi.c