Re: [PATCH] drm/omap: avoid aquiring mutex in atomic context (v2)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Dec 16, 2011 at 7:34 PM, Rob Clark <rob.clark@xxxxxxxxxx> wrote:
> --- a/drivers/staging/omapdrm/omap_gem.c
> +++ b/drivers/staging/omapdrm/omap_gem.c
> @@ -538,10 +538,22 @@ int omap_gem_roll(struct drm_gem_object *obj, uint32_t roll)
>                return -EINVAL;
>        }
>
> -       mutex_lock(&obj->dev->struct_mutex);
> -
>        omap_obj->roll = roll;
>
> +       if (in_atomic() || mutex_is_locked(&obj->dev->struct_mutex)) {
> +               /* this can get called from fbcon in atomic context.. so
> +                * just ignore it and wait for next time called from
> +                * interruptible context to update the PAT.. the result
> +                * may be that user sees wrap-around instead of scrolling
> +                * momentarily on the screen.  If we wanted to be fancier
> +                * we could perhaps schedule some workqueue work at this
> +                * point.
> +                */

Multi-line comments are supposed to be of the form:
/*
 * Foo.
 */

> +               return 0;
> +       }
> +
> +       mutex_lock(&obj->dev->struct_mutex);
> +
>        /* if we aren't mapped yet, we don't need to do anything */
>        if (omap_obj->block) {
>                struct page **pages;
> --

Cheers.

-- 
Felipe Contreras
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/dri-devel



[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux