On Tue, Nov 10, 2015 at 05:27:55PM +0100, Lukas Wunner wrote: > Hi Ville, > > On Mon, Nov 09, 2015 at 01:00:50PM +0200, Ville Syrjälä wrote: > > On Sun, Nov 08, 2015 at 05:44:37PM +0100, Lukas Wunner wrote: > > > Hi Ville, > > > > > > On Fri, Nov 06, 2015 at 03:08:33PM +0200, ville.syrjala@xxxxxxxxxxxxxxx wrote: > > > > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > > > > > > > > Reading the driver load/unload code leaves one confused as there's > > > > an async_schedule() in the load, but not async_synchronize_full() > > > > in sight. In fact it's hidden inside intel_fbdev.c. So let's move the > > > > async_schedule() into intel_fbdev.c as well so that it's next to the > > > > async_synchronize_full(), which should make the relationship easier > > > > to see. > > > > > > Hm, what do you think about solving it the other way round, i.e. moving > > > the async_synchronize_full() to i915_driver_unload()? Incidentally I was > > > working on this same part of the code and that's how I solved it. This way > > > it's possible to call intel_fbdev_fini() from intel_fbdev_initial_config(). > > > With your solution this would deadlock. > > > > > > Link: https://github.com/l1k/linux/commit/aa12badac846 > > > Message-Id: <aa12badac846f24b49d83768146b62e2ac159eb3.1446987413.git.lukas@xxxxxxxxx> > > > > > > > I think I'd still like to hide it all in intel_fbdev.c. You could just > > split the fbdev_fini() into two parts; one doing the real work, and the > > second one just doing async_synchronize + call the first one. > > Looking at this with a fresh pair of eyeballs I realized I could simply > call async_synchronize_full() conditionally if (!current_is_async()), > thereby differentiating between fbdev_fini() being called from > i915_driver_unload() versus intel_fbdev_initial_config(). > If your patch gets pushed, I think I'll rebase and solve it like that. OK. Series pushed to dinq. Thanks for the reviews. -- Ville Syrjälä Intel OTC _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx