DRI2 Offload Slaves, Output Slaves For September
X.Org Server 1.13 will incorporate the new DDX driver API, dead XAA, and other changes. Keith's plans include closing the merge window on 4 July (America's Independence Day), the non-critical bug window closing on the 4th of August, and then pushing out the 1.13 release on 4 September. This jives with what Keith mentioned back in February at FOSDEM about releasing xorg-server 1.13 to not interfere with Oktoberfest. From Planning the X/Wayland Marriage, X Server 1.13:
After discussing 1.12, Packard brought up the xorg-server 1.13 release. Keith is planning for this next X.Org update to come by early September. The date he has in mind is the 7th of September (2012). In coming up with the date he ensured it wouldn't collide with the Bavarian X.Org Summit that will be later in September or that it wouldn't interfere with Oktoberfest (acknowledging that the only "X.Org press" [myself/Phoronix] will be preoccupied).Perhaps more interesting to Packard's e-mail is what Red Hat's David Airlie said in response.
Yeah I'm sorta torn between wanting to land at least one multi-gpu feature, landing all of them, or landing none :-)For the X.Org Server 1.13 release in September we might -- hopefully -- see DRI2 offload slaves and output slaves be supported, which would be terrific. Though it looks like the GPU hot-switching and Xinerama removal might not make it until 2013.
The platform bus and the randr provider objects are the basis for most of it, however there are still some api changes needed, though they are just rebuild drivers that don't want new features.
The platform bus I've just resent, and I'd hope tomorrow to try and get the provider object stuff cleaned up and resent, after the previous comments on it.
I have 4 stages of features then:
1: output slaves - hotplug usb devices, expand the desktop.
2: DRI2 offload slaves - for rendering on a second GPU
3: GPU switching - requires introducing the impedance layer between protocol and gpu screen for primary screen, so probably needs a lot more review. With the impedance layer and tracking of pixmap/gc/picture objects, it should be possible to switch the intel/nvidia gpus around on the fly
4: xinerama removal - allow multiple master render/output nodes, with xrandr controlling them and their locations, this would pretty much encompass xinerama functionality. (this is definitely a future future material).
I've gotten 1+2 working on top of the current server, and I think for 1.13 it might be realistic to merge them, if I can get them posted/reviewed in the next few weeks, with 3 for 1.14 and 4 for 1.15 depending on how much energy/hatred I have left.
I honestly don't expect any fallout, apart from build fixing, from the API changes I've done so far, there is close to 0 functionality change in any of the paths we use in drivers.
But I don't really want to hold up any other features that are going into 1.13, if others want to push forward and get it out the door sooner.