From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754647AbdEJSdl (ORCPT ); Wed, 10 May 2017 14:33:41 -0400 Received: from mga14.intel.com ([192.55.52.115]:37014 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753762AbdEJSdh (ORCPT ); Wed, 10 May 2017 14:33:37 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.38,320,1491289200"; d="scan'208";a="1146290040" Date: Wed, 10 May 2017 21:33:31 +0300 From: Jarkko Sakkinen To: Stefan Berger Cc: tpmdd-devel@lists.sourceforge.net, LSM List , jgunthorpe@obsidianresearch.com, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 3/3] tpm: vtpm_proxy: Add ioctl to request locality prepended to command Message-ID: <20170510183331.abpeaa4bliohehsv@intel.com> References: <20170503223747.zefh76m4youqlgje@intel.com> <40cd7d48-f6d1-39f4-99a3-916c7cdbb636@linux.vnet.ibm.com> <20170504091738.rxl77hjzf6vnpuda@intel.com> <20170504184007.46efvqyqwxjkzwuq@intel.com> <20170508234328.iydmoverh5z4nwco@intel.com> <20170510124745.lmqvonrkjmjes7ep@intel.com> <2c20fc62-938a-a6da-dbb2-70711b84996d@linux.vnet.ibm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <2c20fc62-938a-a6da-dbb2-70711b84996d@linux.vnet.ibm.com> Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo User-Agent: NeoMutt/20170113 (1.7.2) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, May 10, 2017 at 09:20:14AM -0400, Stefan Berger wrote: > On 05/10/2017 08:47 AM, Jarkko Sakkinen wrote: > > On Tue, May 09, 2017 at 11:49:05AM -0400, Stefan Berger wrote: > > > On 05/08/2017 07:43 PM, Jarkko Sakkinen wrote: > > > > On Thu, May 04, 2017 at 04:03:18PM -0400, Stefan Berger wrote: > > > > > On 05/04/2017 02:40 PM, Jarkko Sakkinen wrote: > > > > > > On Thu, May 04, 2017 at 07:14:27AM -0400, Stefan Berger wrote: > > > > > > > On 05/04/2017 05:17 AM, Jarkko Sakkinen wrote: > > > > > > > > On Wed, May 03, 2017 at 07:40:48PM -0400, Stefan Berger wrote: > > > > > > > > > On 05/03/2017 06:37 PM, Jarkko Sakkinen wrote: > > > > > > > > > > On Fri, Apr 28, 2017 at 09:02:18AM -0400, Stefan Berger wrote: > > > > > > > > > > > Add an ioctl to request that the locality be prepended to every TPM > > > > > > > > > > > command. > > > > > > > > > > Don't really understand this change. Why locality is prenpended? > > > > > > > > > Commands can be executed under locality 0-3 and for some commands it is > > > > > > > > > important to know which locality a user may have chosen. How else should we > > > > > > > > > convey that locality to the TPM emulator ? > > > > > > > > Why this is not in the commit message? > > > > > > > > > > > > > > > > More scalable way to do this would be to have a set of vtpm proxy > > > > > > > > commands. There could be a command for requesting and releasing > > > > > > > > locality. That would be more clean. > > > > > > > I would think that if someone wanted to use locality it's the client using > > > > > > > /dev/tpm(rm)0 calling an ioctl or so and the vtpm proxy then merely passing > > > > > > > that locality to the backend (TPM emulator). I suppose the intention is to > > > > > > > support something like that following the addition of the new functions > > > > > > > request_locality and release_locality? > > > > > > What if we later on want to pass something else than locality to the > > > > > > backend? How that will work out? > > > > > 'push' more data in front. 'pop' off by recipient. We could wrap the command > > > > > in some form. > > > > > > > > > > Stefan > > > > I would find having a set of special commands cleaner. Prepending sounds > > > > like a quick hack to me, not really something that should exist in the > > > > mainline. > > > Along the lines of this here? > > > > > > uint32_2 command > > > uint32_2 totlength > > > uint8_t locality > > > uint8_t buffer[] <- the actual TPM command > > > > > > > > > With a command code like VTPM_PROXY_CMD_TPM_CMD = 1. > > > > > > Stefan > > That would break binary compability. > > That's why I am adding that additional flag that allows a client to choose > whether it wants the TPM command wrapped (or locality prepended) so that it > knows what to expect from the driver. I don't think that breaks > compatibility. I think having TPM command codes for control messages would be a better idea and it is trivial to filter them so that client cannot use those commands. /Jarkko