tricky problem - multiseat, suspend/resume, intel, fglrx

I've got a problem with my setup, which I am not sure if it should be logged as a bug, or not. It's because it's a reasonably unusual setup.
A quick description is:
Multiseat X, setup using 2 xservers started by KDM. One is running on the built in intel graphics card, using the i965 driver. It has a module path setup to /usr/lib64/xorg/modules/extensions, overriding the system default, and I have a profile setup to export the correct LD_LIBRARY_PATH, which is needed by 3D apps, so they don't try and use the 3D libraries that are built for fglrx.
The second is using an ATI card, running on the fglrx driver. Each X server has a keyboard and mouse attached, using udev rules. Sound is setup using a system wide pulse audio, running as the pulse user and started on boot. The entire setup is on a desktop
What works:
Just about everything: 3D works on both heads, mouse and keyboard work as expected, Sound works and is shared between both users. DPMS works, allowing monitors to be powered down
Problem: Suspend and resume
Suspend works, but on resume, the intel head does not resume correctly. What appears to be going on, is that I think maybe the frame buffer from the intel card is not being restored. We get a blank screen, with just a mouse pointer. It changes depending on where it's moved, and the apps all appear to be running. The ATI head resumes fine. I've found that, if I change the resolution of the intel head, and then change it back, it also then works and starts displaying the desktop.
Problem 2: logging out of X on the ATI graphics card:
When I log out of the desktop on the ATI graphics card seat, The desktop on the intel head goes blank.
So.. from the above, this I think is a fairly unusual and complex setup to debug this problem.
Is anyone keen to give me a hand, or be someone to bounce ideas off? Ideally someone with both an intel graphics card (built into the motherboard) and an ATI graphics card, or someone with good knowledge of the Intel graphics driver.
I'd like to get it 100% working, as I want to add multiseat setup using this type of hardware (which many people already have), to the wiki, and make it better supported / more automated.
I've put in a work around of the minute for problem 1, which is a /etc/pm/sleep.d script which changes the resolution of the affected head twice on resume.
I think this might be an upstream driver issue that I am trying to solve.
I am happy to answer other questions related to my setup if someone else is interested in multiseat.
Machine details:
Mageia 3, 64 bit, kernel: 3.8.13-desktop-1.mga3
fglrx 13.6 beta, rebuilt from cauldron.
intel i965 driver.
grub2 kernel boot options: splash quiet nokmsboot
A quick description is:
Multiseat X, setup using 2 xservers started by KDM. One is running on the built in intel graphics card, using the i965 driver. It has a module path setup to /usr/lib64/xorg/modules/extensions, overriding the system default, and I have a profile setup to export the correct LD_LIBRARY_PATH, which is needed by 3D apps, so they don't try and use the 3D libraries that are built for fglrx.
The second is using an ATI card, running on the fglrx driver. Each X server has a keyboard and mouse attached, using udev rules. Sound is setup using a system wide pulse audio, running as the pulse user and started on boot. The entire setup is on a desktop
What works:
Just about everything: 3D works on both heads, mouse and keyboard work as expected, Sound works and is shared between both users. DPMS works, allowing monitors to be powered down
Problem: Suspend and resume
Suspend works, but on resume, the intel head does not resume correctly. What appears to be going on, is that I think maybe the frame buffer from the intel card is not being restored. We get a blank screen, with just a mouse pointer. It changes depending on where it's moved, and the apps all appear to be running. The ATI head resumes fine. I've found that, if I change the resolution of the intel head, and then change it back, it also then works and starts displaying the desktop.
Problem 2: logging out of X on the ATI graphics card:
When I log out of the desktop on the ATI graphics card seat, The desktop on the intel head goes blank.
So.. from the above, this I think is a fairly unusual and complex setup to debug this problem.
Is anyone keen to give me a hand, or be someone to bounce ideas off? Ideally someone with both an intel graphics card (built into the motherboard) and an ATI graphics card, or someone with good knowledge of the Intel graphics driver.
I'd like to get it 100% working, as I want to add multiseat setup using this type of hardware (which many people already have), to the wiki, and make it better supported / more automated.
I've put in a work around of the minute for problem 1, which is a /etc/pm/sleep.d script which changes the resolution of the affected head twice on resume.
I think this might be an upstream driver issue that I am trying to solve.
I am happy to answer other questions related to my setup if someone else is interested in multiseat.
Machine details:
Mageia 3, 64 bit, kernel: 3.8.13-desktop-1.mga3
fglrx 13.6 beta, rebuilt from cauldron.
intel i965 driver.
grub2 kernel boot options: splash quiet nokmsboot