mirror of
https://github.com/edk2-porting/linux-next.git
synced 2025-01-22 20:43:56 +08:00
crypto: ccp: Free SEV device if SEV init fails
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>
This commit is contained in:
parent
6a443def87
commit
b61a9071dc
@ -988,7 +988,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);
|
||||
@ -1003,6 +1003,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