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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.