Since snprintf() returns the would-be-output size instead of the
actual output size, the succeeding calls may go beyond the given
buffer limit.  Fix it by replacing with scnprintf().

Signed-off-by: Takashi Iwai <ti...@suse.de>
---
 drivers/gpu/drm/i915/gt/intel_engine_cs.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/gt/intel_engine_cs.c 
b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
index 53ac3f00909a..418547bfe03b 100644
--- a/drivers/gpu/drm/i915/gt/intel_engine_cs.c
+++ b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
@@ -1381,13 +1381,13 @@ static void intel_engine_print_registers(struct 
intel_engine_cs *engine,
                        char hdr[160];
                        int len;
 
-                       len = snprintf(hdr, sizeof(hdr),
+                       len = scnprintf(hdr, sizeof(hdr),
                                       "\t\tActive[%d]: ",
                                       (int)(port - execlists->active));
                        if (!i915_request_signaled(rq)) {
                                struct intel_timeline *tl = get_timeline(rq);
 
-                               len += snprintf(hdr + len, sizeof(hdr) - len,
+                               len += scnprintf(hdr + len, sizeof(hdr) - len,
                                                "ring:{start:%08x, hwsp:%08x, 
seqno:%08x, runtime:%llums}, ",
                                                i915_ggtt_offset(rq->ring->vma),
                                                tl ? tl->hwsp_offset : 0,
@@ -1398,7 +1398,7 @@ static void intel_engine_print_registers(struct 
intel_engine_cs *engine,
                                if (tl)
                                        intel_timeline_put(tl);
                        }
-                       snprintf(hdr + len, sizeof(hdr) - len, "rq: ");
+                       scnprintf(hdr + len, sizeof(hdr) - len, "rq: ");
                        print_request(m, rq, hdr);
                }
                for (port = execlists->pending; (rq = *port); port++) {
-- 
2.16.4

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to