Re: [PATCH v2 0/2] MTE support for KVM guest

From: Dr. David Alan Gilbert
Date: Thu Sep 10 2020 - 09:31:45 EST


* Andrew Jones (drjones@xxxxxxxxxx) wrote:
> On Wed, Sep 09, 2020 at 06:45:33PM -0700, Richard Henderson wrote:
> > On 9/9/20 8:25 AM, Andrew Jones wrote:
> > >> * Provide a KVM-specific method to extract the tags from guest memory.
> > >> This might also have benefits in terms of providing an easy way to
> > >> read bulk tag data from guest memory (since the LDGM instruction
> > >> isn't available at EL0).
> > >
> > > Maybe we need a new version of KVM_GET_DIRTY_LOG that also provides
> > > the tags for all addresses of each dirty page.
> >
> > KVM_GET_DIRTY_LOG just provides one bit per dirty page, no? Then VMM copies
> > the data out from its local address to guest memory.
> >
> > There'd be no difference with or without tags, afaik. It's just about how VMM
> > copies the data, with or without tags.
>
> Right, as long as it's fast enough to do
>
> for_each_dirty_page(page, dirty_log)
> for (i = 0; i < host-page-size/16; i += 16)
> append_tag(LDG(page + i))
>
> to get all the tags for each dirty page. I understood it would be faster
> to use LDGM, but we'd need a new ioctl for that. So I was proposing we
> just piggyback on a new dirty-log ioctl instead.

That feels a bad idea to me; there's a couple of different ways dirty
page checking work; lets keep extracting the tags separate.

Dave

> Thanks,
> drew
--
Dr. David Alan Gilbert / dgilbert@xxxxxxxxxx / Manchester, UK