]> git.baikalelectronics.ru Git - kernel.git/commit
tpm: ibmvtpm: retry on H_CLOSED in tpm_ibmvtpm_send()
authorGeorge Wilson <gcwilson@linux.ibm.com>
Fri, 20 Mar 2020 03:27:58 +0000 (23:27 -0400)
committerJarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Mon, 20 Apr 2020 21:06:13 +0000 (00:06 +0300)
commit0db2e57fab120ac224ed6adc942d7e8a1e1d6c29
tree4c0420325bc07e302226baf59cb052fe6026bec9
parent9dcc83a430376fa91c092ae3e43b601627b7bc26
tpm: ibmvtpm: retry on H_CLOSED in tpm_ibmvtpm_send()

tpm_ibmvtpm_send() can fail during PowerVM Live Partition Mobility resume
with an H_CLOSED return from ibmvtpm_send_crq().  The PAPR says, 'The
"partner partition suspended" transport event disables the associated CRQ
such that any H_SEND_CRQ hcall() to the associated CRQ returns H_Closed
until the CRQ has been explicitly enabled using the H_ENABLE_CRQ hcall.'
This patch adds a check in tpm_ibmvtpm_send() for an H_CLOSED return from
ibmvtpm_send_crq() and in that case calls tpm_ibmvtpm_resume() and
retries the ibmvtpm_send_crq() once.

Cc: stable@vger.kernel.org # 3.7.x
Fixes: a935d3a0d630 ("drivers/char/tpm: Add new device driver to support IBM vTPM")
Reported-by: Linh Pham <phaml@us.ibm.com>
Reviewed-by: Stefan Berger <stefanb@linux.ibm.com>
Signed-off-by: George Wilson <gcwilson@linux.ibm.com>
Tested-by: Linh Pham <phaml@us.ibm.com>
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
drivers/char/tpm/tpm_ibmvtpm.c