Re: make World failure? on distclean in tinyx dirs

2006-10-08 Thread David Dawes
On Fri, Oct 06, 2006 at 07:22:33AM +0100, Andrew C Aitchison wrote:
I've been forgetting to report this for a while.
It started happening around the 2nd September.

I run
   make WORLDOPTS=-k World
and all (I think) the tinyx directories report problems with
make target distclean. This is RedHat Linux.
I'm not expliciting building TinyX.

I've just committed a fix for this.  Thanks for the report.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: 4.6.99.2 Problem

2006-06-26 Thread David Dawes
On Tue, Jun 27, 2006 at 03:37:29AM +0900, Takaaki Nomura wrote:
I've tested 4.6.99.2 static/loader servers on Linux and FreeBSD.
The servers didn't work. The problem didn't occur with 4.6.99.1.
I've attached the servers' logs and gdb stack trace of the static
server.

I committed the following patch that fixes this.

Thanks for the report.

David
Index: xf86Init.c
===
RCS file: /home/x-cvs/xc/programs/Xserver/hw/xfree86/common/xf86Init.c,v
retrieving revision 3.242
retrieving revision 3.243
diff -u -r3.242 -r3.243
--- xf86Init.c  19 Jun 2006 13:43:26 -  3.242
+++ xf86Init.c  25 Jun 2006 04:12:54 -  3.243
@@ -211,7 +211,14 @@
 #endif
 };
 
-static int numFormats = sizeof(formats) / sizeof(formats[0]);
+#ifdef RENDER
+#define NUMDEFFORMATS 7
+#else
+#define NUMDEFFORMATS 6
+#endif
+
+static int numFormats = NUMDEFFORMATS;
+
 static Bool formatsDone = FALSE;
 
 InputDriverRec xf86KEYBOARD = {


Announce: XFree86 4.6.0 released

2006-05-09 Thread David Dawes
I am very pleased to announce the release of XFree86 4.6.0.  This release
comes about a year after the 4.5.0 release, and is the product of the
work of dedicated volunteers.  I would like to thank all who have
contributed to this release, through code, testing, and other feedback,
and all who continue to support XFree86 and the work of its volunteer
developers.

Source, patches, and binaries for a range of platforms are available now
for download from our ftp site:

   ftp://ftp.xfree86.org/pub/XFree86/4.6.0/
   http://ftp.xfree86.org/pub/XFree86/4.6.0/

We currently have binaries available for 23 platforms.  If you are not
sure which binary set you need, first download the Xinstall.sh script,
and run:

   sh Xinstall.sh -check


Also, before downloading, check the 4.6.0 online documentation at:

   http://www.xfree86.org/4.6.0/

Read especially the README, Release Notes and Install documents.  Also
check the ERRATA for 4.6.0 for any last minute issues:

   http://www.xfree86.org/4.6.0/ERRATA.html

and the UPDATES page to see when new binaries or other updates are available:

   http://www.xfree86.org/4.6.0/UPDATES.html


The CVS tag for this release is xf-4_6_0.  Information about accessing
our anonymous CVS service is at http://www.xfree86.org/cvs/.

User-related problems should be reported to our xfree86@xfree86.org
list.  Development issues and specific bugs should be reported to our
devel@xfree86.org list and/or logged at http://bugs.xfree86.org/.

The next release, 4.7.0, is planned for the first half of 2007.  If you
find XFree86 useful and would like to help support our work, please visit
our donations page: 

http://www.xfree86.org/donations/

Enjoy.

David
-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: 4.5.99.902 Problem with i810 EDID not honoured for [EMAIL PROTECTED]

2006-05-08 Thread David Dawes
On Mon, May 08, 2006 at 12:07:49PM +0100, Barry Scott wrote:
David Dawes wrote:
On Wed, May 03, 2006 at 10:17:11AM +0100, Barry Scott wrote:
  
David,

Can you tell me if this is supposed to work? If not why not?


It is supposed to work.  The i810 driver (for = i830) handles modes
differently than most drivers, and I don't know if the problem lies there
or not.

What are the results of running:

  XFree86 -autoconfig -screen 'Builtin Default vesa Screen 0'

David
  
xrandr says its running at [EMAIL PROTECTED] but the screen claims its 
running at 1024x768.
Which is progress as X appears to be doing the right thing. I don't 
trust the Hitachi panel to
be working at 1360x768 as the Windows Nvidia drivers get the same result 
as the X i810,
e.g. choose 1360x768 and panel says 1024x768.

Does it visually look like 1360x768?

What does the log file look like?  Anyway, if the vesa does the right thing,
that points to the i810 driver.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: 4.5.99.902 Problem with i810 EDID not honoured for [EMAIL PROTECTED]

2006-05-04 Thread David Dawes
On Wed, May 03, 2006 at 10:17:11AM +0100, Barry Scott wrote:
David,

Can you tell me if this is supposed to work? If not why not?

It is supposed to work.  The i810 driver (for = i830) handles modes
differently than most drivers, and I don't know if the problem lies there
or not.

What are the results of running:

  XFree86 -autoconfig -screen 'Builtin Default vesa Screen 0'

David


The edit the config option is not reasonable as I want to install
against a large number of monitors and have X11 use the preferred mode
with admin intervention.

Barry


Barry Scott wrote:
Alan suggested:

Try adding the 1360x768 modeline explicitly to the config file.

Isn't the point of the EDID data that I do not have to do custom config
for every monitor?

Why doesn't the i810 + XFree86 code set up the mode correctly?

Barry
p.s. Sorry for the delay replying, I'm very busy at the moment.


___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel





-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Fourth XFree86 4.6.0 release candidate

2006-04-25 Thread David Dawes
On Sun, Apr 23, 2006 at 02:30:28PM -0400, David Dawes wrote:
The fourth release candidate for XFree86 4.6.0 is now available.  The source
tarball can be found at:

  ftp://ftp.xfree86.org/pub/XFree86/develsnaps/XFree86-4.5.99.904.tar.bz2

Preview documentation for the 4.6.0 release is at:

  http://www.xfree86.org/~dawes/pre-4.6/

Binaries for some platforms may be available in the next few days.  I'll
post a note when they are available.

Some binaries are available at:

  ftp://ftp.xfree86.org/pub/XFree86/snapshots/4.5.99.904/

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: [EMAIL PROTECTED]: Problem with 4.5.99.903 on NetBSD]

2006-04-24 Thread David Dawes
On Mon, Apr 24, 2006 at 07:11:09PM +0200, Bernd Ernesti wrote:
Forwared because my original mail was stopper by the subscriber check.

- Forwarded message from Bernd Ernesti [EMAIL PROTECTED] -

Date: Sun, 23 Apr 2006 12:06:52 +0200
From: Bernd Ernesti [EMAIL PROTECTED]
Subject: Problem with 4.5.99.903 on NetBSD
To: devel@XFree86.Org

Hi,

I send David Dawes a mail last month that there was a problem with
his change #231.
Not all problems were fixed since then.

I don't recall it -- it probably got lost amongst the spam.

The remaining problem is that you can't use
#define InstallManPageSource NO
in host.def.

This would result in an error during the cleaning stage of a make World:

cleaning in programs/Xserver/hw/xfree86...
make: /xc/programs/Xserver/hw/xfree86/Makefile line 1120: Missing dependency 
operator
make: Fatal errors encountered -- cannot continue

These are the lines around 1120, where 1120 is the InstallManPageLongBase one:

 cleandir::
   $(RM) XF86Config.$(MANNEWSUFFIX)
 
 InstallManPageLongBase(XF86Config,$(FILEMANDIR),XF86Config,$(FILEMANSUFFIX))
 
 install::

Looking further into the NetBSD.cf changes made be belive that the
change in 3.130 contains some problems:

+#define InstallGenManPageLong(file,destdir,dest,suffix)   
 @@\
+BuildInstallHtmlManPage(file,dest,suffix)  @@\
+   @@\
+CppManTarget(file, $(EXTRAMANDEFS))@@\
+   @@\
+InstallManPageLongBase(file,destdir,dest,suffix)

and

-InstallManPageAliasesBase(file,destdir,aliases)
+InstallManPageAliasesBase(file,destdir,suffix,aliases)

IMHO there is an 'Os' prefix missing for InstallManPageLongBase and
InstallManPageAliasesBase.

I agree.  I'll fix these.

Attached is an NetBSD.cf to sync it with the one used in our cvs repository:
- Added some brackets to make it easier to read and changed some logic
  for the NetBSD version check
- Adding support for HasArc4Random
and a fix for the InstallManPageSource problem which seems to work for me.

I just did a complete new build, while using InstallManPageSource set to NO.
And the unformated manpages where not installed.

Given where we are in the release cycle, I'm inclined to leave the other
changes, until after 4.6.0.

Thanks for the feedback and patch.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Fourth XFree86 4.6.0 release candidate

2006-04-23 Thread David Dawes
The fourth release candidate for XFree86 4.6.0 is now available.  The source
tarball can be found at:

  ftp://ftp.xfree86.org/pub/XFree86/develsnaps/XFree86-4.5.99.904.tar.bz2

Preview documentation for the 4.6.0 release is at:

  http://www.xfree86.org/~dawes/pre-4.6/

Binaries for some platforms may be available in the next few days.  I'll
post a note when they are available.

This should be the final release candidate before the 4.6.0 release.  Only
documentation updates and important bug fixes will be accepted between now
and the release.

Please report problems/success, etc here, and send me any documentation
updates that you may have.  The latest version of xtest (4.0.14) can
be found at:

  ftp://ftp.xfree86.org/pub/XFree86/xtest/XFree86-xtest-4.0.14.tar.bz2

David
-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: 4.5.99.903 problem on Linux

2006-04-19 Thread David Dawes
On Wed, Apr 19, 2006 at 08:52:52PM +0900, Takaaki Nomura wrote:
On Tue, 18 Apr 2006 19:27:36 -0400, David Dawes wrote:
On Fri, Apr 14, 2006 at 08:39:47PM +0900, Takaaki Nomura wrote:
On Thu, 13 Apr 2006 20:27:29 -0400, David Dawes wrote:
On Wed, Apr 12, 2006 at 08:22:39PM +0900, Takaaki Nomura wrote:
I've tested 4.5.99.903 on FreeBSD and Linux.

When I terminated the server on Linux, I couldn't return to
the console and the root window remained.

The problem didn't occur on FreeBSD.

I've attached the server log below.

Are there any latest changes on the CVS version?

Not that would affect this.

Is the problem repeatable?  If so, can you get some debugging information
with gdb?  If you start the server with no clients, then exit, does the
problem still occur?  If the stack trace in the log is accurate, it shows
a crash in main().  A trace with gdb from a server built with debugging
info should help.

Caught signal 11.
Stack trace:
 0: 0x808db5d: 0x808db40 xf86ShowStackTrace + 0x1d
   Module /usr/X11R6.6/bin/XFree86
 1: 0x808dc23: 0x808dbc0 xf86SigHandler + 0x63
   Module /usr/X11R6.6/bin/XFree86
 2: 0xe420: 0xe420 __kernel_sigreturn + 0x0
   Module 
 3: 0x80d2946: 0x80d24c0 main + 0x486
   Module /usr/X11R6.6/bin/XFree86

Fatal server error:
Server aborting

David

It is repeatable on both of my two test PCs running Fedora Core 5.
I've attached the static server logs below. One is with glint-based
PC and the other is with i810-base PC.

It's strange that gdb indicates the static symbol(variable)s of Enc61
and i810_pitch_flags.

Fedora Core 5 uses gcc 4.1.0.

I can't test until next week.

I've gotten access to a machine running FC5 and have reproduced this
problem.  It seems to be an array overrun.  The attached patch fixes it
for me.  Let me know how it goes for you.

David

I've tested the 4.5.99.903 static/loader servers with your patch on 
both of my two test PCs running FC5. The problem didn't occur.
It seemed to be fixed. Thanks a lot.

Thanks for the report and feedback.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: 4.5.99.903 problem on Linux

2006-04-18 Thread David Dawes
On Fri, Apr 14, 2006 at 08:39:47PM +0900, Takaaki Nomura wrote:
On Thu, 13 Apr 2006 20:27:29 -0400, David Dawes wrote:
On Wed, Apr 12, 2006 at 08:22:39PM +0900, Takaaki Nomura wrote:
I've tested 4.5.99.903 on FreeBSD and Linux.

When I terminated the server on Linux, I couldn't return to
the console and the root window remained.

The problem didn't occur on FreeBSD.

I've attached the server log below.

Are there any latest changes on the CVS version?

Not that would affect this.

Is the problem repeatable?  If so, can you get some debugging information
with gdb?  If you start the server with no clients, then exit, does the
problem still occur?  If the stack trace in the log is accurate, it shows
a crash in main().  A trace with gdb from a server built with debugging
info should help.

Caught signal 11.
Stack trace:
 0: 0x808db5d: 0x808db40 xf86ShowStackTrace + 0x1d
 Module /usr/X11R6.6/bin/XFree86
 1: 0x808dc23: 0x808dbc0 xf86SigHandler + 0x63
 Module /usr/X11R6.6/bin/XFree86
 2: 0xe420: 0xe420 __kernel_sigreturn + 0x0
 Module 
 3: 0x80d2946: 0x80d24c0 main + 0x486
 Module /usr/X11R6.6/bin/XFree86

Fatal server error:
Server aborting

David

It is repeatable on both of my two test PCs running Fedora Core 5.
I've attached the static server logs below. One is with glint-based
PC and the other is with i810-base PC.

It's strange that gdb indicates the static symbol(variable)s of Enc61
and i810_pitch_flags.

Fedora Core 5 uses gcc 4.1.0.

I can't test until next week.

I've gotten access to a machine running FC5 and have reproduced this
problem.  It seems to be an array overrun.  The attached patch fixes it
for me.  Let me know how it goes for you.

David
Index: common/xf86KbdLnx.c
===
RCS file: /home/x-cvs/xc/programs/Xserver/hw/xfree86/common/xf86KbdLnx.c,v
retrieving revision 3.21
diff -u -r3.21 xf86KbdLnx.c
--- common/xf86KbdLnx.c 20 Feb 2006 00:14:37 -  3.21
+++ common/xf86KbdLnx.c 18 Apr 2006 23:23:22 -
@@ -364,7 +364,7 @@
   }
   else {
 k = map+GLYPHS_PER_KEY;
-maxkey = NUM_AT2LNX;
+maxkey = NUM_AT2LNX - 1;
   }
 
   for (i = 0; i  maxkey; ++i)
Index: os-support/linux/lnx_KbdMap.c
===
RCS file: 
/home/x-cvs/xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_KbdMap.c,v
retrieving revision 1.4
diff -u -r1.4 lnx_KbdMap.c
--- os-support/linux/lnx_KbdMap.c   20 Feb 2006 00:14:37 -  1.4
+++ os-support/linux/lnx_KbdMap.c   18 Apr 2006 23:23:18 -
@@ -287,7 +287,7 @@
   }
   else {
 k = map+GLYPHS_PER_KEY;
-maxkey = NUM_AT2LNX;
+maxkey = NUM_AT2LNX - 1;
   }
 
   for (i = 0; i  maxkey; ++i)


4.6.0 preview documentation for review

2006-04-18 Thread David Dawes
I've put a copy of the preview documentation for the upcoming 4.6.0
release at:

  http://www.xfree86.org/~dawes/pre-4.6/

If you have any additions or corrections, please let me know.  In particular
send release notes updates, and updates to the credits sections.

David
-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: 4.5.99.903 problem on Linux

2006-04-13 Thread David Dawes
On Wed, Apr 12, 2006 at 08:22:39PM +0900, Takaaki Nomura wrote:
I've tested 4.5.99.903 on FreeBSD and Linux.

When I terminated the server on Linux, I couldn't return to
the console and the root window remained.

The problem didn't occur on FreeBSD.

I've attached the server log below.

Are there any latest changes on the CVS version?

Not that would affect this.

Is the problem repeatable?  If so, can you get some debugging information
with gdb?  If you start the server with no clients, then exit, does the
problem still occur?  If the stack trace in the log is accurate, it shows
a crash in main().  A trace with gdb from a server built with debugging
info should help.

Caught signal 11.
Stack trace:
 0: 0x808db5d: 0x808db40 xf86ShowStackTrace + 0x1d
   Module /usr/X11R6.6/bin/XFree86
 1: 0x808dc23: 0x808dbc0 xf86SigHandler + 0x63
   Module /usr/X11R6.6/bin/XFree86
 2: 0xe420: 0xe420 __kernel_sigreturn + 0x0
   Module 
 3: 0x80d2946: 0x80d24c0 main + 0x486
   Module /usr/X11R6.6/bin/XFree86

Fatal server error:
Server aborting

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: patch - word/byte PCI config support for ix86

2006-04-11 Thread David Dawes
On Mon, Apr 10, 2006 at 09:55:11AM -0400, David Dawes wrote:
On Sun, Apr 09, 2006 at 03:07:45PM -0500, Sergey Babkin wrote:
Hi,

I'm not sure if it's a good idea to cc: to both X.org and
XF86 mailing lists, but the subject is kind of useful
for both. 

I've attached the patch that adds word- and byte-sized
PCI configuration reads and writes for the ix86
platform. The particular reason was to fix the
support of sincgle-chip Matrox G200 with the VESA driver 
on UnixWare. This hardware is somewhat brain-damaged
and really expects word- and byte-sized bus cycles,
it does not work with the wraping in Long.

I fixed this in the int10 module before 4.6.0 RC2.  It addressed the
problems of this type that I saw.  Try 4.6.0 RC3 and let me know if
you still see the problem.

Just a quick followup...  I originally saw the problem when using the
vesa driver with a G400.  I have now verified 4.6.0 RC3 with the vesa
driver and a G200.  I don't have a working UnixWare system (I was never
able to get it to play well in a multi-boot environment), but this is
using XFree86's ix86 CFG1 PCI functions, not any of the OS-specific
interfaces.

David
-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: patch - word/byte PCI config support for ix86

2006-04-10 Thread David Dawes
On Sun, Apr 09, 2006 at 03:07:45PM -0500, Sergey Babkin wrote:
Hi,

I'm not sure if it's a good idea to cc: to both X.org and
XF86 mailing lists, but the subject is kind of useful
for both. 

I've attached the patch that adds word- and byte-sized
PCI configuration reads and writes for the ix86
platform. The particular reason was to fix the
support of sincgle-chip Matrox G200 with the VESA driver 
on UnixWare. This hardware is somewhat brain-damaged
and really expects word- and byte-sized bus cycles,
it does not work with the wraping in Long.

I fixed this in the int10 module before 4.6.0 RC2.  It addressed the
problems of this type that I saw.  Try 4.6.0 RC3 and let me know if
you still see the problem.

David
-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Third 4.6.0 release candidate

2006-04-08 Thread David Dawes
The third release candidate for XFree86 4.6.0 is now available.
The source tarball can be found at:

  ftp://ftp.xfree86.org/pub/XFree86/develsnaps/XFree86-4.5.99.903.tar.bz2

Please report problems/success, etc here.

David
-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: 4.5.99.902 Problem with i810

2006-03-30 Thread David Dawes
On Wed, Mar 29, 2006 at 11:58:40PM +0900, Takaaki Nomura wrote:
On Tue, 28 Mar 2006 19:57:58 -0500, David Dawes wrote:
On Tue, Mar 28, 2006 at 11:13:46PM +0900, Takaaki Nomura wrote:
I've tested 4.5.99.902 with i810 based built-in card on Linux..
Server worked, but console blacked out after I terminated it.
I've attached the server log and the console log.
The latter contains some gnome's messages and japanese characters.

Can you try the current CVS version?  I fixed a couple of problems
since 4.5.99.902 that might be contributing to what you are seeing.
If that doesn't make any difference, the problem might be related to
recent 830/845/865/etc driver changes.

I'dont have a CVS environment. But after I got the lastest files
under the following directories of the CVS repository and rebuilt
the server, the problem seemed to be fixed.

Thanks for the feedback.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: 4.5.99.902 Problem with i810

2006-03-28 Thread David Dawes
On Tue, Mar 28, 2006 at 11:13:46PM +0900, Takaaki Nomura wrote:
I've tested 4.5.99.902 with i810 based built-in card on Linux..
Server worked, but console blacked out after I terminated it.
I've attached the server log and the console log.
The latter contains some gnome's messages and japanese characters.

Can you try the current CVS version?  I fixed a couple of problems
since 4.5.99.902 that might be contributing to what you are seeing.
If that doesn't make any difference, the problem might be related to
recent 830/845/865/etc driver changes.

David
-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Second 4.6.0 release candidate

2006-03-28 Thread David Dawes
On Tue, Mar 28, 2006 at 09:02:31AM +0100, Andrew C Aitchison wrote:
On Mon, 27 Mar 2006, David Dawes wrote:

 On Mon, Mar 27, 2006 at 07:22:51AM +0100, Andrew C Aitchison wrote:
 On Sun, 26 Mar 2006, David Dawes wrote:
 
  While looking into this, I did find a bug in fontconfig where memory
  could get freed twice.  I don't see the same symptoms, but this problem
  does happen in code paths that get used when slanting a font.  I'm
  committing the patch now.  Let me know if it makes a difference for you.

 It shoud be there by now, but if it isn't, I've attached the patch (forgot
 to do that last night).

Thanks.
The patch is in CVS now, and solves my mozilla/firefox problem.

Thanks for the feedback.  This particular problem was likely exposed by
the fontconfig matching bug I fixed in RC2.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Second 4.6.0 release candidate

2006-03-27 Thread David Dawes
On Mon, Mar 27, 2006 at 07:22:51AM +0100, Andrew C Aitchison wrote:
On Sun, 26 Mar 2006, David Dawes wrote:

 While looking into this, I did find a bug in fontconfig where memory
 could get freed twice.  I don't see the same symptoms, but this problem
 does happen in code paths that get used when slanting a font.  I'm
 committing the patch now.  Let me know if it makes a difference for you.

Thanks.
When should I expect this to make it into anoncvs.xfree86.org or 
http://cvsweb.xfree86.org/cvsweb/xc/ 
(I see that it has made it to http://www.xfree86.org/cvs/changes.html) ?

It shoud be there by now, but if it isn't, I've attached the patch (forgot
to do that last night).

David
-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
Index: extras/fontconfig//src/fccfg.c
===
RCS file: /home/x-cvs/xc/extras/fontconfig/src/fccfg.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- extras/fontconfig//src/fccfg.c  3 May 2005 20:43:27 -   1.3
+++ extras/fontconfig//src/fccfg.c  27 Mar 2006 01:32:46 -  1.4
@@ -675,6 +675,7 @@
r = FcPatternGet (p, e-u.field, 0, v);
if (r != FcResultMatch)
v.type = FcTypeVoid;
+   v = FcValueSave (v);
break;
 case FcOpConst:
if (FcNameConstant (e-u.constant, v.u.i))


Re: Second 4.6.0 release candidate

2006-03-26 Thread David Dawes
On Wed, Mar 22, 2006 at 11:38:10AM +, Andrew C Aitchison wrote:
On Mon, 20 Mar 2006, David Dawes wrote:

 The second release candidate for XFree86 4.6.0 is now available.
 The source tarball can be found at:
 
   ftp://ftp.xfree86.org/pub/XFree86/develsnaps/XFree86-4.5.99.902.tar.bz2
 
 This version marks the beginning of the intensive testing phase for this
 release.  Please report problems/success, etc here.

Is there a broken (italic) font ? 
mozilla and firefox keep getting wedged in tight loops.

   firefox file:/ 
is fine, but if I view source (ctrl-U) the process spins (cpu 99%+, 
strace and ltrace show nothing, process does respond to signals).

I started seeing this when I upgraded to XFree86-4.5.99.902
(from CVS head). Previous version was probably six weeks ago.

While looking into this, I did find a bug in fontconfig where memory
could get freed twice.  I don't see the same symptoms, but this problem
does happen in code paths that get used when slanting a font.  I'm
committing the patch now.  Let me know if it makes a difference for you.

David
-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: CVS GLX oddity

2006-03-25 Thread David Dawes
On Fri, Mar 24, 2006 at 10:13:25AM -0800, Mark Vojkovich wrote:
   Is that the final fix or is there something else I should test?
That one works for me.

That is the final fix.  I'll commit it soon.

David



   Mark.

On Thu, 23 Mar 2006, Mark Vojkovich wrote:


Yes, that works.

  Mark.

 On Thu, 23 Mar 2006, David Dawes wrote:

  On Wed, Mar 22, 2006 at 08:52:00PM -0800, Mark Vojkovich wrote:
 initdata is still NULL even after your call to LoaderSymbol() in
  that patch.
 
  The module name needs to be prepended.  Something like:
 
if (!initdata) {
  char *md;
 
  xasprintf(md, %s MODULE_DATA_NAME, name);
  if (md) {
initdata = LoaderSymbol(md);
xfree(md);
  }
}
 
 
  David
 
  
Mark.
  
  On Wed, 22 Mar 2006, David Dawes wrote:
  
   On Wed, Mar 22, 2006 at 06:57:17PM -0800, Mark Vojkovich wrote:
 I can't get CVS to load NVIDIA's GLX module.  It complains:
   
   (II) Loading /usr/X11R6/lib/modules/extensions/libglx.so
   (EE) LoadModule: Module glx does not have a glxModuleData data object.
   (II) UnloadModule: glx
   
   Did something change with regards to this?  It was working before
   I updated.
  
   dlopen modules have always had different semantics than XFree86 modules.
   These differences will only get greater as additional features are added
   to the XFree86 loader and as the newly added features are used more
   widely.
  
   The following (untested) patch may solve this particular problem.  Let 
   me know
   how it goes.
  
   David
   --
   David Dawes X-Oz Technologies
   www.XFree86.org/~dawes  www.x-oz.com
  
  ___
  Devel mailing list
  Devel@XFree86.Org
  http://XFree86.Org/mailman/listinfo/devel
 
  ___
  Devel mailing list
  Devel@XFree86.Org
  http://XFree86.Org/mailman/listinfo/devel
 

___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel

-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: CVS GLX oddity

2006-03-23 Thread David Dawes
On Wed, Mar 22, 2006 at 08:52:00PM -0800, Mark Vojkovich wrote:
   initdata is still NULL even after your call to LoaderSymbol() in
that patch.

The module name needs to be prepended.  Something like:

  if (!initdata) {
char *md;

xasprintf(md, %s MODULE_DATA_NAME, name);
if (md) {
  initdata = LoaderSymbol(md);
  xfree(md);
}
  }
  

David


   Mark.

On Wed, 22 Mar 2006, David Dawes wrote:

 On Wed, Mar 22, 2006 at 06:57:17PM -0800, Mark Vojkovich wrote:
   I can't get CVS to load NVIDIA's GLX module.  It complains:
 
 (II) Loading /usr/X11R6/lib/modules/extensions/libglx.so
 (EE) LoadModule: Module glx does not have a glxModuleData data object.
 (II) UnloadModule: glx
 
 Did something change with regards to this?  It was working before
 I updated.

 dlopen modules have always had different semantics than XFree86 modules.
 These differences will only get greater as additional features are added
 to the XFree86 loader and as the newly added features are used more
 widely.

 The following (untested) patch may solve this particular problem.  Let me 
 know
 how it goes.

 David
 --
 David Dawes X-Oz Technologies
 www.XFree86.org/~dawes  www.x-oz.com

___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel

___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: CVS GLX oddity

2006-03-22 Thread David Dawes
On Wed, Mar 22, 2006 at 06:57:17PM -0800, Mark Vojkovich wrote:
  I can't get CVS to load NVIDIA's GLX module.  It complains:

(II) Loading /usr/X11R6/lib/modules/extensions/libglx.so
(EE) LoadModule: Module glx does not have a glxModuleData data object.
(II) UnloadModule: glx

Did something change with regards to this?  It was working before
I updated.

dlopen modules have always had different semantics than XFree86 modules.
These differences will only get greater as additional features are added
to the XFree86 loader and as the newly added features are used more
widely.

The following (untested) patch may solve this particular problem.  Let me know
how it goes.

David
--
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
Index: loadmod.c
===
RCS file: /home/x-cvs/xc/programs/Xserver/hw/xfree86/loader/loadmod.c,v
retrieving revision 1.78
diff -u -r1.78 loadmod.c
--- loadmod.c   16 Mar 2006 16:50:34 -  1.78
+++ loadmod.c   23 Mar 2006 03:29:57 -
@@ -1084,6 +1084,10 @@
 
 ret-filename = xstrdup(found);
 
+/* This is needed for dlopen modules. */
+if (!initdata)
+   initdata = LoaderSymbol(MODULE_DATA_NAME);
+
 if (initdata) {
ModuleSetupProc setup;
ModuleTearDownProc teardown;


Second 4.6.0 release candidate

2006-03-20 Thread David Dawes
The second release candidate for XFree86 4.6.0 is now available.
The source tarball can be found at:

  ftp://ftp.xfree86.org/pub/XFree86/develsnaps/XFree86-4.5.99.902.tar.bz2

This version marks the beginning of the intensive testing phase for this
release.  Please report problems/success, etc here.

David
-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: [XFree86] Question about XFree86 4.5.99.901 snapshot

2006-03-16 Thread David Dawes
On Thu, Mar 09, 2006 at 07:53:41AM -0800, Tom Williams wrote:
David Dawes wrote:
 On Wed, Mar 08, 2006 at 05:54:02PM -0500, David Dawes wrote:
   
 On Wed, Mar 08, 2006 at 08:23:17AM -0800, Tom Williams wrote:
 
 Hi!  I just installed the XFree86 4.5.99.901 snapshot (which fixed my
 xterm installation problem, thanks guys!  :)) and it runs fine.  I
 wanted to try the -autoconfig option to see what it would do and it
 generated these messages:
   
 Autoconfigure works by loading a bunch of drivers, using the one
 that proves to be the best choice, and unloading the others.

 The problem is that fbdev registers that it needs fbdevhw.  When
 it is unloaded it doesn't notify the loader that fbdevhw is no
 longer needed.  Since the nv driver refers to fbdevhw (even though
 it isn't using it), these references are being reported as fatal
 unresolved symbols.

 The new loader now invalidates symbol references to modules that
 have been unloaded.  To fix this problem, the fbdev module (and all
 modules, really) needs to be modified to register its fbdevhw
 requirements as being specific to itself so that those requirements
 get removed when it is unloaded.

 I'll take a look at doing this, and post a patch.

 Tom, thanks for reporting the problem!
 

 The attached patch should fix this problem.

 David
   
Yep, that patch worked.  *Both* -autoconfig and -configure work just
fine.  :)

I've just committed some changes that improve the handling of module
requirements, and have modified all modules to make use of this.  Along
the way I found several bugs that showed up as a result of this and of
the fact that modules can now be unloaded and reloaded cleanly.  I
have also removed some workarounds for the old loader (mis)behaviour,
and plan to remove some more after further testing.

I expect that there will be more problems showing up that either were
masked in the past, or come from code that relied on the old loader
behaviour.  Please report problems and/or new warnings/errors in the log
file here and I'll follow them up.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


xterm warning regressions (was Re: CVS Update: xc (branch: trunk))

2006-03-14 Thread David Dawes
On Sun, Mar 12, 2006 at 05:28:02PM -0800, Thomas Dickey wrote:
CVSROOT:   /home/x-cvs
Module name:   xc
Changes by:[EMAIL PROTECTED]   06/03/12 17:28:02

Log message:
   241. Xterm patch #210 (Thomas Dickey).

This reinstates the following warnings on Solaris 9:

xterm.h:243: warning: redundant redeclaration of `errno' in same scope
/usr/include/errno.h:41: warning: previous declaration of `errno'

main.c:452: warning: redundant redeclaration of `ptsname' in same scope
/usr/include/stdlib.h:170: warning: previous declaration of `ptsname'
main.c:2818: warning: unsigned int format, long unsigned int arg (arg 5)

and adds this one:

main.c:2586: warning: `pty_search' defined but not used

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: xterm warning regressions (was Re: CVS Update: xc (branch: trunk))

2006-03-14 Thread David Dawes
On Tue, Mar 14, 2006 at 06:49:49PM -0500, Thomas Dickey wrote:
On Tue, 14 Mar 2006, David Dawes wrote:

On Sun, Mar 12, 2006 at 05:28:02PM -0800, Thomas Dickey wrote:
CVSROOT: /home/x-cvs
Module name: xc
Changes by:  [EMAIL PROTECTED]   06/03/12 17:28:02

Log message:
  241. Xterm patch #210 (Thomas Dickey).

This reinstates the following warnings on Solaris 9:

xterm.h:243: warning: redundant redeclaration of `errno' in same scope
/usr/include/errno.h:41: warning: previous declaration of `errno'

I test-built on Solaris 8, 9 and 10 without seeing any warnings other
than those addressed by the fix for lastlog().   That was using the
configure script of course.  Perhaps having the particular -D's set
by imake would help focus the discussion.

gcc -c -O2 -fno-strength-reduce -fno-strict-aliasing -DNO_ASM -Wall 
-Wpointer-arith -Wstrict-prototypes   
-Wmissing-prototypes -Wmissing-declarations 
-Wredundant-decls -Wnested-externs -Wundef   -I. -I. -I../../exports/include 
-I../../exports/include -I../../exports/include/freetype2  
-I../../exports/include  -Dsun -DSVR4 -D__EXTENSIONS__  
   -Di386 -D__i386 -D__i386__-DSCROLLBAR_RIGHT -DOPT_WIDE_CHARS 
-DOPT_LUIT_PROG -DXRENDERFONT -DXFREE86_FT2 -DPROJECTROOT=/usr/X11R6 -DUTMP 
-DUSE_TTY_GROUP  -DOSMAJORVERSION=5 -DOSMINORVERSION=9 main.c

main.c:452: warning: redundant redeclaration of `ptsname' in same scope
/usr/include/stdlib.h:170: warning: previous declaration of `ptsname'
main.c:2818: warning: unsigned int format, long unsigned int arg (arg 5)

and adds this one:

main.c:2586: warning: `pty_search' defined but not used

yes, that's an annoyance (but the proposed fix reversed the general
process of removing special definitions from main.c).


David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: First 4.6.0 release candidate

2006-03-07 Thread David Dawes
On Tue, Mar 07, 2006 at 05:31:00AM -0500, Thomas Dickey wrote:
On Mon, 6 Mar 2006, David Dawes wrote:

The first release candidate for XFree86 4.6.0 is now available.
The source tarball can be found at:

 ftp://ftp.xfree86.org/pub/XFree86/develsnaps/XFree86-4.5.99.901.tar.bz2

that's nice.

I'm not using the changes which have been recently applied to xterm in 
your tree.

The latest change I made to xterm prevents a SEGV that was happening
when XftFontMatch() returned NULL.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: 4.5.99.22 problem

2006-03-06 Thread David Dawes
On Tue, Mar 07, 2006 at 12:35:20AM +0900, Takaaki Nomura wrote:
On Thu, 2 Mar 2006 18:56:38 -0500,
David Dawes [EMAIL PROTECTED] wrote:
On Fri, Mar 03, 2006 at 08:39:25AM +0900, Takaaki Nomura wrote:
I've tested static/loader servers on FreeBSD and Linux.
The servers didn't start with the following error.

Can you send your config file?

The config file search path has changed with 4.5.99.22 and the
file under my home directory was used. I'm usually using /etc/
XF86Config. After I renamed the file under my home directory,
the servers worked.

This change in search path is not intended, and I'm committing a fix now.

Thanks for reporting the problem.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


First 4.6.0 release candidate

2006-03-06 Thread David Dawes
The first release candidate for XFree86 4.6.0 is now available.
The source tarball can be found at:

  ftp://ftp.xfree86.org/pub/XFree86/develsnaps/XFree86-4.5.99.901.tar.bz2

David
-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: incomplete docs ?

2006-03-02 Thread David Dawes
On Thu, Mar 02, 2006 at 11:06:16AM -0800, bruno schwander wrote:
Hi all,

I noticed some manpages and documentation is missing from the release
information available at http://xfree86.org/current/RELNOTES4.html .

Can you give some examples of what is missing?

Are these web pages automagically generated from the xfree86 sources ?

They are generated for each release at release time, from the XFree86
source tree.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: 4.5.99.22 problem

2006-03-02 Thread David Dawes
On Fri, Mar 03, 2006 at 08:39:25AM +0900, Takaaki Nomura wrote:
I've tested static/loader servers on FreeBSD and Linux.
The servers didn't start with the following error.

Can you send your config file?

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: EDID Prefered mode problems

2006-01-26 Thread David Dawes
On Thu, Jan 26, 2006 at 02:31:23PM +, Barry Scott wrote:
I'm running 4.5.99.18 and having problems with supporting HDReady panels.
The HDReady panels support [EMAIL PROTECTED] typically.
Using the i810 driver on a i945G with the i915resolution hack I can
get the driver to set 1360x768 but not at 60Hz. Talking to alanh it seems
that the problem may be in XFree86 not matching modes correctly.
We try changing to LOOK_CLOSEST_CLOCK but that does not
work. At the moment I've forced 60 into the calls to prevent any
higher frequency being used.

I assume that its not just the i810 driver that will have this problem,
I know the CLE266 does not work as well and I'll pick up Luc's
newer driver code soon to test again.

Is this problem with EDID prefered mode known about? Have we
missed a way to makes things work?

Send the full log file, including one with 'XFree86 -autoconfig' if that's
not your default.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: CVS Update: xc (branch: trunk)

2006-01-25 Thread David Dawes
On Wed, Jan 25, 2006 at 04:41:10PM +0100, Matthieu Herrb wrote:
CVSROOT:  /home/x-cvs
Module name:  xc
Changes by:   [EMAIL PROTECTED]   06/01/24 20:32:10

Log message:
   187. Add two new functions that can be used to scroll the content of an
Xaw viewport from outside the viewportWidgetClass (Bugzilla #1648,
Alexander Pohoyda).
   186. Fix i18n for Xaw's tip widget (Bugzilla #1647, Alexander Pohoyda).
   185. Fix a performance issue with Xaw's Tree widget caused by useless
relayouts (Bugzilla #1645, Alexander Pohoyda).
   184. Add some XChar2b string manipulation functions to Xt (Bugzilla 
   #1646,
Alexander Pohoyda).

Modified files:
  xc/lib/Xaw/:
Label.c Label.h LabelP.h Simple.c Simple.h SimpleP.h 
Tip.c Tree.c TreeP.h Viewport.c Viewport.h 
  xc/lib/Xt/:
Functions.c Intrinsic.h Xt-def.cpp jump_funcs 
  xc/programs/Xserver/hw/xfree86/:
CHANGELOG 

libXaw and libXt minor revision numbers should be incremented when 
adding functions.

http://bugs.xfree86.org/show_bug.cgi?id=1646#c2

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


XFree86 4.6.0 plans

2006-01-25 Thread David Dawes
We are planning to release XFree86 version 4.6.0 in the next two-three
months.  The details of the release schedule have not been finalised yet,
but I'll post them here when they are.

If you have new work or updates that you would like to see included in
the upcoming 4.6.0 release, they should be submitted/discussed here and/or
at bugs.xfree86.org.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Updated GDB patches for XFree86 modules

2006-01-23 Thread David Dawes
I have some updated patches for adding support to gdb for debugging
XFree86 modules.  The patches are for gdb versions 5.3, 6.0, and
6.4, and I've tested them on NetBSD, FreeBSD and Solaris/x86 in
addition to Linux.  The patches are based on the original work that
Paul Flinders did for earlier versions of gdb.

The patches are at http://www.xfree86.org/~dawes/gdb-XFree86.html.

I'm planning to update these further as the XFree86 loader is enhanced.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: uClibc floating point xfree

2006-01-11 Thread David Dawes
On Mon, Jan 09, 2006 at 10:17:02AM +0100, Marco Longhin wrote:
Hi,

I'm trying to compile xfree 4.5.0 with uClibc 0.9.27 (mipsel).
My question:
Is possible to compile xfree without floating point?
uClibc don't have all functions of libm, and xfree need floating point.

Portions of XFree86 do require floating point.  In which specific areas
of XFree86 are you running into the most problems?

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: [PATCH] trident_video.c

2005-12-09 Thread David Dawes
On Fri, Dec 09, 2005 at 09:14:40AM -0800, Tim Roberts wrote:
Jeff Chua wrote:

The following patch is needed in order to compile trident_video.c with 
gcc-2.95.3 ...

--- 
xfree86/xc/programs/Xserver/hw/xfree86/drivers/trident/trident_video.c.org 
2005-12-09 12:05:15 +0800
+++ 
xfree86/xc/programs/Xserver/hw/xfree86/drivers/trident/trident_video.c
2005-12-09 12:05:43 +0800
@@ -666,10 +666,11 @@
 OUTW(vgaIOBase + 4, ((width1)  0xff00)  | 0x91);
 OUTW(vgaIOBase + 4, ((offset)  0xff)  8 | 0x92);
 OUTW(vgaIOBase + 4, ((offset)  0xff00)| 0x93);
-if (pTrident-Chipset = CYBER9397)
+if (pTrident-Chipset = CYBER9397) {
 OUTW(vgaIOBase + 4, ((offset)  0x0f)  8 | 0x94);
-else
+} else {
 OUTW(vgaIOBase + 4, ((offset)  0x07)  8 | 0x94);
+}


Why?  If the OUTW macro is generating multiple statements, then the OUTW 
macro should be fixed.  Otherwise, this is just a nasty bug waiting to 
happen.

Yes, it needs to be fixed.  It is currently a { ... } block.  The
do { ... } while (0) trick would fix it.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Offscreenmemory copy

2005-12-02 Thread David Dawes
On Fri, Dec 02, 2005 at 09:21:34AM -0800, Tim Roberts wrote:

Anybody know why there were a set of messages from two weeks ago 
(including this one) that are just showing up today?

It is a side-effect of the member-only posting restriction that helps
keep this list spam-free.  It can be avoided when unsubscribed posters
subscribe and re-post.  For those posting from an address that they don't
wish to receive list mail at, subscribe the address, and enable the no
mail setting for that subscription.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Future of Unichrome (CLE266, CN400 etc) unichrome drivers

2005-10-17 Thread David Dawes
On Fri, Oct 14, 2005 at 12:35:19PM +0100, Barry Scott wrote:
David Dawes wrote:

On Thu, Oct 13, 2005 at 09:56:16AM +0100, Barry Scott wrote:
 

I'm using the Unichrome driver with XFree86 4.5.0 and I'm hitting 
problems trying to use their latest code.
   

I sent the previous message to fast and did not reply to you question 
correctly.
The problem in the current CVS unichrome driver is a Opss when the via_drv.o
deallocates a piece of DRM memory twice. Elsewhere in the Xserver DRM 
context
1 is removed. (This occurs when the Xserver resets its self when the lat 
client
disconnects and the  a new client connects and uses XVIDEO). It would 
appear that
the via_drv.o code needs to be called back to tell it to shutdown. Is 
there such a
call back to a driver? If so the via_drv.o code needs to arrnage for it 
to be called
and clean up.

The via driver (X server) is supposed to take care of closing down and
cleaning up everything it has used when its CloseScreen function is
called.  I don't know if you're seeing a bug in the X driver or the
kernel driver.  Server reset is often a poorly tested case, but it is
usually straightforward to fix the problems that arise there.

I'm about to ship a product with a work around to the bug in the 
Unichrome drivers.
I'm not going to be able to doing any testing until a few weeks time.

What I really need to know is do you have people that are supporting 
UNichrome for
XFree86. I can work with them on getting the bugs fixed. However if 
unichrome
does not have support then I going to be forced to Xorg that does have 
support, and
I'm not happy with the stability of Xorg.

I'm not aware of anyone specifically working on the via driver for XFree86.
Why not take it on yourself?

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Future of Unichrome (CLE266, CN400 etc) unichrome drivers

2005-10-13 Thread David Dawes
On Thu, Oct 13, 2005 at 09:56:16AM +0100, Barry Scott wrote:
I'm using the Unichrome driver with XFree86 4.5.0 and I'm hitting 
problems trying to use their latest code.

What problems are you hitting?

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: tdfx and DDC2

2005-08-30 Thread David Dawes
On Thu, Aug 25, 2005 at 01:21:55PM -0400, Michael wrote:
Hello,

the attached patch adds DDC2/I2C support to the tdfx driver which has
the distinct advantage to work anywhere since it doesn't depend on the
vbe module. It will try DDC2 first and if that fails fall back to the
old vbe stuff when possible.
Moved mode validation and related stuff /after/ monitor detection.

That looks reasonable.

Does the vbe/int10 portion still need to be disabled for PowerPC?

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: tdfx and DDC2

2005-08-30 Thread David Dawes
On Tue, Aug 30, 2005 at 06:01:42PM -0400, Michael wrote:
Hello,

 I don't see why they should be enabled - they're PC-specific and even
 with x86 emulation they would be pretty much useless since you're not
 too likely to encounter a graphics board with PC firmware in a Mac (
 or other PowerPC boxes )
 
 Wrong.  No hardware manufacturer in their right mind would build a 
 Mac-only PCI graphics board, with the possible exception of Apple.  

What the hell are you talking about? VESA BIOS is x86 only. Int10 is PC
only. 

 They're going to build a generic graphics board that works in a PC and
 by the way also works in a Mac.  Such a board will have a video BIOS.

Wrong.
A Mac graphics board will have an OpenFirmware driver and possibly a
MacOS driver in ROM, not a VESA BIOS. 

Is the implication here that plugging a PC PCI graphics card into
a powerpc machine will never work (as a secondary display), even
if the software driving it knows how to initialise it in the absence of
OpenFirmware?

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: tdfx and DDC2

2005-08-30 Thread David Dawes
On Tue, Aug 30, 2005 at 07:06:22PM -0400, Michael wrote:
Hello,

 Is the implication here that plugging a PC PCI graphics card into
 a powerpc machine will never work (as a secondary display), even
 if the software driving it knows how to initialise it in the absence
 of OpenFirmware?

Of course not. All I said is that you're rather unlikely to find a
VESA BIOS on a graphics card in a non-PC-box. And in the case at hand  -
tdfx - we don't need firmware help to set up the hardware anyway.

The tdfx driver will attempt to use the int10 module to soft-boot
a secondary card.  Except on powerpc because right now that is
#ifdef'd out.  Many drivers will not work correctly on secondary
cards without this, including the tdfx driver on some tdfx cards
I've used in the past.

My original question about whether these things still need to be
#ifdef'd out on powerpc platforms (yet they are not on other non-x86
platforms) is independent of whether it is typically needed on those
platforms.  XFree86 strives to run on more than just the most common
hardware configurations.

Marc appears to have fixed various issues for int10/vbe on non-x86
platforms as part of his sparc work.  Perhaps some of those same
issues prevented this stuff from working on powerpc in the past and
so these #ifdef's can be removed now.  int10/vbe should fail-safe
on hardware that does not have an x86 BIOS, and if they don't it
is a bug.

After all, one of the reasons for having an x86 emulator is so that
PC video cards can be soft-booted on non-x86 platforms.  It would also be
nice to be able to soft-boot OpenFirmware cards on platforms that don't
support that natively.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: tdfx and DDC2

2005-08-30 Thread David Dawes
On Tue, Aug 30, 2005 at 09:30:26PM -0400, Michael wrote:
Hello,

 Marc appears to have fixed various issues for int10/vbe on non-x86
 platforms as part of his sparc work.  Perhaps some of those same
 issues prevented this stuff from working on powerpc in the past and
 so these #ifdef's can be removed now.  int10/vbe should fail-safe
 on hardware that does not have an x86 BIOS, and if they don't it
 is a bug.

I'll just remove them and tell you what happens?

Sounds good.  If anyone has a powerpc with a PC card as a secondary
to test with, that'd be good too.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Inter-module compatibility

2005-08-10 Thread David Dawes
On Wed, Aug 10, 2005 at 10:49:49AM -0600, Marc Aurele La France wrote:
On Tue, 9 Aug 2005, David Dawes wrote:
On Tue, Aug 09, 2005 at 10:45:15AM -0600, Marc Aurele La France wrote:
Our loader scheme has been, and is, reasonably good at dealing with
incompatibilities between modules and the core binary.  But it is not so
good with ensuring modules are compatible with each other.

As a case in point, I am now faced with strong motivation to rework the
three Vbe.*InfoBlock structures currently exported by vbe.h.

Now, it's not my purpose here to get into these motivations, but reworking
these structures would have consequences, one of which I am unsure how to
deal with.  At minimum, what I need to do is ...

a) prevent drivers compiled with the current vbe.h from using a vbe module
  created with the new vbe.h;  and
b) prevent drivers compiled with the new vbe.h from using a vbe module
  created with the current vbe.h.

The hammer approach would suggest bumping the video driver ABI version
number all the way up to 1.0.  (It currently sits at 0.8).  This is
overkill as doing so would prevent the loading of _any_ version 0.* 
module,
vendor-provided or not, making this politically unwise.

Bumping this version number to 0.9 (or leaving it alone) is insufficient 
as
it prevents neither a) nor b), so changes would be required.

I've prototyped a way of dealing with a).  Basically, I'd have the vbe
module's Setup() function call the common layer to associate a 
(potentially
extended) XF86ModReqInfo occurrence with the vbe module, which the loader
would then use to check parent modules against.

Dealing with b) is trickier.  All I can think of right now would require
changes to the way video drivers load the vbe module, something I'd like 
to
stay away from, especially in the presence of vendor-provided source 
and/or
binaries.

b) could be handled by changing the drivers to specify a vbe module
version requirement when loading the vbe module.  I don't think that is
unreasonable given that child module version checking is already a part
of the loadModule interface.

Yes.  One issue with this is that it doesn't do anything for vendor-provided
drivers.

Vendors would need to handle the b) case in their drivers.

On the other hand, in this case, this would only need to be done to that
subset of drivers that actually peek/poke inside the structures to be
reworked, rather than passing structure occurrences around.  This 
requirement
would need to be clearly documented.

Also, vbe.h could provide a macro to load the vbe module, the idea being to
make the module control its own loading.

If we were to start adding module interface version checking for
other shared module interfaces, that would head off similar issues
in the future.

Yes, and how a module is loaded could be controlled by its main header, or
something like xxxModule.h.

Yes.

Another option for handling both cases is to change the the name
of a required entry point in the vbe module (such as VBEInit and
VBEExtendedInit).  There are cases where this will not result in a
clean failure (one of the flaws of the current loader's handling of
unresolved symbols), but it will fail before attempting to operate with
incompatible data structures.

It would fail, yes, but not with an appropriate message.

The a) case can be made to fail cleanly by having the old names being
functions that print out an informative message and exit.

The b) case could be handled like this:

#define VBEExtendedInit(a,b,c) \
  (xf86LoaderCheckSymbol(newVBEExtendedInit) : \
newVBEExtendedInit(a,b,c) ?
(FatalError(INFORMATIVE_MESSAGE), NULL))

However, I think it's better to control module loading from the module
public headers, thus incorporating interface version checking with the
interface definition and avoiding the need to resort to tricks like this.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Inter-module compatibility

2005-08-09 Thread David Dawes
On Tue, Aug 09, 2005 at 10:45:15AM -0600, Marc Aurele La France wrote:
Hi.

I've something here I'd like to discuss.

Our loader scheme has been, and is, reasonably good at dealing with 
incompatibilities between modules and the core binary.  But it is not so 
good with ensuring modules are compatible with each other.

As a case in point, I am now faced with strong motivation to rework the 
three Vbe.*InfoBlock structures currently exported by vbe.h.

Now, it's not my purpose here to get into these motivations, but reworking 
these structures would have consequences, one of which I am unsure how to 
deal with.  At minimum, what I need to do is ...

a) prevent drivers compiled with the current vbe.h from using a vbe module
   created with the new vbe.h;  and
b) prevent drivers compiled with the new vbe.h from using a vbe module
   created with the current vbe.h.

The hammer approach would suggest bumping the video driver ABI version 
number all the way up to 1.0.  (It currently sits at 0.8).  This is 
overkill as doing so would prevent the loading of _any_ version 0.* module, 
vendor-provided or not, making this politically unwise.

Bumping this version number to 0.9 (or leaving it alone) is insufficient as 
it prevents neither a) nor b), so changes would be required.

I've prototyped a way of dealing with a).  Basically, I'd have the vbe 
module's Setup() function call the common layer to associate a (potentially 
extended) XF86ModReqInfo occurrence with the vbe module, which the loader 
would then use to check parent modules against.

Dealing with b) is trickier.  All I can think of right now would require 
changes to the way video drivers load the vbe module, something I'd like to 
stay away from, especially in the presence of vendor-provided source and/or 
binaries.

b) could be handled by changing the drivers to specify a vbe module
version requirement when loading the vbe module.  I don't think that is
unreasonable given that child module version checking is already a part
of the loadModule interface.

If we were to start adding module interface version checking for
other shared module interfaces, that would head off similar issues
in the future.

Another option for handling both cases is to change the the name
of a required entry point in the vbe module (such as VBEInit and
VBEExtendedInit).  There are cases where this will not result in a
clean failure (one of the flaws of the current loader's handling of
unresolved symbols), but it will fail before attempting to operate with
incompatible data structures.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: xrandr not working in Dual Monitor

2005-06-29 Thread David Dawes
On Sat, Jun 25, 2005 at 02:16:50PM +0100, Andrew C Aitchison wrote:
On Sat, 25 Jun 2005, Karthik Ramamoorthy wrote:

 Hi,
 
   xrandr is not working in my Dual Mnitor setup. In my
 /etc/X11XF86Config file. it i disable Xinerama then xrandr is working
 properly. But my Dual Configuration is not working properly. And if i
 enable Xinerama then xrandr is not working giving error as follow
 
 Xlib:  extension RANDR missing on display :0.0
 
Can anybody tell me why this is happening.

It isn't very clear how the two extensions should work together
and the combination isn't implemented (there may be exceptions
for some cards - I don't know).

It should be clear how they would work together, but the blurring between
physical resolutions and root window sizes coupled with an incomplete
implementation results in the current situation.

I suppose there are two underlying problems for RANDR:
1 X says that the clients can assume that the
screen resolution and depth will not change; and
2 XINERAMA aims to hide the fact that there are multiple heads
from the clients.

I'd like to see it possible to change all of the currently static
connection block information at run-time.  The dynamic configuration
infrastructure that I'm working on, combined with a minor revision bump
of the X11 protocol will address all of these issues and more.

If the original poster needs randr+xinerama now, he'll likely have
some work to do.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: autoconf trouble - mice

2005-06-28 Thread David Dawes
On Tue, Jun 28, 2005 at 11:50:37AM +, Thorsten Glaser wrote:
Hi,

running X without configuration file works, except that the mouse
defaults to a PS/2 mouse, whereas, under MirOS, it's always a wsmouse.

Does anyone have a quick hint where I can patch this, before I go
looking myself? (Yes, I admit I'm too lazy due to the summer heat.)

Look in os-support/bsd/bsd_mouse.c, specifically the mouseDevs list and
the FindDevice() function.  If you have a /dev/mouse link, check what
it points too.  Other than that, make sure that this file is compiled
with the appropriate defines.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: A correction for xf86cfg Cards database

2005-06-26 Thread David Dawes
On Sun, Jun 26, 2005 at 01:45:37AM +0200, Dejan Lesjak wrote:
On Saturday 25 of June 2005 23:14, David Dawes wrote:
 On Sat, Jun 25, 2005 at 01:39:57PM +0200, Dejan Lesjak wrote:
 There's a tweak for xf86cfg Cards database at
 http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/32121
 
 I wonder if such change still makes sense to be submitted to Bugzilla or
  is xf86cfg rather deprecated wrt newer autoconfigure methods.

 Anything that over-specifies static configuration data (as the out-of-date
 Cards database does) should be avoided.  Such things should be limited
 to exceptions/workarounds and user/system preferences. 

Yeah, I thought so but I rather asked first.

 While the utilties 
 that use the Cards database continue to be used, it may be useful to
 eliminate the unnecessary data in the Cards database.  A patch that does
 this would be welcome.

What do you mean by unnecessary data. Does this include such entries like 
this one that is wrong?

Unnecessary data is any configuration information that isn't required
in in order for XFree86 to run on a particular card.  In almost all
cases, the only thing required is the driver name.  The chipset
information, which was wrong in this entry, is not necessary here.

David
-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Imake changes in 4.5 break a couple of imake-using software packages

2005-06-25 Thread David Dawes
On Sat, Jun 25, 2005 at 01:33:24PM +0200, Dejan Lesjak wrote:
A change was made to Imake.rules rev. 3.132 that removes dependencies from 
install targets.

The rationale for this was to have everything created in the build tree
during the build phase, allowing an install from a read-only build tree.
Some of the install target dependencies have since been added back in
though.

A couple of projects that use imake for configuring Makefiles depended on 
imake adding dependencies to install:: target so those files were built at 
install time. This includes at least xgammon [1], xcheckers [2], xfm [3].
For example in xgammon: previously imake would add XGammon.ad as dependency 
for install target, now it fails at install like this:

xgammon-0.98a# make install
/usr/bin/install -c -s  xgammon /usr/X11R6/bin/xgammon
/usr/bin/install -c -m 0444 XGammon.ad /usr/X11R6/lib/X11/app-defaults/XGammon
install: XGammon.ad: No such file or directory
*** Error code 71

This is handled by InstallAppDefaults macro which in turn uses 
InstallNamedTarget from Imake.rules.
One solution would be to instead add such dependencies to all:: target so they 
are still not built at install stage, which would seem to be in accordance to 
made Imake.rules change.

I would modify the Imakefiles to add an AllTarget() for such files.

David
-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: can't get color map: invalid argument

2005-06-20 Thread David Dawes
On Mon, Jun 20, 2005 at 07:34:25PM +0800, Kai.Niu wrote:
Hi ALL:

 Now, I am sucked on a new problem. As the topic, My TinyX can't get
color map. I simply copied the rgb.txt generated from the source tree to the
default directory. Unfortunately, TinyX server still can't get color map,
and abend immediately. Dose anyone have clues on this? It will be very
appreciated that someone could provide me some documentation about TinyX
package..thank you all guys!

It should find it if it is copied to the correct location (it does for
me).  The default location is /usr/X11R6/lib/X11/rgb.txt.  This default
location can be changed by defining DefaultRGBDatabase (leave off the
.txt suffix), or you can override it at run-time by using -co command
line option.

Alternatively can have it built-in to the TinyX server instead so that
an external file is no longer needed if you add a line like the following
to Xserver/os/tiny/Imakefile:

#define DDXOsColor YES

David
-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: several fixes for XKB

2005-06-14 Thread David Dawes
On Thu, Jun 02, 2005 at 05:30:31PM +0200, Michal Maru?ka wrote:

hello fellow _xfree86_ hackers!

In order to provide to my friends, and maybe one day customers, a way to type
differently, as described at http://maruska.dyndns.org/wiki/forkExtension.html

... i would like to donate a necessary infrastructure to xfree86 project,
to be distributed under the xfree86 version 1.1 licence. 
I also provide patches exclusively under this license.

Thanks.  I'm going to commit these patches now.

I'm working on the documentation (and final patches), which i will send here as
several emails, you can see a pre-version at:

http://maruska.dyndns.org/wiki/x-plugin


In this email, I provide some patches(against CVS)/fixes for XKB:


*  memory allocation
in file lib/X11/XKBMAlloc.c

**  off-by-one errors. bzero-ing wrong regions.

This is only triggered by a keyboard driver, which (at start) registers 256 
keycodes.
It is also impossible to change the interval of *core* valid keycodes.
I have hacked a (probably unacceptable) workaround, by updating ConnectionInfo
(from DIX).  A part of my work is a new keyboard driver
( http://maruska.dyndns.org/wiki/medved ), and if this workaround is not
accepted (nor easily corrected), i'll just force registering of all 256 
keycodes.

I'd like to see it possible to change most, if not all, connection block
information at run time.  This is something that would be good material
for a minor revision of the X11 protocol.  However, in the meantime, the
impact of this on clients that do not expect such changes needs some
investigation.

Regarding your changes to ConnectionInfo in xkbUtils.c, it would be better
to do as your comments says, and recompute it in the dix/ code.

** growing tables w/o never shrinking.

table of XKB actions and keysyms.   (i provide comments in the patch)



* client requests for info
lib/X11/XKBGetMap.c
various vmodmap vs. modmap  incomplete cut-n-paste bugs


* client request to change XKB configuration failing (ProcXkbSetMap)
programs/Xserver/xkb/xkb.c
if the client request does not specify (XKB) types, the request fails.


*   notify event processing
in  lib/X11/XKBUse.c

If number of XKB types changes (by calling apropriate functions),
the XKB-unaware applications (eg. xterm) don't notice it!
In other words (client side) synthesized core X events were not sufficiently 
informative.



Next patches (some against the same files) will not contain these
modifications (i hope).



David
-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: (linux-only) keyboard driver Medved

2005-06-14 Thread David Dawes
On Thu, Jun 02, 2005 at 09:06:35PM +0200, Michal Maru?ka wrote:

hello fellow _xfree86_ hackers!

This is a second email in a series aimed at getting code into the X server
needed to use a more sophisticated way of typing --- exploiting the time
information:  key semantics changes according to the duration of the key press.

I am providing the code to be distributed under the xfree86 version 1.1 
licence.



Linux provides an alternative way to read keyboard input:
/dev/input/eventXXX device, provided by the evdev driver/module.

This source provides 2 new features:

1/  every event has a timestamp, which is more precise that calling (inside X
server) GetTimeInMillis 

Playing with the time of key events is the core point of my rewriting
plugin, so i had to make several changes to all parts of X server which
handle key events.


2/ distinct hardware devices (keyboard) are reported in distinct devices/files
   /dev/input/event0 /dev/input/event1 ...


The driver, called Medved, wraps/represents the set of evdev devices 
(keyboards)
as 1 X keyboard.  I.e. X clients see 1 _core_ keyboard --- no need to play
with XInput:

The driver is quite unusual, b/c it handles more file descriptors, and 
therefore
it cannot use a higher level
 xf86AddInputDriver  and xf86Wakeup

but i have to use lower level RegisterBlockAndWakeupHandlers.

and look directly at the select mask to see which of managed files/devices has 
input ready.



While coding this driver, i realized the cause of several bugs in other
drivers.

I had previously communicated in
 http://www.mail-archive.com/devel%40xfree86.org/msg06818.html 

the conflict between current state of the 2 halves of key handling code,
separated by xf86EventQueue.

In that message, i talked about down bit-array, now i add, that keyc-state 
is
impossible to use in the lower half.

This (incorrect use of upper half's state in the lower half, which runs ahead 
in
 time) explain 2 bugs:

1/ XF86Config options:
  Option AllowDeactivateGrabs yes #  C-M kp-/  steal 
 the grab   
  Option AllowClosedownGrabs yes  #  C-M kp-*  kill 
 the grabbing client
simply didn't work (in situations i needed them)

situation: 
an application stopped accepting key events (i.e. holds a synchro grab 
doesn't call XAllowEvent)  - therefore keys accumulate in syncEvents
(dix/events.c) w/o effecting the XKB state

XKB state is not meta  control modifiers


now,  you want to steal the grab, so you press 3 keys Contol Meta kp-/

-  the first 2 events enter the queue, and the keyboard driver
  when processing the 3rd (kp-/) will look at the XKB state which is not
   meta  control modifiers, hence it will not trigger any special function.

Same applies to C-M-Fn  to switch VTs (during such frozen situation).


2/  C-M-Fn occasionally leaked the Fn key into applications.
  When the Fn was processed before the the upper part picked C M from
  xf86EventQueue and changed the XKB state. This is possible when X server
  reads all 3 key events at once.

Solution is not very flexible, though. I just look if the fixed keys (say 
Alt_L,
Ctrl_L) are down.
  


(Since i play a lot with the time,) medved does not use HW autorepeat. This 
will
be explained in the next email.

More hw keyboards are used in the OR mode: a key is down, if and only if it is 
down
on any of the hw keyboards.

Hotplug is handled by polling, sorry.


I had to pull some functionality from the linux specific part of the kbd
driver (lnx_kbd.c) into a shared part.

If these functions are needed, I'd suggest naming them with an xf86 prefix
and providing dummy versions for other platforms, or, if more appropriate,
adding them as new fields to KbdDevRec (xf86OSKbd.h).

I enclose these preparative changes as a patch.

The driver itself is at  http://maruska.dyndns.org/comp/packages/medved.tar.gz



If you build xfree86 server with this patch  driver, you should notice that:

- auto-repeat does not work

- X mixes its monotonic time (GetTimeInMillis) with the timestamp coming from
  evdev devices (gettimeofday) ... with various consequences (keyboard grabbing
  stops working, iirc)


I don't bother providing fix for this, because in the next messages i will
provide

-  patch for linux kernel  GetTimeInMillis:
   preversion  http://maruska.dyndns.org/wiki/kernel.html

- and an alternative method of generating auto-repeat events: at last
a reasonable auto-repeat, which i found lacking 2 years ago, when i started
fixing (hacking around) the key-event processing in X server.






David
-- 
David Dawes X-Oz Technologies
www.XFree86.org/~dawes  www.x-oz.com
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Live Touchscreen Calibration [WAS: magictouch touch screen driver]

2005-06-10 Thread David Dawes
On Thu, Jun 09, 2005 at 04:00:54PM -0700, bruno schwander wrote:

BTW, I submitted the source for the magictouch driver on this mailling
list, is there any chance it will appear in the XFree86 tree someday ? If
a comitter needs changes, fixes to it or has questions, I'll be happy to
help as I can.

I'm committing it now.  Thanks for the submission.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Live Touchscreen Calibration [WAS: magictouch touch screen driver]

2005-06-10 Thread David Dawes
On Fri, Jun 10, 2005 at 10:53:47AM -0400, Fred Gleason wrote:
On Friday 10 June 2005 03:17, Veikko Werner wrote:
 actually a great thing to have, but not that easy.
 The main problem is, that the driver itself has to be disabled.

Why so?  AFAICT, we basically need two things:

1)  The ability to get 'raw' --i.e. unscaled -- data from the device during 
the calibration run.

2)  Some way to set the calibration parameters of the driver based on the 
results of 1).

Both of these could be accomplished by means of adding appropriate new methods 
to each driver.  While I suppose this does involve effectively 'disabling' 
the driver for the duration of the calibration run, this fact can be 
completely hidden from the server.  The server merely doesn't receive pointer 
updates while calibration is in progress.

Or am I missing something here?

Sounds reasonable to me.  The XInput extension could be enhanced to
provide calibration requests which would be the mechanism for a calibration
utility to communicate with the driver.

The problem with most of the solutions I've seen for this so far is that
they attempt to open a communication path directly between the driver
and a calibration utility, often creating security problems.  The X
server already provides an authenticated mechanism for doing such things.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: magictouch touch screen driver

2005-05-24 Thread David Dawes
On Tue, May 24, 2005 at 08:05:43AM -0700, bruno schwander wrote:
I have my driver for the serial MagicTouch touchscreen working. There is
just one thing that I am not sure of: if the resolution is changed
dynamically (by some program running fullscreen for example), the scaling
is off. How do I find if the resolution has changed ? Right now, I check
the screen size when the device inits, and store that away. Should I
instead use the actual screen size everytime through screenInfo ? Is that
safe ? Also, how can I twiddle the DTR, RTS lines, I do not find some
abstraction for that...

Maybe xf86SetSerialModemState() will let you twiddle the DTR, RTS lines.
I haven't looked at that stuff in a while.  Perhaps someone else can give
you some answers to your other questions.

then, how do I submit the driver ? send it to this list ?

You can either send it here, or submit it at bugs.xfree86.org.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Keyboard handling on non-x86

2005-05-23 Thread David Dawes
On Mon, May 23, 2005 at 11:43:48PM -0400, Michael wrote:
Hello,

 That's good.  Even better, especially for the modular driver, would be
 to handle this automatically in the driver at run-time.  The mouse
 driver does this and should handle auto-detection of wscons support on
 NetBSD for mouse input without the need for any mouse configuration
 data in the config file.

I'll have a look how the mouse driver does that and see if I can do
something similar for kbd - I'm not sure that's really necessary though,
the only NetBSD port that could run XFree86 without wscons was i386 - it
switched to wscons ages ago.

My point is only that you shouldn't have to tell the XFree86 server to
use wscons for the keyboard driver.  It should know without being told,
especially on platforms where it is the only viable option.  Also, as
you noted in your first message on this subject, it should try a default
wskbd device if none is specified explicitly in the config file.

The wscons support is used for OpenBSD too.  I don't remember the details
now, but some of the i386 Open/NetBSD test platforms I was using when
automating the mouse device/protocol selection either didn't have wscons
or it wasn't activated in the default install.

See the OpenBSD/NetBSD versions of the FindDevice(), GuessProtocol() and
haveWSCons() functions in bsd_mouse.c for how it is handled by the mouse
driver.

 The Sun map had a minor mistake (or feature?)- Props/L3 and
 ScrollLock were swapped.
 
 Sounds like a bug.

I wasn't sure, I have only Type 5 keyboards here ( well, one 5 and one
5c, both US ). Anyway, I tested the whole thing on NetBSD/macppc too -
works as expected.

Sounds good.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Keyboard handling on non-x86

2005-05-20 Thread David Dawes
On Thu, May 19, 2005 at 08:11:25PM -0400, Michael wrote:
Hello,

right now I'm struggling to get XFree86 properly supported on
NetBSD/sparc and sparc64 and one problematic point is the keyboard
handling. 
With
Option Protocol wscons
Option Device /dev/wskbd0
things work reasonably well but the Xserver doesn't pot these options
into XF86Config when configuring itself, so I tried to get the

Ideally it should automatically determine when wscons mode is needed.
This would be easier to do via the modular XFree86 keyboard driver
than with the built-in kbd driver.  See more below.

read-input-from-console mode to work. This is where the mess started. 
XFree tries to switch the console fd into raw mode and if that fails it
complains and recommends to add the above lines to XF86Config. This was
ok since we didn't support raw mode on Sun keyboards. Now we do.
In this mode of operation XFree obviously expects to read AT-style
scancodes from the console fd and feed them into its event queue via
xf86PostKbdEvent(). With a Sun Type 5 this can't work since it uses a
completely different set of scancodes ( but at least it uses but 7 the
same way to signal key up / down ). What confused me for a while is some
code in xf86PostKbdEvent() that seemed to handle Sun scancodes but as it
is now it can't possibly work. And it doesn't properly translate Sun
scancodes into whatever X uses internally, so I conditionally replaced
xf86Info.kbdEvents with a function that reads from the console fd,
translates Sun scancodes unto AT scancodes the way xf86PostWSKbdEvent()
does and feeds them to xf86PostKbdEvent(). This works mostly, but I
found that the PageDown key didn't deliver a scancode. Some debugging
revealed something ugly - its translated keycode collides with the
prefix code used by AT keyboards for cursor keys and the number block
and the prefix handling in xf86PostKbdEvent() is skipped when
xf86Info.kbdEvents points to the wscons version. Still easy to get
around this, ugly as it is.
Finally I found that atKeynames.h defines names for Sun-typical keys
found nowhere else, but what it assigns them starts at 0x84 so it
collides with the AT keyup/down bit - to deliver it to
xf86PostKbdEvent() I'd have to prefix them which I can't since prefixing
is disabled. 

So - what would you suggest - I think I should replace
xf86PostKbdEvent() with something usable by wscons which doesn't need
all this AT-inherited nonsense, I don't really see why I should emulate
this broken excuse for a protocol to get keyboard events into the
Xserver. There are two sets of functions which seem to deal with
keyboard input on BSD - one in bsd_io.c and another in bsd_kbd.c - the
latter seems unused. What's the purpose of this?
And lastly - why does the wscons protocol option require a device name?
Defaulting it to /dev/wskbd should do the trick.
Would it be better to write an input driver module for wskbd that uses
wscons' hardware-independent scancodes instead? Seeing the mess that the
current code is I'd almost think so.

I would suggest following this up via the modular keyboard driver.
Like the mouse driver, it consists of two components: a
platform-independent input driver module in xfree86/input/keyboard/, and
an OS-specific portion in xfree86/os-support/platform/.  The interface
between the two should make it possible to avoid forcing all keyboard
models into the AT-style mould.  Also, as with the mouse driver, it
should be able to automatically determine which is the best device/protocol
mode to use at run-time.

One thing to keep in mind is that the mapping between physical keys and
their X keycodes should remain the same on all platforms.  This mapping
is specified in the file xc/programs/xkbcomp/keycodes/xfree86.

If you find any issues with the keyboard driver or the interface between
the platform-specific and platform-independent components of it, this is
the place to discuss and resolve them.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Keyboard handling on non-x86

2005-05-20 Thread David Dawes
On Fri, May 20, 2005 at 02:37:59PM -0400, Michael wrote:
Hello,

 Ideally it should automatically determine when wscons mode is
 needed.

Ok, on NetBSD that would be always, none of the pre-wscons ports runs
XFree as far as I can tell. So - some ( like x86 ) might not exactly
/need/ it but they /should/ use it.

If older versions of NetBSD (x86 at least) don't have wscons, there
should at least be a check that it is available.

 This would be easier to do via the modular XFree86 keyboard driver
 than with the built-in kbd driver.  See more below.

Yeah, I finally found it - looks MUCH more sane than what I've been
ranting about yesterday. In fact I got it to work pretty well now and I
have a few questions.

 I would suggest following this up via the modular keyboard driver.
 Like the mouse driver, it consists of two components: a
 platform-independent input driver module in xfree86/input/keyboard/,
 and an OS-specific portion in xfree86/os-support/platform/.  The
 interface between the two should make it possible to avoid forcing all
 keyboard models into the AT-style mould. 

That's what I'm doing now. When I find a Sun keyboard I simply change
the default xkb settings to rules=sun and model=type4 or type5. Works
pretty well when I disable scancode remapping ( it's still in the
driver... ) - then even the Sun-specific keys work and it can still be
overridden via XF86Config.

 Also, as with the mouse driver, it should be able to automatically
 determine which is the best device/protocol mode to use at run-time.

Agreed.

 If you find any issues with the keyboard driver or the interface
 between the platform-specific and platform-independent components of
 it, this is the place to discuss and resolve them.

What I'm doing right now is to make the keyboard driver use xkb for
scancode-keysym translation, at least for Sun keyboards. This allows
all keys to work and avoids all these AT-scancode quirks. To do that I
leave both the remap function and the scancode translation table at
NULL and set the XKB keymap according to what wskbd tells me about the
keyboard ( sun type4 or sun type 5 ). The wscons support code there has
numerous issues:
- it didn't know about WSKBD_TYPE_SUN5 so initially it tried to use
AT-style scancode translation.
- the mapping between XLEDs and wscons ioctls is wrong. The reason seems
to be the sun keymap which says:

indicator 4 = Caps Lock;
indicator 3 = Compose;
indicator 2 = Scroll Lock;
indicator 1 = Num Lock;

... while XFree's map says:

indicator 1 = Caps Lock;
indicator 2 = Num Lock;
indicator 3 = Scroll Lock;

the latter seems to be hard-coded into the driver. 

The driver still attempts to translate everything into AT scancodes
which is a Bad Thing in my opinion, I think the main reason is to catch
special keystrokes like ctrl-alt-backspace before xkb does. Is this
really necessary? Shouldn't xkb handle them correctly?

These are still handled in the driver for cases when XKB isn't used,
and as fallbacks when XKB initialisation fails for some reason.  It
is probably a good idea to keep these fallbacks within the keyboard
driver, especially the ctrl-alt-backspace escape method.

Wouldn't it be better to select a sane xkb map instead of attempting to
make everything fit a PC keymap?

I suggested using the xfree86 XKB rules/keycodes for consistency of
features across platforms and because they are the best-supported ones
within XFree86.  In the past, diverging from this has resulted in
unnecessary feature and functionality differences between platforms.
Also, the set of XKB key tokens (the  objects mapped to raw keycodes
by the keycodes files) would ideally be platform-independent to avoid
the unnecessary need to have multiple copies of the XKB symbol mappings.
The symbols mappings in xkbcomp/symbols/pc are the most full-featured
that we have, and they're not really PC-specific.  In fact, it is probably
a good time to promote them out of their pc/ subdirectory.

That would just leave the issue of whether the raw keyboard codes are
mapped to a consistent set of X keycodes within the driver, or whether
that is handled by using different XKB keycodes files.  I don't see a
great advantage to doing this mapping at the XKB level.

I'd like to see a lot of the unnecessary platform differences amongst
the XKB data files eliminated.  I suspect that with some work most of
the platforms specific copies of the XKB symbols files could be removed.
(It may also be time to remove the obsoleted xkbcomp/keymap files.)

Ivan Pascal is most familiar with this area and may have other
ideas/comments/plans.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: xon.sh

2005-05-13 Thread David Dawes
On Wed, May 04, 2005 at 11:09:16AM -0700, Mike Urban wrote:
I do not know the proper 'channel' for this sort of feedback, but we
have for some time been using the following enhancement for 'xon' that
others might find useful.  We do not run remsh/rcmd/rsh servers on our
systems.  So we add a new flag so we can say   
 xon target -remote ssh command 
to go through SSH instead.  Note that because of the way xon is used,
no SSH session is left behind, and the DISPLAY is the X server rather
than being tunneled through SSH.  Whether this is a bug or a feature is
a matter of taste.

XFree86 already has this patch integrated from when you originally
submitted about two years ago :-)

If there are good uses for this non-tunneled operation, I'd suggest
modifying the remote shell selection logic to use ssh as the first choice,
falling back to rsh and the others only when it isn't available.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: GL problems

2005-04-26 Thread David Dawes
On Tue, Apr 26, 2005 at 02:19:33PM +, Thorsten Glaser wrote:
David Dawes dixit:

Another useful data point might be a delay loop in place of the usleep().

I was going to try that today, replacing the call usleep in the .s
file with a simple delay loop, but checked first if it still failed
without, and it worked without the usleep workaround.

What did I change? I lowered the default cflags from -march=pentium
to -march=i486 (to fix another miscompile in ppp(8)) and rebuilt the
whole system (just playing with cflags in X had not helped earlier).

I'm surprised, but thankfully it looks like a gcc optimisation bug.
Thanks for the help, though.

That's interesting.

Sad: now 108.000 fps instead of 115.200 fps :(


By the way, you wanted to provisionally commit my decompress.c,
I hope you didn't forget?

I didn't forget.  I'll commit it soon.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: GL problems

2005-04-22 Thread David Dawes
On Fri, Apr 22, 2005 at 08:30:55PM +, Thorsten Glaser wrote:
David Dawes dixit:

Does replacing the fprintf with sleep(1) make a difference?

Even with usleep(1), glxgears still works. I've committed that
as a temporary workaround now, till we discover the real problem.

This points to an underlying problem elsewhere.  I keep mentioning
libpthread because that appears to be the only difference between clients
that have the problem and those that don't.  An XFree86 build with the
threading options disabled should confirm this one way or the other (a
look at the 'Multi-thread safe libs' portion of OpenBSD.cf should show
what to change for the build).

Another useful data point might be a delay loop in place of the usleep().
Use volatile variables or build with optimisation disabled to avoid the
loop being optimised out of existence by the compiler.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: [RESEND] free xc/lib/font/fontfile/decompress.c replacement

2005-04-19 Thread David Dawes
On Fri, Apr 15, 2005 at 12:42:20PM +, Thorsten Glaser wrote:

since I'm a BSD developer, the natural place to look for me regarding
the xc/lib/font/fontfile/decompress.c sources (Keith Packard said it
was derived from some ancient BSD sources) is our own source tree.

Voilà, there it is - src/usr.bin/compress/zopen.c, that's why the
decompress.c source looked so familiar to me.

Yes, historically I believe that this zopen.c is derived from from the
older decompress.c.

I've taken a whole afternoon hacking this together, and tested it
on a foo.bdf.Z file (about 400 KiB compressed), derived from
xc/fonts/bdf/misc/12x13ja.bdf, with one character modified so I
can distinguish it. Works For Me(tm), but I'd be happy if someone
would review and endorse this replacement before it gets committed,
since I have absolutely no experience hacking X11 code, I must admit.

I don't have the time right now to give it a thorough review, but I
wouldn't object to committing it provisionally to XFree86 to give it
wider exposure.

I've tested mkfontdir on the file, which is dynamically linked
against libXfont.so.1.5 (thus I guess it's safe), but had not yet
the chance to do a full XFree86 rebuild due to day-job constraints.

The new file comes with only a standard 3-clause UCB-style licence,
some more credits, and a much easier licence covering my work. I do
believe it's OSD and DFSG compliant and GNU GPL compatible; supporting
compress'd font files gives us an advantage over x.org, which is
something I'd like to see ;-) Also it's important in case there is
still an ancient Unix® around.

:-)

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: GL problems

2005-04-19 Thread David Dawes
On Sat, Apr 16, 2005 at 10:46:46PM +, Thorsten Glaser wrote:
This one goes deep into i386 interna...

I still wonder if there is an issue related to libpthread.

Dixi:

Looks like a compiler bug to me.

Okay, it doesn't.

I have generated two assembly files, x1 and x2, to be the
output of the normal compiler command for xc/lib/X11/x11trans.c
with the -S option added.

The difference is that, before compiling x2, I have patched
xc/lib/xtrans/Xtrans.c with this:
--- Xtrans.c19 Mar 2005 17:19:31 -  1.2
+++ Xtrans.c16 Apr 2005 22:41:59 -
@@ -424,6 +424,7 @@
 XtransConnInfo ciptr = NULL;
 Xtransport *thistrans;
 
+fprintf(stderr, %s, address);
 PRMSG (2,Open(%d,%s)\n, type, address, 0);
 
 #if defined(WIN32)  (defined(TCPCONN) || defined(DNETCONN))

Does replacing the fprintf with sleep(1) make a difference?

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


mailing list updates

2005-04-19 Thread David Dawes
The XFree86 mailing lists have been modified on an experimental
basis to require subscription for posting.  Perhaps this will be
enough to eliminate the  0.1% of spam that our existing filtering
does not already catch.  The existing filtering (spam assassin plus
a home-grown filter) will remain in place.

If this does not prove effective, or if the list admin burden
increases signficantly (i.e., posters do not subscribe), then the
behaviour may be reverted.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Darwin extern/static fix

2005-04-13 Thread David Dawes
On Wed, Apr 13, 2005 at 11:52:47AM -0700, Torrey Lyons wrote:
Bugzilla #1576 and the fix committed for it is only partially right. 
The patch applewmExt.h is right, but patching the imported Mesa code 
in extras/Mesa/include/GL/internal/dri_interface.h is the wrong thing 
to do and likely has unintended side effects on other platforms. The 
correct fix is just to rename __driConfigOptions in 
lib/GL/apple/dri_glx.c. Thanks for pointing out the issue.

I didn't find anything that requires the external declaration of
__driConfigOptions, which is why I applied the patch as submitted.
Perhaps something should in the BUILT_IN_DRI_DRIVER case.  There
are also likely other issues with the BUILT_IN_DRI_DRIVER case.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: GL problems (was Re: Commenced update to XFree86(tm) 4.5.0 on MirOS BSD)

2005-04-02 Thread David Dawes
On Wed, Mar 30, 2005 at 05:35:17PM +, Thorsten Glaser wrote:
David Dawes dixit:

Can you try running glxgears with ktrace or truss (or something like that),
and see how that compares with apps that work OK?

Sure.

Here's the ktrace and systrace -A output for glxgears (does not work
natively, works in the emulation) and xlock (works for both).

One difference I see is that glxgears is linked against libpthread, while
xlock is not.

In the xlock case, the socket() system call is followed soon after by
a connect().  In the glxgears case, the socket() call appears successful
(same positive return value as in the xlock case), but the behaviour
thereafter is quite different.

Try editing xc/lib/Xtrans/Xtransint.h and changing the definition of
XTRANSDEBUG to 5, rebuilding libX11, and running glxgears against that.
This will enable more of the xtrans messages and may help narrow down
the failure point.

BTW, the ktrace for the glxgears in emulation shows it failing because
of not finding libpthread.so.6.0.  BTW, what is this emulation?

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Commenced update to XFree86(tm) 4.5.0 on MirOS BSD

2005-03-22 Thread David Dawes
On Tue, Mar 22, 2005 at 07:46:17AM +, Thorsten Glaser wrote:
David Dawes dixit:

First of all, thanks for the continued support!

Sure thing, XFree86 has provided us with a stable X implementation
long enough, no reason to fix what ain't broke.

What is the policy there for bumping shared library majors?

ABI changes.

When they introduced ProPolice, all libraries needed some new
functions from a newer libc major, so they bumped everything.

Oh, OK.

The majors
for OpenBSD builds of XFree86 are already different than for most other
platforms, and I think that was done for the a.out-elf transition.

I don't think they have changed any shared library version when
i386 went ELF. Shared library versions are machine-independent
on OpenBSD (and so on MirOS, but we've still not yet sparc and
macppc running again due to lack of ressources, but it will come).

In OpenBSDLib.tmpl the versions are bumped for releases = 3.1.  Was that
the ProPolice bump or something else?

It might be a good idea to see what of the ws* stuff needs to be folded in.

And some of the other MirOS support code as well, maybe?

Yes, definitely.

I'm sure I haven't done everything according to XFree86 coding
standards, but I've tried so far. Especially the MirBSD.cf could
need some cleaning, because I've had issues when I started. (All
MirOS BSD versions define __OpenBSD__ *and* __MirBSD__)

I've also linked freetype against the system libz and exported the
functions, as well as the ProPolice functions, using the xf86 loader,
so the modules need not be built with -fno-stack-protector any more.

OK.

The complete diff can be retrieved using
$ CVS_RSH=ssh cvs -z9 -d [EMAIL PROTECTED]:/cvs \
  rdiff -urxf-4_5_0 X11/xc
(password anoncvs)

(attention, there are three new programmes in xc/programs/,
 namely ssh-askpass, xlock and xsystrace, thus the diff
 is a bit large)

On request, I can try to sort out these diffs, but most of it
is legacy from the OpenBSD version of XF86 4.3 and 4.4RC2
before they went to x.org, and Matthieu Herrb can probably
tell you better which purpose a specific patch has for these.

I haven't seen this on any of the platforms I've tested on, including
fairly recent OpenBSD versions.  Do other clients start up OK?  You may

I will try xlock, I think it's got some GLX modes too.

I'm curious because it seems to fail before getting into the GLX-specific
code.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: DRM kernel source broken/incomplete

2005-03-22 Thread David Dawes
On Tue, Mar 22, 2005 at 07:52:28AM +, Thorsten Glaser wrote:
Alex Deucher dixit:

 and two for bsd
 
 1. bsd monolithic
 2. bsd-coremodular as above

why not just let the kernel provide the drm?  Most if not all recent
linux and bsd kernels (last few years) have drm support.  The dri and
ddx will adapt depending on what's available in the kernel.

For the record, BSD seems to mean FreeBSD exclusively here
(and maybe DragonFly, which relates to FreeBSD like MirOS
relates to OpenBSD, namely being a fork).

I've tried to build DRI/DRM on OpenBSD and MirOS for XF86 4.4;
I eventually got DRI working but it just blanked the screen
instead of using Mesa when it didn't find a DRM, which is a
K.O. criterium, thus I haven't looked deeper into it.

The DRM use FreeBSD-ish bsd.kmod.mk whereas OpenBSD and derivates
have bsd.lkm.mk, and from a short glimpse on the code I've
got the impression it's non-trivial to support OpenBSD too.
I'm not too experienced in kernel programming though.

That's pretty much the same conclusion I came to.

I think we _can_ load kernel modules though, I've played with
a VMware 3 module some time (but VMware didn't want to play
with me, so I left).

If that screen blank, no Mesa issue is fixed, you could
probably enable DRI builds on OpenBSD and MirOS, too. I
haven't looked into it on 4.5 yet.

It only makes sense if working DRM modules are available though.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Commenced update to XFree86(tm) 4.5.0 on MirOS BSD

2005-03-21 Thread David Dawes
First of all, thanks for the continued support!

On Sun, Mar 20, 2005 at 09:53:22PM +, Thorsten Glaser wrote:
Hi all,

I've built it through, and most of the stuff works for me.

Before updating, you will have to remove /usr/X11R6 in its entirety,
as I've reverted from cloning OpenBSD behaviour (in this case, bumping
the shared library majors because of ProPolice) to principle of least
diffs against the vendor.

What is the policy there for bumping shared library majors?  The majors
for OpenBSD builds of XFree86 are already different than for most other
platforms, and I think that was done for the a.out-elf transition.

There's still some 300-400 KiB worth of unified diff, however some of
that is only a pleasure diff (e.g. linking freetype2 against the
system libz, and exporting the system libz's symbols in the XF86 loader
to the module), and most other stuff is taken from OpenBSD (wsfb, wscons,
wsmouse, wskbd stuff) where I don't know if it's still needed.

It might be a good idea to see what of the ws* stuff needs to be folded in.

Anyway, that's a works for me and the next development snapshot will
be published with XFree86(tm) 4.5.0, and of course all required
advertising clauses are reproduced in the documentation *wink*

That makes us second to only Fink in adopting, as far as I know, by the way.

I've got some minor problems still:

[EMAIL PROTECTED]:/home/tg $ glxgears
_X11TransSocketOpenCOTSClient: Unable to open socket for local
_X11TransOpen: transport open failed for local/odem.66h.42h.de:0
Error: couldn't open display (null)
[EMAIL PROTECTED]:/home/tg $ print $DISPLAY
:0.0

and of course the old apps such as mplayer don't work since they
were linked against the old libs with higher shlib versions I
just deleted, but the M*zilla(tee emm) Firef*x(tee emm) runs just
fine in the OpenBSD binary emulation.

To the XFree86 list:
* feel free to list MirOS as a supporting project, as it was last release

Thanks.

* do you have any idea regarding the above error? IPv6, maybe?
  consider MirOS a clone of OpenBSD for most aspects.

I haven't seen this on any of the platforms I've tested on, including
fairly recent OpenBSD versions.  Do other clients start up OK?  You may
need to trace through what's happening in the xtrans code.  glxgears
calls XOpenDisplay in a fairly standard way.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: 4.4.99.903: s3: missing some of the screen

2005-03-15 Thread David Dawes
On Tue, Mar 15, 2005 at 12:37:28PM +0100, N?meth M?rton wrote:
David Dawes wrote:
On Mon, Mar 14, 2005 at 08:45:07PM +0100, N?meth M?rton wrote:

Marc Aurele La France ?rta:

On Fri, 11 Mar 2005, [ISO-8859-2] N?meth M?rton wrote:


Starting XFree86 4.4.99.903 using the s3 driver at mode 1024x768 8bpp 
I see the following screen:


   0 303   1023
   |  |  |
0 -----+
     |
     |
      GOOD AREA  |
     |
     |
767----+


where B means that black pixels are displayed always.


I don't know what is the problem exactly but the attached patch 
removes this bug. (May cause new ones, too...)


chip:
-
S3 Trio64V+
P1E3BF
86C765
9650 MB851
TAIWAN


VGA BIOS:
-
Phoenix S3 TRIO64V+ Enhanced VGA BIOS. Version 1.02-02
Copyright 1987-1992 Phoenix Technologies Ltd.
Copyright 1992-1995 S3 Incorporated.
All Rights Reserved


lspci -v:
-
:00:09.0 VGA compatible controller: S3 Inc. 86c764/765 
[Trio32/64/64V+] (rev 54) (prog-if 00 [VGA])
 Flags: medium devsel, IRQ 10
 Memory at e000 (32-bit, non-prefetchable) [size=64M]


Could you try the attached instead?  This one also fixes a few other 
problems I noticed.

The problem is solved if I use the patch.

Running the xtest 4.0.11 the following tests are failed using 
4.4.99.903+patched s3 driver, using 1024x768 8bpp:

XListPixmapFormats
XDrawArc
XDrawArcs
XSetFontPath
XAllocNamedColor
XLookupColor
XStringToKeysym


XDrawArc and XDrawArcs are expected.

Are these tests bad?

There is an accepted long-standing mis-match between the spec and
the implementations.  My recollection is that an implementation that
matches the spec exactly would require higher precision arithmetic
than is typically available.

XSetFontPath might be configuration related.

After installing 
ftp://ftp.xfree86.org/pub/XFree86/snapshots/4.4.99.903/binaries/Linux-ix86-glibc23/Xf100.tgz
 
optional package and setting the path in /etc/X11/XF86Config the test 
passed. I cannot find in the xtest 4.0.11 documentation that the 100dpi 
fonts must installed to pass these tests.

I'll add that to the xtest docs.

 XStringToKeysym should go away if you run with XKB disabled.

I run the X server as

XFree86 -ac -s 0 -kb -dpms

so the -kb disables the XKB. The error message is:

Test   7:  FAIL
  XStringToKeysym() returned NoSymbol for string Greek_IOTAdiaeresis.

What are the reported problems for the other three (XListPixmapFormats,
XAllocNamedColor, XLookupColor)?

Tests for XListPixmapFormats
Test   1:  FAIL
  XListPixmapFormats() returned 7 structures
  Expected 6 structures

I believe that this was fixed for the 4.4.99.22 snapshot.  The problem here
was in libX11.  Are you running xtest against a recent libX11?

Summary of Results for XListPixmapFormats
-
PASS 0
FAIL 1
UNTESTED 1



Tests for XAllocNamedColor
Test   2:  FAIL
  --- Running test with visual class PseudoColor, depth 8
  --- Testing with supported visual class PseudoColor
  --- Running test with visual class GrayScale, depth 8
  --- Testing with supported visual class GrayScale
  Colour names gray and sky blue yield the same supported rgb values.
  Colour names dim gray and magenta yield the same supported rgb 

It looks to me like these tests are not taking into account the
rounding that happens with coarse GrayScale and and TrueColor
visuals.  The tests themselves probably need to be reworked.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: 4.4.99.903: s3: missing some of the screen

2005-03-14 Thread David Dawes
On Mon, Mar 14, 2005 at 08:45:07PM +0100, N?meth M?rton wrote:
Marc Aurele La France ?rta:
On Fri, 11 Mar 2005, [ISO-8859-2] N?meth M?rton wrote:

Starting XFree86 4.4.99.903 using the s3 driver at mode 1024x768 8bpp 
I see the following screen:


 0 303   1023
 |  |  |
0 -----+
   |
   |
    GOOD AREA  |
   |
   |
767----+


where B means that black pixels are displayed always.


I don't know what is the problem exactly but the attached patch 
removes this bug. (May cause new ones, too...)


chip:
-
S3 Trio64V+
  P1E3BF
86C765
9650 MB851
TAIWAN


VGA BIOS:
-
Phoenix S3 TRIO64V+ Enhanced VGA BIOS. Version 1.02-02
Copyright 1987-1992 Phoenix Technologies Ltd.
Copyright 1992-1995 S3 Incorporated.
All Rights Reserved


lspci -v:
-
:00:09.0 VGA compatible controller: S3 Inc. 86c764/765 
[Trio32/64/64V+] (rev 54) (prog-if 00 [VGA])
   Flags: medium devsel, IRQ 10
   Memory at e000 (32-bit, non-prefetchable) [size=64M]


Could you try the attached instead?  This one also fixes a few other 
problems I noticed.

The problem is solved if I use the patch.

Running the xtest 4.0.11 the following tests are failed using 
4.4.99.903+patched s3 driver, using 1024x768 8bpp:

XListPixmapFormats
XDrawArc
XDrawArcs
XSetFontPath
XAllocNamedColor
XLookupColor
XStringToKeysym

XDrawArc and XDrawArcs are expected.  XSetFontPath might be configuration
related.  XStringToKeysym should go away if you run with XKB disabled.

What are the reported problems for the other three (XListPixmapFormats,
XAllocNamedColor, XLookupColor)?

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: xtest version in test/xsuite/NOTES.xf86

2005-03-14 Thread David Dawes
On Mon, Mar 14, 2005 at 09:24:24PM +0100, N?meth M?rton wrote:
Hi!

The version number of the xtest is not updated in the file 
test/xsuite/NOTES.xf86

Thanks for pointing that out -- I'll fix it.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Yet another Xpm vulnerability

2005-03-11 Thread David Dawes
On Fri, Mar 11, 2005 at 12:54:47PM +, Matthias Scheler wrote:
On Thu, Mar 10, 2005 at 06:37:06PM -0500, David Dawes wrote:
 How about the attached patch?

I just pulled OpenBSD-current's Xpm source into NetBSD. It has fixes
for this vulnerability and various other bug fixes from X.org.

I looked at one of the patches out there for this, and it only
seemed to solve one end of the problem: trapping a negative
XImage.bitmap_unit value, which, when converted to a signed value
allowed the heap to be overflowed.  It didn't address the same
problem arising from a large positive XImage.bitmap_unit value, or
a similar problem with the XImage.bits_per_pixel field, but
the patch I sent does.  There are also other XImage fields that are
not validated, but from a cursory look they don't appear to be used
by Xpm in a way that can cause write-to-stack or heap overflows.
  
 What is the mechanism for getting the bad data into the privileged
 program to start with?

Maybe a web browser?

Well, the bad XImage data has to come from somewhere.  The two
places that libXpm gets XImage data that it (or libX11) doesn't
have direct control of is via XGetImage() and XCreateImage(), both
of which use data provided by the X server without any validation.
This is why I suggested that perhaps libX11 should validate such
data before passing it back to the application.

If an application is using user-supplied data to generate an XImage
in another way and not validating it, then that is arguably a bug
in the application.  Either way the patch should trap that within
libXpm.  I'm curious about the mechanism because it might hint at
other issues that need attention.

Anyway, this is from a quick look at the reported problem based on
the description in the CAN.  If you or anyone else see something
that I'm missing, let me know.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: xc/Install

2005-03-07 Thread David Dawes
On Mon, Mar 07, 2005 at 04:32:00PM +0100, Frank Gie?ler wrote:
Unfortunately, the new file xc/Install breaks the install target on 
filesystems that are case insensitive. Can this be fixed?

The easiest solution is probably to append .txt to the top level doc
files.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


XFree86 4.5.0 RC3 (4.4.99.903)

2005-03-06 Thread David Dawes
The third XFree86 4.5.0 release candidate is available.  Source and
some binaries can be found at:

  ftp://ftp.xfree86.org/pub/XFree86/snapshots/4.4.99.903/

Documentation is at:

  http://www.xfree86.org/4.4.99.903/

Preview documentation for 4.5.0 is at:

  http://www.xfree86.org/~dawes/pre-4.5/

This release candidate resolves problems discovered during testing of
the first two release candidates.  The DRM source has been rolled back
to a version based on what we shipped with the 4.4.0 release, and has
been verified to build and run on a range of Linux 2.4.x and 2.6.x
kernels, and on recent versions of FreeBSD.  Thanks to all who have
tested and reported their results and/or submitted fixes!

This is expected to be the final 4.5.0 release candidate, and marks the
start of the code freeze phase.  Only serious bug fixes and documentation
updates will be accepted between now and the 4.5.0 release.  All potential
commits other than documentation updates must be reviewed and approved
by either Marc La France or myself during this code freeze period.

The focus now is on platform and stability testing, and on updating the
documentation.  If you run into any problems with this release candidate,
please report details here.

The remaining issue for the 4.5.0 release is:

  - Documentation updates, especially the releae notes.  If you have
updates for the documentation, send them here.

Enjoy!

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: lib/GL

2005-03-05 Thread David Dawes
On Fri, Mar 04, 2005 at 02:18:38PM -0700, Marc Aurele La France wrote:
On Tue, 1 Mar 2005, David Dawes wrote:
On Tue, Mar 01, 2005 at 06:51:54PM -0700, Marc Aurele La France wrote:
I've been auditing various builds and noticed that
xc/lib/GL/mesa/drivers/x11 is never built, let alone referenced.  Is this
an oversight, or can this directory be deleted?

It is supposed to be built and referenced when GlxBuiltInXMesa is
set to YES.  Although the necessary reference to it is in
lib/GL/GL/Imakefile, there doesn't appear to be anything in
lib/GL/Imakefile that would actually cause that directory to be
built.  That could be fixed.

Hummm.  This looks like another post-4.5 thing.

More importantly though, there is a reference to the Imakefile.inc
file in that directory from Xserver/GL/mesa/GLcore/Imakefile, and
that is used.

Not so.  Removing that reference doesn't change anything.

It doesn't change anything because the objects are referenced as:

XOBJS = ../X/?*.o

rather than by using the make variables defined in that Imakefile.inc.
However, it is also referenced from Xserver/GL/mesa/X/Imakefile,
and removing that reference will be noticed.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Problems with xf86Globals.c

2005-03-05 Thread David Dawes
On Sat, Mar 05, 2005 at 08:32:30AM +, Dr Andrew C Aitchison wrote:
I'm not sure why this change from January
to xc/programs/Xserver/hw/xfree86/common/xf86Globals.c
is only biting now but:

It's a more recent change to xf86Privstr.h.  I see that Marc has committed
a fix for this (removing the initialiser for the removed 'log' field).

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: 4.4.99.902: s3 fails some of xtests

2005-03-05 Thread David Dawes
On Fri, Mar 04, 2005 at 08:40:55AM +0100, N?meth M?rton wrote:


Mark Vojkovich ?rta:
On Wed, 2 Mar 2005, Tim Roberts wrote:


N?meth M?rton wrote:


Hi!

I've tested 4.5.0RC2 with xtest 4.0.10, see
http://bugs.xfree86.org/show_bug.cgi?id=1557 for details.

I've attached a test C program which always produces bad rendering
using acceleration, and never if XaaNoScreenToScreenCopy is set
(=without acceleration). The results are also attached.

Have anyone see souch behaviour?

Have anyone programers manual about 86c764/765 [Trio32/64/64V+] chip?


Is it really only GXclear, GXinvert, and GXset that fail?  If so, the
diagnosis is pretty easy.

For those three ROPs, it's not really a screen-to-screen blit at all:
the source surface is not used.  Most S3 chips (Savage included) fail if
you attempt to use a two-operand bitblt command when the source is not
involved.  That's why there is an XAA flag specifically for this case.

The solution is to add
pXAA-ScreenToScreenCopyFlags = ROP_NEEDS_SOURCE;
to the S3AccelInitXxx function at the bottom of the file.



   I don't believe the Trio32/64/64V+ had that problem.  That was
specific to the ViRGE.  I'm more inclined to believe that this
problem is because it's not setting:

   pXAA-ScreenToScreenCopyFlags = NO_TRANSPARENCY;

  I don't recall the the S3 driver I wrote a long time ago having
that feature, and you definitely don't want to be using it if you
support transparency during color expansions.  The transparent blit
feature is really only for chips that don't have a color expansion
engine for stippling.

   If you want to see correct acceleration code for the old S3 chips
you should dig up the old s3 code in the XFree86 3.3.x XF86_SVGA
server.  I wrote that years ago.


I've tested the two settings using xtest 4.0.10 at color depth 16. Here 
are my results:

pXAA-ScreenToScreenCopyFlags = ROP_NEEDS_SOURCE;
   = the XCopyArea tests passed

pXAA-ScreenToScreenCopyFlags = NO_TRANSPARENCY;
   = the XCopyArea tests fails the following tests:
   - GXclear (6)
   - GXinvert (16)
   - GXset (21)

Is there any need to set the ROP_NEEDS_SOURCE on S3 Trio64V+ and not on 
the other S3 chips or the ROP_NEEDS_SOURCE will work on all S3 cards?

s3virge have an other driver, and uses NO_TRANSPARENCY already.

(What does ROP mean, anyway?)

   NMarci

I'll commit the patch.  Thanks for following it up.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: lib/GL

2005-03-01 Thread David Dawes
On Tue, Mar 01, 2005 at 06:51:54PM -0700, Marc Aurele La France wrote:
Hi.

I've been auditing various builds and noticed that 
xc/lib/GL/mesa/drivers/x11 is never built, let alone referenced.  Is this 
an oversight, or can this directory be deleted?

It is supposed to be built and referenced when GlxBuiltInXMesa is
set to YES.  Although the necessary reference to it is in
lib/GL/GL/Imakefile, there doesn't appear to be anything in
lib/GL/Imakefile that would actually cause that directory to be
built.  That could be fixed.

More importantly though, there is a reference to the Imakefile.inc
file in that directory from Xserver/GL/mesa/GLcore/Imakefile, and
that is used.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: TinyX startup

2005-02-25 Thread David Dawes
On Thu, Feb 24, 2005 at 05:24:19PM +0800, Liu Lijuan wrote:
hello:
   Lately I am working on Xserver(TinyX). In the process, I found that 
 tinyX startup is
not very fast in embedded system. I read its startup codes and found the font 
initialization speeds lots of time. Do you have other suggestion to accelerate 
the tinyX startup? Or have some resources? 

A few things to look at:

  1. identify exactly which parts of the font init are slow
  2. minimise the set of fonts and font paths
  3. rewrite (and enable) the built-in font support so that it builds in
 pre-processed fonts.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: DRM kernel source broken/incomplete

2005-02-23 Thread David Dawes
On Wed, Feb 16, 2005 at 06:03:41PM -0500, David Dawes wrote:
On Wed, Feb 09, 2005 at 11:55:58AM -0500, David Dawes wrote:
On Wed, Feb 09, 2005 at 10:05:38AM +, Alan Hourihane wrote:

But isn't it better to move forward than backwards ?

If the result is no better, then we need to fix the problems found. Going
back to an older version, and just because it builds, doesn't guarantee it's
going to work any better either.

I've got more faith in the current DRM CVS as people are actively working
on it, rather than using an older snapshot that people could be unwilling
to go back and fix if a problem was found.

I'd like to see a version that is proven to build, work, and fit in with
our requirements before making any final decision on this.  The snapshot
we currently have imported is clearly not a good one.

Otherwise, going back to the version of the kernel modules that we shipped
with 4.4.0 won't be too difficult, especially if the user-mode side has
the level of backward compatibility that people have claimed.

Is there any update on this?

Since the DRM people are not able to come up with a working version, I'm
rolling back to the version that we shipped with 4.4.0 as a base for
4.5.0, and I'll work from there.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: 4.4.99.901: s3 fails some of xtests

2005-02-20 Thread David Dawes
On Sun, Feb 20, 2005 at 01:34:40AM +0100, Németh Márton wrote:
Hi!

I've downloaded XFree86 4.4.99.901 from 
ftp://ftp.xfree86.org/pub/XFree86/snapshots/4.4.99.901/binaries/Linux-ix86-glibc23/
 
and run xtest 4.0.8 against it.

There was some tests which failed:

XCopyArea
XDrawArc
XDrawArcs
XSetFontPath

I don't know how to see exactly what went wrong and what would be the 
expected result.

The XDrawArc and XDrawArcs failures are expected, and are considered
acceptable.

The XSetFontPath problems may be configuration-related.  I don't see them,
and those code paths are certainly not driver-specific.

Where to start debugging these failures?

The XCopyArea failure looks like a real driver problem.  I'd suggest
starting by running just the specific tests that are failing (there's
information about how to do that in the NOTES.xf86 file), and add some
debugging messages to the relevant S3 accel function to trace what is
happening.

Thanks for doing the testing and reporting your results.

The platforms I've tested on so far have shown only a few minor issues,
some of which were issues with the test suite itself.  The test suite
issues have been addressed in xtest version 4.0.10, available at:

  ftp://ftp.xfree86.org/pub/XFree86/xtest/XFree86-xtest-4.0.10.tar.bz2

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Modeline behavior changed (broken)?

2005-02-17 Thread David Dawes
On Thu, Feb 17, 2005 at 10:52:33AM -0800, Mark Vojkovich wrote:
On Wed, 16 Feb 2005, David Dawes wrote:

 On Wed, Feb 16, 2005 at 06:07:43PM -0800, Mark Vojkovich wrote:
It used to be that if you specified a modeline, say 1600x1200 in
 the XF86Config file, that modeline would take preference over any
 internal modelines of the same name.  This no longer appears to be
 the case.  If I have a 1600x1200 modeline in the XF86Config file,
 it no longer gets used, but another mode instead (I presume the
 internal mode).  I have to name my mode to something else in order
 to use it.
 
It seems like the server was changed to ignore modes placed
 in the monitor section if they conflict with internal modes.  Was
 this change intentional?

 It works correctly for me.  If explicitly provided modes are not
 overriding the default modes then it is a bug.  Can you send your
 log file?

   It appears that what's happening is modes from the monitor's
edid take precedence over Section Monitor overrides.  I specified
mode 1600x1200 in my SubSection Display Modes.  I provided a custom
modeline in the Section Monitor:

# 1600x1200 @ 79.1 Hz, 98.9 kHz
   Modeline  1600x1200 213.6 1600 1664 1856 2160 1200 1201 1204 1250

but the monitor is reporting 86 Hz, 106 kHz.

(**) NV(0): *Preferred EDID mode 1600x1200: 230.0 MHz, 106.5 kHz, 85.2 Hz

Adding the EDID modes to the set is part of the recent autoconfig enhancements.

  ...

(**) NV(0):  Mode 1600x1200: 213.6 MHz, 98.9 kHz, 79.1 Hz
(II) NV(0): Modeline 1600x1200  213.60  1600 1664 1856 2160  1200 1201 1204 
1250

   I think the priority should be:  Section Monitor, EDID, builtin.
But it appears that it's EDID, Section Monitor, builtin.

Yes, I agree that the modes specified explicitly in the Monitor section
should have first priority.  The attached patch prevents EDID modes matching
Monitor section modes from being added to the pool, much the same way as
happens already for the built-in default/VESA modes.

Let me know how it goes.

David
Index: xf86Mode.c
===
RCS file: /home/x-cvs/xc/programs/Xserver/hw/xfree86/common/xf86Mode.c,v
retrieving revision 1.75
diff -u -r1.75 xf86Mode.c
--- xf86Mode.c  17 Feb 2005 03:46:48 -  1.75
+++ xf86Mode.c  17 Feb 2005 21:47:19 -
@@ -1241,10 +1241,6 @@
 return MODE_OK;
 }
 
-#ifndef MODENAMESIZE
-#define MODENAMESIZE (4 + 1 + 4 + 1)
-#endif
-
 /*
  * xf86ValidateModes
  *
@@ -1494,29 +1490,45 @@
hmax = h;
 
if (!haveEDIDModes) {
-   new = xnfcalloc(1, sizeof(DisplayModeRec));
-   new-type = M_T_DEFAULT | M_T_EDID;
-   new-Clock = dt-clock / 1000;
-   new-HDisplay = dt-h_active;
-   new-HSyncStart = new-HDisplay + dt-h_sync_off;
-   new-HSyncEnd = new-HSyncStart + dt-h_sync_width;
-   new-HTotal = new-HDisplay + dt-h_blanking;
-   new-VDisplay = dt-v_active;
-   new-VSyncStart = new-VDisplay + dt-v_sync_off;
-   new-VSyncEnd = new-VSyncStart + dt-v_sync_width;
-   new-VTotal = new-VDisplay + dt-v_blanking;
-   new-name = xnfalloc(MODENAMESIZE);
-   snprintf(new-name, MODENAMESIZE, %dx%d,
-new-HDisplay, new-VDisplay);
-   if (firstPreferred  firstDetailed) {
-   new-type |= M_T_PREFER;
-   preferredName = new-name;
+   char *newName = NULL;
+
+   xasprintf(newName, %dx%d,
+ dt-h_active, dt-v_active);
+   if (newName  !xf86ModeIsPresent(newName,
+ monitor-Modes,
+ 0, M_T_DEFAULT)) {
+   new = xcalloc(1, sizeof(DisplayModeRec));
+   if (new) {
+   new-type = M_T_DEFAULT | M_T_EDID;
+   new-Clock = dt-clock / 1000;
+   new-HDisplay = dt-h_active;
+   new-HSyncStart = new-HDisplay +
+   dt-h_sync_off;
+   new-HSyncEnd = new-HSyncStart +
+   dt-h_sync_width;
+   new-HTotal = new-HDisplay + dt-h_blanking;
+   new-VDisplay = dt-v_active;
+   new-VSyncStart = new-VDisplay +
+   dt-v_sync_off;
+   new-VSyncEnd = new-VSyncStart +
+   dt-v_sync_width

Re: DRM kernel source broken/incomplete

2005-02-16 Thread David Dawes
On Wed, Feb 09, 2005 at 11:55:58AM -0500, David Dawes wrote:
On Wed, Feb 09, 2005 at 10:05:38AM +, Alan Hourihane wrote:

But isn't it better to move forward than backwards ?

If the result is no better, then we need to fix the problems found. Going
back to an older version, and just because it builds, doesn't guarantee it's
going to work any better either.

I've got more faith in the current DRM CVS as people are actively working
on it, rather than using an older snapshot that people could be unwilling
to go back and fix if a problem was found.

I'd like to see a version that is proven to build, work, and fit in with
our requirements before making any final decision on this.  The snapshot
we currently have imported is clearly not a good one.

Otherwise, going back to the version of the kernel modules that we shipped
with 4.4.0 won't be too difficult, especially if the user-mode side has
the level of backward compatibility that people have claimed.

Is there any update on this?

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Modeline behavior changed (broken)?

2005-02-16 Thread David Dawes
On Wed, Feb 16, 2005 at 06:07:43PM -0800, Mark Vojkovich wrote:
   It used to be that if you specified a modeline, say 1600x1200 in
the XF86Config file, that modeline would take preference over any
internal modelines of the same name.  This no longer appears to be
the case.  If I have a 1600x1200 modeline in the XF86Config file,
it no longer gets used, but another mode instead (I presume the
internal mode).  I have to name my mode to something else in order
to use it.

   It seems like the server was changed to ignore modes placed
in the monitor section if they conflict with internal modes.  Was
this change intentional?

It works correctly for me.  If explicitly provided modes are not
overriding the default modes then it is a bug.  Can you send your
log file?

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Problem restoring console?

2005-02-15 Thread David Dawes
On Tue, Feb 15, 2005 at 10:34:16AM -0800, Mark Vojkovich wrote:
On Mon, 14 Feb 2005, David Dawes wrote:

 On Mon, Feb 14, 2005 at 07:40:40PM -0800, Mark Vojkovich wrote:
 On Mon, 14 Feb 2005, Mark Vojkovich wrote:
 
  On Mon, 14 Feb 2005, David Dawes wrote:
 
   On Mon, Feb 14, 2005 at 04:00:18PM -0800, Mark Vojkovich wrote:
  I just updated on my dual-card system and with the update I see
   a problem restoring the console that I did not see previously.  If
   I startx on the primary card and then quit, the primary card is 
   restored
   correctly.  However, if I startx on both cards and quit, the
   primary card is not restored correctly.  I have a hard time imagining
   how it could be a driver issue since the nv driver knows nothing 
   about
   the other cards in the layout (nor should it) and does not change
   its behavior when there is more than one card in the layout.  The
   core server code, on the other hand, does.
   
  Have there been changes to vgahw, RAC, PCI config code, console
   code, etc... that may have caused this regression?
  
   Do you know approximately when this problem started?
 
I haven't updated in a long time on that machine.  I'll try to
  figure out when, but I'm not sure how to do that reliably.
 
I can't tell when I last updated on this machine.

 Can you go back to 4.4 as a first step, or do you know it was post-4.4?

   It worked fine with 4.4.  I built sometime after 4.4 but I'm
not sure when.



 I tried 4.5.0 RC1 with a multi-head config using a Mach64 and i810,
 and didn't see any problem like this.  I can try some other multi-head
 configs later this week.


What OS are you on?  It could be something specific to Linux
console/vt.

That quick test was on Linux.  Without further information, I'd
suggest trying a snapshot from the last month or so, then work
backwards or forwards from there.  What do the console restoration
problems look like?

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Problem restoring console?

2005-02-15 Thread David Dawes
On Tue, Feb 15, 2005 at 02:50:23PM -0800, Mark Vojkovich wrote:
On Tue, 15 Feb 2005, David Dawes wrote:

 On Tue, Feb 15, 2005 at 10:34:16AM -0800, Mark Vojkovich wrote:
 On Mon, 14 Feb 2005, David Dawes wrote:
 
  On Mon, Feb 14, 2005 at 07:40:40PM -0800, Mark Vojkovich wrote:
  On Mon, 14 Feb 2005, Mark Vojkovich wrote:
  
   On Mon, 14 Feb 2005, David Dawes wrote:
  
On Mon, Feb 14, 2005 at 04:00:18PM -0800, Mark Vojkovich wrote:
   I just updated on my dual-card system and with the update I see
a problem restoring the console that I did not see previously.  If
I startx on the primary card and then quit, the primary card is 
restored
correctly.  However, if I startx on both cards and quit, the
primary card is not restored correctly.  I have a hard time 
imagining
how it could be a driver issue since the nv driver knows nothing 
about
the other cards in the layout (nor should it) and does not change
its behavior when there is more than one card in the layout.  The
core server code, on the other hand, does.

   Have there been changes to vgahw, RAC, PCI config code, console
code, etc... that may have caused this regression?
   
Do you know approximately when this problem started?
  
 I haven't updated in a long time on that machine.  I'll try to
   figure out when, but I'm not sure how to do that reliably.
  
 I can't tell when I last updated on this machine.
 
  Can you go back to 4.4 as a first step, or do you know it was post-4.4?
 
It worked fine with 4.4.  I built sometime after 4.4 but I'm
 not sure when.
 
 
 
  I tried 4.5.0 RC1 with a multi-head config using a Mach64 and i810,
  and didn't see any problem like this.  I can try some other multi-head
  configs later this week.
 
 
 What OS are you on?  It could be something specific to Linux
 console/vt.

 That quick test was on Linux.  Without further information, I'd
 suggest trying a snapshot from the last month or so, then work
 backwards or forwards from there.  What do the console restoration
 problems look like?

   I'm left with just a blinking cursor.

I've reproduced this with another multi-head combination.  It turns out
that the i810 isn't a good test of font save/restore because it doesn't
overwrite that data during normal operation.

The problem is that the font data isn't getting saved/restored correctly,
as can be seen from the fact that running 'setfont' fixes things up.  A
4.4.99.901 server with 4.4.0 modules worked fine, and I tracked the
problem down to a change to the rac module:

if (!flag) {
ENABLE;
return TRUE;
}

The problem with this optimisation is that flag is only set for
operating state requirements, not for setup state.  RAC assumes that
setup state operations always need to be wrapped in multi-card
configurations.  To eliminate even this wrapping, additional flag bits
would be needed to describe setup state requirements, such as access to
VGA resources for font save/restore, etc.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Problem restoring console?

2005-02-14 Thread David Dawes
On Mon, Feb 14, 2005 at 04:00:18PM -0800, Mark Vojkovich wrote:
   I just updated on my dual-card system and with the update I see
a problem restoring the console that I did not see previously.  If
I startx on the primary card and then quit, the primary card is restored
correctly.  However, if I startx on both cards and quit, the
primary card is not restored correctly.  I have a hard time imagining
how it could be a driver issue since the nv driver knows nothing about
the other cards in the layout (nor should it) and does not change
its behavior when there is more than one card in the layout.  The
core server code, on the other hand, does.

   Have there been changes to vgahw, RAC, PCI config code, console
code, etc... that may have caused this regression?

Do you know approximately when this problem started?

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: Problem restoring console?

2005-02-14 Thread David Dawes
On Mon, Feb 14, 2005 at 07:40:40PM -0800, Mark Vojkovich wrote:
On Mon, 14 Feb 2005, Mark Vojkovich wrote:

 On Mon, 14 Feb 2005, David Dawes wrote:

  On Mon, Feb 14, 2005 at 04:00:18PM -0800, Mark Vojkovich wrote:
 I just updated on my dual-card system and with the update I see
  a problem restoring the console that I did not see previously.  If
  I startx on the primary card and then quit, the primary card is restored
  correctly.  However, if I startx on both cards and quit, the
  primary card is not restored correctly.  I have a hard time imagining
  how it could be a driver issue since the nv driver knows nothing about
  the other cards in the layout (nor should it) and does not change
  its behavior when there is more than one card in the layout.  The
  core server code, on the other hand, does.
  
 Have there been changes to vgahw, RAC, PCI config code, console
  code, etc... that may have caused this regression?
 
  Do you know approximately when this problem started?

   I haven't updated in a long time on that machine.  I'll try to
 figure out when, but I'm not sure how to do that reliably.

   I can't tell when I last updated on this machine.

Can you go back to 4.4 as a first step, or do you know it was post-4.4?

I tried 4.5.0 RC1 with a multi-head config using a Mach64 and i810,
and didn't see any problem like this.  I can try some other multi-head
configs later this week.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: x86 emulator bug

2005-02-13 Thread David Dawes
On Fri, Feb 11, 2005 at 08:55:16AM -, Charles Dobson wrote:

Yes, thanks for pointing that out. I missed that in my haste
to post. It seems that the Silicon Motion video BIOS relies on
a undocumented feature of the CPU.

This leaves me in a dilemma, should I post my changes 
to Bugzilla or not!

No dilemma.  I committed your changes yesterday.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: x86 emulator bug

2005-02-10 Thread David Dawes
On Thu, Feb 10, 2005 at 10:08:20AM -, Charles Dobson wrote:
I am not sure if I should post this here or on bugzilla.

Definitely here so that more people will see it and have a chance
to comment.

While trying to get a Silicon Motion SM722 video controller
working with Solaris, I have discovered a problem with the
emulation of the SHLD and SHRD (double precision shift)
instructions of the x86 emulator.
According to the Intel Pentium User Guide Vol 3, these
instructions can shift upto 31 bits with both 16 and 32
bit operands. The emulator code will only work with shifts
of upto 15 bits for 16 bit operands.

As Tim pointed out, that behaviour is documented as undefined.
However, if emulating it this way helps for that controller, then
that's probably how we should do it.

The file is 
xc/extras/x86emu/src/x86emu/prim_ops.c

I have modified the two functions as below.
I am not positive the flags are set correctly so
would appreciated someone else to check these.

Since the flags are also undefined for that case, setting them this way
looks OK to me.

If there are no further comments, I'll commit your changes.

Thanks.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: DRM kernel source broken/incomplete

2005-02-10 Thread David Dawes
On Tue, Feb 08, 2005 at 08:14:59PM -0500, David Dawes wrote:

Some have said here today that the drivers can adapt to older DRM
versions.  That's how it should be, but I don't know if it is true
or not.  I've seen some things in my initial testing that may cast
some doubt on it, but there were too many other variables to be
certain without followup.

Following up on this, if I start XFree86 with DRI enabled with an i810,
on Red Hat 9 with its stock kernel and DRM module, the server gets killed
by the kernel.  The reason is that it tries to open up to 255 minor
device nodes (vs 16 before), but some versions of the DRM have a hard
limit of 16 and unfortunately don't validate the minor number before
using it to index an array.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: DRM kernel source broken/incomplete

2005-02-09 Thread David Dawes
On Wed, Feb 09, 2005 at 10:05:38AM +, Alan Hourihane wrote:
On Tue, Feb 08, 2005 at 08:14:59PM -0500, David Dawes wrote:
 On Tue, Feb 08, 2005 at 11:52:27PM +, Alan Hourihane wrote:
 On Tue, Feb 08, 2005 at 06:40:07PM -0500, David Dawes wrote:
  On Tue, Feb 08, 2005 at 11:24:43PM +, Alan Hourihane wrote:
  On Tue, Feb 08, 2005 at 06:17:50PM -0500, David Dawes wrote:
   On Tue, Feb 08, 2005 at 05:12:29PM +, Alan Hourihane wrote:
   On Tue, Feb 08, 2005 at 11:59:15AM -0500, David Dawes wrote:
On Tue, Feb 08, 2005 at 04:40:42PM +, Alan Hourihane wrote:
On Tue, Feb 08, 2005 at 11:32:56AM -0500, David Dawes wrote:
 It looks like the DRM kernel source in xc/extras/drm is broken 
 and
 incomplete, especially for BSD platforms.  The Linux version only
 appears to build for a narrow range of kernels, and this either
 needs to be fixed, or the minimum kernel requirements enforced in
 the Makefile.

 Perhaps we'll have to roll back to an older version that does 
 build?

I suspect pulling in a newer snapshot would be better, although 
it's
a little more complicated now because the drm has split out support
for linux 2.4 and 2.6 kernels is separate subdirectories.

Does the build automatically figure out which to use based on the
kernel version, and what range of kernels has it been verified on?

   No.
   
   Any imports/updates need to address our requirements in this regard.
  
  If we import the current DRM trunk code, there are three linux 
  directories.
  
  1. linux for 2.4 kernels (monolithic)
  2. linux-2.6 for 2.6 kernels (monolithic)
  3. linux-corefor 2.6 kernels with modular drm.ko and 
  driver.ko
  
  and two for bsd
  
  1. bsd   monolithic
  2. bsd-core  modular as above
  
  The -core are the new ones going forward and which I believe has been
  merged in linux 2.6.11.
  
  So, for now the linux-2.6, linux and bsd directories are the ones to 
  stick
  with for stability. But things are changing.
  
  There'll be necessary build tweaks to select which directories are 
  needed.
  
  At this point in our release cycle, the priorities are:
  
1st: It builds/runs and is reasonably stable on a good range of 
  platforms.
2nd: It supports as many DRI features as possible consistent with the
 first priority.
  
  I don't think that even changing from the existing single Linux directory
  to two different kernel-specific directories is appropriate at this point
  in our release cycle.  The time for such a change was before the feature
  freeze.
  
  If what we have now is too broken to be fixed without major structural
  changes, then it will need to be rolled back.
 
 The fear is, if you roll back the DRM, then the drivers may need to be
 rolled back as well to support lesser features.
 
 Some have said here today that the drivers can adapt to older DRM
 versions.  That's how it should be, but I don't know if it is true
 or not.  I've seen some things in my initial testing that may cast
 some doubt on it, but there were too many other variables to be
 certain without followup.
 
 It would clearly be preferable to have a recent version that works.
 Is there a known recent stable/working version?  From my point of
 view the fear is, updating to the latest version, adapting to its
 structural changes, and finding that the result is no better.

But isn't it better to move forward than backwards ?

If the result is no better, then we need to fix the problems found. Going
back to an older version, and just because it builds, doesn't guarantee it's
going to work any better either.

I've got more faith in the current DRM CVS as people are actively working
on it, rather than using an older snapshot that people could be unwilling
to go back and fix if a problem was found.

I'd like to see a version that is proven to build, work, and fit in with
our requirements before making any final decision on this.  The snapshot
we currently have imported is clearly not a good one.

Otherwise, going back to the version of the kernel modules that we shipped
with 4.4.0 won't be too difficult, especially if the user-mode side has
the level of backward compatibility that people have claimed.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


DRM kernel source broken/incomplete

2005-02-08 Thread David Dawes
It looks like the DRM kernel source in xc/extras/drm is broken and
incomplete, especially for BSD platforms.  The Linux version only
appears to build for a narrow range of kernels, and this either
needs to be fixed, or the minimum kernel requirements enforced in
the Makefile.

Perhaps we'll have to roll back to an older version that does build?

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: DRM kernel source broken/incomplete

2005-02-08 Thread David Dawes
On Tue, Feb 08, 2005 at 04:40:42PM +, Alan Hourihane wrote:
On Tue, Feb 08, 2005 at 11:32:56AM -0500, David Dawes wrote:
 It looks like the DRM kernel source in xc/extras/drm is broken and
 incomplete, especially for BSD platforms.  The Linux version only
 appears to build for a narrow range of kernels, and this either
 needs to be fixed, or the minimum kernel requirements enforced in
 the Makefile.

 Perhaps we'll have to roll back to an older version that does build?

I suspect pulling in a newer snapshot would be better, although it's
a little more complicated now because the drm has split out support
for linux 2.4 and 2.6 kernels is separate subdirectories.

Does the build automatically figure out which to use based on the
kernel version, and what range of kernels has it been verified on?

What about the FreeBSD code?  The current version we have is very
broken, failing to build even the simplest of drivers (tdfx) on
4.10 or 5.2.  Also, does the i915 driver build on BSD?  It is
referenced in the Makefile, but the required files are not present.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: DRM kernel source broken/incomplete

2005-02-08 Thread David Dawes
On Tue, Feb 08, 2005 at 05:12:29PM +, Alan Hourihane wrote:
On Tue, Feb 08, 2005 at 11:59:15AM -0500, David Dawes wrote:
 On Tue, Feb 08, 2005 at 04:40:42PM +, Alan Hourihane wrote:
 On Tue, Feb 08, 2005 at 11:32:56AM -0500, David Dawes wrote:
  It looks like the DRM kernel source in xc/extras/drm is broken and
  incomplete, especially for BSD platforms.  The Linux version only
  appears to build for a narrow range of kernels, and this either
  needs to be fixed, or the minimum kernel requirements enforced in
  the Makefile.
 
  Perhaps we'll have to roll back to an older version that does build?
 
 I suspect pulling in a newer snapshot would be better, although it's
 a little more complicated now because the drm has split out support
 for linux 2.4 and 2.6 kernels is separate subdirectories.
 
 Does the build automatically figure out which to use based on the
 kernel version, and what range of kernels has it been verified on?
 
No.

Any imports/updates need to address our requirements in this regard.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


Re: DRM kernel source broken/incomplete

2005-02-08 Thread David Dawes
On Tue, Feb 08, 2005 at 11:24:43PM +, Alan Hourihane wrote:
On Tue, Feb 08, 2005 at 06:17:50PM -0500, David Dawes wrote:
 On Tue, Feb 08, 2005 at 05:12:29PM +, Alan Hourihane wrote:
 On Tue, Feb 08, 2005 at 11:59:15AM -0500, David Dawes wrote:
  On Tue, Feb 08, 2005 at 04:40:42PM +, Alan Hourihane wrote:
  On Tue, Feb 08, 2005 at 11:32:56AM -0500, David Dawes wrote:
   It looks like the DRM kernel source in xc/extras/drm is broken and
   incomplete, especially for BSD platforms.  The Linux version only
   appears to build for a narrow range of kernels, and this either
   needs to be fixed, or the minimum kernel requirements enforced in
   the Makefile.
  
   Perhaps we'll have to roll back to an older version that does build?
  
  I suspect pulling in a newer snapshot would be better, although it's
  a little more complicated now because the drm has split out support
  for linux 2.4 and 2.6 kernels is separate subdirectories.
  
  Does the build automatically figure out which to use based on the
  kernel version, and what range of kernels has it been verified on?
  
 No.
 
 Any imports/updates need to address our requirements in this regard.

If we import the current DRM trunk code, there are three linux directories.

1. linux   for 2.4 kernels (monolithic)
2. linux-2.6   for 2.6 kernels (monolithic)
3. linux-core  for 2.6 kernels with modular drm.ko and driver.ko

and two for bsd

1. bsd monolithic
2. bsd-coremodular as above

The -core are the new ones going forward and which I believe has been
merged in linux 2.6.11.

So, for now the linux-2.6, linux and bsd directories are the ones to stick
with for stability. But things are changing.

There'll be necessary build tweaks to select which directories are needed.

At this point in our release cycle, the priorities are:

  1st: It builds/runs and is reasonably stable on a good range of platforms.
  2nd: It supports as many DRI features as possible consistent with the
   first priority.

I don't think that even changing from the existing single Linux directory
to two different kernel-specific directories is appropriate at this point
in our release cycle.  The time for such a change was before the feature
freeze.

If what we have now is too broken to be fixed without major structural
changes, then it will need to be rolled back.

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


XFree86 4.5.0 RC1 (4.4.99.901)

2005-02-08 Thread David Dawes
The first XFree86 4.5.0 release candidate is available.  Source and
some binaries can be found at:

  ftp://ftp.xfree86.org/pub/XFree86/snapshots/4.4.99.901/

Documentation is at:

  http://www.xfree86.org/4.4.99.901/

Preview documentation for 4.5.0 is at:

  http://www.xfree86.org/~dawes/pre-4.5/

This release candidate marks the start of the intense testing phase for
the 4.5.0 release.  Most platform build/packaging issues should be
resolved at this point, but if you run into any, let us know.  The focus
now is on run-time and correctness testing.  Run-time testing is basically
running the release candidate in your usual environment and reporting
problems you find.  Correctness testing consists of running the xtest
suite.  If you are interested in running the xtest suite, you can find
the source with this release candidate.  Information about how to build
and run the xtest suite can be found in the test/xsuite/NOTES.xf86 file
that is part of the xtest source.  If you find any run-time or correctness
problems, or run into any problems building or running the xtest suite,
please report details here.

If you haven't already done so, this release candidate would be a good
time to test the XFree86 automatic configuration feature.  It was first
available with the 4.4.0 release, and has been improved since then.  It
currently works on most Linux, FreeBSD, NetBSD, OpenBSD and Solaris/ix86
platforms.  You can try it out easily without affecting your existing
configuration.  The quickest way to do this is to run:

  XFree86 -autoconfig

which will start up the XFree86 server without any applications.  You
should see the familiar X stipple background and be able to move the X
cursor.  You can exit this with CtrlAltBackspace.  If that looks
OK, try running your usual X session with:

  startx -- -autoconfig

If you find any problems with this, please send details.

The goal of the automatic configuration feature is for the XFree86 server
to run in a usable form without any user intervention on a majority of
platforms.  It works by maximising the amount of configuration that can
automatically be detected within the XFree86 server, by using an external
rule-based mechanism to make the best choices of video driver and video
driver options, and by providing fallbacks to ensure that the XFree86
server will run in some form in nearly all situations.

The TODO list for the 4.5.0 release is:

  1. Testing, testing, and more testing.
  2. Update the documentation, especially the release notes.  If you have
 updates for the documentation, send them here.
  3. Resolve issues with the DRM source.
  4. Did I mention testing? :-)

Enjoy!

David
___
Devel mailing list
Devel@XFree86.Org
http://XFree86.Org/mailman/listinfo/devel


  1   2   3   4   5   >