|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] Re: One question to compat model
>>> "Jiang, Yunhong" <yunhong.jiang@xxxxxxxxx> 12.05.10 09:38 >>>
>Followed is part of my patch, I try to add a structure xen_mc_inject_v2 to
>xen_mc, with xenctl_cpumap embeded in the xen_mc_inject_v2.
>
>However, in the "include/compat/arch-x86/xen-mca.h", the xenctl_cpumap is
>translated to be compat_ctl_cpumap, this is sure not I wanted.
Hmm, XEN_GUEST_HANDLE_64() is not being dealt with by the scripts so far, so I
believe support for this will need to be added. No sure though whether simply
adding the type as a needs-checking one to xen/include/xlat.lst wouldn't
suffice.
>After checking the related code, I find it should be caused by the [
>r"(struct|union|enum)\s+(xen_?)?(\w)", r"\1 compat_\3" ] in
>tools/compat-build-header.py, which will replace all "struct xen" with "struct
>compat". Add the xenctl_cpumap to xlat.lst raise other warnings.
Without knowing which ones I can't say much.
>I can't find a solution on how to make sure the xenctl_cpumap will not be
>changed, can you please give me some information on it?
>
>BTW, are there any guideline on how should we define the interface structure
>and handle them for compat model? For example, seems
>arch/x86/x86_64/platform_hypercall.c and arch/x86/cpu/mcheck/mce.c has
>different method to handle the compat model.
Sure - I picked the model that was causing less headache in each place I needed
to do conversion and/or checking.
In the worst case, if you can make the whole thing build without handling the
compat case, I could look into the checking/translation issues after the patch
went in. Please just remind me when submitting the patch if you want me to do
this.
Jan
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|