kernel/drivers/remoteproc/qcom_sysmon.c
.. .. @@ -625,7 +625,9 @@ 625 625 if (sysmon->shutdown_irq != -ENODATA) { 626 626 dev_err(sysmon->dev, 627 627 "failed to retrieve shutdown-ack IRQ\n"); 628 - return ERR_PTR(sysmon->shutdown_irq);628 + ret = sysmon->shutdown_irq;629 + kfree(sysmon);630 + return ERR_PTR(ret);629 631 } 630 632 } else { 631 633 ret = devm_request_threaded_irq(sysmon->dev, .. .. @@ -636,6 +638,7 @@ 636 638 if (ret) { 637 639 dev_err(sysmon->dev, 638 640 "failed to acquire shutdown-ack IRQ\n"); 641 + kfree(sysmon);639 642 return ERR_PTR(ret); 640 643 } 641 644 }