summaryrefslogtreecommitdiff
path: root/drivers/char
diff options
context:
space:
mode:
authorHon Ching \(Vicky\) Lo <honclo@linux.vnet.ibm.com>2015-10-08 03:11:51 +0300
committerJiri Slaby <jslaby@suse.cz>2016-02-15 19:07:49 +0300
commit9100d1654d2c3c2980401f472326f83ea0e90c0d (patch)
tree6526fa00cd0cd997942bec3cc1a2078b6f7ffcb6 /drivers/char
parentd5dfe9381067b56d585f0f3cf2723da791de8e99 (diff)
downloadlinux-9100d1654d2c3c2980401f472326f83ea0e90c0d.tar.xz
vTPM: fix memory allocation flag for rtce buffer at kernel boot
commit 60ecd86c4d985750efa0ea3d8610972b09951715 upstream. At ibm vtpm initialzation, tpm_ibmvtpm_probe() registers its interrupt handler, ibmvtpm_interrupt, which calls ibmvtpm_crq_process to allocate memory for rtce buffer. The current code uses 'GFP_KERNEL' as the type of kernel memory allocation, which resulted a warning at kernel/lockdep.c. This patch uses 'GFP_ATOMIC' instead so that the allocation is high-priority and does not sleep. Signed-off-by: Hon Ching(Vicky) Lo <honclo@linux.vnet.ibm.com> Signed-off-by: Peter Huewe <peterhuewe@gmx.de> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Diffstat (limited to 'drivers/char')
-rw-r--r--drivers/char/tpm/tpm_ibmvtpm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/char/tpm/tpm_ibmvtpm.c b/drivers/char/tpm/tpm_ibmvtpm.c
index a6524c3efdf7..ce854bbd33ef 100644
--- a/drivers/char/tpm/tpm_ibmvtpm.c
+++ b/drivers/char/tpm/tpm_ibmvtpm.c
@@ -529,7 +529,7 @@ static void ibmvtpm_crq_process(struct ibmvtpm_crq *crq,
}
ibmvtpm->rtce_size = be16_to_cpu(crq->len);
ibmvtpm->rtce_buf = kmalloc(ibmvtpm->rtce_size,
- GFP_KERNEL);
+ GFP_ATOMIC);
if (!ibmvtpm->rtce_buf) {
dev_err(ibmvtpm->dev, "Failed to allocate memory for rtce buffer\n");
return;