open-src/xserver/xorg/vbe-packing.patch
changeset 836 2904a8ef7bc6
child 851 d428083dbbdd
equal deleted inserted replaced
835:3d369dc6447e 836:2904a8ef7bc6
       
     1 Fix contributed by J�rgen Keil for
       
     2 http://defect.opensolaris.org/bz/show_bug.cgi?id=11374
       
     3 aka
       
     4 6884183 GNOME is really slow in OpenSolaris build 122+ running in VirtualBox
       
     5 
       
     6 --- hw/xfree86/vbe/vbe.h.orig	So. Nov 15 14:08:29 2009
       
     7 +++ hw/xfree86/vbe/vbe.h	So. Nov 15 14:11:15 2009
       
     8 @@ -59,16 +59,6 @@
       
     9      CARD8  OemData[256];
       
    10  } vbeControllerInfoRec, *vbeControllerInfoPtr;
       
    11  
       
    12 -#if defined(__GNUC__) || defined(__USLC__) || defined(__SUNPRO_C)
       
    13 -#pragma pack()	/* All GCC versions recognise this syntax */
       
    14 -#else
       
    15 -#pragma pack(0)
       
    16 -#endif
       
    17 -
       
    18 -#ifndef __GNUC__
       
    19 -#define __attribute__(a)
       
    20 -#endif
       
    21 -
       
    22  typedef struct _VbeInfoBlock VbeInfoBlock;
       
    23  typedef struct _VbeModeInfoBlock VbeModeInfoBlock;
       
    24  typedef struct _VbeCRTCInfoBlock VbeCRTCInfoBlock;
       
    25 @@ -96,7 +86,7 @@
       
    26      /*CARD32*/char *OemProductRevPtr;	/* Pointer to Product Revision String */
       
    27      CARD8 Reserved[222];		/* Reserved for VBE implementation */
       
    28      CARD8 OemData[256];			/* Data Area for OEM Strings */
       
    29 -} __attribute__((packed));
       
    30 +};
       
    31  
       
    32  /* Return Super VGA Information */
       
    33  VbeInfoBlock *VBEGetVBEInfo(vbeInfoPtr pVbe);
       
    34 @@ -160,7 +150,7 @@
       
    35      CARD8 LinRsvdFieldPosition;		/* bit position of lsb of reserved mask (linear modes) */
       
    36      CARD32 MaxPixelClock;		/* maximum pixel clock (in Hz) for graphics mode */
       
    37      CARD8 Reserved2[189];		/* remainder of VbeModeInfoBlock */
       
    38 -} __attribute__((packed));
       
    39 +};
       
    40  
       
    41  /* Return VBE Mode Information */
       
    42  VbeModeInfoBlock *VBEGetModeInfo(vbeInfoPtr pVbe, int mode);
       
    43 @@ -186,9 +176,15 @@
       
    44      CARD32 PixelClock;			/* Pixel clock in units of Hz */
       
    45      CARD16 RefreshRate;			/* Refresh rate in units of 0.01 Hz */
       
    46      CARD8 Reserved[40];			/* remainder of ModeInfoBlock */
       
    47 -} __attribute__((packed));
       
    48 +};
       
    49  /* VbeCRTCInfoBlock is in the VESA 3.0 specs */
       
    50  
       
    51 +#if defined(__GNUC__) || defined(__USLC__) || defined(__SUNPRO_C)
       
    52 +#pragma pack()	/* All GCC versions recognise this syntax */
       
    53 +#else
       
    54 +#pragma pack(0)
       
    55 +#endif
       
    56 +
       
    57  Bool VBESetVBEMode(vbeInfoPtr pVbe, int mode, VbeCRTCInfoBlock *crtc);
       
    58  
       
    59  /*