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

Re: [Xen-devel] [PATCH RFC v2 7/9] xen/arm: Missing impl of clear_guest_offset macro



> -----Original Message-----
> From: Stefano Stabellini [mailto:stefano.stabellini@xxxxxxxxxxxxx]
> Sent: Wednesday, July 03, 2013 8:37 PM
> To: Jaeyong Yoo
> Cc: xen-devel@xxxxxxxxxxxxx
> Subject: Re: [Xen-devel] [PATCH RFC v2 7/9] xen/arm: Missing impl of
> clear_guest_offset macro
> 
> On Wed, 3 Jul 2013, Jaeyong Yoo wrote:
> > This macro is somehow accidently broken. Fill up the rest of it.
> >
> > Signed-off-by: Jaeyong Yoo <jaeyong.yoo@xxxxxxxxxxx>
> > ---
> >  xen/include/asm-arm/guest_access.h | 6 ++++--
> >  1 file changed, 4 insertions(+), 2 deletions(-)
> >
> > diff --git a/xen/include/asm-arm/guest_access.h
> > b/xen/include/asm-arm/guest_access.h
> > index 34aae14..1104090 100644
> > --- a/xen/include/asm-arm/guest_access.h
> > +++ b/xen/include/asm-arm/guest_access.h
> > @@ -77,8 +77,10 @@ unsigned long raw_clear_guest(void *to, unsigned
len);
> >   * Clear an array of objects in guest context via a guest handle,
> >   * specifying an offset into the guest array.
> >   */
> > -#define clear_guest_offset(hnd, off, ptr, nr) ({      \
> > -    raw_clear_guest(_d+(off), nr);  \
> > +#define clear_guest_offset(hnd, off, ptr, nr) ({        \
> > +    const typeof(*(ptr)) *_s = (ptr);                   \
> > +    char (*_d)[sizeof(*_s)] = (void *)(hnd).p;          \
> > +    raw_clear_guest(_d+(off), nr);                      \
> >  })
> 
> You are right that is broken, in fact shouldn't this macro have only 3
> arguments?

Oops right!

Jaeyong


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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