[RFC v2 1/2] powerpc/pseries/iommu: Share the per-cpu TCE page with the hypervisor.

Ram Pai linuxram at us.ibm.com
Tue Nov 12 12:15:30 AEDT 2019


On Sun, Nov 10, 2019 at 07:40:06PM +0000, David Gibson wrote:
> On Fri, Nov 08, 2019 at 03:00:10PM -0800, Ram Pai wrote:
> > The hypervisor needs to access the contents of the page holding the TCE
> > entries while setting up the TCE entries in the IOMMU's TCE table.
> > 
> > For SecureVMs, since this page is encrypted, the hypervisor cannot
> > access valid entries. Share the page with the hypervisor. This ensures
> > that the hypervisor sees those valid entries.
> > 
> > Why is this safe?
> >    The page contains only TCE entries; not any sensitive data
> >    belonging to the Secure VM. The hypervisor has a genuine need to know
> >    the value of the TCE entries, without which it will not be able to
> >    DMA to/from the pages pointed to by the TCE entries. In a Secure
> >    VM the TCE entries point to pages that are also shared with the
> >    hypervisor; example: pages containing bounce buffers.
> 
> The bit that may not be obvious to reviewers from the above is this:
> 
> This is *not* a page of "live" TCEs which are actively used for
> translation.  Instead this is just a transient buffer with a batch of
> TCEs to set, passed to the hypervisor with the H_PUT_TCE_INDIRECT call.


That is true.  I should have stated that explicitly. Thanks. will
update the commit log.


RP



More information about the Linuxppc-dev mailing list