All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexandru Stefan ISAILA <aisaila@bitdefender.com>
To: Tamas K Lengyel <tamas@tklengyel.com>,
	George Dunlap <george.dunlap@citrix.com>
Cc: "wei.liu2@citrix.com" <wei.liu2@citrix.com>,
	"rcojocaru@bitdefender.com" <rcojocaru@bitdefender.com>,
	"george.dunlap@eu.citrix.com" <george.dunlap@eu.citrix.com>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"jbeulich@suse.com" <jbeulich@suse.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	"roger.pau@citrix.com" <roger.pau@citrix.com>
Subject: Re: [PATCH v3 1/3] x86/mm: Introduce altp2m_get_gfn_type_access
Date: Fri, 12 Apr 2019 10:59:13 +0000	[thread overview]
Message-ID: <19db8a43-5e2f-72f6-2ffb-d98d03b762c6@bitdefender.com> (raw)
In-Reply-To: <CABfawhkn-uSRtNWpSJKxoz0dFcxmDupVhOg1FxYWca9eRx1wTA@mail.gmail.com>



On 11.04.2019 16:28, Tamas K Lengyel wrote:
> On Thu, Apr 11, 2019 at 6:50 AM George Dunlap <george.dunlap@citrix.com> wrote:
>>
>> On 4/11/19 1:17 PM, Alexandru Stefan ISAILA wrote:
>>>>> diff --git a/xen/arch/x86/mm/p2m.c b/xen/arch/x86/mm/p2m.c
>>>>> index b9bbb8f485..d38d7c29ca 100644
>>>>> --- a/xen/arch/x86/mm/p2m.c
>>>>> +++ b/xen/arch/x86/mm/p2m.c
>>>>> @@ -2626,6 +2626,7 @@ int p2m_change_altp2m_gfn(struct domain *d, unsigned int idx,
>>>>>        mfn_t mfn;
>>>>>        unsigned int page_order;
>>>>>        int rc = -EINVAL;
>>>>> +    bool copied_from_hostp2m;
>>>>>
>>>>>        if ( idx >= MAX_ALTP2M || d->arch.altp2m_eptp[idx] == mfn_x(INVALID_MFN) )
>>>>>            return rc;
>>>>> @@ -2636,7 +2637,7 @@ int p2m_change_altp2m_gfn(struct domain *d, unsigned int idx,
>>>>>        p2m_lock(hp2m);
>>>>>        p2m_lock(ap2m);
>>>>>
>>>>> -    mfn = ap2m->get_entry(ap2m, old_gfn, &t, &a, 0, NULL, NULL);
>>>>> +    mfn = altp2m_get_gfn_type_access(ap2m, old_gfn, &t, &a, &page_order, &copied_from_hostp2m);
>>>>
>>>> Before, if new_gfn was INVALID_GFN, then the host p2m wasn't read at
>>>> all.  Now, the hostp2m will have __get_gfn_type_access() called with
>>>> P2M_ALLOC | P2M_UNSHARE.  Is that change intentional, and if so, why?
>>>
>>> This has been requested by Tamas in v2.
>>
>> That's nice, but 1) you still haven't answered the question, and 2) it's
>> not in the changelog.
> 
> What I requested was that if remapping is being done then both the old
> and new gfn's should be unshared in the hostp2m for keeping things
> consistent. The page type of old_gfn was already checked whether it's
> p2m_ram_rw and bail if it wasn't so functionality-wise this just
> simplifies things as a user don't have to request unsharing manually
> before remapping. Now, if the new_gfn is invalid it shouldn't query
> the hostp2m as that is effectively a request to remove the entry from
> the altp2m. But provided that scenario is used only when removing
> entries that were previously remapped/copied to the altp2m, those
> entries already went through P2M_ALLOC | P2M_UNSHARE before, so it
> won't have an affect. But it's also pointless.
> 

If this has been cleared there was one more question, where should the 
"if ( !mfn_valid(*mfn) || *t != p2m_ram_rw )" check end up in the 
attached form of the patch?

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

WARNING: multiple messages have this Message-ID (diff)
From: Alexandru Stefan ISAILA <aisaila@bitdefender.com>
To: Tamas K Lengyel <tamas@tklengyel.com>,
	George Dunlap <george.dunlap@citrix.com>
Cc: "wei.liu2@citrix.com" <wei.liu2@citrix.com>,
	"rcojocaru@bitdefender.com" <rcojocaru@bitdefender.com>,
	"george.dunlap@eu.citrix.com" <george.dunlap@eu.citrix.com>,
	"andrew.cooper3@citrix.com" <andrew.cooper3@citrix.com>,
	"jbeulich@suse.com" <jbeulich@suse.com>,
	"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	"roger.pau@citrix.com" <roger.pau@citrix.com>
Subject: Re: [Xen-devel] [PATCH v3 1/3] x86/mm: Introduce altp2m_get_gfn_type_access
Date: Fri, 12 Apr 2019 10:59:13 +0000	[thread overview]
Message-ID: <19db8a43-5e2f-72f6-2ffb-d98d03b762c6@bitdefender.com> (raw)
Message-ID: <20190412105913.kr3D8MOGT-ooicFzELrvB4DnJFs3tonZU_wFhVd3J6g@z> (raw)
In-Reply-To: <CABfawhkn-uSRtNWpSJKxoz0dFcxmDupVhOg1FxYWca9eRx1wTA@mail.gmail.com>



On 11.04.2019 16:28, Tamas K Lengyel wrote:
> On Thu, Apr 11, 2019 at 6:50 AM George Dunlap <george.dunlap@citrix.com> wrote:
>>
>> On 4/11/19 1:17 PM, Alexandru Stefan ISAILA wrote:
>>>>> diff --git a/xen/arch/x86/mm/p2m.c b/xen/arch/x86/mm/p2m.c
>>>>> index b9bbb8f485..d38d7c29ca 100644
>>>>> --- a/xen/arch/x86/mm/p2m.c
>>>>> +++ b/xen/arch/x86/mm/p2m.c
>>>>> @@ -2626,6 +2626,7 @@ int p2m_change_altp2m_gfn(struct domain *d, unsigned int idx,
>>>>>        mfn_t mfn;
>>>>>        unsigned int page_order;
>>>>>        int rc = -EINVAL;
>>>>> +    bool copied_from_hostp2m;
>>>>>
>>>>>        if ( idx >= MAX_ALTP2M || d->arch.altp2m_eptp[idx] == mfn_x(INVALID_MFN) )
>>>>>            return rc;
>>>>> @@ -2636,7 +2637,7 @@ int p2m_change_altp2m_gfn(struct domain *d, unsigned int idx,
>>>>>        p2m_lock(hp2m);
>>>>>        p2m_lock(ap2m);
>>>>>
>>>>> -    mfn = ap2m->get_entry(ap2m, old_gfn, &t, &a, 0, NULL, NULL);
>>>>> +    mfn = altp2m_get_gfn_type_access(ap2m, old_gfn, &t, &a, &page_order, &copied_from_hostp2m);
>>>>
>>>> Before, if new_gfn was INVALID_GFN, then the host p2m wasn't read at
>>>> all.  Now, the hostp2m will have __get_gfn_type_access() called with
>>>> P2M_ALLOC | P2M_UNSHARE.  Is that change intentional, and if so, why?
>>>
>>> This has been requested by Tamas in v2.
>>
>> That's nice, but 1) you still haven't answered the question, and 2) it's
>> not in the changelog.
> 
> What I requested was that if remapping is being done then both the old
> and new gfn's should be unshared in the hostp2m for keeping things
> consistent. The page type of old_gfn was already checked whether it's
> p2m_ram_rw and bail if it wasn't so functionality-wise this just
> simplifies things as a user don't have to request unsharing manually
> before remapping. Now, if the new_gfn is invalid it shouldn't query
> the hostp2m as that is effectively a request to remove the entry from
> the altp2m. But provided that scenario is used only when removing
> entries that were previously remapped/copied to the altp2m, those
> entries already went through P2M_ALLOC | P2M_UNSHARE before, so it
> won't have an affect. But it's also pointless.
> 

If this has been cleared there was one more question, where should the 
"if ( !mfn_valid(*mfn) || *t != p2m_ram_rw )" check end up in the 
attached form of the patch?

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

  reply	other threads:[~2019-04-12 10:59 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-09 12:03 [PATCH v3 1/3] x86/mm: Introduce altp2m_get_gfn_type_access Alexandru Stefan ISAILA
2019-04-09 12:03 ` [Xen-devel] " Alexandru Stefan ISAILA
2019-04-09 12:03 ` [PATCH v3 2/3] x86/mm: Introduce altp2m_set_entry_by_page_order Alexandru Stefan ISAILA
2019-04-09 12:03   ` [Xen-devel] " Alexandru Stefan ISAILA
2019-04-09 13:44   ` Tamas K Lengyel
2019-04-09 13:44     ` [Xen-devel] " Tamas K Lengyel
2019-04-10 14:18   ` George Dunlap
2019-04-10 14:18     ` [Xen-devel] " George Dunlap
2019-04-10 14:22     ` Alexandru Stefan ISAILA
2019-04-10 14:22       ` [Xen-devel] " Alexandru Stefan ISAILA
2019-05-02 14:46   ` Jan Beulich
2019-05-02 14:46     ` [Xen-devel] " Jan Beulich
2019-04-09 12:04 ` [PATCH v3 3/3] x86/mm: Fix p2m_set_suppress_ve Alexandru Stefan ISAILA
2019-04-09 12:04   ` [Xen-devel] " Alexandru Stefan ISAILA
2019-04-09 13:48 ` [PATCH v3 1/3] x86/mm: Introduce altp2m_get_gfn_type_access Tamas K Lengyel
2019-04-09 13:48   ` [Xen-devel] " Tamas K Lengyel
2019-04-09 14:03   ` Alexandru Stefan ISAILA
2019-04-09 14:03     ` [Xen-devel] " Alexandru Stefan ISAILA
2019-04-09 14:37     ` Tamas K Lengyel
2019-04-09 14:37       ` [Xen-devel] " Tamas K Lengyel
2019-04-09 14:48       ` Alexandru Stefan ISAILA
2019-04-09 14:48         ` [Xen-devel] " Alexandru Stefan ISAILA
2019-04-09 15:26         ` Tamas K Lengyel
2019-04-09 15:26           ` [Xen-devel] " Tamas K Lengyel
2019-04-09 15:37           ` Alexandru Stefan ISAILA
2019-04-09 15:37             ` [Xen-devel] " Alexandru Stefan ISAILA
2019-04-10 16:02 ` George Dunlap
2019-04-10 16:02   ` [Xen-devel] " George Dunlap
2019-04-11 12:17   ` Alexandru Stefan ISAILA
2019-04-11 12:17     ` [Xen-devel] " Alexandru Stefan ISAILA
2019-04-11 12:50     ` George Dunlap
2019-04-11 12:50       ` [Xen-devel] " George Dunlap
2019-04-11 13:28       ` Tamas K Lengyel
2019-04-11 13:28         ` [Xen-devel] " Tamas K Lengyel
2019-04-12 10:59         ` Alexandru Stefan ISAILA [this message]
2019-04-12 10:59           ` Alexandru Stefan ISAILA
2019-05-02 14:43 ` Jan Beulich
2019-05-02 14:43   ` [Xen-devel] " Jan Beulich

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=19db8a43-5e2f-72f6-2ffb-d98d03b762c6@bitdefender.com \
    --to=aisaila@bitdefender.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=george.dunlap@citrix.com \
    --cc=george.dunlap@eu.citrix.com \
    --cc=jbeulich@suse.com \
    --cc=rcojocaru@bitdefender.com \
    --cc=roger.pau@citrix.com \
    --cc=tamas@tklengyel.com \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xenproject.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.