Friday June 22, 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)
OpenSolaris and X: Year 2
I'm a bit late this year - it's now a year and a week since I posted One Year of OpenSolaris and X, and it's been a busy time.
Unfortunately, I can't say that we've released lots more code than in our first year - there's still many client applications and libraries that need to be migrated to the X.Org versions - but we have moved the source base for what we've released from the Imake-built X11R6.9 monolithic source tree to source modules from the X11R7.2 release. With the 7.2 move, we also grew the set of servers delivered from the current X.Org sources from just a 32-bit x86 Xorg by adding 64-bit Xorg servers on both SPARC and x64, as well as the Xephyr nested server and Xvfb virtual frame buffer on both platforms.
Sun's China team integrated DRI support for Intel i845 through i945 graphics, with i965 coming soon. We've also added libraries from X.Org that we hadn't shipped before, including libXcomposite and libXinerama.
Work continues on converting the rest, and may pick up with some community members joining in. The OpenSolaris X community has been discussing a proposal to create a common source repository merging the X efforts of the Solaris Express, Belenix, and marTux distributions. Martin Bochnig has been working for a while on marTux, an OpenSolaris distro for SPARC - and the only one with open source SPARC Xorg drivers he's put a lot of effort into making work well on OpenSolaris. And in April, Moinak Ghosh announced he'd taken our code drops and packaging and filled in the rest of the X11R7.2 sources. By merging these, we hope to keep all distributions better aligned and make it easier for us to work together on the missing pieces.
What else are we working on? Well, like last year, the OpenSolaris suspend-and-resume team is still hard at work making their code as rock-solid as they can, including the graphics support in Xorg. We're looking at the best way to integrate Xvnc into our code base in support of the OpenSolaris Xen work. And of course, we've been playing with the projects now known as “Compiz Fusion”, using the builds from Erwann in the Desktop group, so that maybe by the time I write next year's entry, you will have a Solaris desktop option that looks a bit like this.
Posted at 11:49PM Jun 22, 2007 by Alan Coopersmith in Solaris | Comments[2]
OpenSolaris Second Anniversary
Last year at the first anniversary of the OpenSolaris launch, they held a home page graphics contest to pick a graphic for the home page. Today is the second anniversary, and I didn't see a contest this year, but I have an entry anyway, suggested by conversation yesterday on the #opensolaris channel on freenode...it's hip, modern, Web 2.0, in sync with the stuff all over the Intertubes, fully overblown meme compliant:
(with apologies in advance to pretty much the entire Internet)
Posted at 04:32PM Jun 14, 2007 by Alan Coopersmith in Solaris | Comments[2]
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]
The Irregular X11 DTrace Companion: Issue 2
In response to a Solaris 10 7/07 beta tester question last week, I updated the Xserver provider for DTrace web page to point out that besides the original method of patching the Xorg sources and rebuilding, pre-built binaries are now included directly in Solaris...
Getting an X server with DTrace probes built in
The Xserver dtrace providers are now included in the regular X server binaries (including Xorg, Xsun, Xvfb, Xephyr, Xnest, & Xprt) in recent Solaris releases, including:
- Solaris 10 with these patches:
- 119059-24 or later: Xsun, Xprt, Xvfb on SPARC
- 119060-23 or later: Xsun, Xprt, Xvfb on x86/x64
- 118966-26 or later: Xorg 6.9 on x86/x64
- 125720-01 or later: Xorg 7.2, Xephyr on x86/x64
- Solaris 10 7/07 Beta and later
- Solaris Express Community Edition: Nevada Build 53 and later
- Solaris Express Developer Edition: 2/07 and later
For those who still want to build from source, the provider is integrated into the X.Org git master repository for the Xserver 1.4 release, planned to be released in August 2007 with X11R7.3, and into the OpenSolaris X code base for Nevada builds 53 and later.
Posted at 07:12PM Jun 11, 2007 by Alan Coopersmith in X11 |
Kinda like microblogging meets slow-mo IRC...
I was trying to explain twitter to my wife and the best I could come up with is “kinda like microblogging meets slow-mo IRC,” which didn't make any sense to her. After a bit more trying, “like a web forum with short posts” made more sense to her, but my personal dislike of web forums kept me from thinking of them like that. Fortunately more prolific and more widely read bloggers than I have spent a lot of time describing twitter and it's impact, so you can go read them for a better description.
Twitter is starting to gain popularity at Sun too, both as a new communications method to explore, and as a Solaris-hosted Web 2.0 service. They even have recently been a example of using DTrace to improve the performance of their Ruby-on-Rails platform.
So now you can also find me at http://twitter.com/alanc
. I can't promise anything profound or in-depth in 140 characters, but it should get updated a bit more often than this long-form blog.
Posted at 10:23PM Jun 10, 2007 by Alan Coopersmith in General |


