Wednesday June 13, 2007
alanc @ sun.com
Alan Coopersmith’s blog
Random thoughts of a disorganized mind...
(and though it should be obvious, while Sun pays me to think about things, they disclaim any responsibility for these thoughts, nor do I claim what I say matches in any way what Sun thinks)
Xorg 7.2 Solaris status update
It's been a while since I've given an update on our Xorg 7.2 state in Solaris and OpenSolaris, and I was reminded by a new patch release today. For a summary of the new features included, and some bugs in the initial Nevada builds, see the Heads Up: Xorg 7.2 in Nevada build 58 message I sent to the OpenSolaris xwin-discuss list in February.
Besides the original release in Solaris Express: Community Edition and the OpenSolaris sources, Xorg 7.2 is now also available in:
- Solaris 10 x86/x64 with Patch 125720-01 or later
- Solaris 10 7/07 Beta and later
- Solaris Express Developer Edition: 5/07 and later
For those on Solaris 10 with an older patch release, or the Solaris 10 7/07 Beta, patch 125720-08 was released today, which fixes several issues reported by early users, including:
- A number of problems with auto-configuration of screen resolution
- Xephyr's Caps Lock not being unlockable (bug 6539225)
- A memory leak every time an X client connection was closed (6533650)
- Crashes or failures using TrueType fonts in 64-bit Xorg servers (6535518)
- xorgconfig listing the wrong keyboard driver in generated xorg.conf files (6559079)
- Xorg -configure not including the bitstream TrueType font module in generated xorg.conf files (6546692)
Also included in the patch are:
- A new version 2.0.2 of the “nv” open source driver for nVidia cards which adds support for the first set of GeForce 8000 series cards, though you can also get the updated nvidia closed-source/accelerated driver to support them as well. (A slightly older version of the nVidia closed driver is included in Solaris 10 7/07 already.)
- Security fixes for two reported vulnerabilities: X Render Trapezoid divide-by-zero and XC-MISC memory corruption.
- An update to the Radeon driver to check if you've plugged in an external monitor on your laptop (at least on Ferrari 3400's) when you run xrandr, and if so, activate the external display port without having to restart X. (A small step towards the more general and complete solution coming with X Resize-and-Rotate 1.2.)
There's a few more fixes in progress still (the -09 rev of the Solaris 10 patch is in QA now, and there will of course be more revisions in the future), including:
- Fixing glxgears and glxinfo linking so they run (6560568)
- Allowing Xorg to start with an old xorg.conf listing the "Keyboard" driver (capitalized) (6560332 - if you have this problem now, just change the driver name to "kbd" in your xorg.conf)
- Adding the VMWare mouse driver, vmmouse_drv.so (6559114)
- Fixing Xorg -configure in the 64-bit Xorg (6556115)
- Making Xv playback work again in the ATI Radeon driver (6564910)
- Making xorgcfg work again ( 6563653)
but the current state should be fairly usable by most people as it is today.
For those using Solaris Express/Nevada releases, or OpenSolaris sources, you can see which build the above changes went in at the X ChangeLogs page. (Solaris Express Developer Edition 5/07 corresponds to build 64 in that list.)
Posted at 07:43PM Jun 13, 2007 by Alan Coopersmith in X11 |
Removing XInitThreads from Totem
Bastien, you're not alone. If the JDS team complained to even Sun's X11 team about bugs after they applied that Totem patch, we'd tell them they're on their own and we'd never support an application that called X from multiple threads without calling XInitThreads first.
The Solaris Xlib is thread safe (though probably with a few bugs in corner cases still) based on the same X11R6 multi-thread code as everyone else, though we're currently working to reconcile the fixes from our fork with the current X.Org code as part of our ongoing project to un-fork Solaris X11 and bring it back to the X.Org code base. We're also looking at XCB in the future for a cleaner thread-safety model as well.
Update: As noted by trisk in the comments, this seems to have been caused by known Solaris libXi bug 6551484 - the engineer who had removed XInitThreads() from totem tried the test binary produced by the engineer working on the libXi bug and found it solved the hang problem she was seeing.
Posted at 09:40AM Jun 13, 2007 by Alan Coopersmith in X11 | Comments[1]
