[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [XenPPC] Xencomm on ia64 - The patches



I see, yes.. thanks
On Aug 21, 2006, at 7:25 AM, Tristan Gingold wrote:

Le Lundi 21 Août 2006 13:13, Jimi Xenidis a écrit :
On Aug 21, 2006, at 3:47 AM, Tristan Gingold wrote:
Le Vendredi 18 Août 2006 23:21, Hollis Blanchard a écrit :
On Fri, 2006-08-18 at 18:02 +0200, Tristan Gingold wrote:

[...]

I have also fixed a few bugs in guest_access.h

Do you think you could split those out as a diff to
xen/include/asm-powerpc/guest_access.h, to be applied before we
move it?

Here is the patch.

your patch inlined below, does not do anything other than rename
_x,_y to _d,_s.. am I missing something?
Yes.  See below.

#define __copy_field_to_guest(hnd, ptr, field) ({ \
-    const int _off = offsetof(typeof(*ptr),
field);                  \
- const typeof(&(ptr)->field) _x = &(hnd).p- >field; \ - const typeof(&(ptr)->field) _y = &(ptr)- >field; \ - xencomm_copy_to_guest(_x, _y, sizeof(*_x), sizeof(*_x)* (_off)); \ + const int _off = offsetof(typeof(*ptr), field); \ + const typeof(ptr) _d = (hnd).p; \ + const typeof(&(ptr)->field) _s = &(ptr)- >field; \
+    xencomm_copy_to_guest(_d, _s, sizeof(*_s), _off); \
Cf how _x/_d are declared and the parameters of xencomm_copy_to_guest.

#define __copy_field_from_guest(ptr, hnd, field) ({ \ const int _off = offsetof(typeof(*ptr), field); \ - const typeof(&(ptr)->field) _x = &(hnd).p- >field; \ - const typeof(&(ptr)->field) _y = &(ptr)- >field; \ - xencomm_copy_to_guest(_y, _x, sizeof(*_x), sizeof(*_x)* (_off)); \ + const typeof(ptr) _s = (hnd).p; \ + const typeof(&(ptr)->field) _d = &(ptr)- >field; \
+    xencomm_copy_from_guest(_d, _s, sizeof(*_d), _off); \
Idem.

Tristan.


_______________________________________________
Xen-ppc-devel mailing list
Xen-ppc-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ppc-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.