On Thu, 16 Feb 2017 08:08:22 -0600 Derek Foreman <[email protected]> said:
> On 15/02/17 07:59 PM, Carsten Haitzler (The Rasterman) wrote: > > On Wed, 15 Feb 2017 08:02:02 -0800 Derek Foreman <[email protected]> > > said: > > > >> derekf pushed a commit to branch master. > >> > >> http://git.enlightenment.org/core/efl.git/commit/?id=ae5d00246667e0a37b123fef4618b670021f5d9e > >> > >> commit ae5d00246667e0a37b123fef4618b670021f5d9e > >> Author: Derek Foreman <[email protected]> > >> Date: Wed Feb 15 09:51:32 2017 -0600 > >> > >> ecore_drm2: ERR once when page flip fails with EBUSY > >> > >> On systems where this happens it'll probably happen a lot, so > >> we don't want to continuously log this, but since it's definitely > >> showing a bug somewhere (efl or kernel) it probably should be an ERR. > > > > hmmm... where i have seen this it doesn't happen THAT much... like it > > sometimes happens in blips like 1 here, 15 seconds later, another, 1 min > > later another, then maybe 2 mins later 3 in a row fast, then nothing for 10 > > sec... it's very blippy. i logged these for a while myself... :) > > Chris hit it somehow and replaced all the ERR with DBG - I think it's an > important enough error to be an ERR at least once, so I figured this was > a reasonable compromise. orly? hmmm... i just saw occasional blips (~every minute or so) so i kind of thought it was ok... but hmmm... interesting he hit is solidly. > >> --- > >> src/lib/ecore_drm2/ecore_drm2_fb.c | 13 ++++++++++--- > >> 1 file changed, 10 insertions(+), 3 deletions(-) > >> > >> diff --git a/src/lib/ecore_drm2/ecore_drm2_fb.c > >> b/src/lib/ecore_drm2/ecore_drm2_fb.c index f838168..fe27508 100644 > >> --- a/src/lib/ecore_drm2/ecore_drm2_fb.c > >> +++ b/src/lib/ecore_drm2/ecore_drm2_fb.c > >> @@ -424,6 +424,7 @@ ecore_drm2_fb_flip(Ecore_Drm2_Fb *fb, Ecore_Drm2_Output > >> *output) > >> do > >> { > >> + static Eina_Bool bugged_about_bug = EINA_FALSE; > >> repeat = EINA_FALSE; > >> ret = sym_drmModePageFlip(fb->fd, output->crtc_id, fb->id, > >> DRM_MODE_PAGE_FLIP_EVENT, > >> @@ -434,12 +435,18 @@ ecore_drm2_fb_flip(Ecore_Drm2_Fb *fb, > >> Ecore_Drm2_Output *output) > >> * until we can flip or we give up (100 tries with a yield > >> * between each try). We can't expect everyone to run the > >> * latest bleeding edge kernel IF a workaround is possible > >> - * in userspace, so do this. */ > >> + * in userspace, so do this. > >> + * We only report this as an ERR once since if it will > >> + * generate a huge amount of spam otherwise. */ > >> if ((ret < 0) && (errno == EBUSY)) > >> { > >> repeat = EINA_TRUE; > >> - if (count == 0) > >> - WRN("Pageflip fail - EBUSY from drmModePageFlip..."); > >> + if (count == 0 && !bugged_about_bug) > >> + { > >> + ERR("Pageflip fail - EBUSY from drmModePageFlip - " > >> + "This is either a kernel bug or an EFL one."); > >> + bugged_about_bug = EINA_TRUE; > >> + } > >> count++; > >> if (count > 500) > >> { > >> > >> -- > >> > >> > > > > > -- ------------- Codito, ergo sum - "I code, therefore I am" -------------- The Rasterman (Carsten Haitzler) [email protected] ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, SlashDot.org! http://sdm.link/slashdot _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
