From: "Egger, Christoph" <chegger@amazon.de>
To: Julien Grall <julien.grall@linaro.org>, xen-devel@lists.xen.org
Cc: Keir Fraser <keir@xen.org>, Matt Wilson <msw@amazon.com>,
Jan Beulich <jbeulich@suse.com>
Subject: Re: [PATCH 1/2] gnttab: Introduce rwlock to protect updates to grant table state
Date: Tue, 2 Dec 2014 14:18:34 +0100 [thread overview]
Message-ID: <547DBC2A.908@amazon.de> (raw)
In-Reply-To: <547DB9BC.4040800@linaro.org>
On 2014/12/02 14:08, Julien Grall wrote:
> Hi,
>
> On 02/12/14 13:03, Egger, Christoph wrote:
>> On 2014/12/02 13:35, Julien Grall wrote:
>>> Hi Christoph,
>>>
>>> On 02/12/14 10:06, Christoph Egger wrote:
>>>> diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
>>>> index 522c43d..37c13b1 100644
>>>> --- a/xen/arch/x86/mm.c
>>>> +++ b/xen/arch/x86/mm.c
>>>> @@ -4565,7 +4565,7 @@ int xenmem_add_to_physmap_one(
>>>> mfn = virt_to_mfn(d->shared_info);
>>>> break;
>>>> case XENMAPSPACE_grant_table:
>>>> - spin_lock(&d->grant_table->lock);
>>>> + write_lock(&d->grant_table->lock);
>>>>
>>>> if ( d->grant_table->gt_version == 0 )
>>>> d->grant_table->gt_version = 1;
>>>> @@ -4587,7 +4587,7 @@ int xenmem_add_to_physmap_one(
>>>> mfn = virt_to_mfn(d->grant_table->shared_raw[idx]);
>>>> }
>>>>
>>>> - spin_unlock(&d->grant_table->lock);
>>>> + write_unlock(&d->grant_table->lock);
>>>> break;
>>>> case XENMAPSPACE_gmfn_range:
>>>> case XENMAPSPACE_gmfn:
>>>
>>> You forgot to modify the ARM bits which is using the spinlock. See
>>> arch/arm/mm.c
>>
>> I can do the change. But I don't have ARM hardware nor the build
>> infrastructure. I need your help with compiling and testing on/for ARM.
>> Alternatively you can send me a patch I can add to or squash into my
>> patch series.
>
> I agree that testing the ARM part may require a bit of setup. But
> you can easily build testing. only a cross-compiler for ARM is required
> for this step. See:
>
> http://wiki.xen.org/wiki/Xen_ARM_with_Virtualization_Extensions#Building_Xen_on_ARM
Thank you for this pointer.
I just compared xenmem_add_to_physmap_one() x86 and arm versions.
The real architectural functions are virt_to_mfn(), mfn_to_page() and
friends. Everything else in this function is just common code and
can be moved into xen/common/ .
Christoph
next prev parent reply other threads:[~2014-12-02 13:18 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-12-02 10:06 [PATCH 0/2] gnttab: Improve scaleability Christoph Egger
2014-12-02 10:06 ` [PATCH 1/2] gnttab: Introduce rwlock to protect updates to grant table state Christoph Egger
2014-12-02 11:28 ` Andrew Cooper
2014-12-02 12:35 ` Julien Grall
2014-12-02 13:03 ` Egger, Christoph
2014-12-02 13:08 ` Julien Grall
2014-12-02 13:18 ` Egger, Christoph [this message]
2014-12-02 10:06 ` [PATCH 2/2] gnttab: refactor locking for scalability Christoph Egger
2014-12-02 11:00 ` [PATCH 0/2] gnttab: Improve scaleability Andrew Cooper
2014-12-02 11:08 ` Egger, Christoph
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=547DBC2A.908@amazon.de \
--to=chegger@amazon.de \
--cc=jbeulich@suse.com \
--cc=julien.grall@linaro.org \
--cc=keir@xen.org \
--cc=msw@amazon.com \
--cc=xen-devel@lists.xen.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.