tpmdd-devel.lists.sourceforge.net archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/7] in-kernel resource manager
@ 2017-03-03 15:19 Jarkko Sakkinen
       [not found] ` <20170303151912.14752-1-jarkko.sakkinen-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
  2017-03-11  8:55 ` Jarkko Sakkinen
  0 siblings, 2 replies; 22+ messages in thread
From: Jarkko Sakkinen @ 2017-03-03 15:19 UTC (permalink / raw)
  To: tpmdd-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f
  Cc: dhowells-H+wXaHxf7aLQT0dZR+AlfA, open list,
	James.Bottomley-d9PhHud1JfjCXq6kfMZ53/egYHeGw8Jk,
	linux-security-module-u79uwXL29TY76Z2rM5mHXA

This patch set adds support for TPM spaces that provide an isolated
execution context for transient objects and HMAC and policy sessions. A
space is swapped into TPM volatile memory only when it is used and
swapped out after the use.

There's a test script for trying out TPM spaces in

  git://git.infradead.org/users/jjs/tpm2-scripts.git

A simple smoke test suite can be run by

  sudo python -m unittest -v tpm2_smoke.SpaceTest   

v3:
* Reverted back to /dev/tpmrm0 that was actually James' original
  proposal. It's the most pragmatic choice as it cannot be mixed
  with other TPM 2.0 and kernel idioms easily.

v2:
* Substitute virtual handle in ContextSave.
* Substitute virtual handles in GetCapability.
* Validate that the real response length and the one reported in the
  header match in tpm_transmit().


James Bottomley (3):
  tpm: split out tpm-dev.c into tpm-dev.c and tpm-common-dev.c
  tpm: expose spaces via a device link /dev/tpmrm<n>
  tpm2: add session handle context saving and restoring to the space
    code

Jarkko Sakkinen (4):
  tpm: move length validation to tpm_transmit()
  tpm: validate TPM 2.0 commands
  tpm: export tpm2_flush_context_cmd
  tpm: infrastructure for TPM spaces

 drivers/char/tpm/Makefile         |   3 +-
 drivers/char/tpm/tpm-chip.c       |  71 ++++-
 drivers/char/tpm/tpm-dev-common.c | 148 +++++++++++
 drivers/char/tpm/tpm-dev.c        | 143 +---------
 drivers/char/tpm/tpm-dev.h        |  27 ++
 drivers/char/tpm/tpm-interface.c  | 131 +++++++---
 drivers/char/tpm/tpm-sysfs.c      |   2 +-
 drivers/char/tpm/tpm.h            |  49 +++-
 drivers/char/tpm/tpm2-cmd.c       | 173 +++++++++----
 drivers/char/tpm/tpm2-space.c     | 532 ++++++++++++++++++++++++++++++++++++++
 drivers/char/tpm/tpmrm-dev.c      |  65 +++++
 11 files changed, 1123 insertions(+), 221 deletions(-)
 create mode 100644 drivers/char/tpm/tpm-dev-common.c
 create mode 100644 drivers/char/tpm/tpm-dev.h
 create mode 100644 drivers/char/tpm/tpm2-space.c
 create mode 100644 drivers/char/tpm/tpmrm-dev.c

-- 
2.9.3


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot

^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2017-03-27  5:25 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-03-03 15:19 [PATCH v3 0/7] in-kernel resource manager Jarkko Sakkinen
     [not found] ` <20170303151912.14752-1-jarkko.sakkinen-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2017-03-03 15:19   ` [PATCH v3 1/7] tpm: move length validation to tpm_transmit() Jarkko Sakkinen
2017-03-03 15:19   ` [PATCH v3 2/7] tpm: validate TPM 2.0 commands Jarkko Sakkinen
     [not found]     ` <20170303151912.14752-3-jarkko.sakkinen-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2017-03-17 15:40       ` Alexander.Steffen-d0qZbvYSIPpWk0Htik3J/w
2017-03-17 16:16         ` [tpmdd-devel] " Jason Gunthorpe
     [not found]           ` <20170317161614.GA28082-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-03-17 16:35             ` Peter.Huewe-d0qZbvYSIPpWk0Htik3J/w
2017-03-20  9:54               ` [tpmdd-devel] " Alexander.Steffen
     [not found]                 ` <12e63cdba1e34cac9b82e4bff9621ae6-nFblLGNE8XKJSz+rYg/bSJowlv4uC7bZ@public.gmane.org>
2017-03-20 17:23                   ` Jason Gunthorpe
2017-03-20 19:42                   ` Ken Goldman
     [not found]                     ` <a518f288-f084-2d11-161a-79ff884b936d-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2017-03-21 15:44                       ` Alexander.Steffen-d0qZbvYSIPpWk0Htik3J/w
     [not found]         ` <22e8fa0caf8b4386a12cd93ee7170ed5-nFblLGNE8XKJSz+rYg/bSJowlv4uC7bZ@public.gmane.org>
2017-03-17 20:42           ` Jarkko Sakkinen
     [not found]             ` <20170317204243.5j376svqeky6bhqk-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2017-03-20  9:56               ` Alexander.Steffen-d0qZbvYSIPpWk0Htik3J/w
     [not found]                 ` <93c74fb96fe04433ac9c910204539d84-nFblLGNE8XKJSz+rYg/bSJowlv4uC7bZ@public.gmane.org>
2017-03-27  5:25                   ` Jarkko Sakkinen
2017-03-03 15:19   ` [PATCH v3 3/7] tpm: export tpm2_flush_context_cmd Jarkko Sakkinen
2017-03-03 15:19   ` [PATCH v3 4/7] tpm: infrastructure for TPM spaces Jarkko Sakkinen
     [not found]     ` <20170303151912.14752-5-jarkko.sakkinen-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2017-03-17 15:41       ` Alexander.Steffen-d0qZbvYSIPpWk0Htik3J/w
     [not found]         ` <1aa1c9d32fd446f69551a36c37f0ed16-nFblLGNE8XKJSz+rYg/bSJowlv4uC7bZ@public.gmane.org>
2017-03-17 20:44           ` Jarkko Sakkinen
2017-03-03 15:19   ` [PATCH v3 5/7] tpm: split out tpm-dev.c into tpm-dev.c and tpm-common-dev.c Jarkko Sakkinen
2017-03-03 15:19   ` [PATCH v3 6/7] tpm: expose spaces via a device link /dev/tpmrm<n> Jarkko Sakkinen
2017-03-03 15:19   ` [PATCH v3 7/7] tpm2: add session handle context saving and restoring to the space code Jarkko Sakkinen
2017-03-06 21:07   ` [PATCH v3 0/7] in-kernel resource manager Jarkko Sakkinen
2017-03-11  8:55 ` Jarkko Sakkinen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).