Skip to content

Commit

Permalink
drm: Verify debug message arguments
Browse files Browse the repository at this point in the history
Add __attribute__((format (printf, 4, 5))) to drm_ut_debug_printk
and fix fallout.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
  • Loading branch information
Joe Perches authored and Dave Airlie committed Apr 28, 2011
1 parent 5ad3d88 commit bbb0aef
Show file tree
Hide file tree
Showing 5 changed files with 17 additions and 14 deletions.
9 changes: 5 additions & 4 deletions drivers/gpu/drm/drm_irq.c
Original file line number Diff line number Diff line change
Expand Up @@ -684,10 +684,11 @@ int drm_calc_vbltimestamp_from_scanoutpos(struct drm_device *dev, int crtc,
*/
*vblank_time = ns_to_timeval(timeval_to_ns(&raw_time) - delta_ns);

DRM_DEBUG("crtc %d : v %d p(%d,%d)@ %d.%d -> %d.%d [e %d us, %d rep]\n",
crtc, (int) vbl_status, hpos, vpos, raw_time.tv_sec,
raw_time.tv_usec, vblank_time->tv_sec, vblank_time->tv_usec,
(int) duration_ns/1000, i);
DRM_DEBUG("crtc %d : v %d p(%d,%d)@ %ld.%ld -> %ld.%ld [e %d us, %d rep]\n",
crtc, (int)vbl_status, hpos, vpos,
(long)raw_time.tv_sec, (long)raw_time.tv_usec,
(long)vblank_time->tv_sec, (long)vblank_time->tv_usec,
(int)duration_ns/1000, i);

vbl_status = DRM_VBLANKTIME_SCANOUTPOS_METHOD;
if (invbl)
Expand Down
6 changes: 3 additions & 3 deletions drivers/gpu/drm/i915/intel_bios.c
Original file line number Diff line number Diff line change
Expand Up @@ -214,9 +214,9 @@ parse_lfp_panel_data(struct drm_i915_private *dev_priv,
i915_lvds_downclock) {
dev_priv->lvds_downclock_avail = 1;
dev_priv->lvds_downclock = temp_downclock;
DRM_DEBUG_KMS("LVDS downclock is found in VBT. ",
"Normal Clock %dKHz, downclock %dKHz\n",
temp_downclock, panel_fixed_mode->clock);
DRM_DEBUG_KMS("LVDS downclock is found in VBT. "
"Normal Clock %dKHz, downclock %dKHz\n",
temp_downclock, panel_fixed_mode->clock);
}
return;
}
Expand Down
8 changes: 4 additions & 4 deletions drivers/gpu/drm/i915/intel_display.c
Original file line number Diff line number Diff line change
Expand Up @@ -3497,11 +3497,11 @@ static unsigned long intel_calculate_wm(unsigned long clock_in_khz,
1000;
entries_required = DIV_ROUND_UP(entries_required, wm->cacheline_size);

DRM_DEBUG_KMS("FIFO entries required for mode: %d\n", entries_required);
DRM_DEBUG_KMS("FIFO entries required for mode: %ld\n", entries_required);

wm_size = fifo_size - (entries_required + wm->guard_size);

DRM_DEBUG_KMS("FIFO watermark level: %d\n", wm_size);
DRM_DEBUG_KMS("FIFO watermark level: %ld\n", wm_size);

/* Don't promote wm_size to unsigned... */
if (wm_size > (long)wm->max_wm)
Expand Down Expand Up @@ -3823,13 +3823,13 @@ static bool g4x_check_srwm(struct drm_device *dev,
display_wm, cursor_wm);

if (display_wm > display->max_wm) {
DRM_DEBUG_KMS("display watermark is too large(%d), disabling\n",
DRM_DEBUG_KMS("display watermark is too large(%d/%ld), disabling\n",
display_wm, display->max_wm);
return false;
}

if (cursor_wm > cursor->max_wm) {
DRM_DEBUG_KMS("cursor watermark is too large(%d), disabling\n",
DRM_DEBUG_KMS("cursor watermark is too large(%d/%ld), disabling\n",
cursor_wm, cursor->max_wm);
return false;
}
Expand Down
5 changes: 3 additions & 2 deletions drivers/gpu/drm/radeon/radeon_display.c
Original file line number Diff line number Diff line change
Expand Up @@ -1087,8 +1087,9 @@ void radeon_compute_pll_legacy(struct radeon_pll *pll,
*frac_fb_div_p = best_frac_feedback_div;
*ref_div_p = best_ref_div;
*post_div_p = best_post_div;
DRM_DEBUG_KMS("%d %d, pll dividers - fb: %d.%d ref: %d, post %d\n",
freq, best_freq / 1000, best_feedback_div, best_frac_feedback_div,
DRM_DEBUG_KMS("%lld %d, pll dividers - fb: %d.%d ref: %d, post %d\n",
(long long)freq,
best_freq / 1000, best_feedback_div, best_frac_feedback_div,
best_ref_div, best_post_div);

}
Expand Down
3 changes: 2 additions & 1 deletion include/drm/drmP.h
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,8 @@ struct drm_device;
* using the DRM_DEBUG_KMS and DRM_DEBUG.
*/

extern void drm_ut_debug_printk(unsigned int request_level,
extern __attribute__((format (printf, 4, 5)))
void drm_ut_debug_printk(unsigned int request_level,
const char *prefix,
const char *function_name,
const char *format, ...);
Expand Down

0 comments on commit bbb0aef

Please sign in to comment.