[Mesa-dev] Pending issues of lollipop-x86

Marek Olšák maraeo at gmail.com
Mon Sep 28 13:25:55 PDT 2015


On Mon, Sep 28, 2015 at 10:19 PM, Chad Versace <chad.versace at intel.com> wrote:
> On Fri 25 Sep 2015, Chih-Wei Huang wrote:
>> CC to mesa-dev for help.
>>
>> 2015-09-25 22:12 GMT+08:00 Chih-Wei Huang <cwhuang at android-x86.org>:
>> > 2015-09-25 16:21 GMT+08:00 Chih-Wei Huang <cwhuang at android-x86.org>:
>> >> Actually I'm testing your mesa 11.0 branch
>> >> to see if it is acceptable.
>> >> The major issue I found is the
>> >> Camera and Youtube crashing in mesa.
>> >
>> > OK, I can almost confirm this is a known issue
>> > I reported to mesa devs before.
>> > It is caused by this commit:
>> >
>> > commit c636284ee8ee95bb3f3ad31aaf26a9512ec5006c
>> > Author: Chad Versace <chad.versace at intel.com>
>> > Date:   Tue May 5 19:05:32 2015 -0700
>> >
>> >     i965/sync: Implement DRI2_Fence extension
>> >
>> > By reverting it the crashing is gone.
>> >
>> > However, I still hope we can find
>> > a correct fix.
>>
>> After some debugging, it crashed in
>> dri2_client_wait_sync() of
>> ...src/egl/drivers/dri2/egl_dri2.c
>> The ctx returned by _eglGetCurrentContext()
>> is NULL.
>>
>> static EGLint
>> dri2_client_wait_sync(_EGLDriver *drv, _EGLDisplay *dpy, _EGLSync *sync,
>>                       EGLint flags, EGLTime timeout)
>> {
>>    _EGLContext *ctx = _eglGetCurrentContext();
>>
>> ==> ctx is NULL
>>
>>    if (dri2_dpy->fence->client_wait_sync(dri2_ctx->dri_context,  <== OOPS!
>>                                          dri2_sync->fence, wait_flags,
>>                                          timeout))
>>
>>
>> Why does _eglGetCurrentContext() return NULL?
>> Any recommended fix?
>
> I don't know. Can provide a crashing test case for non-Android Linux? If
> so, then I'll look into debugging it.

Chad, you would be wasting your time. :) I'd already sent patches that
fix this for libEGL and gallium and Emil sent an initial fix for i965
which might work too.

Marek


More information about the mesa-dev mailing list