Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3aa20508 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull TPM bugfixes from James Morris.

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
  tpm, tpm_crb: fail when TPM2 ACPI table contents look corrupted
  tpm: Fix initialization of the cdev
parents 9090fdb9 91ef5ccd
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -129,8 +129,9 @@ struct tpm_chip *tpmm_chip_alloc(struct device *dev,

	device_initialize(&chip->dev);

	chip->cdev.owner = chip->pdev->driver->owner;
	cdev_init(&chip->cdev, &tpm_fops);
	chip->cdev.owner = chip->pdev->driver->owner;
	chip->cdev.kobj.parent = &chip->dev.kobj;

	return chip;
}
+8 −0
Original line number Diff line number Diff line
@@ -233,6 +233,14 @@ static int crb_acpi_add(struct acpi_device *device)
		return -ENODEV;
	}

	/* At least some versions of AMI BIOS have a bug that TPM2 table has
	 * zero address for the control area and therefore we must fail.
	*/
	if (!buf->control_area_pa) {
		dev_err(dev, "TPM2 ACPI table has a zero address for the control area\n");
		return -EINVAL;
	}

	if (buf->hdr.length < sizeof(struct acpi_tpm2)) {
		dev_err(dev, "TPM2 ACPI table has wrong size");
		return -EINVAL;