Hi Daniel, Thank you for the patch. On Wednesday 13 January 2016 12:05:14 Daniel Vetter wrote: > Again since the core takes care of this we can remove them. While at > it also remove the postclose hook, it's empty. > > v2: Laurent pointed me at even more code to delete. > > v3: Remove unused flags (Tomi). > > Cc: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > Cc: Tomi Valkeinen <tomi.valkeinen@xxxxxx> > Acked-by: Daniel Stone <daniels@xxxxxxxxxxxxx> > Reviewed-by: Alex Deucher <alexander.deucher@xxxxxxx> > Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxxx> Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > --- > drivers/gpu/drm/omapdrm/omap_crtc.c | 13 +----------- > drivers/gpu/drm/omapdrm/omap_drv.c | 42 ---------------------------------- > drivers/gpu/drm/omapdrm/omap_drv.h | 1 - > 3 files changed, 1 insertion(+), 55 deletions(-) > > diff --git a/drivers/gpu/drm/omapdrm/omap_crtc.c > b/drivers/gpu/drm/omapdrm/omap_crtc.c index 2ed0754ed19e..d38fcbcc43a8 > 100644 > --- a/drivers/gpu/drm/omapdrm/omap_crtc.c > +++ b/drivers/gpu/drm/omapdrm/omap_crtc.c > @@ -269,18 +269,7 @@ static void omap_crtc_complete_page_flip(struct > drm_crtc *crtc) return; > > spin_lock_irqsave(&dev->event_lock, flags); > - > - list_del(&event->base.link); > - > - /* > - * Queue the event for delivery if it's still linked to a file > - * handle, otherwise just destroy it. > - */ > - if (event->base.file_priv) > - drm_crtc_send_vblank_event(crtc, event); > - else > - event->base.destroy(&event->base); > - > + drm_crtc_send_vblank_event(crtc, event); > spin_unlock_irqrestore(&dev->event_lock, flags); > } > > diff --git a/drivers/gpu/drm/omapdrm/omap_drv.c > b/drivers/gpu/drm/omapdrm/omap_drv.c index dfafdb602ad2..33370f42e4d7 > 100644 > --- a/drivers/gpu/drm/omapdrm/omap_drv.c > +++ b/drivers/gpu/drm/omapdrm/omap_drv.c > @@ -142,7 +142,6 @@ static int omap_atomic_commit(struct drm_device *dev, > { > struct omap_drm_private *priv = dev->dev_private; > struct omap_atomic_state_commit *commit; > - unsigned long flags; > unsigned int i; > int ret; > > @@ -175,17 +174,6 @@ static int omap_atomic_commit(struct drm_device *dev, > priv->commit.pending |= commit->crtcs; > spin_unlock(&priv->commit.lock); > > - /* Keep track of all CRTC events to unlink them in preclose(). */ > - spin_lock_irqsave(&dev->event_lock, flags); > - for (i = 0; i < dev->mode_config.num_crtc; ++i) { > - struct drm_crtc_state *cstate = state->crtc_states[i]; > - > - if (cstate && cstate->event) > - list_add_tail(&cstate->event->base.link, > - &priv->commit.events); > - } > - spin_unlock_irqrestore(&dev->event_lock, flags); > - > /* Swap the state, this is the point of no return. */ > drm_atomic_helper_swap_state(dev, state); > > @@ -673,7 +661,6 @@ static int dev_load(struct drm_device *dev, unsigned > long flags) priv->wq = alloc_ordered_workqueue("omapdrm", 0); > init_waitqueue_head(&priv->commit.wait); > spin_lock_init(&priv->commit.lock); > - INIT_LIST_HEAD(&priv->commit.events); > > spin_lock_init(&priv->list_lock); > INIT_LIST_HEAD(&priv->obj_list); > @@ -787,33 +774,6 @@ static void dev_lastclose(struct drm_device *dev) > } > } > > -static void dev_preclose(struct drm_device *dev, struct drm_file *file) > -{ > - struct omap_drm_private *priv = dev->dev_private; > - struct drm_pending_event *event; > - unsigned long flags; > - > - DBG("preclose: dev=%p", dev); > - > - /* > - * Unlink all pending CRTC events to make sure they won't be queued up > - * by a pending asynchronous commit. > - */ > - spin_lock_irqsave(&dev->event_lock, flags); > - list_for_each_entry(event, &priv->commit.events, link) { > - if (event->file_priv == file) { > - file->event_space += event->event->length; > - event->file_priv = NULL; > - } > - } > - spin_unlock_irqrestore(&dev->event_lock, flags); > -} > - > -static void dev_postclose(struct drm_device *dev, struct drm_file *file) > -{ > - DBG("postclose: dev=%p, file=%p", dev, file); > -} > - > static const struct vm_operations_struct omap_gem_vm_ops = { > .fault = omap_gem_fault, > .open = drm_gem_vm_open, > @@ -838,8 +798,6 @@ static struct drm_driver omap_drm_driver = { > .unload = dev_unload, > .open = dev_open, > .lastclose = dev_lastclose, > - .preclose = dev_preclose, > - .postclose = dev_postclose, > .set_busid = drm_platform_set_busid, > .get_vblank_counter = drm_vblank_no_hw_counter, > .enable_vblank = omap_irq_enable_vblank, > diff --git a/drivers/gpu/drm/omapdrm/omap_drv.h > b/drivers/gpu/drm/omapdrm/omap_drv.h index 9e0030731c37..c23cbe6fe9e4 > 100644 > --- a/drivers/gpu/drm/omapdrm/omap_drv.h > +++ b/drivers/gpu/drm/omapdrm/omap_drv.h > @@ -106,7 +106,6 @@ struct omap_drm_private { > > /* atomic commit */ > struct { > - struct list_head events; > wait_queue_head_t wait; > u32 pending; > spinlock_t lock; /* Protects commit.pending */ -- Regards, Laurent Pinchart _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx