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

drm/print: add drm_debug_enabled()

Add helper to check if a drm debug category is enabled. Convert drm core
to use it. No functional changes.

v2: Move unlikely() to drm_debug_enabled() (Eric)

v3: Keep unlikely() when combined with other conditions (Eric)

Cc: Eric Engestrom <eric@engestrom.ch>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191001140614.26909-1-jani.nikula@intel.com

+18 -13
+1 -1
drivers/gpu/drm/drm_atomic_uapi.c
··· 1406 1406 } else if (arg->flags & DRM_MODE_ATOMIC_NONBLOCK) { 1407 1407 ret = drm_atomic_nonblocking_commit(state); 1408 1408 } else { 1409 - if (unlikely(drm_debug & DRM_UT_STATE)) 1409 + if (drm_debug_enabled(DRM_UT_STATE)) 1410 1410 drm_atomic_print_state(state); 1411 1411 1412 1412 ret = drm_atomic_commit(state);
+3 -3
drivers/gpu/drm/drm_dp_mst_topology.c
··· 1179 1179 } 1180 1180 } 1181 1181 out: 1182 - if (unlikely(ret == -EIO && drm_debug & DRM_UT_DP)) { 1182 + if (unlikely(ret == -EIO) && drm_debug_enabled(DRM_UT_DP)) { 1183 1183 struct drm_printer p = drm_debug_printer(DBG_PREFIX); 1184 1184 1185 1185 drm_dp_mst_dump_sideband_msg_tx(&p, txmsg); ··· 2322 2322 idx += tosend + 1; 2323 2323 2324 2324 ret = drm_dp_send_sideband_msg(mgr, up, chunk, idx); 2325 - if (unlikely(ret && drm_debug & DRM_UT_DP)) { 2325 + if (unlikely(ret) && drm_debug_enabled(DRM_UT_DP)) { 2326 2326 struct drm_printer p = drm_debug_printer(DBG_PREFIX); 2327 2327 2328 2328 drm_printf(&p, "sideband msg failed to send\n"); ··· 2389 2389 mutex_lock(&mgr->qlock); 2390 2390 list_add_tail(&txmsg->next, &mgr->tx_msg_downq); 2391 2391 2392 - if (unlikely(drm_debug & DRM_UT_DP)) { 2392 + if (drm_debug_enabled(DRM_UT_DP)) { 2393 2393 struct drm_printer p = drm_debug_printer(DBG_PREFIX); 2394 2394 2395 2395 drm_dp_mst_dump_sideband_msg_tx(&p, txmsg);
+1 -1
drivers/gpu/drm/drm_edid.c
··· 1651 1651 { 1652 1652 int i; 1653 1653 1654 - if (connector->bad_edid_counter++ && !(drm_debug & DRM_UT_KMS)) 1654 + if (connector->bad_edid_counter++ && !drm_debug_enabled(DRM_UT_KMS)) 1655 1655 return; 1656 1656 1657 1657 dev_warn(connector->dev->dev,
+1 -1
drivers/gpu/drm/drm_edid_load.c
··· 175 175 u8 *edid; 176 176 int fwsize, builtin; 177 177 int i, valid_extensions = 0; 178 - bool print_bad_edid = !connector->bad_edid_counter || (drm_debug & DRM_UT_KMS); 178 + bool print_bad_edid = !connector->bad_edid_counter || drm_debug_enabled(DRM_UT_KMS); 179 179 180 180 builtin = match_string(generic_edid_name, GENERIC_EDIDS, name); 181 181 if (builtin >= 0) {
+2 -2
drivers/gpu/drm/drm_mipi_dbi.c
··· 783 783 int i, ret; 784 784 u8 *dst; 785 785 786 - if (drm_debug & DRM_UT_DRIVER) 786 + if (drm_debug_enabled(DRM_UT_DRIVER)) 787 787 pr_debug("[drm:%s] dc=%d, max_chunk=%zu, transfers:\n", 788 788 __func__, dc, max_chunk); 789 789 ··· 907 907 max_chunk = dbi->tx_buf9_len; 908 908 dst16 = dbi->tx_buf9; 909 909 910 - if (drm_debug & DRM_UT_DRIVER) 910 + if (drm_debug_enabled(DRM_UT_DRIVER)) 911 911 pr_debug("[drm:%s] dc=%d, max_chunk=%zu, transfers:\n", 912 912 __func__, dc, max_chunk); 913 913
+2 -2
drivers/gpu/drm/drm_print.c
··· 262 262 struct va_format vaf; 263 263 va_list args; 264 264 265 - if (!(drm_debug & category)) 265 + if (!drm_debug_enabled(category)) 266 266 return; 267 267 268 268 va_start(args, format); ··· 285 285 struct va_format vaf; 286 286 va_list args; 287 287 288 - if (!(drm_debug & category)) 288 + if (!drm_debug_enabled(category)) 289 289 return; 290 290 291 291 va_start(args, format);
+3 -3
drivers/gpu/drm/drm_vblank.c
··· 332 332 u64 vblank; 333 333 unsigned long flags; 334 334 335 - WARN_ONCE(drm_debug & DRM_UT_VBL && !dev->driver->get_vblank_timestamp, 335 + WARN_ONCE(drm_debug_enabled(DRM_UT_VBL) && !dev->driver->get_vblank_timestamp, 336 336 "This function requires support for accurate vblank timestamps."); 337 337 338 338 spin_lock_irqsave(&dev->vblank_time_lock, flags); ··· 706 706 */ 707 707 *vblank_time = ktime_sub_ns(etime, delta_ns); 708 708 709 - if ((drm_debug & DRM_UT_VBL) == 0) 709 + if (!drm_debug_enabled(DRM_UT_VBL)) 710 710 return true; 711 711 712 712 ts_etime = ktime_to_timespec64(etime); ··· 1352 1352 assert_spin_locked(&dev->vblank_time_lock); 1353 1353 1354 1354 vblank = &dev->vblank[pipe]; 1355 - WARN_ONCE((drm_debug & DRM_UT_VBL) && !vblank->framedur_ns, 1355 + WARN_ONCE(drm_debug_enabled(DRM_UT_VBL) && !vblank->framedur_ns, 1356 1356 "Cannot compute missed vblanks without frame duration\n"); 1357 1357 framedur_ns = vblank->framedur_ns; 1358 1358
+5
include/drm/drm_print.h
··· 293 293 #define DRM_UT_LEASE 0x80 294 294 #define DRM_UT_DP 0x100 295 295 296 + static inline bool drm_debug_enabled(unsigned int category) 297 + { 298 + return unlikely(drm_debug & category); 299 + } 300 + 296 301 __printf(3, 4) 297 302 void drm_dev_printk(const struct device *dev, const char *level, 298 303 const char *format, ...);