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

Re: [Xen-devel] changes for illumos in public headers



On 12/12/2013 09:15, Igor Kozhukhov wrote:
> Hello All,
>
> i'm working on port xen-4.2 to DilOS - illumos based platform.
>
> I have a questions about changes in public headers.
>
> for build i need changes:
>
> diff -r 9640d9c4b223 xen/include/public/arch-x86/xen-x86_32.h
> --- a/xen/include/public/arch-x86/xen-x86_32.h  Tue Dec 10 16:21:57 2013 +0100
> +++ b/xen/include/public/arch-x86/xen-x86_32.h  Thu Dec 12 13:07:50 2013 +0400
> @@ -36,6 +36,19 @@
>   * Clobbered: Argument registers (e.g., 2-arg hypercall clobbers %ebx,%ecx)
>   */
>  
> +#if defined(__sun)
> +/*
> + * Direct hypercall interface:
> + * As above, except the entry sequence to the hypervisor is:
> + *  mov $hypercall-number*32,%eax ; int $0x82

Have you done substantial hacking to the Xen entry points? If not, this
comment appears wrong.

Furthermore, why are you not using a hypercall page?

~Andrew

> + */
> +#if !defined(_ASM)
> +#define TRAP_INSTR "int $0x82"
> +#else
> +#define TRAP_INSTR int $0x82
> +#endif
> +#endif
> +
>  /*
>   * These flat segments are in the Xen-private section of every GDT. Since 
> these
>   * are also present in the initial GDT, many OSes will be able to avoid
> diff -r 9640d9c4b223 xen/include/public/arch-x86/xen-x86_64.h
> --- a/xen/include/public/arch-x86/xen-x86_64.h  Tue Dec 10 16:21:57 2013 +0100
> +++ b/xen/include/public/arch-x86/xen-x86_64.h  Thu Dec 12 13:07:50 2013 +0400
> @@ -36,6 +36,20 @@
>   * Clobbered: argument registers (e.g., 2-arg hypercall clobbers %rdi,%rsi)
>   */
>  
> +#if defined(__sun)
> +/*
> + * Direct hypercall interface:
> + * As above, except the entry sequence to the hypervisor is:
> + *  mov $hypercall-number*32,%eax ; syscall
> + * Clobbered: %rcx, %r11, argument registers (as above)
> + */
> +#if !defined(_ASM)
> +#define TRAP_INSTR "syscall"
> +#else
> +#define TRAP_INSTR syscall
> +#endif
> +#endif
> +  
>  /*
>   * 64-bit segment selectors
>   * These flat segments are in the Xen-private section of every GDT. Since 
> these
> diff -r 9640d9c4b223 xen/include/public/xen.h
> --- a/xen/include/public/xen.h  Tue Dec 10 16:21:57 2013 +0100
> +++ b/xen/include/public/xen.h  Thu Dec 12 13:07:50 2013 +0400
> @@ -29,6 +29,20 @@
>  
>  #include "xen-compat.h"
>  
> +#if defined(__sun)
> +#if defined(__i386) && !defined(__i386__)
> +#define __i386__ /* foo */
> +#endif
> +
> +#if defined(__amd64) && !defined(__x86_64__)
> +#define __x86_64__
> +#endif
> +
> +#if defined(_ASM) && !defined(__ASSEMBLY__)
> +#define __ASSEMBLY__
> +#endif
> +#endif
> +
>  #if defined(__i386__) || defined(__x86_64__)
>  #include "arch-x86/xen.h"
>  #elif defined(__ia64__)
>
> Signed-off-by: Igor Kozhukhov <ikozhukhov@xxxxxxxxx>
>
> also in xen\include\public\trace.h
> we have structure: struct t_info
>
> it have conflict with another structure with the same name in illumos sources.
> Question: can we rename structure name in xen to: struct t_info_xen
>
> if yes - i can try to update xen code with it and send RTI.
>
> please let me know about first changes in public headers - can integrate it 
> to xen mainstream ?
> or it is not applicable to xen ?
>
> --
> Best regards,
> Igor Kozhukhov
>
>
>
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxx
> http://lists.xen.org/xen-devel


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