[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH V5] x86/altp2m: Add a subop for obtaining the mem access of a page



On 9/26/18 4:39 PM, Jan Beulich wrote:
>>>> On 26.09.18 at 15:27, <rcojocaru@xxxxxxxxxxxxxxx> wrote:
>> On 9/26/18 4:20 PM, Jan Beulich wrote:
>>>>>> On 26.09.18 at 14:26, <rcojocaru@xxxxxxxxxxxxxxx> wrote:
>>>> To clarify the question, I'll of course do this:
>>>>
>>>> diff --git a/xen/arch/x86/mm/mem_access.c b/xen/arch/x86/mm/mem_access.c
>>>> index 67b4a1d..2b5a621 100644
>>>> --- a/xen/arch/x86/mm/mem_access.c
>>>> +++ b/xen/arch/x86/mm/mem_access.c
>>>> @@ -489,14 +489,13 @@ long p2m_set_mem_access_multi(struct domain *d,
>>>>  int p2m_get_mem_access(struct domain *d, gfn_t gfn, xenmem_access_t
>>>> *access,
>>>>                         unsigned int altp2m_idx)
>>>>  {
>>>> -    struct p2m_domain *p2m;
>>>> +    struct p2m_domain *p2m = p2m_get_hostp2m(d);
>>>>
>>>> +#ifdef CONFIG_HVM
>>>>      if ( !altp2m_active(d) )
>>>>      {
>>>>          if ( altp2m_idx )
>>>>              return -EINVAL;
>>>> -
>>>> -        p2m = p2m_get_hostp2m(d);
>>>>      }
>>>>      else
>>>>      {
>>>> @@ -506,6 +505,9 @@ int p2m_get_mem_access(struct domain *d, gfn_t gfn,
>>>> xenmem_access_t *access,
>>>>
>>>>          p2m = d->arch.altp2m_p2m[altp2m_idx];
>>>>      }
>>>> +#else
>>>> +    ASSERT(!altp2m_idx);
>>>> +#endif
>>>>
>>>>      return _p2m_get_mem_access(p2m, gfn, access);
>>>>  }
>>>>
>>>> but is it OK that the hypervisor builds with a set of flags that
>>>> includes CONFIG_HVM and the firmware code with a set that doesn't?
>>>
>>> Is this perhaps simply (so far unnoticed) fallout from Wei's CONFIG_HVM-
>>> disabling work? Or insufficient re-basing of your change on top of his
>>> work? The shim now builds with HVM=n, while the hypervisor (unless
>>> you've overridden the default) uses HVM=y.
>>
>> I believe I'm up-to-date:
>>
>> $ git pull --rebase origin staging
>> From git://xenbits.xenproject.org/xen
>>  * branch            staging    -> FETCH_HEAD
>> Current branch altp2m-work is up to date.
>>
>> I've also ran "make clean", "make distclean", "configure" - again, and
>> "make dist" one more time, with the same results (mem_access.c won't
>> compile in the shim).
> 
> I didn't imply you're on an outdated tree, but rather that you may not
> have done all changes necessary while re-basing your change over
> upstream commits.

Other than the above #ifdef-ery, I don't think I've missed anything
else, no. I've also now done an full introspection test with the patch
and everything seems to behave the way it's supposed to.


Thanks,
Razvan

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.