• Brijesh Singh's avatar
    crypto: ccp - add timeout support in the SEV command · e82867fd
    Brijesh Singh authored
    Currently, the CCP driver assumes that the SEV command issued to the PSP
    will always return (i.e. it will never hang).  But recently, firmware bugs
    have shown that a command can hang.  Since of the SEV commands are used
    in probe routines, this can cause boot hangs and/or loss of virtualization
    capabilities.
    
    To protect against firmware bugs, add a timeout in the SEV command
    execution flow.  If a command does not complete within the specified
    timeout then return -ETIMEOUT and stop the driver from executing any
    further commands since the state of the SEV firmware is unknown.
    
    Cc: Tom Lendacky <thomas.lendacky@amd.com>
    Cc: Gary Hook <Gary.Hook@amd.com>
    Cc: Herbert Xu <herbert@gondor.apana.org.au>
    Cc: linux-kernel@vger.kernel.org
    Signed-off-by: default avatarBrijesh Singh <brijesh.singh@amd.com>
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    e82867fd
psp-dev.c 22.5 KB