On 21 Jul 2005, at 21:59, King, Steven R wrote:
> Hi Folks,
> In -unstable (I haven''t updated in a few days),
I''m investigating a
> problem in which revalidate_l1() fails because get_page() fails due to
> a count_info of 0. While that problem is still hanging over me, I did
> notice that get_page() in include/asm-x86/mm.h does a 64-bit cmpxchg
> while put_page() only does a 32-bit cmpxchg. Seemed odd to me and
> possibly related to my bug. I''m running on a 32-bit machine
without
> shadow tables.
>
> Can anyone offer an explanation?
In put_page() we can be sure the refcnt is non-zero and so the domain
ptr will not change under our feet. Therefore there''s no need to
include it in the cmpxchg when we update the reference count.
-- Keir
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel