linux-integrity.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jarkko Sakkinen <jarkko@kernel.org>
To: Stefano Garzarella <sgarzare@redhat.com>
Cc: Jason Gunthorpe <jgg@ziepe.ca>,
	Sumit Garg <sumit.garg@kernel.org>,
	linux-kernel@vger.kernel.org, Peter Huewe <peterhuewe@gmx.de>,
	linux-integrity@vger.kernel.org,
	James Bottomley <James.Bottomley@hansenpartnership.com>,
	Jens Wiklander <jens.wiklander@linaro.org>
Subject: Re: [PATCH 2/2] tpm/tpm_ftpm_tee: use send_recv() op
Date: Thu, 27 Mar 2025 15:04:39 +0200	[thread overview]
Message-ID: <Z-VM56u1zWQSPemh@kernel.org> (raw)
In-Reply-To: <6mpece5tkoie6ngv3j3xzjkotn6x6wu2vjs7pc44ns76z6v3d2@c6jinanngw5o>

On Thu, Mar 27, 2025 at 10:27:48AM +0100, Stefano Garzarella wrote:
> On Wed, Mar 26, 2025 at 10:37:09PM +0200, Jarkko Sakkinen wrote:
> > On Wed, Mar 26, 2025 at 05:58:33PM +0200, Jarkko Sakkinen wrote:
> > > On Wed, Mar 26, 2025 at 04:57:47PM +0200, Jarkko Sakkinen wrote:
> > > > On Wed, Mar 26, 2025 at 11:34:01AM -0300, Jason Gunthorpe wrote:
> > > > > On Wed, Mar 26, 2025 at 02:11:12PM +0200, Jarkko Sakkinen wrote:
> > > > >
> > > > > > Generally speaking I don't see enough value in complicating
> > > > > > callback interface. It's better to handle complications in
> > > > > > the leaves (i.e. dictatorship of majority ;-) ).
> > > > >
> > > > > That is very much not the way most driver subsystems view the
> > > > > world. We want to pull logical things into the core code and remove
> > > > > them from drivers to make the drivers simpler and more robust.
> > > > >
> > > > > The amount of really dumb driver boiler plate that this series
> > > > > obviously removes is exactly the sort of stuff we should be fixing by
> > > > > improving the core code.
> > > > >
> > > > > The callback interface was never really sanely designed, it was just
> > > > > built around the idea of pulling the timout processing into the core
> > > > > code for TIS hardware. It should be revised to properly match these
> > > > > new HW types that don't have this kind of timeout mechanism.
> > > >
> > > > Both TIS and CRB, which are TCG standards and they span to many
> > > > different types of drivers and busses. I don't have the figures but
> > > > probably they cover vast majority of the hardware.
> > > >
> > > > We are talking about 39 lines of reduced complexity at the cost
> > > > of complicating branching at the top level. I doubt that there
> > > > is either any throughput or latency issues.
> > > >
> > > > What is measurable benefit? The rationale is way way too abstract
> > > > for me to cope, sorry.
> > > 
> > > E.g., here's how you can get rid of extra cruft in tpm_ftpm_tee w/o
> > > any new callbacks.
> 
> Yeah, I agree that your patch should go in any case, with send_recv() or
> not. It's a good cleanup.
> 
> > 
> > Measurable benefit: no need to allocate memory buffer.
> 
> That's right, I read the whole thread before responding, but that's exactly
> what I wanted to highlight. Implementing send_recv() we could completely
> remove the buffer for the cache here in tpm_ftpm_tee, simplifying it quite a
> bit.
> 
> In tpm_svsm instead we allocate it while probing anyway to avoid having to
> allocate it every time, but we could potentially do the same (I don't know
> if it makes sense honestly). We do this because for SVSM any buffer is fine,
> as it can access all guest kernel memory, whereas IIUC for ftpm it has to be
> taken from shared memory.
> 
> > 
> > Let's take that as a starting point ;-)
> 
> Yeah!
> 
> > 
> > On that basis I can consider this (i.e. something to measure).
> 
> Okay, I explain this better in the commit description for the next version!

Awesome :-) Thanks for the patience with this. I rather precautionaly
throw sticks on the road than go through fixes post upstreaming, which
is factors more nasty and time-consuming...

> 
> Thanks,
> Stefano
> 

BR, Jarkko

      reply	other threads:[~2025-03-27 13:04 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-20 15:24 [PATCH 0/2] tpm: add send_recv() op and use it in tpm_ftpm_tee driver Stefano Garzarella
2025-03-20 15:24 ` [PATCH 1/2] tpm: add send_recv() op in tpm_class_ops Stefano Garzarella
2025-03-26 16:53   ` Jarkko Sakkinen
2025-03-27  9:48     ` Stefano Garzarella
2025-03-27 13:02       ` Jarkko Sakkinen
2025-03-27 14:44         ` Stefano Garzarella
2025-03-20 15:24 ` [PATCH 2/2] tpm/tpm_ftpm_tee: use send_recv() op Stefano Garzarella
2025-03-25  5:19   ` Sumit Garg
2025-03-26 12:11     ` Jarkko Sakkinen
2025-03-26 14:34       ` Jason Gunthorpe
2025-03-26 14:57         ` Jarkko Sakkinen
2025-03-26 15:58           ` Jarkko Sakkinen
2025-03-26 20:37             ` Jarkko Sakkinen
2025-03-27  9:27               ` Stefano Garzarella
2025-03-27 13:04                 ` Jarkko Sakkinen [this message]

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=Z-VM56u1zWQSPemh@kernel.org \
    --to=jarkko@kernel.org \
    --cc=James.Bottomley@hansenpartnership.com \
    --cc=jens.wiklander@linaro.org \
    --cc=jgg@ziepe.ca \
    --cc=linux-integrity@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=peterhuewe@gmx.de \
    --cc=sgarzare@redhat.com \
    --cc=sumit.garg@kernel.org \
    /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).