[Intel-gfx] [PATCH 2/3] drm/i915: Do fbdev fini first during unload

Ville Syrjälä ville.syrjala at linux.intel.com
Fri Nov 6 06:16:44 PST 2015


On Fri, Nov 06, 2015 at 03:08:32PM +0200, ville.syrjala at linux.intel.com wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> 
> We set up fbdev last during load, so doing the fbdev cleanup should be
> first.
> 
> We weren't supposed to drop the init power during driver load, but since
                                                           ^^^^

That should have said "unload".

> the fbdev teardown happened after intel_power_domains_fini() that could
> have happened due in one of two ways. First it could have happened
> during the modeset caused by normal fbdev cleanup. But in addition it
> could have happened already via the intel_fbdev_initial_config() since
> that is executed asynhronously, and the async_synchronize_full() was
> done during fbdev cleanup, after intel_power_domains_fini(). All of
> that got eliminated by
> commit 292b990e86abc ("drm/i915: Update power domains on readout.")
> since we now drop the init power synchronously during driver load.
> 
> So there is no real bug wrt. the init power anymore, but still it seems
> better to do the fbdev cleanup first, before we've potentially cleaned
> up something else important.
> 
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
>  drivers/gpu/drm/i915/i915_dma.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c
> index ffcb9c6..c58048f 100644
> --- a/drivers/gpu/drm/i915/i915_dma.c
> +++ b/drivers/gpu/drm/i915/i915_dma.c
> @@ -1132,6 +1132,8 @@ int i915_driver_unload(struct drm_device *dev)
>  	struct drm_i915_private *dev_priv = dev->dev_private;
>  	int ret;
>  
> +	intel_fbdev_fini(dev);
> +
>  	i915_audio_component_cleanup(dev_priv);
>  
>  	ret = i915_gem_suspend(dev);
> @@ -1154,8 +1156,6 @@ int i915_driver_unload(struct drm_device *dev)
>  
>  	acpi_video_unregister();
>  
> -	intel_fbdev_fini(dev);
> -
>  	drm_vblank_cleanup(dev);
>  
>  	intel_modeset_cleanup(dev);
> -- 
> 2.4.10

-- 
Ville Syrjälä
Intel OTC


More information about the Intel-gfx mailing list