[PATCH 15/19] int10/vbe: don't use xf86Screens. (ABI)

Alan Coopersmith alan.coopersmith at oracle.com
Mon May 14 14:16:32 PDT 2012


On 05/14/12 09:41 AM, Dave Airlie wrote:
> diff --git a/hw/xfree86/int10/xf86int10.h b/hw/xfree86/int10/xf86int10.h
> index 36b659f..443285b 100644
> --- a/hw/xfree86/int10/xf86int10.h
> +++ b/hw/xfree86/int10/xf86int10.h
> @@ -21,7 +21,7 @@
>  /* int10 info structure */
>  typedef struct {
>      int entityIndex;
> -    int scrnIndex;
> +    ScrnInfoPtr pScrn;
>      pointer cpuRegs;
>      CARD16 BIOSseg;
>      CARD16 inb40time;

As long as the struct offsets are breaking anyway, would it make sense to move
the CARD16's up before pScrn instead of letting LP64 compilers stuff 32-bits
of padding there to get the alignment right for the pointer?   (Similar to
ajax's re-padding patch series from a few months back.)

I suppose that actually breaks 32-bit ABI that would otherwise sneak through
due to the sizeof int & pointer being the same though.

-- 
	-Alan Coopersmith-              alan.coopersmith at oracle.com
	 Oracle Solaris Engineering - http://blogs.oracle.com/alanc


More information about the xorg-devel mailing list