egl engines (wl, x11, drm) - add buffer age events for debugging

this adds evlog events that give buffer age details for event log
debugging to help hunt down issues.
This commit is contained in:
Carsten Haitzler 2016-11-07 11:45:08 +09:00
parent d762f74962
commit ad9cc1676e
3 changed files with 39 additions and 3 deletions

View File

@ -600,7 +600,19 @@ evas_outbuf_buffer_state_get(Outbuf *ob)
else if (age == 3) swap_mode = MODE_TRIPLE;
else if (age == 4) swap_mode = MODE_QUADRUPLE;
else swap_mode = MODE_FULL;
if ((int)age != ob->prev_age) swap_mode = MODE_FULL;
if ((int)age != ob->prev_age)
{
char buf[16];
snprintf(buf, sizeof(buf), "! %i", (int)age);
eina_evlog("!gl_buffer_age", ob, 0.0, buf);
swap_mode = MODE_FULL;
}
else
{
char buf[16];
snprintf(buf, sizeof(buf), "%i", (int)age);
eina_evlog("!gl_buffer_age", ob, 0.0, buf);
}
ob->prev_age = age;
return swap_mode;

View File

@ -1401,7 +1401,19 @@ eng_outbuf_swap_mode(Outbuf *ob)
else if (age == 3) swap_mode = MODE_TRIPLE;
else if (age == 4) swap_mode = MODE_QUADRUPLE;
else swap_mode = MODE_FULL;
if ((int)age != ob->prev_age) swap_mode = MODE_FULL;
if ((int)age != ob->prev_age)
{
char buf[16];
snprintf(buf, sizeof(buf), "! %i", (int)age);
eina_evlog("!gl_buffer_age", ob, 0.0, buf);
swap_mode = MODE_FULL;
}
else
{
char buf[16];
snprintf(buf, sizeof(buf), "%i", (int)age);
eina_evlog("!gl_buffer_age", ob, 0.0, buf);
}
ob->prev_age = age;
return swap_mode;

View File

@ -380,7 +380,19 @@ eng_outbuf_swap_mode_get(Outbuf *ob)
else if (age == 3) swap_mode = MODE_TRIPLE;
else if (age == 4) swap_mode = MODE_QUADRUPLE;
else swap_mode = MODE_FULL;
if ((int)age != ob->prev_age) swap_mode = MODE_FULL;
if ((int)age != ob->prev_age)
{
char buf[16];
snprintf(buf, sizeof(buf), "!%i", (int)age);
eina_evlog("!gl_buffer_age", ob, 0.0, buf);
swap_mode = MODE_FULL;
}
else
{
char buf[16];
snprintf(buf, sizeof(buf), "%i", (int)age);
eina_evlog("!gl_buffer_age", ob, 0.0, buf);
}
ob->prev_age = age;
return swap_mode;