From: Rajiv Andrade <srajiv@linux.vnet.ibm.com>
To: Linux kernel mailing list <linux-kernel@vger.kernel.org>
Cc: James Morris <jmorris@namei.org>,
Peter Huewe <huewe.external.infineon@googlemail.com>,
jwboyer@redhat.com, axel.lin@gmail.com, geert@linux-m68k.org
Subject: [GIT PULL] TPM fixes
Date: Thu, 22 Sep 2011 13:09:40 -0300 [thread overview]
Message-ID: <4E7B5DC4.50703@linux.vnet.ibm.com> (raw)
Hi James,
Please pull the changes since commit 73beac95e91327b3dd903a62e3e569192267afe3:
TPM: TCG_ATMEL should depend on HAS_IOPORT (2011-09-22 12:35:45 -0300)
that are available in the git repository at:
git://github.com/srajiv/tpm.git for-james
Axel Lin (1):
TPM: tpm_nsc: Fix a double free of pdev in cleanup_nsc
Geert Uytterhoeven (1):
TPM: TCG_ATMEL should depend on HAS_IOPORT
Peter Huewe (2):
TPM: Call tpm_transmit with correct size
TPM: Zero buffer after copying to userspace
drivers/char/tpm/Kconfig | 1 +
drivers/char/tpm/tpm.c | 9 ++++++++-
drivers/char/tpm/tpm_nsc.c | 2 --
3 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/drivers/char/tpm/Kconfig b/drivers/char/tpm/Kconfig
index f6595ab..fa567f1 100644
--- a/drivers/char/tpm/Kconfig
+++ b/drivers/char/tpm/Kconfig
@@ -43,6 +43,7 @@ config TCG_NSC
config TCG_ATMEL
tristate "Atmel TPM Interface"
+ depends on PPC64 || HAS_IOPORT
---help---
If you have a TPM security chip from Atmel say Yes and it
will be accessible from within Linux. To compile this driver
diff --git a/drivers/char/tpm/tpm.c b/drivers/char/tpm/tpm.c
index e53af76..361a1df 100644
--- a/drivers/char/tpm/tpm.c
+++ b/drivers/char/tpm/tpm.c
@@ -383,6 +383,9 @@ static ssize_t tpm_transmit(struct tpm_chip *chip, const char *buf,
u32 count, ordinal;
unsigned long stop;
+ if (bufsiz > TPM_BUFSIZE)
+ bufsiz = TPM_BUFSIZE;
+
count = be32_to_cpu(*((__be32 *) (buf + 2)));
ordinal = be32_to_cpu(*((__be32 *) (buf + 6)));
if (count == 0)
@@ -1105,6 +1108,7 @@ ssize_t tpm_read(struct file *file, char __user *buf,
{
struct tpm_chip *chip = file->private_data;
ssize_t ret_size;
+ int rc;
del_singleshot_timer_sync(&chip->user_read_timer);
flush_work_sync(&chip->work);
@@ -1115,8 +1119,11 @@ ssize_t tpm_read(struct file *file, char __user *buf,
ret_size = size;
mutex_lock(&chip->buffer_mutex);
- if (copy_to_user(buf, chip->data_buffer, ret_size))
+ rc = copy_to_user(buf, chip->data_buffer, ret_size);
+ memset(chip->data_buffer, 0, ret_size);
+ if (rc)
ret_size = -EFAULT;
+
mutex_unlock(&chip->buffer_mutex);
}
diff --git a/drivers/char/tpm/tpm_nsc.c b/drivers/char/tpm/tpm_nsc.c
index 82facc9..4d24648 100644
--- a/drivers/char/tpm/tpm_nsc.c
+++ b/drivers/char/tpm/tpm_nsc.c
@@ -396,8 +396,6 @@ static void __exit cleanup_nsc(void)
if (pdev) {
tpm_nsc_remove(&pdev->dev);
platform_device_unregister(pdev);
- kfree(pdev);
- pdev = NULL;
}
platform_driver_unregister(&nsc_drv);
reply other threads:[~2011-09-22 16:09 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E7B5DC4.50703@linux.vnet.ibm.com \
--to=srajiv@linux.vnet.ibm.com \
--cc=axel.lin@gmail.com \
--cc=geert@linux-m68k.org \
--cc=huewe.external.infineon@googlemail.com \
--cc=jmorris@namei.org \
--cc=jwboyer@redhat.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox