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

Re: [Xen-devel] [PATCH v3 07/11] tmem: Make the uint64_t oid[3] a proper structure: tmem_oid



> >And the 'container_of' macro looks to require only one level of
> >nesting.
> 
> I'm pretty sure the macro can deal with both.

OK, let me experiement with it as at the first blush it does not work for me.

> 
> >> > --- a/xen/include/public/sysctl.h
> >> > +++ b/xen/include/public/sysctl.h
> >> > @@ -737,6 +737,12 @@ DEFINE_XEN_GUEST_HANDLE(xen_sysctl_psr_cat_op_t);
> >> >  #define XEN_SYSCTL_TMEM_OP_RESTORE_PUT_PAGE       32
> >> >  #define XEN_SYSCTL_TMEM_OP_RESTORE_FLUSH_PAGE     33
> >> >  
> >> > +struct tmem_oid {
> >> > +    uint64_t oid[3];
> >> > +};
> >> > +typedef struct tmem_oid tmem_oid_t;
> >> > +DEFINE_XEN_GUEST_HANDLE(tmem_oid_t);
> >> 
> >> I know this is going to be a boring mechanical thing, but I'd really
> >> like to see this to be xen_tmem_oid (and alike), especially since
> >> you intend to also use the type for th non-tools part of the
> >> interface.
> >
> >This throws a wrench in the compat autogeneration tool.
> >
> >I keep on getting:
> >
> >Fields of 'compat_xen_tmem_oid' not found in 'compat/tmem.h'
> >and it failing to generate compat/.xlat/tmem.h file. Sticking an prefix of
> >xen to the 'common/compat/tmem_xen.c' or just leaving it as is did not help:
> 
> Did you perhaps forget to adjust include/xlat.lst? I'm certain adding a 
> prefix won't

Yes. And ran 'make distclean' before compiling.

> break everything, albeit iirc there's not going to be a compat_xen_tmem_oid, 
> but
> the xen_ prefix in such cases gets replaced by compat_.

Which is part of the problem - in 'xen_tmem_oid' the 'xen' parts got replaced.
And the 'compat_tmem_oid' gets generated but the tool is trying to find
'compat_xen_tmem_oid' (at least that is the error) and can't find it now.

_______________________________________________
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®.