On Tue, Jan 03, 2017 at 12:16:34PM -0700, Jason Gunthorpe wrote: > On Tue, Jan 03, 2017 at 02:37:30AM +0200, Jarkko Sakkinen wrote: > > On Mon, Jan 02, 2017 at 02:09:53PM -0700, Jason Gunthorpe wrote: > > > On Mon, Jan 02, 2017 at 03:22:10PM +0200, Jarkko Sakkinen wrote: > > > > Added a ioctl for creating a TPM space. The space is isolated from the > > > > other users of the TPM. Only a process holding the file with the handle > > > > can access the objects and only objects that are created through that > > > > file handle can be accessed. > > > > > > I don't understand this comment. /dev/tpmX is forced to be > > > single-process-open, so how can there ever be more than 1 FD for it? > > > > > > Since the space is tied to that single fd these patches just create a > > > way for the single user-space process to auto-cleanup if it crashes? > > > > > > Is that the entire intent of this design? I guess it is OK as a > > > stepping point.. > > > > is_open is cleared in tpm_ioc_new_space. > > There is also a bug with the uncondtional clear of is_open in > tpm_release - this cannot happen if the ioctl is done - but I think > this approach of using an ioctl is not a good idea. > > I have pondered using an open flag in the past - what about using > something like O_EXCL to indicate that the fd is to be used in > resource sharing mode? Not sure if that would be considered abuse of > the open flags or not.
I've now leaned toward James' idea of having a separate /dev/tpms0. > Jason /Jarkko