From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nai Xia Subject: Re: mem_sharing_nominate_page: p2mt should never change before p2m_change_type() Date: Wed, 07 Aug 2013 00:25:48 +0800 Message-ID: <5201238C.4080903@gmail.com> References: <478510A8-3B0C-41DA-B863-3F9CD210A479@gridcentric.ca> Reply-To: nai.xia@gmail.com Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------030208070801010301020305" Return-path: In-Reply-To: <478510A8-3B0C-41DA-B863-3F9CD210A479@gridcentric.ca> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Andres Lagar-Cavilla Cc: Tim Deegan , xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org This is a multi-part message in MIME format. --------------030208070801010301020305 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Thanks. Please append the following line to the change log: Signed-off-by: Nai Xia BR, Nai Xia On 2013年08月06日 23:38, Andres Lagar-Cavilla wrote: >> The p2mt change check for p2m_change_type() was first introduced when this code path was not protected by p2m_lock(). >> Now this code path is protected by p2m_lock. So p2mt should never change before p2m_change_type(). > > Makes sense. You need to put a proper Signed-off-by line. In any case: > Acked-by: Andres Lagar-Cavilla > > Andres >> >> --- >> diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c >> index 0364bb0..b3940cb 100644 >> --- a/xen/arch/x86/mm/mem_sharing.c >> +++ b/xen/arch/x86/mm/mem_sharing.c >> @@ -900,20 +900,8 @@ int mem_sharing_nominate_page(struct domain *d, >> goto out; >> } >> >> - /* Change the p2m type */ >> - if ( p2m_change_type(d, gfn, p2mt, p2m_ram_shared) != p2mt ) >> - { >> - /* This is unlikely, as the type must have changed since we've checked >> - * it a few lines above. >> - * The mfn needs to revert back to rw type. This should never fail, >> - * since no-one knew that the mfn was temporarily sharable */ >> - mem_sharing_gfn_destroy(page, d, gfn_info); >> - xfree(page->sharing); >> - page->sharing = NULL; >> - /* NOTE: We haven't yet added this to the audit list. */ >> - BUG_ON(page_make_private(d, page) != 0); >> - goto out; >> - } >> + /* Change the p2m type, should never fail with p2m locked. */ >> + BUG_ON(p2m_change_type(d, gfn, p2mt, p2m_ram_shared) != p2mt); >> >> /* Account for this page. */ >> atomic_inc(&nr_shared_mfns); >> >> >> > --------------030208070801010301020305 Content-Type: application/pgp-keys; name="0xE6BAA6F9.asc" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="0xE6BAA6F9.asc" -----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v1.4.11 (GNU/Linux) mQGiBEhNIbYRBAD/12l9UOc7QGZoMqlAnFRr+U1lEd95BfYspCMtWJYGgwsSLabb VsezvrlixjtvZ46qkGOSOCyNjuhHZFXblfocLsszLOxMkvBU1k7Qbp5REAwNgeNg b60DCe554ufjUnZ2Zzi182rOw4b8AKSS72Fu1Bc0GwpjwEl5lzdonF2vXwCgptid VO7PEK5ZOxzKOYmJEKAQp+0D/11zgZ0GcM1Em9ZBpoamEftn7xA38eJnzghSsIEa W54Z1FgVYB1voHO0XWLLshai4/uD9krBdHxP6maAPHXIJRG6bW6YZDO1iMdPU0iV uOT9PBTsXnkpOjw0yfha1qv2nW4JHReumMfEVigCuxmARF9nyGs5ceFH/JkgHSdw AC0+BADkfsZ6VbBXcKNOjv6yBPM1zE+0pwZTyNLboQ07Js10n1KjvU/7OZf8Ydy3 FNfObi9bbXFT5R62h8bo3WzZcST5mbKBLGWwetmu/hHH73rpP7fBVy1yIHK00m+b Ms97QoZ3KFUKiGI8UXDgOlCP+RXxqRucgIDceRa2onj71ppb3LQbTmFpIFhpYSA8 eGlhbmFpQG5qdS5lZHUuY24+iGAEExECACAFAkhNIbYCGwMGCwkIBwMCBBUCCAME FgIDAQIeAQIXgAAKCRA8YYI55rqm+TzUAJ9MLXJzTMdlqpotcBdtBJV8ScpKigCb B4BsTzjFRDuMs25UiEtCDegDHdu5Ag0ESE0huBAIAKI3Lue6JecKRYl5d+iB8bE9 L8NVVhYt38wnScuLb+di9ZhYY4EOF+6BlNjQTELQ7L226KPpSjlKrNjur9XWog48 XFmW9hZqlu8LQBhhOITKnN3OmhOqYwMBBmQWreRYUxd1v/1KJyYjwCRWqffN3UQa baUrJmrJwIQvMPs9cZL/v64wQwxCpfHYxCIYbSvNf/ozhkMWUubbSVHDxxdfOGhT 9qlkuXGcEa3bn7NQdfGP8xCQ+7PJ93RkXSPHxj2ZmpobvuBIxV5nH6DcCr67ndnW Y0NbjPewFVwZy89wnxaBqMZzbz9ov1tZYZ6vAaGKxF1BS4BzOxdUGcFl06MIz78A AwUH/Au8bIBNzQ3zvInTz8coNcDT7wxcMURtWgg2zvZXkRV7A4JISd8AfhBO0btl 5hJ0vDUYcgaaw26Q+4J02rQ7RGhVjx6QqoKtooe0pR0BRof/hWQnH4gh3mEUJ69m w8f5q27Ns9EYUuKnzmuEgs/56+FTrNljEDSC8YvFrIBFOfmml6ILvBUD/9iKv2la VLD8J3xzZaCbmSuTyXS77F2vn5X7ZX4BPZXFvYi5AazzkQ1XgwIYQvj+VCvsJXpe 6mXZs/7UHsVsPJChlWlA4wp3b+psotF+AKfCcHW+0kydNWKhnq4mq7d8GyI5sOpV gAYZ6CFIL6TZCd6ukUKSxSdv2LeISQQYEQIACQUCSE0huAIbDAAKCRA8YYI55rqm +Vw9AJ9+IDRDTbyjub9Lo8sE7At48wvdJwCeJZn/xtqnGnUTEa/GJrvM/C63qO0= =p5UG -----END PGP PUBLIC KEY BLOCK----- --------------030208070801010301020305 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel --------------030208070801010301020305--