[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v6 7/9] xen/mem_access: Use __get_gfn_type_access in set_mem_access
On 29.01.2020 14:53, Tamas K Lengyel wrote: > On Wed, Jan 29, 2020 at 6:10 AM Jan Beulich <jbeulich@xxxxxxxx> wrote: >> >> On 27.01.2020 19:06, Tamas K Lengyel wrote: >>> Use __get_gfn_type_access instead of p2m->get_entry to trigger page-forking >>> when the mem_access permission is being set on a page that has not yet been >>> copied over from the parent. >> >> You talking of page-forking here, don't you mean ... >> >>> --- a/xen/arch/x86/mm/mem_access.c >>> +++ b/xen/arch/x86/mm/mem_access.c >>> @@ -303,11 +303,10 @@ static int set_mem_access(struct domain *d, struct >>> p2m_domain *p2m, >>> ASSERT(!ap2m); >>> #endif >>> { >>> - mfn_t mfn; >>> p2m_access_t _a; >>> p2m_type_t t; >>> - >>> - mfn = p2m->get_entry(p2m, gfn, &t, &_a, 0, NULL, NULL); >>> + mfn_t mfn = __get_gfn_type_access(p2m, gfn_x(gfn), &t, &_a, >>> + P2M_ALLOC, NULL, false); >> >> ... P2M_UNSHARE here? > > No, P2M_UNSHARE is only required if you are doing a memory write. > Setting memory access permissions is not a memory write, so it's > sufficient to just allocate the p2m entry. P2M_ALLOCATE also > encompasses forking the entry if there is a parent VM. Ah, I see. And hence Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx> >> Also shouldn't you have Cc-ed Petre and Alexandru on this patch >> (for their R: entries) and at least George (perhaps also Andrew >> and me) to get an ack, seeing that you're the only maintainer >> of the file? > > I've ran ./add_maintainers.pl on the patches, not sure why noone else got > CC-d. It not picking up R: entries would seem like a bug to me. It not knowing of nesting of maintainership is entirely expected (or else it would also need to know that it's - in this case - you who is invoking it). Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |