[Intel-gfx] [PATCH] Initialize DRI2 info rec version 4 list of driver names

Zhenyu Wang zhenyuw at linux.intel.com
Mon Feb 1 02:39:04 CET 2010


On 2010.01.29 23:31:06 -0800, Keith Packard wrote:
> With DRI2 supporting multiple subsystems, the video driver must
> initialize the list of driver names instead of just passing the single
> driver name used by Mesa. Without this, the X server will fail to
> initialize DRI2 as the numDrivers field in this structure will be
> uninitialized.
> 

Please push this, I've met this too and fixed it locally, without this
X crashed for me in start up.

> Signed-off-by: Keith Packard <keithp at keithp.com>
> ---
>  src/i830_dri.c |    7 +++++++
>  1 files changed, 7 insertions(+), 0 deletions(-)
> 
> diff --git a/src/i830_dri.c b/src/i830_dri.c
> index ed9d69f..0996629 100644
> --- a/src/i830_dri.c
> +++ b/src/i830_dri.c
> @@ -865,6 +865,9 @@ Bool I830DRI2ScreenInit(ScreenPtr screen)
>  	int dri2_major = 1;
>  	int dri2_minor = 0;
>  #endif
> +#if DRI2INFOREC_VERSION >= 4
> +	const char *driverNames[1];
> +#endif
>  
>  #ifdef USE_DRI2_1_1_0
>  	if (xf86LoaderCheckSymbol("DRI2Version")) {
> @@ -879,6 +882,7 @@ Bool I830DRI2ScreenInit(ScreenPtr screen)
>  #endif
>  
>  	intel->deviceName = drmGetDeviceNameFromFd(intel->drmSubFD);
> +	memset(&info, '\0', sizeof(info));
>  	info.fd = intel->drmSubFD;
>  	info.driverName = IS_I965G(intel) ? "i965" : "i915";
>  	info.deviceName = intel->deviceName;
> @@ -907,6 +911,9 @@ Bool I830DRI2ScreenInit(ScreenPtr screen)
>  	info.ScheduleSwap = I830DRI2ScheduleSwap;
>  	info.GetMSC = I830DRI2GetMSC;
>  	info.ScheduleWaitMSC = I830DRI2ScheduleWaitMSC;
> +	info.numDrivers = 1;
> +	info.driverNames = driverNames;
> +	driverNames[0] = info.driverName;
>  #endif
>  
>  	return DRI2ScreenInit(screen, &info);
> -- 
> 1.6.6.1
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Open Source Technology Center, Intel ltd.

$gpg --keyserver wwwkeys.pgp.net --recv-keys 4D781827
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.freedesktop.org/archives/intel-gfx/attachments/20100201/066d11c3/attachment.sig>


More information about the Intel-gfx mailing list