Originally submitted inline with <20160205145831.GA14084@xxxxxxxxx>, hereby resubmitted standalone for CI as requested by Daniel with <20160215163251.GR11240@phenom.ffwll.local>. Above-mentioned message contained the following important note: > However AFAICT a corner case remains where we're still vulnerable to races: > async_schedule() runs synchronously "if we're out of memory or if there's > too much work pending already" (see __async_schedule() in kernel/async.c). > In this case no entry is added to the pending list and > async_synchronize_full() might theoretically return before the synchronously > executed function has finished. > > The existing call to async_synchronize_full() in intel_fbdev_fini() > seems to be susceptible to the same race condition, but it's probably > very hard to trigger it. (Unload the module before the fbdev is fully > initialized.) > > To make it bullet proof we could declare a completion in intel_fbdev.c > and wait for that instead. Opinions? Lukas Wunner (1): drm/i915: Fix races on fbdev drivers/gpu/drm/i915/i915_dma.c | 8 +++----- drivers/gpu/drm/i915/intel_fbdev.c | 4 ++++ 2 files changed, 7 insertions(+), 5 deletions(-) -- 1.8.5.2 (Apple Git-48) _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx