diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
index 0fe45941b5c7e809c90922fc89c22b81d8f09ccc..c645a7221d0b22e0ad2c6f0c49fd222e9031a499 100644
--- a/kernel/printk/printk.c
+++ b/kernel/printk/printk.c
@@ -2423,9 +2423,9 @@ void console_unlock(void)
 		printk_safe_enter_irqsave(flags);
 		raw_spin_lock(&logbuf_lock);
 		if (console_seq < log_first_seq) {
-			len = sprintf(text,
-				      "** %llu printk messages dropped **\n",
-				      log_first_seq - console_seq);
+			len = snprintf(text, sizeof(text),
+				       "** %llu printk messages dropped **\n",
+				       log_first_seq - console_seq);
 
 			/* messages are gone, move to first one */
 			console_seq = log_first_seq;