From nobody Thu Dec 18 05:02:46 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CE94B36C; Thu, 27 Mar 2025 00:07:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743034060; cv=none; b=RF+JbFlgnUBkCZhDWXodj5xwQWSg0LZAv0N8QiVnbAxm5EHIal69F2s6fJLPq/CmMqdyGF9YamUAy8gDcYk7D4h6KHfUhc7ph8mneBrN6dSX2J9Wz6rnCEVf+NbmbMNwm80wJLXSx6ZwW/b9nWjrfTqtSquIyIvOPAsmj8Yoj/s= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743034060; c=relaxed/simple; bh=aWvBjCZrlZvpVpFDKgRmt1yjKxZq3Ipzl2MvNHRgijc=; h=Message-ID:Date:From:To:Cc:Subject:References:MIME-Version: Content-Type; b=Vmoerhoj5WKFbQkJE7FPAqlSnPV5AHV8HWWBuzhKpkasUwQsZdf1cpq+TBW7gbKGiYuvjhdICpc+sAyT/8amSon15DuDfwkv/BLtHV5KkSiVvpNTwvcCSyxKp/4FRVc2FoLCuT3EKm2Yovgo5Hv7zaytxwF+63sox7rskaxKBNs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id 699A0C4CEEA; Thu, 27 Mar 2025 00:07:40 +0000 (UTC) Received: from rostedt by gandalf with local (Exim 4.98) (envelope-from ) id 1txanM-00000002uyu-0WXF; Wed, 26 Mar 2025 20:08:28 -0400 Message-ID: <20250327000827.980585561@goodmis.org> User-Agent: quilt/0.68 Date: Wed, 26 Mar 2025 20:08:12 -0400 From: Steven Rostedt To: linux-kernel@vger.kernel.org Cc: Masami Hiramatsu , Mark Rutland , Mathieu Desnoyers , Andrew Morton , stable@vger.kernel.org, Douglas Raillard Subject: [for-next][PATCH 1/2] tracing: Fix synth event printk format for str fields References: <20250327000811.879041980@goodmis.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Douglas Raillard The printk format for synth event uses "%.*s" to print string fields, but then only passes the pointer part as var arg. Replace %.*s with %s as the C string is guaranteed to be null-terminated. The output in print fmt should never have been updated as __get_str() handles the string limit because it can access the length of the string in the string meta data that is saved in the ring buffer. Cc: stable@vger.kernel.org Cc: Masami Hiramatsu Cc: Mathieu Desnoyers Fixes: 8db4d6bfbbf92 ("tracing: Change synthetic event string format to lim= it printed length") Link: https://lore.kernel.org/20250325165202.541088-1-douglas.raillard@arm.= com Signed-off-by: Douglas Raillard Signed-off-by: Steven Rostedt (Google) --- kernel/trace/trace_events_synth.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/trace/trace_events_synth.c b/kernel/trace/trace_events_= synth.c index a5c5f34c207a..6d592cbc38e4 100644 --- a/kernel/trace/trace_events_synth.c +++ b/kernel/trace/trace_events_synth.c @@ -305,7 +305,7 @@ static const char *synth_field_fmt(char *type) else if (strcmp(type, "gfp_t") =3D=3D 0) fmt =3D "%x"; else if (synth_field_is_string(type)) - fmt =3D "%.*s"; + fmt =3D "%s"; else if (synth_field_is_stack(type)) fmt =3D "%s"; =20 --=20 2.47.2 From nobody Thu Dec 18 05:02:46 2025 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D8B76383 for ; Thu, 27 Mar 2025 00:07:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743034060; cv=none; b=cjuT8Z3wkQ3rr7t7//PHJd6iNLG1a4kNVlMF31pC6+UdmtRAAbuuwUC99KOYNT+WgT290itTVDdX25qhoExd1/PXQJa6EZ+6fk66jjT+E1nLCZvRmLgSdTVQB0xdCX+lO3Ql2PGjUcQaiUY9dPKJmawoPtXFLW9Ys0RbwpBVRP4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743034060; c=relaxed/simple; bh=8Q9f9qqW4PgE8fV9DUYaT9qf7eH8WzntnWhy53wu+/0=; h=Message-ID:Date:From:To:Cc:Subject:References:MIME-Version: Content-Type; b=pfYiJNUF0kpQMWrtnQQZrrT6cF/0xKl3NueBhsqpLfNm85ud+p1vuzEp4Oo8usCW1etUri6RDBidCZPgkCZishk0V7eZKEPFz0S9n42R1n9A8rdjth9jS9CkxU2WcBUQrI3LMT3PX+CSWosPmR5MP5PtW2XDlrt4281c8SvIlLc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id 81E5AC4CEEB; Thu, 27 Mar 2025 00:07:40 +0000 (UTC) Received: from rostedt by gandalf with local (Exim 4.98) (envelope-from ) id 1txanM-00000002uzO-1E73; Wed, 26 Mar 2025 20:08:28 -0400 Message-ID: <20250327000828.145418880@goodmis.org> User-Agent: quilt/0.68 Date: Wed, 26 Mar 2025 20:08:13 -0400 From: Steven Rostedt To: linux-kernel@vger.kernel.org Cc: Masami Hiramatsu , Mark Rutland , Mathieu Desnoyers , Andrew Morton , Siddarth G Subject: [for-next][PATCH 2/2] tracing: Replace strncpy with memcpy for fixed-length substring copy References: <20250327000811.879041980@goodmis.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Siddarth G checkpatch.pl reports the following warning: WARNING: Prefer strscpy, strscpy_pad, or __nonstring over strncpy (see: https://github.com/KSPP/linux/issues/90) In synth_field_string_size(), replace strncpy() with memcpy() to copy 'len' characters from 'start' to 'buf'. The code manually adds a NUL terminator after the copy, making memcpy safe here. Link: https://lore.kernel.org/20250325181232.38284-1-siddarthsgml@gmail.com Signed-off-by: Siddarth G Signed-off-by: Steven Rostedt (Google) --- kernel/trace/trace_events_synth.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/trace/trace_events_synth.c b/kernel/trace/trace_events_= synth.c index 6d592cbc38e4..969f48742d72 100644 --- a/kernel/trace/trace_events_synth.c +++ b/kernel/trace/trace_events_synth.c @@ -207,7 +207,7 @@ static int synth_field_string_size(char *type) if (len =3D=3D 0) return 0; /* variable-length string */ =20 - strncpy(buf, start, len); + memcpy(buf, start, len); buf[len] =3D '\0'; =20 err =3D kstrtouint(buf, 0, &size); --=20 2.47.2