<br><br><div class="gmail_quote">On Fri, Feb 3, 2012 at 4:01 PM, Matt Garman <span dir="ltr">&lt;<a href="mailto:matthew.garman@gmail.com">matthew.garman@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<p>Hi William,</p>
<p>The only way I know to verify the patch is in place (other than by testing in myth using opengl) is to look at the source. Look at that function I mentioned in the earlier post, and see if it includes the additional null pointer check. Or, I suppose if you are already in contact with the xorg devs, just ask them directly.</p>


<p>I&#39;m afraid I can&#39;t think of any other way to check. Hope that helps!<span class="HOEnZb"><font color="#888888"><br>
Matt<br>
</font></span></p><div class="HOEnZb"><div class="h5">
<div class="gmail_quote">On Feb 3, 2012 6:47 AM, &quot;William Otten&quot; &lt;<a href="mailto:williammotten@gmail.com" target="_blank">williammotten@gmail.com</a>&gt; wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

On 1/29/2012 7:34 PM, Matt Garman wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Sat, Jan 28, 2012 at 01:55:31PM -0600, william otten wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
The patch is quite simple and involves one function in<br>
mesa/drivers/dri/intel/intel_<u></u>screen.c<br>
Another person on this list<br>
reported that the patch solved an identical crash for him.  Before<br>
diving into much debugging, I suggest you apply this patch to the mesa<br>
7.11.2 code, recompile it, and give it a test.<br>
</blockquote>
I may be the &quot;other person&quot; who has been referred to several times<br>
in this thread, as I did exactly that: I patched the intel_screen.c<br>
file and rebuilt mesa, and now have a nicely working OpenGL-based<br>
SNB frontend (which I&#39;m proud to say is also quite small and<br>
low-power :).<br>
<br>
&gt; From my skimming of this thread, it looks like the individual with<br>
the patching issues is running Ubuntu.  I&#39;m running CentOS plus<br>
ATrpms (for MythTV) and elrepo for newer Intel video drivers and<br>
supporting packages (in particular, mesa).<br>
<br>
What I did was simply download the source RPM for mesa from elrepo,<br>
manually hack the intel_screen.c file according to the patch, and<br>
rebuild.  I don&#39;t know how to do this with Ubuntu/debian packages,<br>
but I can&#39;t imagine the process is dramatically different from an<br>
RPM-based distro.<br>
<br>
FWIW, the patch that has been mentioned doesn&#39;t apply cleanly to the<br>
mesa source from elrepo, because it&#39;s a slightly older version:<br>
looks like the mesa-20111103 snapshot.<br>
<br>
But the patch is super simple.  Just look for the function<br>
&quot;intelDRI2Flush()&quot; in the file mentioned above.  It should be near<br>
the top of the file.  Just replace that function definition with<br>
this one:<br>
<br>
static void<br>
intelDRI2Flush(__DRIdrawable *drawable)<br>
{<br>
    GET_CURRENT_CONTEXT(ctx);<br>
    struct intel_context *intel = intel_context(ctx);<br>
<br>
    if (intel != NULL) { /* add this... */<br>
        if (intel-&gt;gen&lt;  4)<br>
            INTEL_FIREVERTICES(intel);<br>
<br>
        intel-&gt;need_throttle = GL_TRUE;<br>
<br>
        if (intel-&gt;batch.used)<br>
            intel_batchbuffer_flush(intel)<u></u>;<br>
    } /* ...and this */<br>
}<br>
<br>
As I commented above, the patch just adds two lines, which just do a<br>
NULL pointer safety check.<br>
<br>
So, generic instructions would be:<br>
<br>
     - get your distro&#39;s newest mesa source package<br>
     - unpack it (e.g. RPMs are really cpio archives)<br>
     - track down the intel_screen.c file and patch (or manually<br>
       edit) it as described above<br>
     - re-package the mesa source package<br>
     - use your distro&#39;s source package build tool to build a binary<br>
       package (e.g. rpmrebuild for RPM-based distros)<br>
<br>
Working with your distro&#39;s source packages should be well-documented<br>
(at least for major distros like Ubuntu and Fedora).<br>
<br>
The other option is to wait: I also reported my success with this on<br>
the elrepo mailing list.  The elrepo mesa maintainer said he didn&#39;t<br>
want to update the package with a patch that wasn&#39;t committed<br>
(according to this thread, it is now, but wasn&#39;t when I made the<br>
comment).  So I would imagine that package maintainers will probably<br>
be open to incorporating this patch into their builds now that it&#39;s<br>
officially committed... I might request it for elrepo if I get<br>
around to it.<br>
<br>
In other words, with this patch officially committed, it will<br>
eventually make its way into different distro&#39;s mesa builds.<br>
<br>
HTH,<br>
Matt<br>
<br>
______________________________<u></u>_________________<br>
mythtv-users mailing list<br>
<a href="mailto:mythtv-users@mythtv.org" target="_blank">mythtv-users@mythtv.org</a><br>
<a href="http://www.mythtv.org/mailman/listinfo/mythtv-users" target="_blank">http://www.mythtv.org/mailman/<u></u>listinfo/mythtv-users</a><br>
</blockquote>
Matt<br>
I appreciate your input on this issue. Not being a programmer, I can&#39;t get my brain wrapped around all that needs to be considered or done to test this patch. With that said, I have setup with xorg-edgers in anticipation that the patch will work it&#39;s way down stream. I contacted one of the dev&#39;s at xorg-edgers and he replied that the patch should be available within a week or two ( that was about a week ago). I have since received a couple of updates from them but I&#39;m not sure if the patch was included. Is there a way to check (other than just trying vaapi with mythtv) to see if the patch is included or has been received by me?<br>


Thanks<br>
William<br>
</blockquote></div>
</div></div></blockquote></div>I&#39;m a fish out of water here. I tried to find the source on the 
xorg-edgers site for over an hour but no luck. The only thing I found 
was this:<br><br><a href="http://bazaar.launchpad.net/%7Evcs-imports/mesa/master/revision/26908" target="_blank">http://bazaar.launchpad.net/~vcs-imports/mesa/master/revision/26908</a><br>
<br>The other url doesn&#39;t work anymore. Also I sent an email to one of the dev&#39;s.