We use @fix, not @bug. :) -- Tom.
On 27/08/14 10:27, Carsten Haitzler wrote: > raster pushed a commit to branch efl-1.11. > > http://git.enlightenment.org/core/efl.git/commit/?id=26783f45dd419873f4dc2a9ab3a1e4b421f2c4ca > > commit 26783f45dd419873f4dc2a9ab3a1e4b421f2c4ca > Author: Carsten Haitzler (Rasterman) <[email protected]> > Date: Wed Aug 27 18:26:58 2014 +0900 > > ecore vsync - work around old kernels by blacklisting them > > this is a bug workaround apparently old kernels that seems to get > vsync and timestamps wrong. 3.14 kernels and up only for now > > @bug > --- > src/lib/ecore_x/xlib/ecore_x_vsync.c | 21 +++++++++++++++++++++ > 1 file changed, 21 insertions(+) > > diff --git a/src/lib/ecore_x/xlib/ecore_x_vsync.c > b/src/lib/ecore_x/xlib/ecore_x_vsync.c > index ec41d0d..1924dfc 100644 > --- a/src/lib/ecore_x/xlib/ecore_x_vsync.c > +++ b/src/lib/ecore_x/xlib/ecore_x_vsync.c > @@ -345,6 +345,27 @@ _drm_init(void) > */ > return 0; > } > + // only do this on new kernels = let's say 3.14 and up. 3.16 definitely > + // works > + { > + Eina_Bool ok = EINA_FALSE; > + > + FILE *fp = fopen("/proc/sys/kernel/osrelease", "r"); > + if (fp) > + { > + if (fgets(buf, sizeof(buf), fp)) > + { > + int vmaj = 0, vmin = 0; > + > + if (sscanf(buf, "%i.%i.%*s", &vmaj, &vmin) == 2) > + { > + if ((vmaj >= 3) && (vmin >= 14)) ok = EINA_TRUE; > + } > + } > + fclose(fp); > + } > + if (!ok) return 0; > + } > > snprintf(buf, sizeof(buf), "/dev/dri/card1"); > if (stat(buf, &st) == 0) > ------------------------------------------------------------------------------ Slashdot TV. Video for Nerds. Stuff that matters. http://tv.slashdot.org/ _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
