[Intel-gfx] [PATCH 0/1] drm/i915: Fix races on fbdev [RESEND FOR CI]
Lukas Wunner
lukas at wunner.de
Mon Feb 15 17:13:27 UTC 2016
Originally submitted inline with <20160205145831.GA14084 at wunner.de>,
hereby resubmitted standalone for CI as requested by Daniel with
<20160215163251.GR11240 at 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)
More information about the Intel-gfx
mailing list