Commit a3c86b6d authored by Bommu Krishnaiah's avatar Bommu Krishnaiah Committed by Rodrigo Vivi

drm/xe: prefer snprintf over sprintf

since the sprintf() function lacks built-in protection against buffer
overflows using the snprintf() function.

v2: Removed hard coded values and used sizeof()
Signed-off-by: default avatarBommu Krishnaiah <krishnaiah.bommu@intel.com>
Cc: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
Cc: Tejas Upadhyay <tejas.upadhyay@intel.com>
Reviewed-by: default avatarHimal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20231209235949.54524-2-krishnaiah.bommu@intel.comSigned-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
parent 972d01d0
...@@ -129,7 +129,7 @@ void xe_debugfs_register(struct xe_device *xe) ...@@ -129,7 +129,7 @@ void xe_debugfs_register(struct xe_device *xe)
if (man) { if (man) {
char name[16]; char name[16];
sprintf(name, "vram%d_mm", mem_type - XE_PL_VRAM0); snprintf(name, sizeof(name), "vram%d_mm", mem_type - XE_PL_VRAM0);
ttm_resource_manager_create_debugfs(man, root, name); ttm_resource_manager_create_debugfs(man, root, name);
} }
} }
......
...@@ -225,22 +225,22 @@ void xe_exec_queue_assign_name(struct xe_exec_queue *q, u32 instance) ...@@ -225,22 +225,22 @@ void xe_exec_queue_assign_name(struct xe_exec_queue *q, u32 instance)
{ {
switch (q->class) { switch (q->class) {
case XE_ENGINE_CLASS_RENDER: case XE_ENGINE_CLASS_RENDER:
sprintf(q->name, "rcs%d", instance); snprintf(q->name, sizeof(q->name), "rcs%d", instance);
break; break;
case XE_ENGINE_CLASS_VIDEO_DECODE: case XE_ENGINE_CLASS_VIDEO_DECODE:
sprintf(q->name, "vcs%d", instance); snprintf(q->name, sizeof(q->name), "vcs%d", instance);
break; break;
case XE_ENGINE_CLASS_VIDEO_ENHANCE: case XE_ENGINE_CLASS_VIDEO_ENHANCE:
sprintf(q->name, "vecs%d", instance); snprintf(q->name, sizeof(q->name), "vecs%d", instance);
break; break;
case XE_ENGINE_CLASS_COPY: case XE_ENGINE_CLASS_COPY:
sprintf(q->name, "bcs%d", instance); snprintf(q->name, sizeof(q->name), "bcs%d", instance);
break; break;
case XE_ENGINE_CLASS_COMPUTE: case XE_ENGINE_CLASS_COMPUTE:
sprintf(q->name, "ccs%d", instance); snprintf(q->name, sizeof(q->name), "ccs%d", instance);
break; break;
case XE_ENGINE_CLASS_OTHER: case XE_ENGINE_CLASS_OTHER:
sprintf(q->name, "gsccs%d", instance); snprintf(q->name, sizeof(q->name), "gsccs%d", instance);
break; break;
default: default:
XE_WARN_ON(q->class); XE_WARN_ON(q->class);
......
...@@ -269,7 +269,7 @@ void xe_gt_debugfs_register(struct xe_gt *gt) ...@@ -269,7 +269,7 @@ void xe_gt_debugfs_register(struct xe_gt *gt)
xe_gt_assert(gt, minor->debugfs_root); xe_gt_assert(gt, minor->debugfs_root);
sprintf(name, "gt%d", gt->info.id); snprintf(name, sizeof(name), "gt%d", gt->info.id);
root = debugfs_create_dir(name, minor->debugfs_root); root = debugfs_create_dir(name, minor->debugfs_root);
if (IS_ERR(root)) { if (IS_ERR(root)) {
drm_warn(&xe->drm, "Create GT directory failed"); drm_warn(&xe->drm, "Create GT directory failed");
......
...@@ -166,10 +166,10 @@ void xe_gt_idle_sysfs_init(struct xe_gt_idle *gtidle) ...@@ -166,10 +166,10 @@ void xe_gt_idle_sysfs_init(struct xe_gt_idle *gtidle)
} }
if (xe_gt_is_media_type(gt)) { if (xe_gt_is_media_type(gt)) {
sprintf(gtidle->name, "gt%d-mc", gt->info.id); snprintf(gtidle->name, sizeof(gtidle->name), "gt%d-mc", gt->info.id);
gtidle->idle_residency = xe_guc_pc_mc6_residency; gtidle->idle_residency = xe_guc_pc_mc6_residency;
} else { } else {
sprintf(gtidle->name, "gt%d-rc", gt->info.id); snprintf(gtidle->name, sizeof(gtidle->name), "gt%d-rc", gt->info.id);
gtidle->idle_residency = xe_guc_pc_rc6_residency; gtidle->idle_residency = xe_guc_pc_rc6_residency;
} }
......
...@@ -130,7 +130,7 @@ void xe_hw_fence_ctx_init(struct xe_hw_fence_ctx *ctx, struct xe_gt *gt, ...@@ -130,7 +130,7 @@ void xe_hw_fence_ctx_init(struct xe_hw_fence_ctx *ctx, struct xe_gt *gt,
ctx->irq = irq; ctx->irq = irq;
ctx->dma_fence_ctx = dma_fence_context_alloc(1); ctx->dma_fence_ctx = dma_fence_context_alloc(1);
ctx->next_seqno = XE_FENCE_INITIAL_SEQNO; ctx->next_seqno = XE_FENCE_INITIAL_SEQNO;
sprintf(ctx->name, "%s", name); snprintf(ctx->name, sizeof(ctx->name), "%s", name);
} }
void xe_hw_fence_ctx_finish(struct xe_hw_fence_ctx *ctx) void xe_hw_fence_ctx_finish(struct xe_hw_fence_ctx *ctx)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment