From: Russell King - ARM Linux <linux@armlinux.org.uk>
To: Cihangir Akturk <cakturk@gmail.com>
Cc: daniel@ffwll.ch, linux-kernel@vger.kernel.org,
dri-devel@lists.freedesktop.org, David Airlie <airlied@linux.ie>
Subject: Re: [PATCH v3 03/28] drm/armada: switch to drm_*_get(), drm_*_put() helpers
Date: Thu, 17 Aug 2017 10:13:07 +0100 [thread overview]
Message-ID: <20170817091307.GQ20805@n2100.armlinux.org.uk> (raw)
In-Reply-To: <1502454794-28558-4-git-send-email-cakturk@gmail.com>
On Fri, Aug 11, 2017 at 03:32:49PM +0300, Cihangir Akturk wrote:
> Use drm_*_get() and drm_*_put() helpers instead of drm_*_reference()
> and drm_*_unreference() helpers.
>
> drm_*_reference() and drm_*_unreference() functions are just
> compatibility alias for drm_*_get() and drm_*_put() and should not be
> used by new code. So convert all users of compatibility functions to
> use the new APIs.
This looks trivial - provided drm-misc has no conflicts, I'm happy for
it to be applied there. Thanks.
Acked-by: Russell King <rmk+kernel@armlinux.org.uk>
>
> Generated by: scripts/coccinelle/api/drm-get-put.cocci
>
> Signed-off-by: Cihangir Akturk <cakturk@gmail.com>
> ---
> drivers/gpu/drm/armada/armada_crtc.c | 22 +++++++++++-----------
> drivers/gpu/drm/armada/armada_drv.c | 2 +-
> drivers/gpu/drm/armada/armada_fb.c | 8 ++++----
> drivers/gpu/drm/armada/armada_fbdev.c | 6 +++---
> drivers/gpu/drm/armada/armada_gem.c | 14 +++++++-------
> drivers/gpu/drm/armada/armada_overlay.c | 4 ++--
> 6 files changed, 28 insertions(+), 28 deletions(-)
>
> diff --git a/drivers/gpu/drm/armada/armada_crtc.c b/drivers/gpu/drm/armada/armada_crtc.c
> index 2a4d163..2e065fa 100644
> --- a/drivers/gpu/drm/armada/armada_crtc.c
> +++ b/drivers/gpu/drm/armada/armada_crtc.c
> @@ -298,7 +298,7 @@ static void armada_drm_crtc_finish_fb(struct armada_crtc *dcrtc,
>
> if (force) {
> /* Display is disabled, so just drop the old fb */
> - drm_framebuffer_unreference(fb);
> + drm_framebuffer_put(fb);
> return;
> }
>
> @@ -321,7 +321,7 @@ static void armada_drm_crtc_finish_fb(struct armada_crtc *dcrtc,
> * the best. The worst that will happen is the buffer gets
> * reused before it has finished being displayed.
> */
> - drm_framebuffer_unreference(fb);
> + drm_framebuffer_put(fb);
> }
>
> static void armada_drm_vblank_off(struct armada_crtc *dcrtc)
> @@ -577,7 +577,7 @@ static int armada_drm_crtc_mode_set(struct drm_crtc *crtc,
> unsigned i;
> bool interlaced;
>
> - drm_framebuffer_reference(crtc->primary->fb);
> + drm_framebuffer_get(crtc->primary->fb);
>
> interlaced = !!(adj->flags & DRM_MODE_FLAG_INTERLACE);
>
> @@ -718,7 +718,7 @@ static int armada_drm_crtc_mode_set_base(struct drm_crtc *crtc, int x, int y,
> MAX_SCHEDULE_TIMEOUT);
>
> /* Take a reference to the new fb as we're using it */
> - drm_framebuffer_reference(crtc->primary->fb);
> + drm_framebuffer_get(crtc->primary->fb);
>
> /* Update the base in the CRTC */
> armada_drm_crtc_update_regs(dcrtc, regs);
> @@ -742,7 +742,7 @@ void armada_drm_crtc_plane_disable(struct armada_crtc *dcrtc,
> * primary plane.
> */
> if (plane->fb)
> - drm_framebuffer_unreference(plane->fb);
> + drm_framebuffer_put(plane->fb);
>
> /* Power down the Y/U/V FIFOs */
> sram_para1 = CFG_PDWN16x66 | CFG_PDWN32x66;
> @@ -947,13 +947,13 @@ static int armada_drm_crtc_cursor_set(struct drm_crtc *crtc,
>
> /* Must be a kernel-mapped object */
> if (!obj->addr) {
> - drm_gem_object_unreference_unlocked(&obj->obj);
> + drm_gem_object_put_unlocked(&obj->obj);
> return -EINVAL;
> }
>
> if (obj->obj.size < w * h * 4) {
> DRM_ERROR("buffer is too small\n");
> - drm_gem_object_unreference_unlocked(&obj->obj);
> + drm_gem_object_put_unlocked(&obj->obj);
> return -ENOMEM;
> }
> }
> @@ -961,7 +961,7 @@ static int armada_drm_crtc_cursor_set(struct drm_crtc *crtc,
> if (dcrtc->cursor_obj) {
> dcrtc->cursor_obj->update = NULL;
> dcrtc->cursor_obj->update_data = NULL;
> - drm_gem_object_unreference_unlocked(&dcrtc->cursor_obj->obj);
> + drm_gem_object_put_unlocked(&dcrtc->cursor_obj->obj);
> }
> dcrtc->cursor_obj = obj;
> dcrtc->cursor_w = w;
> @@ -997,7 +997,7 @@ static void armada_drm_crtc_destroy(struct drm_crtc *crtc)
> struct armada_private *priv = crtc->dev->dev_private;
>
> if (dcrtc->cursor_obj)
> - drm_gem_object_unreference_unlocked(&dcrtc->cursor_obj->obj);
> + drm_gem_object_put_unlocked(&dcrtc->cursor_obj->obj);
>
> priv->dcrtc[dcrtc->num] = NULL;
> drm_crtc_cleanup(&dcrtc->crtc);
> @@ -1045,12 +1045,12 @@ static int armada_drm_crtc_page_flip(struct drm_crtc *crtc,
> * Ensure that we hold a reference on the new framebuffer.
> * This has to match the behaviour in mode_set.
> */
> - drm_framebuffer_reference(fb);
> + drm_framebuffer_get(fb);
>
> ret = armada_drm_crtc_queue_frame_work(dcrtc, work);
> if (ret) {
> /* Undo our reference above */
> - drm_framebuffer_unreference(fb);
> + drm_framebuffer_put(fb);
> kfree(work);
> return ret;
> }
> diff --git a/drivers/gpu/drm/armada/armada_drv.c b/drivers/gpu/drm/armada/armada_drv.c
> index 0b3227c..c993bcc 100644
> --- a/drivers/gpu/drm/armada/armada_drv.c
> +++ b/drivers/gpu/drm/armada/armada_drv.c
> @@ -26,7 +26,7 @@ static void armada_drm_unref_work(struct work_struct *work)
> struct drm_framebuffer *fb;
>
> while (kfifo_get(&priv->fb_unref, &fb))
> - drm_framebuffer_unreference(fb);
> + drm_framebuffer_put(fb);
> }
>
> /* Must be called with dev->event_lock held */
> diff --git a/drivers/gpu/drm/armada/armada_fb.c b/drivers/gpu/drm/armada/armada_fb.c
> index 92e6b08..51839c1 100644
> --- a/drivers/gpu/drm/armada/armada_fb.c
> +++ b/drivers/gpu/drm/armada/armada_fb.c
> @@ -18,7 +18,7 @@ static void armada_fb_destroy(struct drm_framebuffer *fb)
> struct armada_framebuffer *dfb = drm_fb_to_armada_fb(fb);
>
> drm_framebuffer_cleanup(&dfb->fb);
> - drm_gem_object_unreference_unlocked(&dfb->obj->obj);
> + drm_gem_object_put_unlocked(&dfb->obj->obj);
> kfree(dfb);
> }
>
> @@ -95,7 +95,7 @@ struct armada_framebuffer *armada_framebuffer_create(struct drm_device *dev,
> * the above call, but the caller will drop their reference
> * to it. Hence we need to take our own reference.
> */
> - drm_gem_object_reference(&obj->obj);
> + drm_gem_object_get(&obj->obj);
>
> return dfb;
> }
> @@ -144,12 +144,12 @@ static struct drm_framebuffer *armada_fb_create(struct drm_device *dev,
> goto err;
> }
>
> - drm_gem_object_unreference_unlocked(&obj->obj);
> + drm_gem_object_put_unlocked(&obj->obj);
>
> return &dfb->fb;
>
> err_unref:
> - drm_gem_object_unreference_unlocked(&obj->obj);
> + drm_gem_object_put_unlocked(&obj->obj);
> err:
> DRM_ERROR("failed to initialize framebuffer: %d\n", ret);
> return ERR_PTR(ret);
> diff --git a/drivers/gpu/drm/armada/armada_fbdev.c b/drivers/gpu/drm/armada/armada_fbdev.c
> index 29c7d04..cf6bad1 100644
> --- a/drivers/gpu/drm/armada/armada_fbdev.c
> +++ b/drivers/gpu/drm/armada/armada_fbdev.c
> @@ -52,13 +52,13 @@ static int armada_fb_create(struct drm_fb_helper *fbh,
>
> ret = armada_gem_linear_back(dev, obj);
> if (ret) {
> - drm_gem_object_unreference_unlocked(&obj->obj);
> + drm_gem_object_put_unlocked(&obj->obj);
> return ret;
> }
>
> ptr = armada_gem_map_object(dev, obj);
> if (!ptr) {
> - drm_gem_object_unreference_unlocked(&obj->obj);
> + drm_gem_object_put_unlocked(&obj->obj);
> return -ENOMEM;
> }
>
> @@ -68,7 +68,7 @@ static int armada_fb_create(struct drm_fb_helper *fbh,
> * A reference is now held by the framebuffer object if
> * successful, otherwise this drops the ref for the error path.
> */
> - drm_gem_object_unreference_unlocked(&obj->obj);
> + drm_gem_object_put_unlocked(&obj->obj);
>
> if (IS_ERR(dfb))
> return PTR_ERR(dfb);
> diff --git a/drivers/gpu/drm/armada/armada_gem.c b/drivers/gpu/drm/armada/armada_gem.c
> index a76ca21..49d40aa 100644
> --- a/drivers/gpu/drm/armada/armada_gem.c
> +++ b/drivers/gpu/drm/armada/armada_gem.c
> @@ -266,7 +266,7 @@ int armada_gem_dumb_create(struct drm_file *file, struct drm_device *dev,
> /* drop reference from allocate - handle holds it now */
> DRM_DEBUG_DRIVER("obj %p size %zu handle %#x\n", dobj, size, handle);
> err:
> - drm_gem_object_unreference_unlocked(&dobj->obj);
> + drm_gem_object_put_unlocked(&dobj->obj);
> return ret;
> }
>
> @@ -295,7 +295,7 @@ int armada_gem_dumb_map_offset(struct drm_file *file, struct drm_device *dev,
> }
>
> err_unref:
> - drm_gem_object_unreference_unlocked(&obj->obj);
> + drm_gem_object_put_unlocked(&obj->obj);
>
> return ret;
> }
> @@ -334,7 +334,7 @@ int armada_gem_create_ioctl(struct drm_device *dev, void *data,
> /* drop reference from allocate - handle holds it now */
> DRM_DEBUG_DRIVER("obj %p size %zu handle %#x\n", dobj, size, handle);
> err:
> - drm_gem_object_unreference_unlocked(&dobj->obj);
> + drm_gem_object_put_unlocked(&dobj->obj);
> return ret;
> }
>
> @@ -351,13 +351,13 @@ int armada_gem_mmap_ioctl(struct drm_device *dev, void *data,
> return -ENOENT;
>
> if (!dobj->obj.filp) {
> - drm_gem_object_unreference_unlocked(&dobj->obj);
> + drm_gem_object_put_unlocked(&dobj->obj);
> return -EINVAL;
> }
>
> addr = vm_mmap(dobj->obj.filp, 0, args->size, PROT_READ | PROT_WRITE,
> MAP_SHARED, args->offset);
> - drm_gem_object_unreference_unlocked(&dobj->obj);
> + drm_gem_object_put_unlocked(&dobj->obj);
> if (IS_ERR_VALUE(addr))
> return addr;
>
> @@ -412,7 +412,7 @@ int armada_gem_pwrite_ioctl(struct drm_device *dev, void *data,
> }
>
> unref:
> - drm_gem_object_unreference_unlocked(&dobj->obj);
> + drm_gem_object_put_unlocked(&dobj->obj);
> return ret;
> }
>
> @@ -561,7 +561,7 @@ armada_gem_prime_import(struct drm_device *dev, struct dma_buf *buf)
> * Importing our own dmabuf(s) increases the
> * refcount on the gem object itself.
> */
> - drm_gem_object_reference(obj);
> + drm_gem_object_get(obj);
> return obj;
> }
> }
> diff --git a/drivers/gpu/drm/armada/armada_overlay.c b/drivers/gpu/drm/armada/armada_overlay.c
> index edc4491..b411b60 100644
> --- a/drivers/gpu/drm/armada/armada_overlay.c
> +++ b/drivers/gpu/drm/armada/armada_overlay.c
> @@ -177,7 +177,7 @@ armada_ovl_plane_update(struct drm_plane *plane, struct drm_crtc *crtc,
> * Take a reference on the new framebuffer - we want to
> * hold on to it while the hardware is displaying it.
> */
> - drm_framebuffer_reference(fb);
> + drm_framebuffer_get(fb);
>
> if (plane->fb)
> armada_ovl_retire_fb(dplane, plane->fb);
> @@ -278,7 +278,7 @@ static int armada_ovl_plane_disable(struct drm_plane *plane,
>
> fb = xchg(&dplane->old_fb, NULL);
> if (fb)
> - drm_framebuffer_unreference(fb);
> + drm_framebuffer_put(fb);
>
> return 0;
> }
> --
> 2.7.4
>
--
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 8.8Mbps down 630kbps up
According to speedtest.net: 8.21Mbps down 510kbps up
next prev parent reply other threads:[~2017-08-17 9:13 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-11 12:32 [PATCH v3 00/28] DRM API Conversions Cihangir Akturk
2017-08-11 12:32 ` [PATCH v3 01/28] drm/amdgpu: switch to drm_*_get(), drm_*_put() helpers Cihangir Akturk
2017-08-11 12:32 ` [PATCH v3 02/28] drm: mali-dp: " Cihangir Akturk
2017-08-11 12:32 ` [PATCH v3 03/28] drm/armada: " Cihangir Akturk
2017-08-17 9:13 ` Russell King - ARM Linux [this message]
2017-08-11 12:32 ` [PATCH v3 04/28] drm/ast: " Cihangir Akturk
2017-08-11 16:02 ` Sean Paul
2017-08-11 12:32 ` [PATCH v3 05/28] drm/bochs: " Cihangir Akturk
2017-08-11 12:32 ` [PATCH v3 06/28] drm/cirrus: " Cihangir Akturk
2017-08-11 16:02 ` Sean Paul
2017-08-11 12:32 ` [PATCH v3 07/28] drm/etnaviv: " Cihangir Akturk
2017-08-11 14:43 ` Lucas Stach
2017-08-11 15:01 ` Cihangir Akturk
2017-08-11 12:32 ` [PATCH v3 08/28] drm/exynos: " Cihangir Akturk
2017-08-11 12:32 ` [PATCH v3 09/28] drm/gma500: " Cihangir Akturk
2017-08-11 12:32 ` [PATCH v3 10/28] drm/hisilicon: " Cihangir Akturk
2017-08-11 16:02 ` Sean Paul
2017-08-11 12:32 ` [PATCH v3 11/28] drm/i915: " Cihangir Akturk
2017-08-11 16:11 ` Daniel Vetter
2017-08-13 13:30 ` [PATCH] " Cihangir Akturk
2017-08-11 12:32 ` [PATCH v3 12/28] drm/imx: " Cihangir Akturk
2017-08-11 13:01 ` Philipp Zabel
2017-08-11 12:32 ` [PATCH v3 13/28] drm/mediatek: " Cihangir Akturk
2017-08-11 13:01 ` Philipp Zabel
2017-08-11 16:04 ` Sean Paul
2017-08-11 12:33 ` [PATCH v3 14/28] drm/mgag200: " Cihangir Akturk
2017-08-11 16:03 ` Sean Paul
[not found] ` <1502454794-28558-1-git-send-email-cakturk-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-08-11 12:33 ` [PATCH v3 15/28] drm/msm: " Cihangir Akturk
2017-08-11 12:33 ` [PATCH v3 16/28] drm/nouveau: " Cihangir Akturk
2017-08-11 12:33 ` [PATCH v3 17/28] drm/omapdrm: " Cihangir Akturk
2017-08-11 12:33 ` [PATCH v3 18/28] drm/qxl: " Cihangir Akturk
2017-08-11 12:33 ` [PATCH v3 19/28] drm/radeon: " Cihangir Akturk
2017-08-11 12:33 ` [PATCH v3 20/28] drm/rockchip: " Cihangir Akturk
2017-08-11 16:03 ` Sean Paul
2017-08-11 12:33 ` [PATCH v3 21/28] drm/tegra: " Cihangir Akturk
[not found] ` <1502454794-28558-22-git-send-email-cakturk-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-08-17 15:33 ` Thierry Reding
2017-08-11 12:33 ` [PATCH v3 22/28] drm/tilcdc: " Cihangir Akturk
2017-08-11 12:33 ` [PATCH v3 23/28] drm/udl: " Cihangir Akturk
2017-08-11 16:03 ` Sean Paul
2017-08-11 12:33 ` [PATCH v3 24/28] drm/vc4: " Cihangir Akturk
2017-08-14 19:47 ` Eric Anholt
2017-08-14 20:06 ` Cihangir Akturk
2017-08-14 21:11 ` Eric Anholt
2017-08-11 12:33 ` [PATCH v3 25/28] drm/vgem: " Cihangir Akturk
2017-08-11 16:03 ` Sean Paul
2017-08-11 12:33 ` [PATCH v3 26/28] drm/virtio: " Cihangir Akturk
2017-08-11 12:33 ` [PATCH v3 27/28] drm/vmwgfx: " Cihangir Akturk
2017-08-11 12:33 ` [PATCH v3 28/28] drm: vboxvideo: " Cihangir Akturk
2017-08-11 13:26 ` Hans de Goede
2017-08-11 16:04 ` Sean Paul
2017-08-11 16:11 ` Hans de Goede
2017-08-11 17:27 ` Sean Paul
2017-08-14 8:58 ` Daniel Vetter
2017-08-14 12:23 ` Hans de Goede
2017-08-11 14:24 ` [PATCH v3 00/28] DRM API Conversions Deucher, Alexander
2017-08-11 15:21 ` Cihangir Akturk
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170817091307.GQ20805@n2100.armlinux.org.uk \
--to=linux@armlinux.org.uk \
--cc=airlied@linux.ie \
--cc=cakturk@gmail.com \
--cc=daniel@ffwll.ch \
--cc=dri-devel@lists.freedesktop.org \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox