From: "Steven Rostedt (Google)" rostedt@goodmis.org
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/20220705224751.080390002@goodmis.org
Cc: Marek Lindner mareklindner@neomailbox.ch Cc: Ingo Molnar mingo@kernel.org Cc: Andrew Morton akpm@linux-foundation.org Cc: Simon Wunderlich sw@simonwunderlich.de Cc: Antonio Quartulli a@unstable.cc Cc: Sven Eckelmann sven@narfation.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: b.a.t.m.a.n@lists.open-mesh.org Cc: netdev@vger.kernel.org Signed-off-by: Steven Rostedt (Google) rostedt@goodmis.org --- net/batman-adv/trace.h | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-)
diff --git a/net/batman-adv/trace.h b/net/batman-adv/trace.h index d673ebdd0426..67d2a8a0196c 100644 --- a/net/batman-adv/trace.h +++ b/net/batman-adv/trace.h @@ -40,16 +40,13 @@ TRACE_EVENT(batadv_dbg, TP_STRUCT__entry( __string(device, bat_priv->soft_iface->name) __string(driver, KBUILD_MODNAME) - __dynamic_array(char, msg, BATADV_MAX_MSG_LEN) + __vstring(msg, vaf->fmt, vaf->va) ),
TP_fast_assign( __assign_str(device, bat_priv->soft_iface->name); __assign_str(driver, KBUILD_MODNAME); - WARN_ON_ONCE(vsnprintf(__get_dynamic_array(msg), - BATADV_MAX_MSG_LEN, - vaf->fmt, - *vaf->va) >= BATADV_MAX_MSG_LEN); + __assign_vstr(msg, vaf->fmt, vaf->va); ),
TP_printk(