platform/x86/intel/tpmi: Fix double free reported by Smatch
authorSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Mon, 27 Feb 2023 14:06:14 +0000 (06:06 -0800)
committerHans de Goede <hdegoede@redhat.com>
Tue, 7 Mar 2023 10:37:27 +0000 (11:37 +0100)
commit6a192c0cbf38a6ba10847590d680975086844dbb
tree3d959ea227aa4e60677d47e9cc087be3fccb2acb
parent95ecf90158522269749f1b7ce98b1eed66ca087b
platform/x86/intel/tpmi: Fix double free reported by Smatch

Fix warning:
drivers/platform/x86/intel/tpmi.c:253 tpmi_create_device()
warn: 'feature_vsec_dev' was already freed.

If there is some error, feature_vsec_dev memory is freed as part
of resource managed call intel_vsec_add_aux(). So, additional
kfree() call is not required.

Reordered res allocation and feature_vsec_dev, so that on error
only res is freed.

Reported-by: Dan Carpenter <error27@gmail.com>
Link: https://lore.kernel.org/platform-driver-x86/Y%2FxYR7WGiPayZu%2FR@kili/T/#u
Fixes: 47731fd2865f ("platform/x86/intel: Intel TPMI enumeration driver")
Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Link: https://lore.kernel.org/r/20230227140614.2913474-1-srinivas.pandruvada@linux.intel.com
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
drivers/platform/x86/intel/tpmi.c