Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 8 Jun 2006 11:02:27 +0200 (CEST)
From:      Andre Albsmeier <Andre.Albsmeier@siemens.com>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/98700: [PATCH] make fxtv work with broken NVIDIA drivers
Message-ID:  <200606080902.k5892Rpj003961@curry.mchp.siemens.de>
Resent-Message-ID: <200606081010.k58AAIAb022316@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         98700
>Category:       ports
>Synopsis:       [PATCH] make fxtv work with broken NVIDIA drivers
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Jun 08 10:10:17 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Andre Albsmeier
>Release:        FreeBSD 5.4-STABLE i386
>Organization:
>Environment:

System: FreeBSD FreeBSD 5.4-STABLE #0: Tue Mar 7 21:56:34 CET 2006

Nvidia driver 1.0.8178

>Description:

Even when running fxtv with -disableDirectV, it tries to initialize
some DGA stuff in tvscreen.c. This makes it fail with newer NVIDIA
drivers which are broken w.r.t. DGA.

>How-To-Repeat:

Run "fxtv -disableDirectV" with an NVIDIA driver which has broken
DGA support:

andre@bali:~>fxtv -disableDirectV
X Error of failed request:  XF86DGANoDirectVideoMode
  Major opcode of failed request:  138 (XFree86-DGA)
  Minor opcode of failed request:  1 (XF86DGAGetVideoLL)
  Serial number of failed request:  24
  Current serial number in output stream:  24

>Fix:

Add this patch to multimedia/fxtv/files. It will disable
DGA stuff completely when -disableDirectV was given on
the commandline.

--- tvscreen.c.ORI	Sun May 21 15:49:47 2000
+++ tvscreen.c	Wed Jun  7 10:19:30 2006
@@ -480,6 +480,9 @@
     dga_avail = FALSE;
 
 #ifdef HAVE_XFREE86
+    if ( App_res.disable_direct_v )
+        SUPRINTF(( "Will not init DGA since -disableDirectV was given.\n" ));
+    else
     if ( !XUTILXServerIsLocal( TVDISPLAY ) )
         SUPRINTF(( "XF86DGA not available...X Server isn't local.\n" ));
     else {

>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200606080902.k5892Rpj003961>