Date: Thu, 16 Mar 2017 22:17:46 -0400 From: Henry Hu <henry.hu.sh@gmail.com> To: David Shao <davshao@gmail.com> Cc: "freebsd-x11@freebsd.org" <freebsd-x11@freebsd.org> Subject: Re: I assert xf86-video-intel problems due to 2 bugs SIX characters total Message-ID: <CAEJt7hbdCzT_6-ZfaRZdk04nJFzXMbE99yUH1YneBekiwJ8Udw@mail.gmail.com> In-Reply-To: <CABZaEK7Qx9VgHZrHbYOOjVk3yePoV=VoEGbT7EPCD%2BM3cqnykw@mail.gmail.com> References: <CABZaEK7Qx9VgHZrHbYOOjVk3yePoV=VoEGbT7EPCD%2BM3cqnykw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Mar 16, 2017 at 10:02 PM, David Shao <davshao@gmail.com> wrote: > My testing using pkgsrc merged with FreeBSD ports patches on > FreeBSD 11-release, 11-stable, and 12-current has shown that only > 2 bugs, a total of SIX characters, were preventing proper functioning > of xf86-video-intel, one of those bugs not even in xf86-video-intel but > instead in libdrm. The xf86-video-intel was instantly patched minutes > after I submitted a bug report. I also submitted the libdrm bug report: > > https://bugs.freedesktop.org/show_bug.cgi?id=100077 > > "libdrm atomic_add_unless() may reverse return value meaning" > > --- xf86atomic.h.orig 2015-09-22 04:34:51.000000000 +0000 > +++ xf86atomic.h > @@ -111,7 +111,7 @@ static inline int atomic_add_unless(atom > c = atomic_read(v); > while (c != unless && (old = atomic_cmpxchg(v, c, c + add)) != c) > c = old; > - return c == unless; > + return c != unless; > } > > I am curious what exactly people are successfully running. Are they > even using xf86-video-intel? > I remember that you have sent this before to this list. As people said, there might be a difference between DragonFlyBSD and FreeBSD. I've been using xf86-video-intel for a long time, and I also has hw compositing enabled. It is very stable and there is no glitch. > > I am using libdrm 2.4.75, mesa 17.0.1, xorg-server 1.19.2, and > xf86-video-intel up through the 2017-02-28 patch for the above bug. > For mesa 17.0.1 I am using --enable-glx-tls in full awareness that > FreeBSD does not match what Linux's glibc does. > > For an Intel IvyBridge machine with an i3-3225 CPU, Xorg.0.log has > entries similar to: > > [ 240.791] intel: card at 0:2:0 is claimed by a Device section > [ 240.792] (II) intel(0): Using Kernel Mode Setting driver: i915, > version 1.6.0 20080730 > [ 240.792] (II) intel(0): SNA compiled with assertions enabled > ... > [ 240.827] (WW) Falling back to old probe method for vesa > [ 240.827] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card > support > [ 240.828] (--) intel(0): Integrated Graphics Chipset: Intel(R) HD > Graphics 4000 > ... > [ 240.901] (II) intel(0): SNA initialized with Ivybridge (gen7, gt2) > backend > [ 240.901] (==) intel(0): Backing store enabled > [ 240.901] (==) intel(0): Silken mouse enabled > [ 240.902] (II) intel(0): HW Cursor enabled > [ 240.902] (II) intel(0): RandR 1.2 enabled, ignore the following > RandR disabled message. > [ 240.904] (==) intel(0): DPMS enabled > [ 240.919] (II) intel(0): [DRI2] Setup complete > [ 240.919] (II) intel(0): [DRI2] DRI driver: i965 > [ 240.919] (II) intel(0): [DRI2] VDPAU driver: va_gl > [ 240.919] (II) intel(0): direct rendering: DRI2 enabled > [ 240.919] (II) intel(0): hardware support for Present enabled > [ 240.919] InitOutput - xf86Screens[0]->pScreen = 0x803538400 > [ 240.919] xf86Screens[0]->pScreen->CreateWindow = 0x805a5a230 > [ 240.919] (--) RandR disabled > [ 240.926] XFree86VidModeExtensionInitVidModeAddExtension > [ 241.156] (II) AIGLX: enabled GLX_MESA_copy_sub_buffer > [ 241.156] (II) AIGLX: enabled GLX_ARB_create_context > [ 241.156] (II) AIGLX: enabled GLX_ARB_create_context_profile > [ 241.156] (II) AIGLX: enabled GLX_EXT_create_context_es{,2}_profile > [ 241.156] (II) AIGLX: enabled GLX_INTEL_swap_event > > etc. So SNA with dri2. > > For Firefox 52, I use: > > LD_PRELOAD=/usr/pkg/lib/libGL.so firefox & > > In about:config I set > layers.acceleration.force-enabled true > > If you try and follow this, know how to edit the local prefs.js! > > Then in about:support I obtain: > > Graphics > Features > Compositing OpenGL > Asynchronous Pan/Zoom none > WebGL Renderer Intel Open Source Technology Center -- Mesa DRI > Intel(R) Ivybridge Desktop > WebGL2 Renderer Intel Open Source Technology Center -- Mesa DRI > Intel(R) Ivybridge Desktop > Hardware H264 Decoding No > Audio Backend oss > GPU #1 > Active Yes > Description Intel Open Source Technology Center -- Mesa DRI > Intel(R) Ivybridge Desktop > Vendor ID Intel Open Source Technology Center > Device ID Mesa DRI Intel(R) Ivybridge Desktop > Driver Version 3.0 Mesa 17.0.1 > Diagnostics > AzureCanvasAccelerated 0 > AzureCanvasBackend skia > AzureContentBackend skia > AzureFallbackCanvasBackend none > CairoUseXRender 0 > Decision Log > HW_COMPOSITING > blocked by default: Acceleration blocked by platform > force_enabled by user: Force-enabled by pref > OPENGL_COMPOSITING > force_enabled by user: Force-enabled by pref > > I am then able to go to sites such as > > https://www.chromeexperiments.com/webgl > > to view the webgl demos. Again before trying these demos > know how to edit prefs.js! > > Now for the sake of full disclosure, on the IvyBridge machine > running FreeBSD 12-current, after a while there have been > lockup problems with WebGL Water > > http://madebyevan.com/webgl-water/ > > (Same pkgsrc code on NetBSD current lower tier Radeon card > on another amd cpu machine very smoothly runs webgl-water.) > > To summarize, applications such as glxgears and Firefox with > webgl and hardware acceleration enabled work for me with the > ONE CHARACTER patch to libdrm in atomic_add_unless, using > xf86-video-intel. I'm writing this right now in the same Firefox 52 on > > FreeBSD xxxxxx.xxx 12.0-CURRENT FreeBSD 12.0-CURRENT > #2 r314974+16bf7dd2d06(svn_head): Wed Mar 15 20:52:59 PDT 2017 > xxxxxx@xxxxxx.xxx:/usr/obj/usr/src/sys/GENERIC amd64 > _______________________________________________ > freebsd-x11@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-x11 > To unsubscribe, send any mail to "freebsd-x11-unsubscribe@freebsd.org" > -- Cheers, Henry
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAEJt7hbdCzT_6-ZfaRZdk04nJFzXMbE99yUH1YneBekiwJ8Udw>