Loading drivers/crypto/ccp/sev-dev.c +10 −6 Original line number Diff line number Diff line Loading @@ -442,11 +442,18 @@ static int __sev_init_ex_locked(int *error) return __sev_do_cmd_locked(SEV_CMD_INIT_EX, &data, error); } static inline int __sev_do_init_locked(int *psp_ret) { if (sev_init_ex_buffer) return __sev_init_ex_locked(psp_ret); else return __sev_init_locked(psp_ret); } static int __sev_platform_init_locked(int *error) { int rc = 0, psp_ret = SEV_RET_NO_FW_CALL; struct psp_device *psp = psp_master; int (*init_function)(int *error); struct sev_device *sev; if (!psp || !psp->sev_data) Loading @@ -458,15 +465,12 @@ static int __sev_platform_init_locked(int *error) return 0; if (sev_init_ex_buffer) { init_function = __sev_init_ex_locked; rc = sev_read_init_ex_file(); if (rc) return rc; } else { init_function = __sev_init_locked; } rc = init_function(&psp_ret); rc = __sev_do_init_locked(&psp_ret); if (rc && psp_ret == SEV_RET_SECURE_DATA_INVALID) { /* * Initialization command returned an integrity check failure Loading @@ -477,7 +481,7 @@ static int __sev_platform_init_locked(int *error) */ dev_err(sev->dev, "SEV: retrying INIT command because of SECURE_DATA_INVALID error. Retrying once to reset PSP SEV state."); rc = init_function(&psp_ret); rc = __sev_do_init_locked(&psp_ret); } if (error) Loading Loading
drivers/crypto/ccp/sev-dev.c +10 −6 Original line number Diff line number Diff line Loading @@ -442,11 +442,18 @@ static int __sev_init_ex_locked(int *error) return __sev_do_cmd_locked(SEV_CMD_INIT_EX, &data, error); } static inline int __sev_do_init_locked(int *psp_ret) { if (sev_init_ex_buffer) return __sev_init_ex_locked(psp_ret); else return __sev_init_locked(psp_ret); } static int __sev_platform_init_locked(int *error) { int rc = 0, psp_ret = SEV_RET_NO_FW_CALL; struct psp_device *psp = psp_master; int (*init_function)(int *error); struct sev_device *sev; if (!psp || !psp->sev_data) Loading @@ -458,15 +465,12 @@ static int __sev_platform_init_locked(int *error) return 0; if (sev_init_ex_buffer) { init_function = __sev_init_ex_locked; rc = sev_read_init_ex_file(); if (rc) return rc; } else { init_function = __sev_init_locked; } rc = init_function(&psp_ret); rc = __sev_do_init_locked(&psp_ret); if (rc && psp_ret == SEV_RET_SECURE_DATA_INVALID) { /* * Initialization command returned an integrity check failure Loading @@ -477,7 +481,7 @@ static int __sev_platform_init_locked(int *error) */ dev_err(sev->dev, "SEV: retrying INIT command because of SECURE_DATA_INVALID error. Retrying once to reset PSP SEV state."); rc = init_function(&psp_ret); rc = __sev_do_init_locked(&psp_ret); } if (error) Loading