On Fri, Dec 16, 2011 at 7:34 PM, Rob Clark 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->d
On Fri, Dec 16, 2011 at 7:34 PM, Rob Clark 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->d
From: Rob Clark
omap_gem_roll() could be called by fbcon in atomic context or when
struct_mutext is held. Avoid aquiring mutex (deadlock), or calling
tiler_pin() (which itself is not safe for atomic context) in these
cases.
Signed-off-by: Rob Clark
---
drivers/staging/omapdrm/omap_gem.c | 1
From: Rob Clark
omap_gem_roll() could be called by fbcon in atomic context or when
struct_mutext is held. Avoid aquiring mutex (deadlock), or calling
tiler_pin() (which itself is not safe for atomic context) in these
cases.
Signed-off-by: Rob Clark
---
drivers/staging/omapdrm/omap_gem.c | 1