public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
* [PATCH 00/29] DRM API conversions
@ 2017-08-03 11:58 Cihangir Akturk
  2017-08-03 11:58 ` [PATCH 12/29] drm/i915: switch to drm_*{get,put} helpers Cihangir Akturk
  0 siblings, 1 reply; 8+ messages in thread
From: Cihangir Akturk @ 2017-08-03 11:58 UTC (permalink / raw)
  Cc: Xinliang Liu, Benjamin Herrenschmidt,
	dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW, Sumit Semwal,
	Alex Xie, Chunming Zhou, linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA,
	Ben Skeggs, Andrey Grodzovsky, Masahiro Yamada,
	etnaviv-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW, Sean Paul, Dave Airlie,
	Wei Yongjun, Nicolai Hähnle, Greg Kroah-Hartman,
	Michel Dänzer, linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	Alex Deucher, Ken Wang, Andrew Morton,
	freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW

This patch set replaces the occurrences of drm_*_reference() and
drm_*_unreference() with the new drm_*_get() and drm_*_put() functions.
All patches in the series do the same thing, converting to the new APIs.
I created patches per DRM driver as suggested by Daniel Vetter.

Background:

In the kernel, reference counting APIs use *_get(), *_put() style naming
to reference-count the objects. But DRM subsystem uses a different
naming for them such as *_reference(), *_unreference() which is
inconsistent with the other reference counting APIs in the kernel. To
solve this consistency issue, Thierry Reding introduced a couple of
functions and compatibility aliases in the following commits for them.

commit 020a218f95bd3ceff7dd1022ff7ebc0497bc7bf9
Author: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Date:   Tue Feb 28 15:46:38 2017 +0100

    drm: Introduce drm_mode_object_{get,put}()

commit ad09360750afa18a0a0ce0253d6ea6033abc22e7
Author: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Date:   Tue Feb 28 15:46:39 2017 +0100

    drm: Introduce drm_connector_{get,put}()

commit a4a69da06bc11a937a6e417938b1bb698ee1fa46
Author: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Date:   Tue Feb 28 15:46:40 2017 +0100

    drm: Introduce drm_framebuffer_{get,put}()

commit e6b62714e87c8811d5564b6a0738dcde63a51774
Author: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Date:   Tue Feb 28 15:46:41 2017 +0100

    drm: Introduce drm_gem_object_{get,put}()

commit 6472e5090be7c78749a3c279b4faae87ab835c40
Author: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
Date:   Tue Feb 28 15:46:42 2017 +0100

    drm: Introduce drm_property_blob_{get,put}()


This patch set was generated using the following shell script:

#!/bin/sh

path=$1

do_replace() {
    local pattern=$1
    local replacement=$2

    git grep -lw "${pattern}" -- "${path}/*.[hc]" |\
        xargs -r sed -i "s/\b$pattern\b/$replacement/g"
}

do_replace drm_mode_object_reference drm_mode_object_get
do_replace drm_mode_object_unreference drm_mode_object_put
do_replace drm_connector_reference drm_connector_get
do_replace drm_connector_unreference drm_connector_put
do_replace drm_framebuffer_reference drm_framebuffer_get
do_replace drm_framebuffer_unreference drm_framebuffer_put
do_replace drm_gem_object_reference drm_gem_object_get
do_replace drm_gem_object_unreference drm_gem_object_put
do_replace __drm_gem_object_unreference __drm_gem_object_put
do_replace drm_gem_object_unreference_unlocked drm_gem_object_put_unlocked
do_replace drm_property_reference_blob drm_property_blob_get
do_replace drm_property_unreference_blob drm_property_blob_put

Cihangir Akturk (29):
  drm/amdgpu: switch to drm_*{get,put} helpers
  drm: mali-dp: switch to drm_*{get,put} helpers
  drm/armada: switch to drm_*{get,put} helpers
  drm/ast: switch to drm_*{get,put} helpers
  drm/atmel-hlcdc: switch to drm_*{get,put} helpers
  drm/bochs: switch to drm_*{get,put} helpers
  drm/cirrus: switch to drm_*{get,put} helpers
  drm/etnaviv: switch to drm_*{get,put} helpers
  drm/exynos: switch to drm_*{get,put} helpers
  drm/gma500: switch to drm_*{get,put} helpers
  drm/hisilicon: switch to drm_*{get,put} helpers
  drm/i915: switch to drm_*{get,put} helpers
  drm/imx: switch to drm_*{get,put} helpers
  drm/mediatek: switch to drm_*{get,put} helpers
  drm/mgag200: switch to drm_*{get,put} helpers
  drm/msm: switch to drm_*{get,put} helpers
  drm/nouveau: switch to drm_*{get,put} helpers
  drm/omap: switch to drm_*{get,put} helpers
  drm/qxl: switch to drm_*{get,put} helpers
  drm/radeon: switch to drm_*{get,put} helpers
  drm/rockchip: switch to drm_*{get,put} helpers
  drm/tegra: switch to drm_*{get,put} helpers
  drm/tilcdc: switch to drm_*{get,put} helpers
  drm/udl: switch to drm_*{get,put} helpers
  drm/vc4: switch to drm_*{get,put} helpers
  drm/vgem: switch to drm_*{get,put} helpers
  drm/virtio: switch to drm_*{get,put} helpers
  drm/vmwgfx: switch to drm_*{get,put} helpers
  staging: vboxvideo: switch to drm_*{get,put} helpers

 drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c       |  2 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c            |  2 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_display.c       |  6 ++---
 drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c            |  4 +--
 drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c           | 22 ++++++++---------
 drivers/gpu/drm/amd/amdgpu/dce_v10_0.c            |  6 ++---
 drivers/gpu/drm/amd/amdgpu/dce_v11_0.c            |  6 ++---
 drivers/gpu/drm/amd/amdgpu/dce_v6_0.c             |  6 ++---
 drivers/gpu/drm/amd/amdgpu/dce_v8_0.c             |  6 ++---
 drivers/gpu/drm/arm/malidp_planes.c               |  2 +-
 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 +--
 drivers/gpu/drm/ast/ast_fb.c                      |  2 +-
 drivers/gpu/drm/ast/ast_main.c                    | 10 ++++----
 drivers/gpu/drm/ast/ast_mode.c                    |  6 ++---
 drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c   |  8 +++---
 drivers/gpu/drm/bochs/bochs_fbdev.c               |  2 +-
 drivers/gpu/drm/bochs/bochs_mm.c                  | 10 ++++----
 drivers/gpu/drm/cirrus/cirrus_fbdev.c             |  2 +-
 drivers/gpu/drm/cirrus/cirrus_main.c              | 10 ++++----
 drivers/gpu/drm/etnaviv/etnaviv_drv.c             |  8 +++---
 drivers/gpu/drm/etnaviv/etnaviv_gem.c             | 20 +++++++--------
 drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c       |  2 +-
 drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c      |  4 +--
 drivers/gpu/drm/exynos/exynos_drm_fb.c            |  4 +--
 drivers/gpu/drm/exynos/exynos_drm_gem.c           | 12 ++++-----
 drivers/gpu/drm/exynos/exynos_drm_plane.c         |  2 +-
 drivers/gpu/drm/gma500/framebuffer.c              |  4 +--
 drivers/gpu/drm/gma500/gem.c                      |  4 +--
 drivers/gpu/drm/gma500/gma_display.c              |  6 ++---
 drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_fbdev.c |  4 +--
 drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c       |  8 +++---
 drivers/gpu/drm/i915/i915_gem_object.h            | 10 ++++----
 drivers/gpu/drm/i915/intel_display.c              | 24 +++++++++---------
 drivers/gpu/drm/i915/intel_dp_mst.c               |  2 +-
 drivers/gpu/drm/i915/intel_fbdev.c                |  4 +--
 drivers/gpu/drm/imx/ipuv3-crtc.c                  |  2 +-
 drivers/gpu/drm/mediatek/mtk_drm_fb.c             |  4 +--
 drivers/gpu/drm/mediatek/mtk_drm_gem.c            |  4 +--
 drivers/gpu/drm/mgag200/mgag200_cursor.c          |  2 +-
 drivers/gpu/drm/mgag200/mgag200_fb.c              |  4 +--
 drivers/gpu/drm/mgag200/mgag200_main.c            | 10 ++++----
 drivers/gpu/drm/msm/adreno/a5xx_gpu.c             | 10 ++++----
 drivers/gpu/drm/msm/adreno/a5xx_power.c           |  2 +-
 drivers/gpu/drm/msm/adreno/adreno_gpu.c           |  2 +-
 drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c          |  6 ++---
 drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c           |  2 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c          |  2 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_plane.c         |  4 +--
 drivers/gpu/drm/msm/msm_drv.c                     |  8 +++---
 drivers/gpu/drm/msm/msm_fb.c                      |  4 +--
 drivers/gpu/drm/msm/msm_fbdev.c                   |  2 +-
 drivers/gpu/drm/msm/msm_gem.c                     |  8 +++---
 drivers/gpu/drm/msm/msm_gem_submit.c              |  4 +--
 drivers/gpu/drm/msm/msm_gpu.c                     |  4 +--
 drivers/gpu/drm/msm/msm_ringbuffer.c              |  2 +-
 drivers/gpu/drm/nouveau/dispnv04/crtc.c           |  2 +-
 drivers/gpu/drm/nouveau/nouveau_abi16.c           |  2 +-
 drivers/gpu/drm/nouveau/nouveau_display.c         |  8 +++---
 drivers/gpu/drm/nouveau/nouveau_fbcon.c           |  2 +-
 drivers/gpu/drm/nouveau/nouveau_gem.c             | 14 +++++------
 drivers/gpu/drm/nouveau/nv50_display.c            |  2 +-
 drivers/gpu/drm/omapdrm/omap_drv.c                |  2 +-
 drivers/gpu/drm/omapdrm/omap_fb.c                 |  4 +--
 drivers/gpu/drm/omapdrm/omap_fbdev.c              |  2 +-
 drivers/gpu/drm/omapdrm/omap_gem.c                |  4 +--
 drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c         |  2 +-
 drivers/gpu/drm/qxl/qxl_display.c                 |  4 +--
 drivers/gpu/drm/qxl/qxl_dumb.c                    |  2 +-
 drivers/gpu/drm/qxl/qxl_fb.c                      |  6 ++---
 drivers/gpu/drm/qxl/qxl_gem.c                     |  2 +-
 drivers/gpu/drm/qxl/qxl_ioctl.c                   |  4 +--
 drivers/gpu/drm/qxl/qxl_object.c                  |  6 ++---
 drivers/gpu/drm/radeon/radeon_cs.c                |  2 +-
 drivers/gpu/drm/radeon/radeon_cursor.c            |  6 ++---
 drivers/gpu/drm/radeon/radeon_display.c           | 12 ++++-----
 drivers/gpu/drm/radeon/radeon_fb.c                |  4 +--
 drivers/gpu/drm/radeon/radeon_gem.c               | 30 +++++++++++------------
 drivers/gpu/drm/radeon/radeon_object.c            |  2 +-
 drivers/gpu/drm/rockchip/rockchip_drm_fb.c        |  6 ++---
 drivers/gpu/drm/rockchip/rockchip_drm_fbdev.c     |  2 +-
 drivers/gpu/drm/rockchip/rockchip_drm_gem.c       |  4 +--
 drivers/gpu/drm/rockchip/rockchip_drm_vop.c       |  4 +--
 drivers/gpu/drm/tegra/drm.c                       | 12 ++++-----
 drivers/gpu/drm/tegra/fb.c                        |  8 +++---
 drivers/gpu/drm/tegra/gem.c                       | 10 ++++----
 drivers/gpu/drm/tilcdc/tilcdc_crtc.c              |  6 ++---
 drivers/gpu/drm/udl/udl_fb.c                      |  6 ++---
 drivers/gpu/drm/udl/udl_gem.c                     |  4 +--
 drivers/gpu/drm/vc4/vc4_bo.c                      | 12 ++++-----
 drivers/gpu/drm/vc4/vc4_crtc.c                    |  6 ++---
 drivers/gpu/drm/vc4/vc4_gem.c                     | 14 +++++------
 drivers/gpu/drm/vc4/vc4_kms.c                     |  2 +-
 drivers/gpu/drm/vgem/vgem_drv.c                   |  4 +--
 drivers/gpu/drm/vgem/vgem_fence.c                 |  2 +-
 drivers/gpu/drm/virtio/virtgpu_display.c          |  4 +--
 drivers/gpu/drm/virtio/virtgpu_gem.c              |  4 +--
 drivers/gpu/drm/virtio/virtgpu_ioctl.c            | 14 +++++------
 drivers/gpu/drm/vmwgfx/vmwgfx_fb.c                |  2 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c             |  4 +--
 drivers/staging/vboxvideo/vbox_fb.c               |  2 +-
 drivers/staging/vboxvideo/vbox_main.c             |  8 +++---
 drivers/staging/vboxvideo/vbox_mode.c             |  2 +-
 107 files changed, 319 insertions(+), 319 deletions(-)

-- 
2.7.4

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 12/29] drm/i915: switch to drm_*{get,put} helpers
  2017-08-03 11:58 [PATCH 00/29] DRM API conversions Cihangir Akturk
@ 2017-08-03 11:58 ` Cihangir Akturk
  2017-08-03 12:26   ` Jani Nikula
  0 siblings, 1 reply; 8+ messages in thread
From: Cihangir Akturk @ 2017-08-03 11:58 UTC (permalink / raw)
  Cc: Cihangir Akturk, Daniel Vetter, Jani Nikula, David Airlie,
	intel-gfx, dri-devel, linux-kernel

drm_*_reference() and drm_*_unreference() functions are just
compatibility alias for drm_*_get() and drm_*_put() adn should not be
used by new code. So convert all users of compatibility functions to use
the new APIs.

Signed-off-by: Cihangir Akturk <cakturk@gmail.com>
---
 drivers/gpu/drm/i915/i915_gem_object.h | 10 +++++-----
 drivers/gpu/drm/i915/intel_display.c   | 24 ++++++++++++------------
 drivers/gpu/drm/i915/intel_dp_mst.c    |  2 +-
 drivers/gpu/drm/i915/intel_fbdev.c     |  4 ++--
 4 files changed, 20 insertions(+), 20 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gem_object.h b/drivers/gpu/drm/i915/i915_gem_object.h
index 5b19a49..8f6c915 100644
--- a/drivers/gpu/drm/i915/i915_gem_object.h
+++ b/drivers/gpu/drm/i915/i915_gem_object.h
@@ -257,25 +257,25 @@ __attribute__((nonnull))
 static inline struct drm_i915_gem_object *
 i915_gem_object_get(struct drm_i915_gem_object *obj)
 {
-	drm_gem_object_reference(&obj->base);
+	drm_gem_object_get(&obj->base);
 	return obj;
 }
 
 __deprecated
-extern void drm_gem_object_reference(struct drm_gem_object *);
+extern void drm_gem_object_get(struct drm_gem_object *);
 
 __attribute__((nonnull))
 static inline void
 i915_gem_object_put(struct drm_i915_gem_object *obj)
 {
-	__drm_gem_object_unreference(&obj->base);
+	__drm_gem_object_put(&obj->base);
 }
 
 __deprecated
-extern void drm_gem_object_unreference(struct drm_gem_object *);
+extern void drm_gem_object_put(struct drm_gem_object *);
 
 __deprecated
-extern void drm_gem_object_unreference_unlocked(struct drm_gem_object *);
+extern void drm_gem_object_put_unlocked(struct drm_gem_object *);
 
 static inline void i915_gem_object_lock(struct drm_i915_gem_object *obj)
 {
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index dec9e58..b4d03cf 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -2672,10 +2672,10 @@ update_state_fb(struct drm_plane *plane)
 		return;
 
 	if (plane->state->fb)
-		drm_framebuffer_unreference(plane->state->fb);
+		drm_framebuffer_put(plane->state->fb);
 	plane->state->fb = plane->fb;
 	if (plane->state->fb)
-		drm_framebuffer_reference(plane->state->fb);
+		drm_framebuffer_get(plane->state->fb);
 }
 
 static void
@@ -2746,7 +2746,7 @@ intel_find_initial_plane_obj(struct intel_crtc *intel_crtc,
 
 		if (intel_plane_ggtt_offset(state) == plane_config->base) {
 			fb = c->primary->fb;
-			drm_framebuffer_reference(fb);
+			drm_framebuffer_get(fb);
 			goto valid_fb;
 		}
 	}
@@ -2777,7 +2777,7 @@ intel_find_initial_plane_obj(struct intel_crtc *intel_crtc,
 			  intel_crtc->pipe, PTR_ERR(intel_state->vma));
 
 		intel_state->vma = NULL;
-		drm_framebuffer_unreference(fb);
+		drm_framebuffer_put(fb);
 		return;
 	}
 
@@ -2798,7 +2798,7 @@ intel_find_initial_plane_obj(struct intel_crtc *intel_crtc,
 	if (i915_gem_object_is_tiled(obj))
 		dev_priv->preserve_bios_swizzle = true;
 
-	drm_framebuffer_reference(fb);
+	drm_framebuffer_get(fb);
 	primary->fb = primary->state->fb = fb;
 	primary->crtc = primary->state->crtc = &intel_crtc->base;
 
@@ -9668,7 +9668,7 @@ mode_fits_in_fbdev(struct drm_device *dev,
 	if (obj->base.size < mode->vdisplay * fb->pitches[0])
 		return NULL;
 
-	drm_framebuffer_reference(fb);
+	drm_framebuffer_get(fb);
 	return fb;
 #else
 	return NULL;
@@ -9849,7 +9849,7 @@ int intel_get_load_detect_pipe(struct drm_connector *connector,
 	if (ret)
 		goto fail;
 
-	drm_framebuffer_unreference(fb);
+	drm_framebuffer_put(fb);
 
 	ret = drm_atomic_set_mode_for_crtc(&crtc_state->base, mode);
 	if (ret)
@@ -10159,7 +10159,7 @@ static void intel_unpin_work_fn(struct work_struct *__work)
 	intel_frontbuffer_flip_complete(to_i915(dev),
 					to_intel_plane(primary)->frontbuffer_bit);
 	intel_fbc_post_update(crtc);
-	drm_framebuffer_unreference(work->old_fb);
+	drm_framebuffer_put(work->old_fb);
 
 	BUG_ON(atomic_read(&crtc->unpin_work_count) == 0);
 	atomic_dec(&crtc->unpin_work_count);
@@ -10799,7 +10799,7 @@ static int intel_crtc_page_flip(struct drm_crtc *crtc,
 		flush_workqueue(dev_priv->wq);
 
 	/* Reference the objects for the scheduled work. */
-	drm_framebuffer_reference(work->old_fb);
+	drm_framebuffer_get(work->old_fb);
 
 	crtc->primary->fb = fb;
 	update_state_fb(crtc->primary);
@@ -10913,7 +10913,7 @@ static int intel_crtc_page_flip(struct drm_crtc *crtc,
 	update_state_fb(crtc->primary);
 
 	i915_gem_object_put(obj);
-	drm_framebuffer_unreference(work->old_fb);
+	drm_framebuffer_put(work->old_fb);
 
 	spin_lock_irq(&dev->event_lock);
 	intel_crtc->flip_work = NULL;
@@ -11237,7 +11237,7 @@ static void intel_modeset_update_connector_atomic_state(struct drm_device *dev)
 	drm_connector_list_iter_begin(dev, &conn_iter);
 	for_each_intel_connector_iter(connector, &conn_iter) {
 		if (connector->base.state->crtc)
-			drm_connector_unreference(&connector->base);
+			drm_connector_put(&connector->base);
 
 		if (connector->base.encoder) {
 			connector->base.state->best_encoder =
@@ -11245,7 +11245,7 @@ static void intel_modeset_update_connector_atomic_state(struct drm_device *dev)
 			connector->base.state->crtc =
 				connector->base.encoder->crtc;
 
-			drm_connector_reference(&connector->base);
+			drm_connector_get(&connector->base);
 		} else {
 			connector->base.state->best_encoder = NULL;
 			connector->base.state->crtc = NULL;
diff --git a/drivers/gpu/drm/i915/intel_dp_mst.c b/drivers/gpu/drm/i915/intel_dp_mst.c
index 2cf046b..b942578 100644
--- a/drivers/gpu/drm/i915/intel_dp_mst.c
+++ b/drivers/gpu/drm/i915/intel_dp_mst.c
@@ -524,7 +524,7 @@ static void intel_dp_destroy_mst_connector(struct drm_dp_mst_topology_mgr *mgr,
 	intel_connector->mst_port = NULL;
 	drm_modeset_unlock_all(dev);
 
-	drm_connector_unreference(&intel_connector->base);
+	drm_connector_put(&intel_connector->base);
 	DRM_DEBUG_KMS("\n");
 }
 
diff --git a/drivers/gpu/drm/i915/intel_fbdev.c b/drivers/gpu/drm/i915/intel_fbdev.c
index 0c4cde6..13fbe80 100644
--- a/drivers/gpu/drm/i915/intel_fbdev.c
+++ b/drivers/gpu/drm/i915/intel_fbdev.c
@@ -189,7 +189,7 @@ static int intelfb_create(struct drm_fb_helper *helper,
 			      " releasing it\n",
 			      intel_fb->base.width, intel_fb->base.height,
 			      sizes->fb_width, sizes->fb_height);
-		drm_framebuffer_unreference(&intel_fb->base);
+		drm_framebuffer_put(&intel_fb->base);
 		intel_fb = ifbdev->fb = NULL;
 	}
 	if (!intel_fb || WARN_ON(!intel_fb->obj)) {
@@ -650,7 +650,7 @@ static bool intel_fbdev_init_bios(struct drm_device *dev,
 	ifbdev->preferred_bpp = fb->base.format->cpp[0] * 8;
 	ifbdev->fb = fb;
 
-	drm_framebuffer_reference(&ifbdev->fb->base);
+	drm_framebuffer_get(&ifbdev->fb->base);
 
 	/* Final pass to check if any active pipes don't have fbs */
 	for_each_crtc(dev, crtc) {
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH 12/29] drm/i915: switch to drm_*{get,put} helpers
  2017-08-03 11:58 ` [PATCH 12/29] drm/i915: switch to drm_*{get,put} helpers Cihangir Akturk
@ 2017-08-03 12:26   ` Jani Nikula
  2017-08-03 12:49     ` Daniel Vetter
  2017-08-03 15:36     ` Cihangir Akturk
  0 siblings, 2 replies; 8+ messages in thread
From: Jani Nikula @ 2017-08-03 12:26 UTC (permalink / raw)
  Cc: intel-gfx, linux-kernel, dri-devel, Cihangir Akturk,
	Daniel Vetter

On Thu, 03 Aug 2017, Cihangir Akturk <cakturk@gmail.com> wrote:
> drm_*_reference() and drm_*_unreference() functions are just
> compatibility alias for drm_*_get() and drm_*_put() adn should not be
> used by new code. So convert all users of compatibility functions to use
> the new APIs.

Please include the cocci script in the commit message. If you didn't use
cocci, you should check it out! :)

BR,
Jani.

>
> Signed-off-by: Cihangir Akturk <cakturk@gmail.com>
> ---
>  drivers/gpu/drm/i915/i915_gem_object.h | 10 +++++-----
>  drivers/gpu/drm/i915/intel_display.c   | 24 ++++++++++++------------
>  drivers/gpu/drm/i915/intel_dp_mst.c    |  2 +-
>  drivers/gpu/drm/i915/intel_fbdev.c     |  4 ++--
>  4 files changed, 20 insertions(+), 20 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_gem_object.h b/drivers/gpu/drm/i915/i915_gem_object.h
> index 5b19a49..8f6c915 100644
> --- a/drivers/gpu/drm/i915/i915_gem_object.h
> +++ b/drivers/gpu/drm/i915/i915_gem_object.h
> @@ -257,25 +257,25 @@ __attribute__((nonnull))
>  static inline struct drm_i915_gem_object *
>  i915_gem_object_get(struct drm_i915_gem_object *obj)
>  {
> -	drm_gem_object_reference(&obj->base);
> +	drm_gem_object_get(&obj->base);
>  	return obj;
>  }
>  
>  __deprecated
> -extern void drm_gem_object_reference(struct drm_gem_object *);
> +extern void drm_gem_object_get(struct drm_gem_object *);
>  
>  __attribute__((nonnull))
>  static inline void
>  i915_gem_object_put(struct drm_i915_gem_object *obj)
>  {
> -	__drm_gem_object_unreference(&obj->base);
> +	__drm_gem_object_put(&obj->base);
>  }
>  
>  __deprecated
> -extern void drm_gem_object_unreference(struct drm_gem_object *);
> +extern void drm_gem_object_put(struct drm_gem_object *);
>  
>  __deprecated
> -extern void drm_gem_object_unreference_unlocked(struct drm_gem_object *);
> +extern void drm_gem_object_put_unlocked(struct drm_gem_object *);
>  
>  static inline void i915_gem_object_lock(struct drm_i915_gem_object *obj)
>  {
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index dec9e58..b4d03cf 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -2672,10 +2672,10 @@ update_state_fb(struct drm_plane *plane)
>  		return;
>  
>  	if (plane->state->fb)
> -		drm_framebuffer_unreference(plane->state->fb);
> +		drm_framebuffer_put(plane->state->fb);
>  	plane->state->fb = plane->fb;
>  	if (plane->state->fb)
> -		drm_framebuffer_reference(plane->state->fb);
> +		drm_framebuffer_get(plane->state->fb);
>  }
>  
>  static void
> @@ -2746,7 +2746,7 @@ intel_find_initial_plane_obj(struct intel_crtc *intel_crtc,
>  
>  		if (intel_plane_ggtt_offset(state) == plane_config->base) {
>  			fb = c->primary->fb;
> -			drm_framebuffer_reference(fb);
> +			drm_framebuffer_get(fb);
>  			goto valid_fb;
>  		}
>  	}
> @@ -2777,7 +2777,7 @@ intel_find_initial_plane_obj(struct intel_crtc *intel_crtc,
>  			  intel_crtc->pipe, PTR_ERR(intel_state->vma));
>  
>  		intel_state->vma = NULL;
> -		drm_framebuffer_unreference(fb);
> +		drm_framebuffer_put(fb);
>  		return;
>  	}
>  
> @@ -2798,7 +2798,7 @@ intel_find_initial_plane_obj(struct intel_crtc *intel_crtc,
>  	if (i915_gem_object_is_tiled(obj))
>  		dev_priv->preserve_bios_swizzle = true;
>  
> -	drm_framebuffer_reference(fb);
> +	drm_framebuffer_get(fb);
>  	primary->fb = primary->state->fb = fb;
>  	primary->crtc = primary->state->crtc = &intel_crtc->base;
>  
> @@ -9668,7 +9668,7 @@ mode_fits_in_fbdev(struct drm_device *dev,
>  	if (obj->base.size < mode->vdisplay * fb->pitches[0])
>  		return NULL;
>  
> -	drm_framebuffer_reference(fb);
> +	drm_framebuffer_get(fb);
>  	return fb;
>  #else
>  	return NULL;
> @@ -9849,7 +9849,7 @@ int intel_get_load_detect_pipe(struct drm_connector *connector,
>  	if (ret)
>  		goto fail;
>  
> -	drm_framebuffer_unreference(fb);
> +	drm_framebuffer_put(fb);
>  
>  	ret = drm_atomic_set_mode_for_crtc(&crtc_state->base, mode);
>  	if (ret)
> @@ -10159,7 +10159,7 @@ static void intel_unpin_work_fn(struct work_struct *__work)
>  	intel_frontbuffer_flip_complete(to_i915(dev),
>  					to_intel_plane(primary)->frontbuffer_bit);
>  	intel_fbc_post_update(crtc);
> -	drm_framebuffer_unreference(work->old_fb);
> +	drm_framebuffer_put(work->old_fb);
>  
>  	BUG_ON(atomic_read(&crtc->unpin_work_count) == 0);
>  	atomic_dec(&crtc->unpin_work_count);
> @@ -10799,7 +10799,7 @@ static int intel_crtc_page_flip(struct drm_crtc *crtc,
>  		flush_workqueue(dev_priv->wq);
>  
>  	/* Reference the objects for the scheduled work. */
> -	drm_framebuffer_reference(work->old_fb);
> +	drm_framebuffer_get(work->old_fb);
>  
>  	crtc->primary->fb = fb;
>  	update_state_fb(crtc->primary);
> @@ -10913,7 +10913,7 @@ static int intel_crtc_page_flip(struct drm_crtc *crtc,
>  	update_state_fb(crtc->primary);
>  
>  	i915_gem_object_put(obj);
> -	drm_framebuffer_unreference(work->old_fb);
> +	drm_framebuffer_put(work->old_fb);
>  
>  	spin_lock_irq(&dev->event_lock);
>  	intel_crtc->flip_work = NULL;
> @@ -11237,7 +11237,7 @@ static void intel_modeset_update_connector_atomic_state(struct drm_device *dev)
>  	drm_connector_list_iter_begin(dev, &conn_iter);
>  	for_each_intel_connector_iter(connector, &conn_iter) {
>  		if (connector->base.state->crtc)
> -			drm_connector_unreference(&connector->base);
> +			drm_connector_put(&connector->base);
>  
>  		if (connector->base.encoder) {
>  			connector->base.state->best_encoder =
> @@ -11245,7 +11245,7 @@ static void intel_modeset_update_connector_atomic_state(struct drm_device *dev)
>  			connector->base.state->crtc =
>  				connector->base.encoder->crtc;
>  
> -			drm_connector_reference(&connector->base);
> +			drm_connector_get(&connector->base);
>  		} else {
>  			connector->base.state->best_encoder = NULL;
>  			connector->base.state->crtc = NULL;
> diff --git a/drivers/gpu/drm/i915/intel_dp_mst.c b/drivers/gpu/drm/i915/intel_dp_mst.c
> index 2cf046b..b942578 100644
> --- a/drivers/gpu/drm/i915/intel_dp_mst.c
> +++ b/drivers/gpu/drm/i915/intel_dp_mst.c
> @@ -524,7 +524,7 @@ static void intel_dp_destroy_mst_connector(struct drm_dp_mst_topology_mgr *mgr,
>  	intel_connector->mst_port = NULL;
>  	drm_modeset_unlock_all(dev);
>  
> -	drm_connector_unreference(&intel_connector->base);
> +	drm_connector_put(&intel_connector->base);
>  	DRM_DEBUG_KMS("\n");
>  }
>  
> diff --git a/drivers/gpu/drm/i915/intel_fbdev.c b/drivers/gpu/drm/i915/intel_fbdev.c
> index 0c4cde6..13fbe80 100644
> --- a/drivers/gpu/drm/i915/intel_fbdev.c
> +++ b/drivers/gpu/drm/i915/intel_fbdev.c
> @@ -189,7 +189,7 @@ static int intelfb_create(struct drm_fb_helper *helper,
>  			      " releasing it\n",
>  			      intel_fb->base.width, intel_fb->base.height,
>  			      sizes->fb_width, sizes->fb_height);
> -		drm_framebuffer_unreference(&intel_fb->base);
> +		drm_framebuffer_put(&intel_fb->base);
>  		intel_fb = ifbdev->fb = NULL;
>  	}
>  	if (!intel_fb || WARN_ON(!intel_fb->obj)) {
> @@ -650,7 +650,7 @@ static bool intel_fbdev_init_bios(struct drm_device *dev,
>  	ifbdev->preferred_bpp = fb->base.format->cpp[0] * 8;
>  	ifbdev->fb = fb;
>  
> -	drm_framebuffer_reference(&ifbdev->fb->base);
> +	drm_framebuffer_get(&ifbdev->fb->base);
>  
>  	/* Final pass to check if any active pipes don't have fbs */
>  	for_each_crtc(dev, crtc) {

-- 
Jani Nikula, Intel Open Source Technology Center
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 12/29] drm/i915: switch to drm_*{get,put} helpers
  2017-08-03 12:26   ` Jani Nikula
@ 2017-08-03 12:49     ` Daniel Vetter
  2017-08-03 15:52       ` Cihangir Akturk
  2017-08-03 15:36     ` Cihangir Akturk
  1 sibling, 1 reply; 8+ messages in thread
From: Daniel Vetter @ 2017-08-03 12:49 UTC (permalink / raw)
  To: Jani Nikula
  Cc: Cihangir Akturk, intel-gfx, linux-kernel, dri-devel,
	Daniel Vetter

On Thu, Aug 03, 2017 at 03:26:01PM +0300, Jani Nikula wrote:
> On Thu, 03 Aug 2017, Cihangir Akturk <cakturk@gmail.com> wrote:
> > drm_*_reference() and drm_*_unreference() functions are just
> > compatibility alias for drm_*_get() and drm_*_put() adn should not be
> > used by new code. So convert all users of compatibility functions to use
> > the new APIs.
> 
> Please include the cocci script in the commit message. If you didn't use
> cocci, you should check it out! :)

Yeah I assume you've created these with spatch/cocci, not with your own
script. I trust cocci a lot more than any kind of scripting, and the
coccie patch is already in there kernel (the commits you've cited in the
cover letter contain it iirc).

Thanks, Daniel
> 
> BR,
> Jani.
> 
> >
> > Signed-off-by: Cihangir Akturk <cakturk@gmail.com>
> > ---
> >  drivers/gpu/drm/i915/i915_gem_object.h | 10 +++++-----
> >  drivers/gpu/drm/i915/intel_display.c   | 24 ++++++++++++------------
> >  drivers/gpu/drm/i915/intel_dp_mst.c    |  2 +-
> >  drivers/gpu/drm/i915/intel_fbdev.c     |  4 ++--
> >  4 files changed, 20 insertions(+), 20 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/i915_gem_object.h b/drivers/gpu/drm/i915/i915_gem_object.h
> > index 5b19a49..8f6c915 100644
> > --- a/drivers/gpu/drm/i915/i915_gem_object.h
> > +++ b/drivers/gpu/drm/i915/i915_gem_object.h
> > @@ -257,25 +257,25 @@ __attribute__((nonnull))
> >  static inline struct drm_i915_gem_object *
> >  i915_gem_object_get(struct drm_i915_gem_object *obj)
> >  {
> > -	drm_gem_object_reference(&obj->base);
> > +	drm_gem_object_get(&obj->base);
> >  	return obj;
> >  }
> >  
> >  __deprecated
> > -extern void drm_gem_object_reference(struct drm_gem_object *);
> > +extern void drm_gem_object_get(struct drm_gem_object *);
> >  
> >  __attribute__((nonnull))
> >  static inline void
> >  i915_gem_object_put(struct drm_i915_gem_object *obj)
> >  {
> > -	__drm_gem_object_unreference(&obj->base);
> > +	__drm_gem_object_put(&obj->base);
> >  }
> >  
> >  __deprecated
> > -extern void drm_gem_object_unreference(struct drm_gem_object *);
> > +extern void drm_gem_object_put(struct drm_gem_object *);
> >  
> >  __deprecated
> > -extern void drm_gem_object_unreference_unlocked(struct drm_gem_object *);
> > +extern void drm_gem_object_put_unlocked(struct drm_gem_object *);
> >  
> >  static inline void i915_gem_object_lock(struct drm_i915_gem_object *obj)
> >  {
> > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> > index dec9e58..b4d03cf 100644
> > --- a/drivers/gpu/drm/i915/intel_display.c
> > +++ b/drivers/gpu/drm/i915/intel_display.c
> > @@ -2672,10 +2672,10 @@ update_state_fb(struct drm_plane *plane)
> >  		return;
> >  
> >  	if (plane->state->fb)
> > -		drm_framebuffer_unreference(plane->state->fb);
> > +		drm_framebuffer_put(plane->state->fb);
> >  	plane->state->fb = plane->fb;
> >  	if (plane->state->fb)
> > -		drm_framebuffer_reference(plane->state->fb);
> > +		drm_framebuffer_get(plane->state->fb);
> >  }
> >  
> >  static void
> > @@ -2746,7 +2746,7 @@ intel_find_initial_plane_obj(struct intel_crtc *intel_crtc,
> >  
> >  		if (intel_plane_ggtt_offset(state) == plane_config->base) {
> >  			fb = c->primary->fb;
> > -			drm_framebuffer_reference(fb);
> > +			drm_framebuffer_get(fb);
> >  			goto valid_fb;
> >  		}
> >  	}
> > @@ -2777,7 +2777,7 @@ intel_find_initial_plane_obj(struct intel_crtc *intel_crtc,
> >  			  intel_crtc->pipe, PTR_ERR(intel_state->vma));
> >  
> >  		intel_state->vma = NULL;
> > -		drm_framebuffer_unreference(fb);
> > +		drm_framebuffer_put(fb);
> >  		return;
> >  	}
> >  
> > @@ -2798,7 +2798,7 @@ intel_find_initial_plane_obj(struct intel_crtc *intel_crtc,
> >  	if (i915_gem_object_is_tiled(obj))
> >  		dev_priv->preserve_bios_swizzle = true;
> >  
> > -	drm_framebuffer_reference(fb);
> > +	drm_framebuffer_get(fb);
> >  	primary->fb = primary->state->fb = fb;
> >  	primary->crtc = primary->state->crtc = &intel_crtc->base;
> >  
> > @@ -9668,7 +9668,7 @@ mode_fits_in_fbdev(struct drm_device *dev,
> >  	if (obj->base.size < mode->vdisplay * fb->pitches[0])
> >  		return NULL;
> >  
> > -	drm_framebuffer_reference(fb);
> > +	drm_framebuffer_get(fb);
> >  	return fb;
> >  #else
> >  	return NULL;
> > @@ -9849,7 +9849,7 @@ int intel_get_load_detect_pipe(struct drm_connector *connector,
> >  	if (ret)
> >  		goto fail;
> >  
> > -	drm_framebuffer_unreference(fb);
> > +	drm_framebuffer_put(fb);
> >  
> >  	ret = drm_atomic_set_mode_for_crtc(&crtc_state->base, mode);
> >  	if (ret)
> > @@ -10159,7 +10159,7 @@ static void intel_unpin_work_fn(struct work_struct *__work)
> >  	intel_frontbuffer_flip_complete(to_i915(dev),
> >  					to_intel_plane(primary)->frontbuffer_bit);
> >  	intel_fbc_post_update(crtc);
> > -	drm_framebuffer_unreference(work->old_fb);
> > +	drm_framebuffer_put(work->old_fb);
> >  
> >  	BUG_ON(atomic_read(&crtc->unpin_work_count) == 0);
> >  	atomic_dec(&crtc->unpin_work_count);
> > @@ -10799,7 +10799,7 @@ static int intel_crtc_page_flip(struct drm_crtc *crtc,
> >  		flush_workqueue(dev_priv->wq);
> >  
> >  	/* Reference the objects for the scheduled work. */
> > -	drm_framebuffer_reference(work->old_fb);
> > +	drm_framebuffer_get(work->old_fb);
> >  
> >  	crtc->primary->fb = fb;
> >  	update_state_fb(crtc->primary);
> > @@ -10913,7 +10913,7 @@ static int intel_crtc_page_flip(struct drm_crtc *crtc,
> >  	update_state_fb(crtc->primary);
> >  
> >  	i915_gem_object_put(obj);
> > -	drm_framebuffer_unreference(work->old_fb);
> > +	drm_framebuffer_put(work->old_fb);
> >  
> >  	spin_lock_irq(&dev->event_lock);
> >  	intel_crtc->flip_work = NULL;
> > @@ -11237,7 +11237,7 @@ static void intel_modeset_update_connector_atomic_state(struct drm_device *dev)
> >  	drm_connector_list_iter_begin(dev, &conn_iter);
> >  	for_each_intel_connector_iter(connector, &conn_iter) {
> >  		if (connector->base.state->crtc)
> > -			drm_connector_unreference(&connector->base);
> > +			drm_connector_put(&connector->base);
> >  
> >  		if (connector->base.encoder) {
> >  			connector->base.state->best_encoder =
> > @@ -11245,7 +11245,7 @@ static void intel_modeset_update_connector_atomic_state(struct drm_device *dev)
> >  			connector->base.state->crtc =
> >  				connector->base.encoder->crtc;
> >  
> > -			drm_connector_reference(&connector->base);
> > +			drm_connector_get(&connector->base);
> >  		} else {
> >  			connector->base.state->best_encoder = NULL;
> >  			connector->base.state->crtc = NULL;
> > diff --git a/drivers/gpu/drm/i915/intel_dp_mst.c b/drivers/gpu/drm/i915/intel_dp_mst.c
> > index 2cf046b..b942578 100644
> > --- a/drivers/gpu/drm/i915/intel_dp_mst.c
> > +++ b/drivers/gpu/drm/i915/intel_dp_mst.c
> > @@ -524,7 +524,7 @@ static void intel_dp_destroy_mst_connector(struct drm_dp_mst_topology_mgr *mgr,
> >  	intel_connector->mst_port = NULL;
> >  	drm_modeset_unlock_all(dev);
> >  
> > -	drm_connector_unreference(&intel_connector->base);
> > +	drm_connector_put(&intel_connector->base);
> >  	DRM_DEBUG_KMS("\n");
> >  }
> >  
> > diff --git a/drivers/gpu/drm/i915/intel_fbdev.c b/drivers/gpu/drm/i915/intel_fbdev.c
> > index 0c4cde6..13fbe80 100644
> > --- a/drivers/gpu/drm/i915/intel_fbdev.c
> > +++ b/drivers/gpu/drm/i915/intel_fbdev.c
> > @@ -189,7 +189,7 @@ static int intelfb_create(struct drm_fb_helper *helper,
> >  			      " releasing it\n",
> >  			      intel_fb->base.width, intel_fb->base.height,
> >  			      sizes->fb_width, sizes->fb_height);
> > -		drm_framebuffer_unreference(&intel_fb->base);
> > +		drm_framebuffer_put(&intel_fb->base);
> >  		intel_fb = ifbdev->fb = NULL;
> >  	}
> >  	if (!intel_fb || WARN_ON(!intel_fb->obj)) {
> > @@ -650,7 +650,7 @@ static bool intel_fbdev_init_bios(struct drm_device *dev,
> >  	ifbdev->preferred_bpp = fb->base.format->cpp[0] * 8;
> >  	ifbdev->fb = fb;
> >  
> > -	drm_framebuffer_reference(&ifbdev->fb->base);
> > +	drm_framebuffer_get(&ifbdev->fb->base);
> >  
> >  	/* Final pass to check if any active pipes don't have fbs */
> >  	for_each_crtc(dev, crtc) {
> 
> -- 
> Jani Nikula, Intel Open Source Technology Center
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 12/29] drm/i915: switch to drm_*{get,put} helpers
  2017-08-03 12:26   ` Jani Nikula
  2017-08-03 12:49     ` Daniel Vetter
@ 2017-08-03 15:36     ` Cihangir Akturk
  2017-08-04  8:18       ` [PATCH 12/29] drm/i915: switch to drm_*{get, put} helpers Jani Nikula
  1 sibling, 1 reply; 8+ messages in thread
From: Cihangir Akturk @ 2017-08-03 15:36 UTC (permalink / raw)
  To: Jani Nikula
  Cc: Daniel Vetter, David Airlie, intel-gfx, dri-devel, linux-kernel

On Thu, Aug 03, 2017 at 03:26:01PM +0300, Jani Nikula wrote:
> On Thu, 03 Aug 2017, Cihangir Akturk <cakturk@gmail.com> wrote:
> > drm_*_reference() and drm_*_unreference() functions are just
> > compatibility alias for drm_*_get() and drm_*_put() adn should not be
> > used by new code. So convert all users of compatibility functions to use
> > the new APIs.
> 
> Please include the cocci script in the commit message. If you didn't use
> cocci, you should check it out! :)

Indeed I used a simple shell script, which I included in the cover
letter. But the cover letter doesn't seem to show up in the mailing
list archives for some reason. I think I have done something wrong.

The script I use is like:
path=$1

do_replace() {
    local pattern=$1
    local replacement=$2

    git grep -lw "${pattern}" -- "${path}/*.[hc]" |\
        xargs -r sed -i "s/\b$pattern\b/$replacement/g"
}

do_replace drm_mode_object_reference drm_mode_object_get
do_replace drm_mode_object_unreference drm_mode_object_put
do_replace drm_connector_reference drm_connector_get
do_replace drm_connector_unreference drm_connector_put
do_replace drm_framebuffer_reference drm_framebuffer_get
do_replace drm_framebuffer_unreference drm_framebuffer_put
do_replace drm_gem_object_reference drm_gem_object_get
do_replace drm_gem_object_unreference drm_gem_object_put
do_replace __drm_gem_object_unreference __drm_gem_object_put
do_replace drm_gem_object_unreference_unlocked drm_gem_object_put_unlocked
do_replace drm_property_reference_blob drm_property_blob_get
do_replace drm_property_unreference_blob drm_property_blob_put

I had used the coccinelle in report mode for staging tree. It reported
about staging: vboxvideo driver. In this way I saw there is a need to
change to the new APIs.

I used my own script because I haven't used coccinelle in patch mode
before.

> 
> BR,
> Jani.
> 
> >
> > Signed-off-by: Cihangir Akturk <cakturk@gmail.com>
> > ---
> >  drivers/gpu/drm/i915/i915_gem_object.h | 10 +++++-----
> >  drivers/gpu/drm/i915/intel_display.c   | 24 ++++++++++++------------
> >  drivers/gpu/drm/i915/intel_dp_mst.c    |  2 +-
> >  drivers/gpu/drm/i915/intel_fbdev.c     |  4 ++--
> >  4 files changed, 20 insertions(+), 20 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/i915_gem_object.h b/drivers/gpu/drm/i915/i915_gem_object.h
> > index 5b19a49..8f6c915 100644
> > --- a/drivers/gpu/drm/i915/i915_gem_object.h
> > +++ b/drivers/gpu/drm/i915/i915_gem_object.h
> > @@ -257,25 +257,25 @@ __attribute__((nonnull))
> >  static inline struct drm_i915_gem_object *
> >  i915_gem_object_get(struct drm_i915_gem_object *obj)
> >  {
> > -	drm_gem_object_reference(&obj->base);
> > +	drm_gem_object_get(&obj->base);
> >  	return obj;
> >  }
> >  
> >  __deprecated
> > -extern void drm_gem_object_reference(struct drm_gem_object *);
> > +extern void drm_gem_object_get(struct drm_gem_object *);
> >  
> >  __attribute__((nonnull))
> >  static inline void
> >  i915_gem_object_put(struct drm_i915_gem_object *obj)
> >  {
> > -	__drm_gem_object_unreference(&obj->base);
> > +	__drm_gem_object_put(&obj->base);
> >  }
> >  
> >  __deprecated
> > -extern void drm_gem_object_unreference(struct drm_gem_object *);
> > +extern void drm_gem_object_put(struct drm_gem_object *);
> >  
> >  __deprecated
> > -extern void drm_gem_object_unreference_unlocked(struct drm_gem_object *);
> > +extern void drm_gem_object_put_unlocked(struct drm_gem_object *);
> >  
> >  static inline void i915_gem_object_lock(struct drm_i915_gem_object *obj)
> >  {
> > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> > index dec9e58..b4d03cf 100644
> > --- a/drivers/gpu/drm/i915/intel_display.c
> > +++ b/drivers/gpu/drm/i915/intel_display.c
> > @@ -2672,10 +2672,10 @@ update_state_fb(struct drm_plane *plane)
> >  		return;
> >  
> >  	if (plane->state->fb)
> > -		drm_framebuffer_unreference(plane->state->fb);
> > +		drm_framebuffer_put(plane->state->fb);
> >  	plane->state->fb = plane->fb;
> >  	if (plane->state->fb)
> > -		drm_framebuffer_reference(plane->state->fb);
> > +		drm_framebuffer_get(plane->state->fb);
> >  }
> >  
> >  static void
> > @@ -2746,7 +2746,7 @@ intel_find_initial_plane_obj(struct intel_crtc *intel_crtc,
> >  
> >  		if (intel_plane_ggtt_offset(state) == plane_config->base) {
> >  			fb = c->primary->fb;
> > -			drm_framebuffer_reference(fb);
> > +			drm_framebuffer_get(fb);
> >  			goto valid_fb;
> >  		}
> >  	}
> > @@ -2777,7 +2777,7 @@ intel_find_initial_plane_obj(struct intel_crtc *intel_crtc,
> >  			  intel_crtc->pipe, PTR_ERR(intel_state->vma));
> >  
> >  		intel_state->vma = NULL;
> > -		drm_framebuffer_unreference(fb);
> > +		drm_framebuffer_put(fb);
> >  		return;
> >  	}
> >  
> > @@ -2798,7 +2798,7 @@ intel_find_initial_plane_obj(struct intel_crtc *intel_crtc,
> >  	if (i915_gem_object_is_tiled(obj))
> >  		dev_priv->preserve_bios_swizzle = true;
> >  
> > -	drm_framebuffer_reference(fb);
> > +	drm_framebuffer_get(fb);
> >  	primary->fb = primary->state->fb = fb;
> >  	primary->crtc = primary->state->crtc = &intel_crtc->base;
> >  
> > @@ -9668,7 +9668,7 @@ mode_fits_in_fbdev(struct drm_device *dev,
> >  	if (obj->base.size < mode->vdisplay * fb->pitches[0])
> >  		return NULL;
> >  
> > -	drm_framebuffer_reference(fb);
> > +	drm_framebuffer_get(fb);
> >  	return fb;
> >  #else
> >  	return NULL;
> > @@ -9849,7 +9849,7 @@ int intel_get_load_detect_pipe(struct drm_connector *connector,
> >  	if (ret)
> >  		goto fail;
> >  
> > -	drm_framebuffer_unreference(fb);
> > +	drm_framebuffer_put(fb);
> >  
> >  	ret = drm_atomic_set_mode_for_crtc(&crtc_state->base, mode);
> >  	if (ret)
> > @@ -10159,7 +10159,7 @@ static void intel_unpin_work_fn(struct work_struct *__work)
> >  	intel_frontbuffer_flip_complete(to_i915(dev),
> >  					to_intel_plane(primary)->frontbuffer_bit);
> >  	intel_fbc_post_update(crtc);
> > -	drm_framebuffer_unreference(work->old_fb);
> > +	drm_framebuffer_put(work->old_fb);
> >  
> >  	BUG_ON(atomic_read(&crtc->unpin_work_count) == 0);
> >  	atomic_dec(&crtc->unpin_work_count);
> > @@ -10799,7 +10799,7 @@ static int intel_crtc_page_flip(struct drm_crtc *crtc,
> >  		flush_workqueue(dev_priv->wq);
> >  
> >  	/* Reference the objects for the scheduled work. */
> > -	drm_framebuffer_reference(work->old_fb);
> > +	drm_framebuffer_get(work->old_fb);
> >  
> >  	crtc->primary->fb = fb;
> >  	update_state_fb(crtc->primary);
> > @@ -10913,7 +10913,7 @@ static int intel_crtc_page_flip(struct drm_crtc *crtc,
> >  	update_state_fb(crtc->primary);
> >  
> >  	i915_gem_object_put(obj);
> > -	drm_framebuffer_unreference(work->old_fb);
> > +	drm_framebuffer_put(work->old_fb);
> >  
> >  	spin_lock_irq(&dev->event_lock);
> >  	intel_crtc->flip_work = NULL;
> > @@ -11237,7 +11237,7 @@ static void intel_modeset_update_connector_atomic_state(struct drm_device *dev)
> >  	drm_connector_list_iter_begin(dev, &conn_iter);
> >  	for_each_intel_connector_iter(connector, &conn_iter) {
> >  		if (connector->base.state->crtc)
> > -			drm_connector_unreference(&connector->base);
> > +			drm_connector_put(&connector->base);
> >  
> >  		if (connector->base.encoder) {
> >  			connector->base.state->best_encoder =
> > @@ -11245,7 +11245,7 @@ static void intel_modeset_update_connector_atomic_state(struct drm_device *dev)
> >  			connector->base.state->crtc =
> >  				connector->base.encoder->crtc;
> >  
> > -			drm_connector_reference(&connector->base);
> > +			drm_connector_get(&connector->base);
> >  		} else {
> >  			connector->base.state->best_encoder = NULL;
> >  			connector->base.state->crtc = NULL;
> > diff --git a/drivers/gpu/drm/i915/intel_dp_mst.c b/drivers/gpu/drm/i915/intel_dp_mst.c
> > index 2cf046b..b942578 100644
> > --- a/drivers/gpu/drm/i915/intel_dp_mst.c
> > +++ b/drivers/gpu/drm/i915/intel_dp_mst.c
> > @@ -524,7 +524,7 @@ static void intel_dp_destroy_mst_connector(struct drm_dp_mst_topology_mgr *mgr,
> >  	intel_connector->mst_port = NULL;
> >  	drm_modeset_unlock_all(dev);
> >  
> > -	drm_connector_unreference(&intel_connector->base);
> > +	drm_connector_put(&intel_connector->base);
> >  	DRM_DEBUG_KMS("\n");
> >  }
> >  
> > diff --git a/drivers/gpu/drm/i915/intel_fbdev.c b/drivers/gpu/drm/i915/intel_fbdev.c
> > index 0c4cde6..13fbe80 100644
> > --- a/drivers/gpu/drm/i915/intel_fbdev.c
> > +++ b/drivers/gpu/drm/i915/intel_fbdev.c
> > @@ -189,7 +189,7 @@ static int intelfb_create(struct drm_fb_helper *helper,
> >  			      " releasing it\n",
> >  			      intel_fb->base.width, intel_fb->base.height,
> >  			      sizes->fb_width, sizes->fb_height);
> > -		drm_framebuffer_unreference(&intel_fb->base);
> > +		drm_framebuffer_put(&intel_fb->base);
> >  		intel_fb = ifbdev->fb = NULL;
> >  	}
> >  	if (!intel_fb || WARN_ON(!intel_fb->obj)) {
> > @@ -650,7 +650,7 @@ static bool intel_fbdev_init_bios(struct drm_device *dev,
> >  	ifbdev->preferred_bpp = fb->base.format->cpp[0] * 8;
> >  	ifbdev->fb = fb;
> >  
> > -	drm_framebuffer_reference(&ifbdev->fb->base);
> > +	drm_framebuffer_get(&ifbdev->fb->base);
> >  
> >  	/* Final pass to check if any active pipes don't have fbs */
> >  	for_each_crtc(dev, crtc) {
> 
> -- 
> Jani Nikula, Intel Open Source Technology Center

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 12/29] drm/i915: switch to drm_*{get,put} helpers
  2017-08-03 12:49     ` Daniel Vetter
@ 2017-08-03 15:52       ` Cihangir Akturk
  2017-08-07  9:10         ` Daniel Vetter
  0 siblings, 1 reply; 8+ messages in thread
From: Cihangir Akturk @ 2017-08-03 15:52 UTC (permalink / raw)
  To: Jani Nikula, intel-gfx, linux-kernel, dri-devel, Daniel Vetter

On Thu, Aug 03, 2017 at 02:49:03PM +0200, Daniel Vetter wrote:
> On Thu, Aug 03, 2017 at 03:26:01PM +0300, Jani Nikula wrote:
> > On Thu, 03 Aug 2017, Cihangir Akturk <cakturk@gmail.com> wrote:
> > > drm_*_reference() and drm_*_unreference() functions are just
> > > compatibility alias for drm_*_get() and drm_*_put() adn should not be
> > > used by new code. So convert all users of compatibility functions to use
> > > the new APIs.
> > 
> > Please include the cocci script in the commit message. If you didn't use
> > cocci, you should check it out! :)
> 
> Yeah I assume you've created these with spatch/cocci, not with your own
> script. I trust cocci a lot more than any kind of scripting, and the
> coccie patch is already in there kernel (the commits you've cited in the
> cover letter contain it iirc).

I wrote a simple shell script, which you can see in the cover letter.
But you are right I take function list from scripts/coccinelle/api/drm-get-put.cocci
file.

Daniel Should I use coccinelle to generate patches and resend a v2?
If so, do i need to include reviewed-by and acked-by tags to patches myself?

Thanks.

> Thanks, Daniel

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 12/29] drm/i915: switch to drm_*{get, put} helpers
  2017-08-03 15:36     ` Cihangir Akturk
@ 2017-08-04  8:18       ` Jani Nikula
  0 siblings, 0 replies; 8+ messages in thread
From: Jani Nikula @ 2017-08-04  8:18 UTC (permalink / raw)
  To: Cihangir Akturk
  Cc: David Airlie, Daniel Vetter, intel-gfx, linux-kernel, dri-devel

On Thu, 03 Aug 2017, Cihangir Akturk <cakturk@gmail.com> wrote:
> Indeed I used a simple shell script, which I included in the cover
> letter. But the cover letter doesn't seem to show up in the mailing
> list archives for some reason. I think I have done something wrong.

For intel-gfx it was in moderation, I let it through now.

BR,
Jani.


-- 
Jani Nikula, Intel Open Source Technology Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 12/29] drm/i915: switch to drm_*{get,put} helpers
  2017-08-03 15:52       ` Cihangir Akturk
@ 2017-08-07  9:10         ` Daniel Vetter
  0 siblings, 0 replies; 8+ messages in thread
From: Daniel Vetter @ 2017-08-07  9:10 UTC (permalink / raw)
  To: Cihangir Akturk
  Cc: Jani Nikula, intel-gfx, Linux Kernel Mailing List, dri-devel,
	Daniel Vetter

On Thu, Aug 3, 2017 at 5:52 PM, Cihangir Akturk <cakturk@gmail.com> wrote:
> On Thu, Aug 03, 2017 at 02:49:03PM +0200, Daniel Vetter wrote:
>> On Thu, Aug 03, 2017 at 03:26:01PM +0300, Jani Nikula wrote:
>> > On Thu, 03 Aug 2017, Cihangir Akturk <cakturk@gmail.com> wrote:
>> > > drm_*_reference() and drm_*_unreference() functions are just
>> > > compatibility alias for drm_*_get() and drm_*_put() adn should not be
>> > > used by new code. So convert all users of compatibility functions to use
>> > > the new APIs.
>> >
>> > Please include the cocci script in the commit message. If you didn't use
>> > cocci, you should check it out! :)
>>
>> Yeah I assume you've created these with spatch/cocci, not with your own
>> script. I trust cocci a lot more than any kind of scripting, and the
>> coccie patch is already in there kernel (the commits you've cited in the
>> cover letter contain it iirc).
>
> I wrote a simple shell script, which you can see in the cover letter.
> But you are right I take function list from scripts/coccinelle/api/drm-get-put.cocci
> file.
>
> Daniel Should I use coccinelle to generate patches and resend a v2?
> If so, do i need to include reviewed-by and acked-by tags to patches myself?

I think regenerating the patches using cocci would be great, I trust
cocci a lot more than random scripts. And cocci is a great tool to
learn anyway (if you don't know it yet). If the resulting patches
match, you can keep the r-b/a-b tags for v2.

Thanks, Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2017-08-07  9:10 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-08-03 11:58 [PATCH 00/29] DRM API conversions Cihangir Akturk
2017-08-03 11:58 ` [PATCH 12/29] drm/i915: switch to drm_*{get,put} helpers Cihangir Akturk
2017-08-03 12:26   ` Jani Nikula
2017-08-03 12:49     ` Daniel Vetter
2017-08-03 15:52       ` Cihangir Akturk
2017-08-07  9:10         ` Daniel Vetter
2017-08-03 15:36     ` Cihangir Akturk
2017-08-04  8:18       ` [PATCH 12/29] drm/i915: switch to drm_*{get, put} helpers Jani Nikula

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox