diff options
| author | Hon Ching \(Vicky\) Lo <honclo@linux.vnet.ibm.com> | 2015-05-22 13:23:02 -0400 |
|---|---|---|
| committer | Peter Huewe <peterhuewe@gmx.de> | 2015-06-16 17:26:59 -0400 |
| commit | 9d75f08946e8485109458ccf16f714697c207f41 (patch) | |
| tree | e9237b6ba6a5eca0fafa8c72143a8fcbe00e4bd1 /drivers | |
| parent | 84e3b420420e78babb5a981a91943f59bd156f21 (diff) | |
vTPM: set virtual device before passing to ibmvtpm_reset_crq
tpm_ibmvtpm_probe() calls ibmvtpm_reset_crq(ibmvtpm) without having yet
set the virtual device in the ibmvtpm structure. So in ibmvtpm_reset_crq,
the phype call contains empty unit addresses, ibmvtpm->vdev->unit_address.
Signed-off-by: Hon Ching(Vicky) Lo <honclo@linux.vnet.ibm.com>
Signed-off-by: Joy Latten <jmlatten@linux.vnet.ibm.com>
Reviewed-by: Ashley Lai <ashley@ahsleylai.com>
Cc: <stable@vger.kernel.org>
Fixes: 132f76294744 ("drivers/char/tpm: Add new device driver to support IBM vTPM")
Signed-off-by: Peter Huewe <peterhuewe@gmx.de>
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/char/tpm/tpm_ibmvtpm.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/char/tpm/tpm_ibmvtpm.c b/drivers/char/tpm/tpm_ibmvtpm.c index 42ffa5e7a1e0..27ebf9511cb4 100644 --- a/drivers/char/tpm/tpm_ibmvtpm.c +++ b/drivers/char/tpm/tpm_ibmvtpm.c | |||
| @@ -578,6 +578,9 @@ static int tpm_ibmvtpm_probe(struct vio_dev *vio_dev, | |||
| 578 | goto cleanup; | 578 | goto cleanup; |
| 579 | } | 579 | } |
| 580 | 580 | ||
| 581 | ibmvtpm->dev = dev; | ||
| 582 | ibmvtpm->vdev = vio_dev; | ||
| 583 | |||
| 581 | crq_q = &ibmvtpm->crq_queue; | 584 | crq_q = &ibmvtpm->crq_queue; |
| 582 | crq_q->crq_addr = (struct ibmvtpm_crq *)get_zeroed_page(GFP_KERNEL); | 585 | crq_q->crq_addr = (struct ibmvtpm_crq *)get_zeroed_page(GFP_KERNEL); |
| 583 | if (!crq_q->crq_addr) { | 586 | if (!crq_q->crq_addr) { |
| @@ -622,8 +625,6 @@ static int tpm_ibmvtpm_probe(struct vio_dev *vio_dev, | |||
| 622 | 625 | ||
| 623 | crq_q->index = 0; | 626 | crq_q->index = 0; |
| 624 | 627 | ||
| 625 | ibmvtpm->dev = dev; | ||
| 626 | ibmvtpm->vdev = vio_dev; | ||
| 627 | TPM_VPRIV(chip) = (void *)ibmvtpm; | 628 | TPM_VPRIV(chip) = (void *)ibmvtpm; |
| 628 | 629 | ||
| 629 | spin_lock_init(&ibmvtpm->rtce_lock); | 630 | spin_lock_init(&ibmvtpm->rtce_lock); |
