Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

drm/i915/frontbuffer: call parent interface directly

Do away with the redundant intel_frontbuffer_get(),
intel_frontbuffer_put(), and intel_frontbuffer_ref() functions, and call
the parent interface functions directly.

Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Link: https://patch.msgid.link/7451574d6840fe9a4af16d2d6b81ffb7739b5b76.1772475391.git.jani.nikula@intel.com
Signed-off-by: Jani Nikula <jani.nikula@intel.com>

+7 -29
+4 -4
drivers/gpu/drm/i915/display/intel_fb.c
··· 2113 2113 2114 2114 intel_fb_bo_framebuffer_fini(intel_fb_bo(fb)); 2115 2115 2116 - intel_frontbuffer_put(intel_fb->frontbuffer); 2116 + intel_parent_frontbuffer_put(display, intel_fb->frontbuffer); 2117 2117 2118 2118 kfree(intel_fb->panic); 2119 2119 kfree(intel_fb); ··· 2221 2221 return -ENOMEM; 2222 2222 2223 2223 /* 2224 - * intel_frontbuffer_get() must be done before 2224 + * intel_parent_frontbuffer_get() must be done before 2225 2225 * intel_fb_bo_framebuffer_init() to avoid set_tiling vs. addfb race. 2226 2226 */ 2227 - intel_fb->frontbuffer = intel_frontbuffer_get(obj); 2227 + intel_fb->frontbuffer = intel_parent_frontbuffer_get(display, obj); 2228 2228 if (!intel_fb->frontbuffer) { 2229 2229 ret = -ENOMEM; 2230 2230 goto err_free_panic; ··· 2335 2335 err_bo_framebuffer_fini: 2336 2336 intel_fb_bo_framebuffer_fini(obj); 2337 2337 err_frontbuffer_put: 2338 - intel_frontbuffer_put(intel_fb->frontbuffer); 2338 + intel_parent_frontbuffer_put(display, intel_fb->frontbuffer); 2339 2339 err_free_panic: 2340 2340 kfree(intel_fb->panic); 2341 2341
+3 -20
drivers/gpu/drm/i915/display/intel_frontbuffer.c
··· 164 164 frontbuffer_flush(display, frontbuffer_bits, origin); 165 165 } 166 166 167 - static void intel_frontbuffer_ref(struct intel_frontbuffer *front) 168 - { 169 - intel_parent_frontbuffer_ref(front->display, front); 170 - } 171 - 172 167 static void intel_frontbuffer_flush_work(struct work_struct *work) 173 168 { 174 169 struct intel_frontbuffer *front = 175 170 container_of(work, struct intel_frontbuffer, flush_work); 176 171 177 172 intel_frontbuffer_flush(front, ORIGIN_DIRTYFB); 178 - intel_frontbuffer_put(front); 173 + intel_parent_frontbuffer_put(front->display, front); 179 174 } 180 175 181 176 /** ··· 185 190 if (!front) 186 191 return; 187 192 188 - intel_frontbuffer_ref(front); 193 + intel_parent_frontbuffer_ref(front->display, front); 189 194 if (!schedule_work(&front->flush_work)) 190 - intel_frontbuffer_put(front); 195 + intel_parent_frontbuffer_put(front->display, front); 191 196 } 192 197 193 198 void intel_frontbuffer_init(struct intel_frontbuffer *front, struct drm_device *drm) ··· 200 205 void intel_frontbuffer_fini(struct intel_frontbuffer *front) 201 206 { 202 207 drm_WARN_ON(front->display->drm, atomic_read(&front->bits)); 203 - } 204 - 205 - struct intel_frontbuffer *intel_frontbuffer_get(struct drm_gem_object *obj) 206 - { 207 - struct intel_display *display = to_intel_display(obj->dev); 208 - 209 - return intel_parent_frontbuffer_get(display, obj); 210 - } 211 - 212 - void intel_frontbuffer_put(struct intel_frontbuffer *front) 213 - { 214 - intel_parent_frontbuffer_put(front->display, front); 215 208 } 216 209 217 210 /**
-5
drivers/gpu/drm/i915/display/intel_frontbuffer.h
··· 66 66 void intel_frontbuffer_flip(struct intel_display *display, 67 67 unsigned frontbuffer_bits); 68 68 69 - void intel_frontbuffer_put(struct intel_frontbuffer *front); 70 - 71 - struct intel_frontbuffer * 72 - intel_frontbuffer_get(struct drm_gem_object *obj); 73 - 74 69 void __intel_fb_invalidate(struct intel_frontbuffer *front, 75 70 enum fb_op_origin origin, 76 71 unsigned int frontbuffer_bits);