This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] RE: [PATCH] mem_sharing: fix race condition of nominate and

To: xen devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] RE: [PATCH] mem_sharing: fix race condition of nominate and unshare
From: MaoXiaoyun <tinnycloud@xxxxxxxxxxx>
Date: Thu, 13 Jan 2011 12:42:48 +0800
Cc: tim.deegan@xxxxxxxxxx, juihaochiang@xxxxxxxxx
Delivery-date: Wed, 12 Jan 2011 20:43:39 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
Importance: Normal
In-reply-to: <AANLkTimOz_uauDEnu_XaPEgwD1EZJWEgOO1oiFccFNs1@xxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <AANLkTinMp1v1zex2BfcUuszotPuxJFWZQNUp40gu_gxL@xxxxxxxxxxxxxx>, <20110106165450.GO21948@xxxxxxxxxxxxxxxxxxxxxxx>, <AANLkTinmpiusLqegGZA+bZWpDXPM+7Wq2nt8MZa0Ocet@xxxxxxxxxxxxxx>, <AANLkTinf-A_4NEPQeCw0pftM5Bks8BYPRhMx3-stTHxa@xxxxxxxxxxxxxx>, <BLU157-ds1E01DEBE18840E5FBB6D1DA0E0@xxxxxxx>, <AANLkTikBaB5awvRu3Sn3WfuoS3LRmeBH=pG8c7H1n4Cw@xxxxxxxxxxxxxx>, <AANLkTinoXve=zBzB9qN1qXRz+iJmhiQ+-gB7MwFoY5Dg@xxxxxxxxxxxxxx>, <20110112105405.GH5651@xxxxxxxxxxxxxxxxxxxxxxx>, <BLU157-w59C63325262D0BE99E6C43DAF10@xxxxxxx>, <20110112140223.GI5651@xxxxxxxxxxxxxxxxxxxxxxx>, <BLU157-w1861EFE53CB51FC710011FDAF10@xxxxxxx>, <AANLkTimOz_uauDEnu_XaPEgwD1EZJWEgOO1oiFccFNs1@xxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Well, I think the discuss is around get_page/put_page, get_page_type/put_page_type
Could someone help to explain their usage and difference?
> Date: Thu, 13 Jan 2011 10:26:55 +0800
> Subject: Re: [PATCH] mem_sharing: fix race condition of nominate and unshare
> From: juihaochiang@xxxxxxxxx
> To: tinnycloud@xxxxxxxxxxx
> CC: tim.deegan@xxxxxxxxxx; xen-devel@xxxxxxxxxxxxxxxxxxx
> Hi, all:
> I think there is still a problem.
> (1) I think using the get_page_and_type is definitely better since
> it's a function already implemented there
> There seems a typo:
> "if ( get_page_and_type(page, d, PGT_shared_page) )" should be changed
> to "if ( !get_page_and_type(page, d, PGT_shared_page) )" because the
> function return 1 on success.
> (2) The major problem is the __put_page_type() never handle the
> special case for shared pages.
> If the (1) is changed as I said, the problem still exists as the following
> /* Before nominating domain 1, gfn 0x63 */
> (XEN) Debug for domain=1, gfn= 63, Debug page: MFN=4836c7 is
> ci=8000000000000002, ti=0, owner_id=1
> /* After a failed nominate [desired: ci=8000000000000002, ti=0]*/
> (XEN) Debug for domain=1, gfn=63, Debug page: MFN=4836c7 is
> ci=8000000000000002, ti=8400000000000000, owner_id=1
> 2011/1/12 MaoXiaoyun <tinnycloud@xxxxxxxxxxx>:
> > Hi Tim:
> >
> >         That's it, I am running the test, so far so good, I'll test more,
> > thanks.
> >
> >       Currently from the code of tapdisk, it indicates only *read only* IO
> > with secs 8 has the
> > chance to be shared, so does it mean only the parent image can be shared,
> > still it needs to
> > be opened read only, right?
> >
> >       So it look s like page sharing are refer to those pages contain disk
> > data been loaded
> > into Guest IO buffer, and this is the page sharing in Xen, right?
> >
> >
> Bests,
> Jui-Hao
Xen-devel mailing list
<Prev in Thread] Current Thread [Next in Thread>