platform/x86/amd/pmf: Fixup error handling for amd_pmf_init_smart_pc()
authorMario Limonciello <mario.limonciello@amd.com>
Sat, 17 Feb 2024 01:41:07 +0000 (19:41 -0600)
committerHans de Goede <hdegoede@redhat.com>
Mon, 19 Feb 2024 12:39:44 +0000 (13:39 +0100)
commite7096150580849429ff3d43dd69a718bb2036be4
treed2911a43c067429a70d05580f228321c6357baca
parent20545af302bb1f6a67c0348b64032c11ecfa77ba
platform/x86/amd/pmf: Fixup error handling for amd_pmf_init_smart_pc()

amd_pmf_init_smart_pc() calls out to amd_pmf_get_bios_buffer() but
the error handling flow doesn't clean everything up allocated
memory.

As amd_pmf_get_bios_buffer() is only called by amd_pmf_init_smart_pc(),
fold it into the function and add labels to clean up any step that
can fail along the way. Explicitly set everything allocated to NULL as
there are other features that may access some of the same variables.

Fixes: 7c45534afa44 ("platform/x86/amd/pmf: Add support for PMF Policy Binary")
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Link: https://lore.kernel.org/r/20240217014107.113749-3-mario.limonciello@amd.com
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
drivers/platform/x86/amd/pmf/tee-if.c