spin_unlock_irqrestore(&dev->event_lock, flags);
}
+static void free_flip(struct pending_flip *crtc_flip)
+{
+ if (atomic_dec_and_test(&crtc_flip->refcnt))
+ kfree(crtc_flip);
+}
+
static void crtc_flip_cleanup(struct drm_flip *flip)
{
struct pending_flip *crtc_flip =
psb_fb_gtt_unref(dev, crtc_flip->mem_info, crtc_flip->tgid);
mutex_unlock(&dev->mode_config.mutex);
- kfree(crtc_flip);
+ free_flip(crtc_flip);
}
static void crtc_flip_finish(struct drm_flip *flip)
(void)ioread32(dev_priv->vdc_reg + PSB_PIPESTAT(PSB_PIPE_A));
}
-static void free_flip(struct pending_flip *crtc_flip)
-{
- if (atomic_dec_and_test(&crtc_flip->refcnt))
- kfree(crtc_flip);
-}
-
static void psb_flip_complete_sync_callback(struct pvr_pending_sync *sync,
bool call_from_work)
{