Wine and XShm support

Austin English austinenglish at
Sun Aug 9 17:58:17 CDT 2009

On Sun, Aug 9, 2009 at 3:51 PM, Roderick
Colenbrander<thunderbird2k at> wrote:
> Hi,
> As of Wine 1.1.27, XShm support was added for the creation of
> DIBSECTIONs in winex11.drv. The use of XShm more closely matches to
> the Windows behavior and can also bring more performance.
> An Nvidia developer noticed this change in the ChangeLog and we both
> wondered why even more XShm code was added in this time because XShm
> has lost its use due to the emergence of EXA-like display drivers.
> Modern drivers disable a large amount of hardware acceleration when
> using XShm because they can't create the pixmaps in video memory since
> the client owns the memory. This could decrease performance quite a
> bit for most applications if they aren't hit by dibsection
> back-and-forth copying bottlenecks. XRender for instance falls back to
> software rendering for non-video memory based pixmaps.
> I would perhaps suggest that we should perhaps drop XShm support (or
> at least add a registry key for it and disable it perhaps on 'modern
> drivers'). What do you guys think?

So, it hurts performance on applications that are running on modern
drivers without using DIB sections, but helps for applications using
DIB sections, or non-modern drivers?

Should probably disable by default and enable optionally with a
registry key. The few that need it then have it available, without
hurting the majority.


More information about the wine-devel mailing list