Commit f89c5edb authored by Rajiv Andrade's avatar Rajiv Andrade Committed by James Morris

Remove the BKL calls from the TPM driver, which were added in the overall

misc-char-dev-BKL-pushdown.patch, as they are not needed.
Signed-off-by: default avatarMimi Zohar <zohar@linux.vnet.ibm.com>
Signed-off-by: default avatarRajiv Andrade <srajiv@linux.vnet.ibm.com>
Cc: "Serge E. Hallyn" <serue@us.ibm.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarJames Morris <jmorris@namei.org>
parent b922df73
...@@ -954,13 +954,16 @@ EXPORT_SYMBOL_GPL(tpm_store_cancel); ...@@ -954,13 +954,16 @@ EXPORT_SYMBOL_GPL(tpm_store_cancel);
/* /*
* Device file system interface to the TPM * Device file system interface to the TPM
*
* It's assured that the chip will be opened just once,
* by the check of is_open variable, which is protected
* by driver_lock.
*/ */
int tpm_open(struct inode *inode, struct file *file) int tpm_open(struct inode *inode, struct file *file)
{ {
int rc = 0, minor = iminor(inode); int rc = 0, minor = iminor(inode);
struct tpm_chip *chip = NULL, *pos; struct tpm_chip *chip = NULL, *pos;
lock_kernel();
spin_lock(&driver_lock); spin_lock(&driver_lock);
list_for_each_entry(pos, &tpm_chip_list, list) { list_for_each_entry(pos, &tpm_chip_list, list) {
...@@ -990,19 +993,16 @@ int tpm_open(struct inode *inode, struct file *file) ...@@ -990,19 +993,16 @@ int tpm_open(struct inode *inode, struct file *file)
if (chip->data_buffer == NULL) { if (chip->data_buffer == NULL) {
chip->num_opens--; chip->num_opens--;
put_device(chip->dev); put_device(chip->dev);
unlock_kernel();
return -ENOMEM; return -ENOMEM;
} }
atomic_set(&chip->data_pending, 0); atomic_set(&chip->data_pending, 0);
file->private_data = chip; file->private_data = chip;
unlock_kernel();
return 0; return 0;
err_out: err_out:
spin_unlock(&driver_lock); spin_unlock(&driver_lock);
unlock_kernel();
return rc; return rc;
} }
EXPORT_SYMBOL_GPL(tpm_open); EXPORT_SYMBOL_GPL(tpm_open);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment