mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-02-21 21:10:00 +07:00
crypto: ccp: Free SEV device if SEV init fails
[ Upstream commit b61a9071dc72a3c709192c0c00ab87c2b3de1d94 ] Free the SEV device if later initialization fails. The memory isn't technically leaked as it's tracked in the top-level device's devres list, but unless the top-level device is removed, the memory won't be freed and is effectively leaked. Signed-off-by: Sean Christopherson <seanjc@google.com> Message-Id: <20210406224952.4177376-2-seanjc@google.com> Reviewed-by: Brijesh Singh <brijesh.singh@amd.com> Acked-by: Tom Lendacky <thomas.lendacky@amd.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
22ab352fca
commit
f3a5dee0f3
@ -989,7 +989,7 @@ int sev_dev_init(struct psp_device *psp)
|
||||
if (!sev->vdata) {
|
||||
ret = -ENODEV;
|
||||
dev_err(dev, "sev: missing driver data\n");
|
||||
goto e_err;
|
||||
goto e_sev;
|
||||
}
|
||||
|
||||
psp_set_sev_irq_handler(psp, sev_irq_handler, sev);
|
||||
@ -1004,6 +1004,8 @@ int sev_dev_init(struct psp_device *psp)
|
||||
|
||||
e_irq:
|
||||
psp_clear_sev_irq_handler(psp);
|
||||
e_sev:
|
||||
devm_kfree(dev, sev);
|
||||
e_err:
|
||||
psp->sev_data = NULL;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user