tracing/brcm: Use the new __vstring() helper
authorSteven Rostedt (Google) <rostedt@goodmis.org>
Tue, 5 Jul 2022 22:44:57 +0000 (18:44 -0400)
committerSteven Rostedt (Google) <rostedt@goodmis.org>
Fri, 15 Jul 2022 21:44:40 +0000 (17:44 -0400)
Instead of open coding a __dynamic_array() with a fixed length (which
defeats the purpose of the dynamic array in the first place). Use the new
__vstring() helper that will use a va_list and only write enough of the
string into the ring buffer that is needed.

Link: https://lkml.kernel.org/r/20220705224749.622796175@goodmis.org
Cc: Arend van Spriel <aspriel@gmail.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Franky Lin <franky.lin@broadcom.com>
Cc: Hante Meuleman <hante.meuleman@broadcom.com>
Cc: Kalle Valo <kvalo@kernel.org>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Eric Dumazet <edumazet@google.com>
Cc: Jakub Kicinski <kuba@kernel.org>
Cc: Paolo Abeni <pabeni@redhat.com>
Cc: linux-wireless@vger.kernel.org
Cc: brcm80211-dev-list.pdl@broadcom.com
Cc: SHA-cyfmac-dev-list@infineon.com
Cc: netdev@vger.kernel.org
Acked-by: Kalle Valo <kvalo@kernel.org>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
drivers/net/wireless/broadcom/brcm80211/brcmfmac/tracepoint.h
drivers/net/wireless/broadcom/brcm80211/brcmsmac/brcms_trace_brcmsmac_msg.h

index 338c66d..5a139d7 100644 (file)
@@ -33,13 +33,11 @@ TRACE_EVENT(brcmf_err,
        TP_ARGS(func, vaf),
        TP_STRUCT__entry(
                __string(func, func)
-               __dynamic_array(char, msg, MAX_MSG_LEN)
+               __vstring(msg, vaf->fmt, vaf->va)
        ),
        TP_fast_assign(
                __assign_str(func, func);
-               WARN_ON_ONCE(vsnprintf(__get_dynamic_array(msg),
-                                      MAX_MSG_LEN, vaf->fmt,
-                                      *vaf->va) >= MAX_MSG_LEN);
+               __assign_vstr(msg, vaf->fmt, vaf->va);
        ),
        TP_printk("%s: %s", __get_str(func), __get_str(msg))
 );
@@ -50,14 +48,12 @@ TRACE_EVENT(brcmf_dbg,
        TP_STRUCT__entry(
                __field(u32, level)
                __string(func, func)
-               __dynamic_array(char, msg, MAX_MSG_LEN)
+               __vstring(msg, vaf->fmt, vaf->va)
        ),
        TP_fast_assign(
                __entry->level = level;
                __assign_str(func, func);
-               WARN_ON_ONCE(vsnprintf(__get_dynamic_array(msg),
-                                      MAX_MSG_LEN, vaf->fmt,
-                                      *vaf->va) >= MAX_MSG_LEN);
+               __assign_vstr(msg, vaf->fmt, vaf->va);
        ),
        TP_printk("%s: %s", __get_str(func), __get_str(msg))
 );
index 0e8a69a..4884564 100644 (file)
@@ -28,12 +28,10 @@ DECLARE_EVENT_CLASS(brcms_msg_event,
        TP_PROTO(struct va_format *vaf),
        TP_ARGS(vaf),
        TP_STRUCT__entry(
-               __dynamic_array(char, msg, MAX_MSG_LEN)
+               __vstring(msg, vaf->fmt, vaf->va)
        ),
        TP_fast_assign(
-               WARN_ON_ONCE(vsnprintf(__get_dynamic_array(msg),
-                                      MAX_MSG_LEN, vaf->fmt,
-                                      *vaf->va) >= MAX_MSG_LEN);
+               __assign_vstr(msg, vaf->fmt, vaf->va);
        ),
        TP_printk("%s", __get_str(msg))
 );
@@ -64,14 +62,12 @@ TRACE_EVENT(brcms_dbg,
        TP_STRUCT__entry(
                __field(u32, level)
                __string(func, func)
-               __dynamic_array(char, msg, MAX_MSG_LEN)
+               __vstring(msg, vaf->fmt, vaf->va)
        ),
        TP_fast_assign(
                __entry->level = level;
                __assign_str(func, func);
-               WARN_ON_ONCE(vsnprintf(__get_dynamic_array(msg),
-                                      MAX_MSG_LEN, vaf->fmt,
-                                      *vaf->va) >= MAX_MSG_LEN);
+               __assign_vstr(msg, vaf->fmt, vaf->va);
        ),
        TP_printk("%s: %s", __get_str(func), __get_str(msg))
 );