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
|