All of lore.kernel.org
 help / color / mirror / Atom feed
* Fix for potential nouveau-ddx/x-server crash on XOrg 1.12+
@ 2012-10-09  7:06 Mario Kleiner
       [not found] ` <1349766419-2647-1-git-send-email-mario.kleiner-TdbV1Z3I5XE0NhjG498hmQ@public.gmane.org>
  0 siblings, 1 reply; 4+ messages in thread
From: Mario Kleiner @ 2012-10-09  7:06 UTC (permalink / raw)
  To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW
  Cc: ubuntu-x-nLRlyDuq1AZFpShjVBNYrg, bskeggs-H+wXaHxf7aLQT0dZR+AlfA,
	bryce-Z7WLFzj8eWMS+FvcfC7Uqw

Hi all,

the following patch fixes a race-condition in the nouveau
ddx which caused frequent x-server crashes for at least 1
user under some loads when OpenGL triple-buffering is enabled,
which it is by default on XOrg 1.12 and later.

As a side effect, it provides a small optimization for the
common case of bufferswap at next vblank.

The other way to avoid the race + possible crash is
to set Option "SwapLimit" "1" in xorg.conf, but at a
performance loss due to double-buffering instead of
pseudo-triple-buffering.

Tested by me on Ubuntu 12.10 beta + XOrg 1.13 + nouveau-ddx
master, with/without triple-buffering, with/without compiz+unity,
with/without kms pageflipping.

Also successfully tested by Anssi Hannula, the original reporter
of the crash, on his setup.

Please review and apply if appropriate.

thanks,
-mario

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2012-10-22 11:20 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-10-09  7:06 Fix for potential nouveau-ddx/x-server crash on XOrg 1.12+ Mario Kleiner
     [not found] ` <1349766419-2647-1-git-send-email-mario.kleiner-TdbV1Z3I5XE0NhjG498hmQ@public.gmane.org>
2012-10-09  7:06   ` [PATCH] dri2: Fix potential race and crash for swap at next vblank Mario Kleiner
     [not found]     ` <1349766419-2647-2-git-send-email-mario.kleiner-TdbV1Z3I5XE0NhjG498hmQ@public.gmane.org>
2012-10-19 20:04       ` Mario Kleiner
2012-10-22 11:20       ` [Nouveau] " Maarten Lankhorst

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.