|
|
|
|
|
|
|
|
|
|
xen-ppc-devel
Re: [XenPPC] [PATCH] Fix xchg api to for Xen-unstable
On Apr 4, 2007, at 10:43 PM, Jerone Young wrote:
On Wed, 2007-04-04 at 08:57 -0400, Jimi Xenidis wrote:
hmm, how did this ever work?!
I your problem with a direct caller of __xchg() or is this thru the
macro xchg()?
The caller is in common/domain.c @ line 310:
/* Already dying? Then bail. */
if ( xchg(&d->is_dying, 1) )
{
domain_unpause(d);
return;
}
The current macro matches that one in x86. But the parameters we have
for __xchg are not in the same order. So one has to change to be
right.
I notice we have the macro wrong (at least in my copy of xen source):
#define xchg(ptr,v) ((__typeof__(*(ptr)))__xchg((unsigned long)
(v),
(ptr),sizeof(*(ptr))))
where it should be (from Linux):
#define xchg(ptr,x) \
({ \
__typeof__(*(ptr)) _x_ = (x); \
(__typeof__(*(ptr))) __xchg((ptr), (unsigned long)_x_, sizeof(*
(ptr))); \
})
Will that change fix your issue?
Doubtful..see use of code above.
Why?
_______________________________________________
Xen-ppc-devel mailing list
Xen-ppc-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ppc-devel
|
|
|
|
|