Subject: Re: XFree86 4.5.0 woes
To: Matthias Scheler <tron@zhadum.de>
From: Michael <macallan18@earthlink.net>
List: tech-x11
Date: 03/19/2005 13:15:07
--Signature=_Sat__19_Mar_2005_13_15_08_-0500__TX+qPvu4GqS0hEV
Content-Type: text/plain; charset=US-ASCII
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

Hello,

> >> What does that patch do? And should it be in the official source
> >> tree?
> >  Longer story. There's no (easy) way to access PCI IO space
> >from userland on macppc, mainly because there can be more than one
> >PCI host bridge and each maps its IO space somewhere else. Most XFree
> >drivers can work using only memory-mapped IO but some can't - tdfx is
> >one of these.
> 
> I see. Have you ever submitted a PR (in category port-macppc) about this?
I /think/ I did, but I'm not sure. I certainly raised the topic on tech-x11 and port-macppc.

btw. I've found a funny problem in freetype2. When compiled with optimisations enabled this code in xsrc/xfree/xc/extras/freetype2/base/ftobjs.c:
     if ( service && service->name_index ) 
       result = service->name_index( face, glyph_name );
causes a SIGILL. According to gdb it jumps into the structure pointed at by services, not the function pointer in service->name_index. This happens on both sparc64 and macppc. Workaround: compile without optimisation. A weird side-effect - when I add a printf() right before service->name_index( ) gets called  (and proper {} around it of course ) it doesn't coredump either.
The easiest way to trigger it is to run mkfontscale in xc/fonts/Type1.
So I guess that's a bug in gcc.

have fun
Michael

--Signature=_Sat__19_Mar_2005_13_15_08_-0500__TX+qPvu4GqS0hEV
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (NetBSD)

iQEVAwUBQjxsMMpnzkX8Yg2nAQIlxgf+N/v8YBmfZgLZzFExvF9JtRZJZGTmOkuZ
pZzGyiSBrN3RNqt4j0oVWmlgBLwinpLGOABF5VLUA8owJUagLgIt9DxbrYI8hyMN
oSHD9ACam3pZAV5bz4mpIyf8fY8LM8T2e/bsODRWcZUfSZdt9blLAZsxwqc+9W8k
hWTw82EVuwfl0fRNqoMQL+MAQbs9V6RWjZuMf6s7HUXSJVc6jEa38CUM89+MHhKS
vETbowubVTL9zQNnuw7FQ1Bcz4Ll4d5vrSRhidb9lFN0/xPhhFi6xGRa5qZ+JeZP
icgM7vR2Gv+B9Phm/zZVDRhjqb7Kp2fHFwsPLOTWArhHdl9hxaFqOA==
=qnDg
-----END PGP SIGNATURE-----

--Signature=_Sat__19_Mar_2005_13_15_08_-0500__TX+qPvu4GqS0hEV--