[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] Re: [PATCH] mem_sharing: fix race condition of nominate and unshare
At 02:26 +0000 on 13 Jan (1294885615), Jui-Hao Chiang wrote: > 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) )" Oops! Yes, thanks for that. :) > (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 Is this causing a real problem other than this printout? One of the reasons to use get_page_and_type/put_page_and_type was that it gets rid of the code that requires pages to have PGT_none before they're shared. As I have been trying to explain, when a page has typecount 0 its type is only relevant for the TLB flushing logic. If there's still a place in the page-sharing code that relies on (type == PGT_none && count == 0) then AFAICS that's a bug. Cheers, Tim. > 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 looks 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 -- Tim Deegan <Tim.Deegan@xxxxxxxxxx> Principal Software Engineer, Xen Platform Team Citrix Systems UK Ltd. (Company #02937203, SL9 0BG) _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |