On Sun, 2008-11-02 at 23:38 -0800, Keith Packard wrote:
> The initial mode setting from the 2D driver is done before drm_vblank_init
> is called, which means that vblank_disable_allow isn't set. This prevents
> the kernel from disabling vblank interrupts after they are first turned on.

As soon as vblank_init is called, it will reset
vblank_disable_allowed=0.  This also means that if vblank_disable_fn
were to be called it could panic.

robert.

> Signed-off-by: Keith Packard <[EMAIL PROTECTED]>
> ---
>  drivers/gpu/drm/drm_irq.c |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c
> index 212a94f..61c2a46 100644
> --- a/drivers/gpu/drm/drm_irq.c
> +++ b/drivers/gpu/drm/drm_irq.c
> @@ -448,6 +448,8 @@ int drm_modeset_ctl(struct drm_device *dev, void *data,
>       unsigned long irqflags;
>       int crtc, ret = 0;
>  
> +     dev->vblank_disable_allowed = 1;
> +
>       /* If drm_vblank_init() hasn't been called yet, just no-op */
>       if (!dev->num_crtcs)
>               goto out;
> @@ -475,7 +477,6 @@ int drm_modeset_ctl(struct drm_device *dev, void *data,
>       case _DRM_POST_MODESET:
>               if (dev->vblank_inmodeset[crtc]) {
>                       spin_lock_irqsave(&dev->vbl_lock, irqflags);
> -                     dev->vblank_disable_allowed = 1;
>                       dev->vblank_inmodeset[crtc] = 0;
>                       spin_unlock_irqrestore(&dev->vbl_lock, irqflags);
>                       drm_vblank_put(dev, crtc);

Attachment: signature.asc
Description: This is a digitally signed message part

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
--
_______________________________________________
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to