From: Andreas Fuchs <andreas.fuchs@sit.fraunhofer.de>
To: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>,
Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Cc: Ken Goldman <kgoldman@us.ibm.com>,
<tpmdd-devel@lists.sourceforge.net>,
<linux-security-module@vger.kernel.org>, <greg@enjellic.com>,
<linux-kernel@vger.kernel.org>
Subject: Re: [tpmdd-devel] [PATCH RFC 0/4] RFC: in-kernel resource manager
Date: Wed, 11 Jan 2017 11:00:43 +0100 [thread overview]
Message-ID: <ee6c1e48-e21f-d05e-0939-473001224aba@sit.fraunhofer.de> (raw)
In-Reply-To: <20170110200558.GA5102@obsidianresearch.com>
Am 10.01.2017 um 21:05 schrieb Jason Gunthorpe:
> On Tue, Jan 10, 2017 at 01:16:35AM +0200, Jarkko Sakkinen wrote:
>> On Wed, Jan 04, 2017 at 10:12:41AM -0600, Dr. Greg Wettstein wrote:
>>> The kernel needs a resource manager. Everyone needs to think VERY
>>> hard and VERY, VERY carefully about what gets put into the kernel. In
>>> making a decision, put the ABSOLUTE smallest amount of code into the
>>> kernel which allows various 'TPM2 personalities' to be implemented in
>>> userspace and functionally verified and protected by the physical
>>> instance. The emergence of commodity TEE's (SGX, et.al) should be in
>>> the back of everyone's mind as a factor in the roadmap.
>> Here's my cuts for the kernel:
>>
>> - Kernel virtualizes handle areas. It's mechanical.
>> - Kernel does not virtualize bodies. It's not mechanical.
>> - At least the first version of the RM will not do other than session
>> isolation for sessions.
>>
>> This keeps the core for RM inside the kernel small and tight.
You need to do virtualization inside bodies, because TPM2_FlushContext
carries it's handles inside the parameter body.
Yep, huge blunder in the TPM spec, but hey, time for quirks... ;-)
> I think this makes sense.
>
> In addition the kernel should only permit RM operations that are known
> to be 100% correct with the RM.
>
> I think you should stick with your original design basic design,
> except instead of using an ioctl to switch modes, use an ioctl to
> execute the operation:
>
> struct tpm_ioctl_operation {
> u16 mode; // == TPM1_RAW,TPM2_RAW,TPM1_RM,TPM2_RM
> u16 locality;
> u32 txlen;
> u32 rxlen;
> const void *txbuf;
> void *rxbuf;
> };
could we please get an ioctl, that switches the "mode" of the fd entirely.
I'd like to see the write()/read() support still intact.
All my current code uses main-loop based poll on the fd and I don't want
to be force to start using threads...
Thanks,
Andreas
>
> The userspace broker would be expected to use a mixture of RM and RAW
> operations.
>
> Let's deal with the idea of another cdev some other day when someone
> can figure out a comprehensive way to do that securely for unpriv..
>
> Jason
>
> ------------------------------------------------------------------------------
> Developer Access Program for Intel Xeon Phi Processors
> Access to Intel Xeon Phi processor-based developer platforms.
> With one year of Intel Parallel Studio XE.
> Training and support from Colfax.
> Order your platform today. http://sdm.link/xeonphi
> _______________________________________________
> tpmdd-devel mailing list
> tpmdd-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/tpmdd-devel
next prev parent reply other threads:[~2017-01-11 10:01 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-04 16:12 [tpmdd-devel] [PATCH RFC 0/4] RFC: in-kernel resource manager Dr. Greg Wettstein
2017-01-09 23:16 ` Jarkko Sakkinen
2017-01-10 19:29 ` Ken Goldman
2017-01-11 11:36 ` Jarkko Sakkinen
2017-01-10 20:05 ` Jason Gunthorpe
2017-01-11 10:00 ` Andreas Fuchs [this message]
2017-01-11 18:03 ` Jason Gunthorpe
2017-01-11 18:27 ` Stefan Berger
2017-01-11 19:18 ` Jason Gunthorpe
2017-01-11 11:34 ` Jarkko Sakkinen
2017-01-11 15:39 ` James Bottomley
2017-01-11 17:56 ` Jason Gunthorpe
2017-01-11 18:25 ` James Bottomley
2017-01-11 19:04 ` Jason Gunthorpe
-- strict thread matches above, loose matches on Subject: below --
2017-01-02 13:22 Jarkko Sakkinen
2017-01-02 16:36 ` [tpmdd-devel] " James Bottomley
2017-01-02 19:33 ` Jarkko Sakkinen
2017-01-02 21:40 ` James Bottomley
2017-01-03 5:26 ` James Bottomley
2017-01-03 13:41 ` Jarkko Sakkinen
2017-01-03 16:14 ` James Bottomley
2017-01-03 18:36 ` Jarkko Sakkinen
2017-01-03 19:14 ` Jarkko Sakkinen
2017-01-03 19:34 ` James Bottomley
2017-01-03 21:54 ` Jason Gunthorpe
2017-01-04 12:58 ` Jarkko Sakkinen
2017-01-04 16:55 ` Jason Gunthorpe
2017-01-04 5:47 ` Andy Lutomirski
2017-01-04 13:00 ` Jarkko Sakkinen
2017-01-03 13:51 ` Jarkko Sakkinen
2017-01-03 16:36 ` James Bottomley
2017-01-03 18:40 ` Jarkko Sakkinen
2017-01-03 21:47 ` Jason Gunthorpe
2017-01-03 22:21 ` Ken Goldman
2017-01-03 23:20 ` Jason Gunthorpe
2017-01-03 22:39 ` James Bottomley
2017-01-04 0:17 ` Jason Gunthorpe
2017-01-04 0:29 ` James Bottomley
2017-01-04 0:56 ` Jason Gunthorpe
2017-01-04 12:50 ` Jarkko Sakkinen
2017-01-04 14:53 ` James Bottomley
2017-01-04 18:31 ` Jason Gunthorpe
2017-01-04 18:57 ` James Bottomley
2017-01-04 19:24 ` Jason Gunthorpe
2017-01-04 12:48 ` Jarkko Sakkinen
2017-01-03 21:32 ` Jason Gunthorpe
2017-01-03 22:03 ` James Bottomley
2017-01-05 15:52 ` Fuchs, Andreas
2017-01-05 17:27 ` Jason Gunthorpe
2017-01-05 18:06 ` James Bottomley
2017-01-06 8:43 ` Andreas Fuchs
2017-01-05 18:33 ` James Bottomley
2017-01-05 19:20 ` Jason Gunthorpe
2017-01-05 19:55 ` James Bottomley
2017-01-05 22:21 ` Jason Gunthorpe
2017-01-05 22:58 ` James Bottomley
2017-01-05 23:50 ` Jason Gunthorpe
2017-01-06 0:36 ` James Bottomley
2017-01-06 8:59 ` Andreas Fuchs
2017-01-06 19:10 ` Jason Gunthorpe
2017-01-06 19:02 ` Jason Gunthorpe
2017-01-09 22:39 ` Jarkko Sakkinen
2017-01-11 10:03 ` Andreas Fuchs
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=ee6c1e48-e21f-d05e-0939-473001224aba@sit.fraunhofer.de \
--to=andreas.fuchs@sit.fraunhofer.de \
--cc=greg@enjellic.com \
--cc=jarkko.sakkinen@linux.intel.com \
--cc=jgunthorpe@obsidianresearch.com \
--cc=kgoldman@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-security-module@vger.kernel.org \
--cc=tpmdd-devel@lists.sourceforge.net \
/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;
as well as URLs for NNTP newsgroup(s).